unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#64745: [guix-past] channel derivation broken after recent u-boot update
@ 2023-07-20 16:27 Maxim Cournoyer
  2023-07-20 17:58 ` Janneke Nieuwenhuizen
  2023-07-20 22:16 ` Ludovic Courtès
  0 siblings, 2 replies; 6+ messages in thread
From: Maxim Cournoyer @ 2023-07-20 16:27 UTC (permalink / raw)
  To: 64745

Hello,

It appears that the Guix-Past channel now fails to build like so:

--8<---------------cut here---------------start------------->8---
substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
@ build-started /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - x86_64-linux /var/log/guix/drvs/5g//xx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv 4536
(repl-version 0 1 1)
(exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (crust-pine64-plus)) (value #f))
builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
@ build-failed /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - 1 builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
--8<---------------cut here---------------end--------------->8---

I suspect it's caused by the commit
ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
firmware to pinebook, pine64_plus and pine64-lts."), although I don't
understand why.

-- 
Thanks,
Maxim




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

* bug#64745: [guix-past] channel derivation broken after recent u-boot update
  2023-07-20 16:27 bug#64745: [guix-past] channel derivation broken after recent u-boot update Maxim Cournoyer
@ 2023-07-20 17:58 ` Janneke Nieuwenhuizen
  2023-07-20 21:52   ` Janneke Nieuwenhuizen
  2023-07-20 22:16 ` Ludovic Courtès
  1 sibling, 1 reply; 6+ messages in thread
From: Janneke Nieuwenhuizen @ 2023-07-20 17:58 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: 64745

Maxim Cournoyer writes:

Hi,

> It appears that the Guix-Past channel now fails to build like so:
>
> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
> @ build-started /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - x86_64-linux /var/log/guix/drvs/5g//xx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv 4536
> (repl-version 0 1 1)
> (exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (crust-pine64-plus)) (value #f))
> builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
> @ build-failed /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - 1 builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>
> I suspect it's caused by the commit
> ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
> firmware to pinebook, pine64_plus and pine64-lts."), although I don't
> understand why.

I've hit a simimilar problem when attempting to build guix
(./pre-inst-env guix build guix for x86_64) on hurd-team.

--8<---------------cut here---------------start------------->8---
[ 39%] GUILEC   gnu/packages/fsf.go
[ 39%] GUILEC   gnu/packages/ftp.go
[ 39%] GUILEC   gnu/packages/fribidi.go
[ 39%] GUILEC   gnu/packages/fvwm.go
Compiling Scheme modules...
[ 39%] LOAD     gnu/packages/game-development.scm
ice-9/eval.scm:293:34: error: crust-pine64-plus: unbound variable
hint: Did you forget a `use-modules' form?
--8<---------------cut here---------------end--------------->8---

The hurd-team branch has (two) `make update-guix-package' commits
because it has guix build fixes for the hurd.

Greetings,
Janneke

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

* bug#64745: [guix-past] channel derivation broken after recent u-boot update
  2023-07-20 17:58 ` Janneke Nieuwenhuizen
@ 2023-07-20 21:52   ` Janneke Nieuwenhuizen
  0 siblings, 0 replies; 6+ messages in thread
From: Janneke Nieuwenhuizen @ 2023-07-20 21:52 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: 64745

Janneke Nieuwenhuizen writes:

Hello again,

>> It appears that the Guix-Past channel now fails to build like so:
[..]
>> (exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (crust-pine64-plus)) (value #f))
[..]
>> I suspect it's caused by the commit
>> ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
>> firmware to pinebook, pine64_plus and pine64-lts."), although I don't
>> understand why.
>
> I've hit a simimilar problem when attempting to build guix
> (./pre-inst-env guix build guix for x86_64) on hurd-team.
>
> [ 39%] GUILEC   gnu/packages/fsf.go
> [ 39%] GUILEC   gnu/packages/ftp.go
> [ 39%] GUILEC   gnu/packages/fribidi.go
> [ 39%] GUILEC   gnu/packages/fvwm.go
> Compiling Scheme modules...
> [ 39%] LOAD     gnu/packages/game-development.scm
> ice-9/eval.scm:293:34: error: crust-pine64-plus: unbound variable
> hint: Did you forget a `use-modules' form?
>
> The hurd-team branch has (two) `make update-guix-package' commits
> because it has guix build fixes for the hurd.

As discussed on IRC, I can confirm ed5dc3a25d858a394bb7db937a51d866c3cdc6ed 
is causing this for me.  When I revert it before `make update-guix-package',
then the build phase of `./pre-inst-env guix build guix (x86_64)
succeeds.

Completely unrelated but sadly, the check phase fails

--8<---------------cut here---------------start------------->8---
FAIL: tests/packages.scm
FAIL: tests/store-roots.scm
FAIL: tests/texlive.scm
--8<---------------cut here---------------end--------------->8---

so I'm skipping those patches for now on hurd-team.

Greetings,
Janneke

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

* bug#64745: [guix-past] channel derivation broken after recent u-boot update
  2023-07-20 16:27 bug#64745: [guix-past] channel derivation broken after recent u-boot update Maxim Cournoyer
  2023-07-20 17:58 ` Janneke Nieuwenhuizen
@ 2023-07-20 22:16 ` Ludovic Courtès
  2023-07-20 23:08   ` Vagrant Cascadian
  2023-07-21 15:35   ` Maxim Cournoyer
  1 sibling, 2 replies; 6+ messages in thread
From: Ludovic Courtès @ 2023-07-20 22:16 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: Vagrant Cascadian, 64745, Janneke Nieuwenhuizen

Hi,

Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:

> It appears that the Guix-Past channel now fails to build like so:
>
> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
> @ build-started /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - x86_64-linux /var/log/guix/drvs/5g//xx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv 4536
> (repl-version 0 1 1)
> (exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (crust-pine64-plus)) (value #f))
> builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
> @ build-failed /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - 1 builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>
> I suspect it's caused by the commit
> ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
> firmware to pinebook, pine64_plus and pine64-lts."), although I don't
> understand why.

This can be reproduced like so:

--8<---------------cut here---------------start------------->8---
$ guix time-machine --commit=a4038c4f783b05040cfdb262d9f4c0119b612371 -- repl <(echo '(use-modules (gnu packages firmware))')
Backtrace:
In ice-9/boot-9.scm:
   222:29 19 (map1 (((gnu packages acl)) ((gnu packages admin)) ((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu # #)) # …))
   222:29 18 (map1 (((gnu packages admin)) ((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu # #)) # …))
   222:29 17 (map1 (((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu # #)) # …))
   222:29 16 (map1 (((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu # #)) ((…)) …))
   222:29 15 (map1 (((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu …)) …))
   222:29 14 (map1 (((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((# …)) …))
   222:29 13 (map1 (((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu …)) …))
   222:29 12 (map1 (((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((…)) …))
   222:29 11 (map1 (((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((gnu packages cmake)) ((…)) …))
   222:17 10 (map1 (((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((gnu packages cmake)) ((gnu packages #)) ((gnu …)) …))
  3327:17  9 (resolve-interface (gnu packages bootloaders) #:select _ #:hide _ #:prefix _ #:renamer _ #:version _)
In ice-9/threads.scm:
    390:8  8 (_ _)
In ice-9/boot-9.scm:
  3253:13  7 (_)
In ice-9/threads.scm:
    390:8  6 (_ _)
In ice-9/boot-9.scm:
  3544:20  5 (_)
   2836:4  4 (save-module-excursion #<procedure 7f15e679c150 at ice-9/boot-9.scm:3545:21 ()>)
  3564:26  3 (_)
In unknown file:
           2 (primitive-load-path "gnu/packages/bootloaders" #<procedure 7f15e68a0c00 at ice-9/boot-9.scm:3551:37 ()>)
In gnu/packages/bootloaders.scm:
  1061:31  1 (_)
In ice-9/boot-9.scm:
  1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
error: crust-pine64-plus: unbound variable
--8<---------------cut here---------------end--------------->8---

This is the dreaded “circular top-level references” case: to load
firmware.scm, you need to (indirectly) load bootloaders.scm; but to load
bootloader.scm, you need to be able to look up ‘crust-pine64-plus’,
which is then unbound.

Fixed in 0ab46ef3f9719f03d9b191a16e5aa91619e95451 by introducing
promises.

BTW, we should probably keep ‘make-u-boot-sunxi64-package’ private, no?

Thanks,
Ludo’.




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

* bug#64745: [guix-past] channel derivation broken after recent u-boot update
  2023-07-20 22:16 ` Ludovic Courtès
@ 2023-07-20 23:08   ` Vagrant Cascadian
  2023-07-21 15:35   ` Maxim Cournoyer
  1 sibling, 0 replies; 6+ messages in thread
From: Vagrant Cascadian @ 2023-07-20 23:08 UTC (permalink / raw)
  To: Ludovic Courtès, Maxim Cournoyer; +Cc: 64745, Janneke Nieuwenhuizen

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

On 2023-07-21, Ludovic Courtès wrote:
> Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>
>> It appears that the Guix-Past channel now fails to build like so:
>>
>> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://ci.guix.gnu.org'... 100.0%
>> substitute: ^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'...   0.0%^Msubstitute: ESC[Kupdating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
>> @ build-started /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - x86_64-linux /var/log/guix/drvs/5g//xx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv 4536
>> (repl-version 0 1 1)
>> (exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (crust-pine64-plus)) (value #f))
>> builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>> @ build-failed /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - 1 builder for `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed to produce output path `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>>
>> I suspect it's caused by the commit
>> ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
>> firmware to pinebook, pine64_plus and pine64-lts."), although I don't
>> understand why.
>
> This can be reproduced like so:
>
> --8<---------------cut here---------------start------------->8---
> $ guix time-machine --commit=a4038c4f783b05040cfdb262d9f4c0119b612371 -- repl <(echo '(use-modules (gnu packages firmware))')
> Backtrace:
> In ice-9/boot-9.scm:
>    222:29 19 (map1 (((gnu packages acl)) ((gnu packages admin)) ((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu # #)) # …))
...
> In unknown file:
>            2 (primitive-load-path "gnu/packages/bootloaders" #<procedure 7f15e68a0c00 at ice-9/boot-9.scm:3551:37 ()>)
> In gnu/packages/bootloaders.scm:
>   1061:31  1 (_)
> In ice-9/boot-9.scm:
>   1685:16  0 (raise-exception _ #:continuable? _)
>
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> error: crust-pine64-plus: unbound variable
> --8<---------------cut here---------------end--------------->8---
>
> This is the dreaded “circular top-level references” case: to load
> firmware.scm, you need to (indirectly) load bootloaders.scm; but to load
> bootloader.scm, you need to be able to look up ‘crust-pine64-plus’,
> which is then unbound.
>
> Fixed in 0ab46ef3f9719f03d9b191a16e5aa91619e95451 by introducing
> promises.

Thanks!


> BTW, we should probably keep ‘make-u-boot-sunxi64-package’ private, no?

What is different about crust-firmware vs. the various
arm-trusted-firmware packages, which have a similar relationship to
u-boot?

How... can I avoid this sort of issue in the future? It is at the very
least non-obvious to humble little me...


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

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

* bug#64745: [guix-past] channel derivation broken after recent u-boot update
  2023-07-20 22:16 ` Ludovic Courtès
  2023-07-20 23:08   ` Vagrant Cascadian
@ 2023-07-21 15:35   ` Maxim Cournoyer
  1 sibling, 0 replies; 6+ messages in thread
From: Maxim Cournoyer @ 2023-07-21 15:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Vagrant Cascadian, 64745, Janneke Nieuwenhuizen

Hi Ludovic,

Thanks a lot for the prompt resolution.

Ludovic Courtès <ludo@gnu.org> writes:

> Hi,
>
> Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>
>> It appears that the Guix-Past channel now fails to build like so:
>>
>> substitute: ^Msubstitute: ESC[Kupdating substitutes from
>> 'https://ci.guix.gnu.org'...  0.0%^Msubstitute: ESC[Kupdating
>> substitutes from 'https://ci.guix.gnu.org'... 100.0%
>> substitute: ^Msubstitute: ESC[Kupdating substitutes from
>> 'https://bordeaux.guix.gnu.org'...  0.0%^Msubstitute: ESC[Kupdating
>> substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
>> @ build-started
>> /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv -
>> x86_64-linux
>> /var/log/guix/drvs/5g//xx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv
>> 4536
>> (repl-version 0 1 1)
>> (exception unbound-variable (value #f) (value "Unbound variable:
>> ~S") (value (crust-pine64-plus)) (value #f))
>> builder for
>> `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed
>> to produce output path
>> `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>> @ build-failed
>> /gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv - 1
>> builder for
>> `/gnu/store/5gxx0xnrncdg5rsi00j4bvy4frxpd466-guix-past.drv' failed
>> to produce output path
>> `/gnu/store/hwfy6kbh8q7v9ljam99gfzaz46lf3i8z-guix-past'
>>
>> I suspect it's caused by the commit
>> ed5dc3a25d858a394bb7db937a51d866c3cdc6ed ("gnu: u-boot: Add crust
>> firmware to pinebook, pine64_plus and pine64-lts."), although I don't
>> understand why.
>
> This can be reproduced like so:
>
> $ guix time-machine --commit=a4038c4f783b05040cfdb262d9f4c0119b612371 -- repl <(echo '(use-modules (gnu packages firmware))')
> Backtrace:
> In ice-9/boot-9.scm:
>    222:29 19 (map1 (((gnu packages acl)) ((gnu packages admin)) ((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu # #)) # …))
>    222:29 18 (map1 (((gnu packages admin)) ((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu # #)) # …))
>    222:29 17 (map1 (((gnu packages assembly)) ((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu # #)) # …))
>    222:29 16 (map1 (((gnu packages attr)) ((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu # #)) ((…)) …))
>    222:29 15 (map1 (((gnu packages autotools)) ((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu …)) …))
>    222:29 14 (map1 (((gnu packages backup)) ((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((# …)) …))
>    222:29 13 (map1 (((gnu packages base)) ((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu …)) …))
>    222:29 12 (map1 (((gnu packages bash)) ((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((…)) …))
>    222:29 11 (map1 (((gnu packages bison)) ((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((gnu packages cmake)) ((…)) …))
>    222:17 10 (map1 (((gnu packages bootloaders)) ((gnu packages build-tools)) ((gnu packages check)) ((gnu packages cluster)) ((gnu packages cmake)) ((gnu packages #)) ((gnu …)) …))
>   3327:17  9 (resolve-interface (gnu packages bootloaders) #:select _ #:hide _ #:prefix _ #:renamer _ #:version _)
> In ice-9/threads.scm:
>     390:8  8 (_ _)
> In ice-9/boot-9.scm:
>   3253:13  7 (_)
> In ice-9/threads.scm:
>     390:8  6 (_ _)
> In ice-9/boot-9.scm:
>   3544:20  5 (_)
>    2836:4  4 (save-module-excursion #<procedure 7f15e679c150 at ice-9/boot-9.scm:3545:21 ()>)
>   3564:26  3 (_)
> In unknown file:
>            2 (primitive-load-path "gnu/packages/bootloaders" #<procedure 7f15e68a0c00 at ice-9/boot-9.scm:3551:37 ()>)
> In gnu/packages/bootloaders.scm:
>   1061:31  1 (_)
> In ice-9/boot-9.scm:
>   1685:16  0 (raise-exception _ #:continuable? _)
>
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> error: crust-pine64-plus: unbound variable
>
> This is the dreaded “circular top-level references” case: to load
> firmware.scm, you need to (indirectly) load bootloaders.scm

I suspected it had to do with top level cycles, but how did you work out
the indirect dependencies of firmware.scm on bootloaders.scm ?  I simply
thought "firmware doesn't pull the bootloaders module directly, so we
should be good".

Is there some trick (Guile traces?) to print which modules are getting
pulled or something useful to know?

-- 
Thanks,
Maxim




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

end of thread, other threads:[~2023-07-21 15:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-20 16:27 bug#64745: [guix-past] channel derivation broken after recent u-boot update Maxim Cournoyer
2023-07-20 17:58 ` Janneke Nieuwenhuizen
2023-07-20 21:52   ` Janneke Nieuwenhuizen
2023-07-20 22:16 ` Ludovic Courtès
2023-07-20 23:08   ` Vagrant Cascadian
2023-07-21 15:35   ` Maxim Cournoyer

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).