all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Unable to bootstrap Guix without substitutes
@ 2022-02-10 21:33 Greg Hogan
  2022-02-11  1:39 ` Timothy Sample
  0 siblings, 1 reply; 5+ messages in thread
From: Greg Hogan @ 2022-02-10 21:33 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 3118 bytes --]

When installing the Guix binary distribution (both the 1.3.0 release and
most recent guix-binary on ci.guix.gnu.org) on a new system without
enabling substitutes the guix pull or install commands fail when building
bash-mesboot0.
  https://guix.gnu.org/manual/en/html_node/Binary-Installation.html

I see the same failure when building bash-mesboot0 on my working Guix
installation (with substitutes enabled, but disabled for this build):

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix build --no-substitutes -e '(@@ (gnu packages
commencement) bash-mesboot0)'
--8<---------------cut here---------------end--------------->8---

The error from the log:

--8<---------------cut here---------------start------------->8---
checking whether #! works in shell scripts... Backtrace:
In ice-9/boot-9.scm:
 157: 14 [catch #t #<catch-closure c93c40> ...]
In unknown file:
   ?: 13 [apply-smob/1 #<catch-closure c93c40>]
In ice-9/boot-9.scm:
  63: 12 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 11 [eval # #]
In ice-9/boot-9.scm:
 793: 10 [call-with-input-file "./configure" ...]
In gash/gash.scm:
 121: 9 [#<procedure 12b0a80 at gash/gash.scm:120:19 (port)> #<input:
./configure 16>]
In gash/repl.scm:
  38: 8 [run-repl #<input: ./configure 16> #f]
In srfi/srfi-1.scm:
 619: 7 [for-each #<procedure eval-sh (exp)> (# # # # ...)]
In gash/shell.scm:
 277: 6 [sh:subshell #<procedure 146bf20 at gash/eval.scm:70:14 ()>]
 266: 5 [%subshell #<procedure 146bf20 at gash/eval.scm:70:14 ()>]
In ice-9/boot-9.scm:
 157: 4 [catch quit #<procedure 146bf20 at gash/eval.scm:70:14 ()> ...]
In srfi/srfi-1.scm:
 619: 3 [for-each #<procedure eval-sh (exp)> (# # #)]
In gash/shell.scm:
 241: 2 [#<procedure 162c5d0 at gash/shell.scm:235:17 ()>]
 165: 1 [sh:exec-let () "./conftest"]
In unknown file:
   ?: 0 [execle "./conftest" # "./conftest"]

ERROR: In procedure execle:
ERROR: In procedure execle: No such file or directory
yes
--8<---------------cut here---------------end--------------->8---

From the source's bash-2.05b/configure script, the failing section for
AC_SYS_INTERPRETER:

--8<---------------cut here---------------start------------->8---
echo "$as_me:11935: checking whether #! works in shell scripts" >&5
echo $ECHO_N "checking whether #! works in shell scripts... $ECHO_C" >&6
if test "${ac_cv_sys_interpreter+set}" = set; then
  echo $ECHO_N "(cached) $ECHO_C" >&6
else
  echo '#! /bin/cat
exit 69
' >conftest
chmod u+x conftest
(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null)
if test $? -ne 69; then
   ac_cv_sys_interpreter=yes
else
   ac_cv_sys_interpreter=no
fi
rm -f conftest
fi
echo "$as_me:11952: result: $ac_cv_sys_interpreter" >&5
echo "${ECHO_T}$ac_cv_sys_interpreter" >&6
interpval=$ac_cv_sys_interpreter

if test $ac_cv_sys_interpreter = yes; then
cat >>confdefs.h <<\EOF
#define HAVE_HASH_BANG_EXEC 1
EOF

fi
--8<---------------cut here---------------end--------------->8---

The ci builds are marked successful, but the raw log file is either empty
or appears to substitute an earlier build.
  https://ci.guix.gnu.org/search?query=bash-mesboot0

Greg

[-- Attachment #2: Type: text/html, Size: 4164 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Unable to bootstrap Guix without substitutes
  2022-02-10 21:33 Unable to bootstrap Guix without substitutes Greg Hogan
@ 2022-02-11  1:39 ` Timothy Sample
  2022-02-14 21:38   ` Ludovic Courtès
  2022-02-16 21:28   ` Greg Hogan
  0 siblings, 2 replies; 5+ messages in thread
From: Timothy Sample @ 2022-02-11  1:39 UTC (permalink / raw)
  To: Greg Hogan; +Cc: guix-devel

Hi Greg,

Greg Hogan <code@greghogan.com> writes:

> When installing the Guix binary distribution (both the 1.3.0 release
> and most recent guix-binary on ci.guix.gnu.org) on a new system
> without enabling substitutes the guix pull or install commands fail
> when building bash-mesboot0.
>
> [...]
>
> The error from the log:
>
> --8<---------------cut here---------------start------------->8---
> checking whether #! works in shell scripts... [snip scary backtrace] yes
> --8<---------------cut here---------------end--------------->8---

