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 #34 received at 40641-done <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: elaexuotee <at> wilsonb.com
Cc: 40641-done <at> debbugs.gnu.org,
 "pelzflorian \(Florian Pelz\)" <pelzflorian <at> pelzflorian.de>
Subject: Re: bug#40641: Building from git breaks when /bin/sh isn't bash
Date: Thu, 07 Jul 2022 17:52:24 -0400
Hello,

elaexuotee <at> wilsonb.com writes:

> "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

OK.  Good to know, glad it can be easily worked around.

Closing.

Maxim




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.