On 25/09/23 17:06, Gareth de Vaux wrote:
Hi all, I've just upgraded bind916 which brought half my system down since
it suddenly required a mountain of python packages and rust which needed
around 13GB (and hours) to build - space which I didn't have nor have ever
remotely expected to need for a ports build.
My bind configuration options are basically the defaults:
# grep OPTIONS_FILE_SET /var/db/ports/dns_bind916/options
OPTIONS_FILE_SET+=IDN
OPTIONS_FILE_SET+=JSON
OPTIONS_FILE_SET+=LMDB
OPTIONS_FILE_SET+=MANPAGES
OPTIONS_FILE_SET+=TCP_FASTOPEN
OPTIONS_FILE_SET+=GSSAPI_NONE
OPTIONS_FILE_SET+=DLZ_FILESYSTEM
These are the top level dependencies:
# make -C /usr/ports/dns/bind916 build-depends-list
/usr/ports/ports-mgmt/pkg
/usr/ports/textproc/py-sphinx
This one, which calls in py-cryptography which requires rust.
/usr/ports/devel/pkgconf
/usr/ports/security/openssl
/usr/ports/converters/libiconv
/usr/ports/devel/libuv
/usr/ports/textproc/libxml2
/usr/ports/dns/libidn2
/usr/ports/devel/json-c
/usr/ports/databases/lmdb
/usr/ports/devel/libedit
Does anyone know which option/dependency is causing this? I suspect
MANPAGES -> py-sphinx since it has 'py' but who knows. Which itself would
be crazy that just a manpage would trigger this kind of intense build.
That's it actually. sphynx is quite heavy.
There is a more general aspect to this. In the rest of the unix world
software is now almost universally build using CI systems and
buildboxes, people use binary packages almost all the time in linux.
Developers don't care to keep low overhead in their builds and with
dependency. The ports tree cannot mitigate this external pressure.
Anyway building from ports on live machines has always been bad practice
for a lot of reasons.
--
Guido Falsi <madpi...@freebsd.org>