Subject: bug#40641: Building from git breaks when /bin/sh isn't bash

From: "pelzflorian (Florian Pelz)" <[email-masked]>
Date: Fri, 08 Jul 2022 10:53:21 +0200

Wait wait Maxim, the discussion was that
"B. Wilson" <[email-masked]> proposed
> [PATCH] build: Let make use its hard-coded default shell
 > To: [email-masked]
>
 > * configure.ac: Set AM_SUBST_NOTMAKE([SHELL])
 > +# Use make's hard-coded default shell. The make in a guix profile
 > +# defaults to the Right Thing, e.g. $GUIX_ENVIRONMENT/bin/sh
> +AM_SUBST_NOTMAKE([SHELL])
 
Then Maxim Cournoyer <[email-masked]> writes:
> This seems odd to me. Perhaps it'd be cleaner to detect which shell is
 > used at configure time to detect when /bin/sh != Bash, and warn that if
 > there are issues, the user should set the SHELL variable to Bash.

[email-masked] writes:
> 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.

I think we’re not on the same page.  Is AM_SUBST_NOTMAKE([SHELL]) really
problematic?  Is seems like there is a legitimate use-case that foreign
distro users with /bin/sh = dash would want “guix shell -D guix -- make”
to just work without workaround?  We could use elaexuotee’s
AM_SUBST_NOTMAKE([SHELL]) patch, could we not?

Regards,
Florian