pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bootstrap --full (was: proposal to make bootstrap on Linux prefer pkgsrc by default.)



On 2020-08-11 08:06, Jonathan Perkin wrote:
* On 2020-08-11 at 13:59 BST, Denys Nykula wrote:

"Hauke Fath" <hf%spg.tu-darmstadt.de@localhost> 11 August 2020, 13:31:57:
On Mon, 10 Aug 2020 18:47:43 -0500, Jason Bacon wrote:
It may not be a voting platform per se, but we do need feedback from
the community to make good decisions, so thanks.
Will be glad to see a --prefer-pkgsrc default. Beside it, would be nice
if bootstrap were able to build awk on a from-scratch system having
none yet. As far as I remember, it dies with "not found in path", so
before launching the bootstrap, I manually build the same pkgsrc nawk
with something like:

cc -static $CFLAGS -o$prefix/bin/awk $LDFLAGS \
   `f=$pkgsrcdir/lang/nawk/files; cd $f; for c in *.c; do
     if [ $c != maketab.c ]; then printf '%s/%s ' $f $c; fi; done`
You can pass --full to bootstrap to force lang/nawk to be built and
used, so you shouldn't need to do this manually.

I don't think adding detection to do this automatically would be a
great idea, awk is a mandatory utility and there needs to be some
cut-off point where anyone deliberately running a system without it or
some other critical command will need to just work this out for
themselves, otherwise where do we stop down the rabbit hole of trying
to bootstrap everything from nothing.

I wonder if --full should be extended to include lzma/xz.  As it stands now, pkg_install only enables xz support if a builtin liblzma and headers are found (which could appear/disappear at any time on platforms like RHEL):

pkg_install/Makefile:

# Only use XZ if we actually have builtin support for it. Some systems
# install the header, but without usable library or prefer to not use
# the system version, so give them some control.
.  if empty(USE_BUILTIN.xz:M[Yy][Ee][Ss])
LIBARCHIVE_CONFIGURE_ARGS+=    --without-lzma
.  endif

Supporting xz universally might save significant disk space on binary package servers and reduce download times for pkg_add/pkgin.



Home | Main Index | Thread Index | Old Index