GNU bug report logs - #40641
Building from git breaks when /bin/sh isn't bash

Previous Next

Package: guix;

Reported by: elaexuotee <at> wilsonb.com

Date: Wed, 15 Apr 2020 11:07:02 UTC

Severity: normal

Full log


Message #29 received at 40641 <at> debbugs.gnu.org (full text, mbox):

From: elaexuotee <at> wilsonb.com
To: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>
Cc: 40641 <at> debbugs.gnu.org, Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Subject: Re: bug#40641: Building from git breaks when /bin/sh isn't bash
Date: Mon, 04 Jul 2022 20:22:43 +0900
"pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de> wrote:
> Thank you for getting back to the bug.  I am in the same situation in
> that I use Guix System now. :D
> 
> On Tue, Jun 21, 2022 at 09:20:28AM +0900, elaexuotee <at> wilsonb.com wrote:
> > so you could be able to sanity
> > check with something like
> > 
> >     $ guix shell -C dash guix make <etc>
> >     $ ln -s $(command -v dash) /bin/sh
> >     $ ./configure --localstatedir && make
> 
> I had done exactly this.
> 
> guix shell --container --network dash git pkg-config gnutls guile guile-avahi guile-gcrypt guile-json guile-lib guile-sqlite3 guile-zlib guile-lzlib guile-zstd guile-ssh guile-git autoconf automake gettext texinfo graphviz help2man po4a findutils sed coreutils tar xz m4 diffutils grep gcc-toolchain sqlite libgcrypt gawk make glibc-locales -- dash
> 
> Many tests fail because of the container though, so I’m not sure how
> big the effect is.  At least tests/guix-package.sh still use type -P
> which is not POSIX, but I don’t think it should be changed nor should
> there be a check if $SHELL can do what we need, because we don’t know
> which bash features we need.

Excellent. I agree it's probably not worth POSIXifying the scripts. Forcing
make to default to guix's bash seems like the right approach IMHO, so +1 for
that fix.

FWIW, I ended up working around the original issue by explicitly telling make
to use guix's bash, anyway:

    $ guix environment guix bash
    $ CONFIG_SHELL=$(command -v bash) ./configure --localstatedir=/var




This bug report was last modified 3 years and 61 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.