I can perform the build successfully using

    $ guix build --check \
        -e '(@@ (gnu packages commencement) bash-masboot0)'

That scary backtrace happens even for the successful build, so I’m
pretty sure it is not the issue.  (Note that the configure test succeeds
in the end with a “yes”.)

Is there anything else suspicious in the logs?


-- Tim


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Unable to bootstrap Guix without substitutes
  2022-02-11  1:39 ` Timothy Sample
@ 2022-02-14 21:38   ` Ludovic Courtès
  2022-02-16 21:28   ` Greg Hogan
  1 sibling, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2022-02-14 21:38 UTC (permalink / raw)
  To: Timothy Sample; +Cc: guix-devel

Hi,

Timothy Sample <samplet@ngyro.com> skribis:

> Greg Hogan <code@greghogan.com> writes:
>
>> When installing the Guix binary distribution (both the 1.3.0 release
>> and most recent guix-binary on ci.guix.gnu.org) on a new system
>> without enabling substitutes the guix pull or install commands fail
>> when building bash-mesboot0.
>>
>> [...]
>>
>> The error from the log:
>>
>> --8<---------------cut here---------------start------------->8---
>> checking whether #! works in shell scripts... [snip scary backtrace] yes
>> --8<---------------cut here---------------end--------------->8---
>
> I can perform the build successfully using
>
>     $ guix build --check \
>         -e '(@@ (gnu packages commencement) bash-masboot0)'
>
> That scary backtrace happens even for the successful build, so I’m
> pretty sure it is not the issue.  (Note that the configure test succeeds
> in the end with a “yes”.)

Could it be <https://issues.guix.gnu.org/49985>?

Specifically, the problem occurs when building on NVMe disks.

Ludo’.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Unable to bootstrap Guix without substitutes
  2022-02-11  1:39 ` Timothy Sample
  2022-02-14 21:38   ` Ludovic Courtès
@ 2022-02-16 21:28   ` Greg Hogan
  2022-02-17 15:18     ` Greg Hogan
  1 sibling, 1 reply; 5+ messages in thread
From: Greg Hogan @ 2022-02-16 21:28 UTC (permalink / raw)
  To: Timothy Sample; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1107 bytes --]

On Thu, Feb 10, 2022 at 8:39 PM Timothy Sample <samplet@ngyro.com> wrote:

> I can perform the build successfully using
>
>     $ guix build --check \
>         -e '(@@ (gnu packages commencement) bash-masboot0)'
>
> That scary backtrace happens even for the successful build, so I’m
> pretty sure it is not the issue.  (Note that the configure test succeeds
> in the end with a “yes”.)
>
> Is there anything else suspicious in the logs?
>

Timothy,

Thank you for checking this on your own system, it was quite helpful to
know that the failure was not universal.

I found a solution to building bash-mesboot0 in bug #49985 in mounting /tmp
as tmpfs, as noted by Ludo'.

I then saw the error building binutils-mesboot0 as in bug #41264, for which
Mathieu proposed an idea for fixing Mes, still awaiting implementation.

As a temporary fix the same tmpfs trick works when bind mounting /gnu and
/var/guix onto the /tmp tmpfs. This should work for my workflow, and I am
glad to see that others have continued to attempt to bootstrap from source
without substitutes.

Greg

[-- Attachment #2: Type: text/html, Size: 1559 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Unable to bootstrap Guix without substitutes
  2022-02-16 21:28   ` Greg Hogan
@ 2022-02-17 15:18     ` Greg Hogan
  0 siblings, 0 replies; 5+ messages in thread
From: Greg Hogan @ 2022-02-17 15:18 UTC (permalink / raw)
  To: Timothy Sample, 50203; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 558 bytes --]

On Wed, Feb 16, 2022 at 4:28 PM Greg Hogan <code@greghogan.com> wrote:

> I then saw the error building binutils-mesboot0 as in bug #41264, for
> which Mathieu proposed an idea for fixing Mes, still awaiting
> implementation.
>
> As a temporary fix the same tmpfs trick works when bind mounting /gnu and
> /var/guix onto the /tmp tmpfs. This should work for my workflow, and I am
> glad to see that others have continued to attempt to bootstrap from source
> without substitutes.
>

I believe this is also the same issue with a broken build as #50203.

Greg

[-- Attachment #2: Type: text/html, Size: 946 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-02-17 15:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-10 21:33 Unable to bootstrap Guix without substitutes Greg Hogan
2022-02-11  1:39 ` Timothy Sample
2022-02-14 21:38   ` Ludovic Courtès
2022-02-16 21:28   ` Greg Hogan
2022-02-17 15:18     ` Greg Hogan

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.