guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm

  • Done
  • quality assurance status badge
Details
4 participants
  • Ludovic Courtès
  • Maxime Devos
  • Tobias Geerinckx-Rice
  • (
Owner
unassigned
Submitted by
(
Severity
normal
(
(address . bug-guix@gnu.org)
CLMXM00R1D8L.2KCVYXJAIMUW0@guix-aspire
Log here:

What's weird is that the culprit, gnu/home/services/symlink-manager.scm,
*does* have access to `service-type`, because it imports (gnu home
services), which re-exports it!

My attempts to `git bisect` were thwarted by another build failure:

```
[I] /home/paren/code/guix
? git bisect start
[I] /home/paren/code/guix
? git bisect bad
[I] /home/paren/code/guix
# the commit I'm on
? git bisect good cd3c4ad8fc113608eade2e5c29ba8486cde01157
[I] /home/paren/code/guix
? git bisect run guix shell -D guix -- make
```

This bug is also experienced by `vhallac` on IRC.

-- (
(
CLMYBMU82EX8.FDXK00R6ND8S@guix-aspire
vhallac has determined that commit
ba22560627f848f40891a56355ff26b6de1380bc, which allowed `guix gc` to
delete Home generations, caused this issue. Somehow.

-- (
M
M
Maxime Devos wrote on 23 Jul 2022 12:26
ec512883-c254-b08e-7a96-25fc3164d252@telenet.be
On 23-07-2022 11:35, paren--- via Bug reports for GNU Guix wrote:
Toggle quote (6 lines)
> Log here:
> <https://paste.sr.ht/~unmatched-paren/201220d944b25ae9074d94c29b88852de70730cb>
>
> What's weird is that the culprit, gnu/home/services/symlink-manager.scm,
> *does* have access to `service-type`, because it imports (gnu home
> services), which re-exports it!
Such weirdness can be caused by cycles in the module structure, maybe
see if you can locate a cycle between (gnu home services
symlink-manager), (gnu home services) and the modules from that
ba2256... commit and break it?
Greetings,
Maxime
Attachment: OpenPGP_signature
M
M
Maxime Devos wrote on 23 Jul 2022 12:32
e8ea83a7-a38e-6ae1-d011-7de3738cbc5b@telenet.be
On 23-07-2022 11:35, paren--- via Bug reports for GNU Guix wrote:
Toggle quote (1 lines)
I think I've seen this one before, but I couldn't figure it out.
Toggle quote (13 lines)
> In ice-9/boot-9.scm:
> 1685:16 6 (raise-exception _ #:continuable? _)
> 1685:16 5 (raise-exception _ #:continuable? _)
> 1780:13 4 (_ #<&compound-exception components: (#<&assertion-fail…>)
> In guix/build/compile.scm:
> 191:6 3 (_ _ . _)
> In ice-9/boot-9.scm:
> 1747:15 2 (with-exception-handler #<procedure 7f1d5aeeb3c0 at ic…> …)
> In guix/build/compile.scm:
> 194:22 1 (_)
> In unknown file:
> 0 (make-stack #t)
> guix/build/compile.scm:194:22: In procedure cdr: Wrong type argument in position 1 (expecting pair): #f
Looks like an &assertion-failure is being obscured, so I guess the error handling in (guix build compile) is wrong somehow?
Greetings,
Maxime
Attachment: file
Attachment: OpenPGP_signature
(
CLNTLLWCDP3O.3E21DEWKRZYFF@guix-aspire
Tobias seems to have fixed this issue temporarily by reverting the Home
GC commits. Should we close this, reopen that patch thread, and discuss
the issues there?

-- (
T
T
Tobias Geerinckx-Rice wrote on 24 Jul 2022 12:52
Re: bug#56722: guix pull fails -- unbound var iable in gnu/home/services/symlink-manager.scm
E72E43E0-8DF0-4903-8975-C1D73FA51A50@tobias.gr
Yo!

Thanks for CC'ing the thread. I pushed the reversion whilst closing my laptop (really) and totally forgot.

Kind regards,

T G-R

Sent on the go. Excuse or enjoy my brevity.
L
L
Ludovic Courtès wrote on 31 Jul 2022 22:49
Re: bug#56722: guix pull fails -- unbound variable in gnu/home/services/symlink-manager.scm
(address . 56722@debbugs.gnu.org)
87fsihaty0.fsf@gnu.org
"(" <paren@disroot.org> skribis:

Toggle quote (3 lines)
> Log here:
> <https://paste.sr.ht/~unmatched-paren/201220d944b25ae9074d94c29b88852de70730cb>

For posterity:

Toggle snippet (54 lines)
[ 0/ 98] loading... 0.0% of 49 files
[ 1/ 98] loading... 2.0% of 49 files
[ 2/ 98] loading... 4.1% of 49 files
[ 3/ 98] loading... 6.1% of 49 files
[ 4/ 98] loading... 8.2% of 49 files
[ 5/ 98] loading... 10.2% of 49 files
[ 6/ 98] loading... 12.2% of 49 files
[ 7/ 98] loading... 14.3% of 49 files
[ 8/ 98] loading... 16.3% of 49 files
[ 9/ 98] loading... 18.4% of 49 files
[ 10/ 98] loading... 20.4% of 49 files
[ 11/ 98] loading... 22.4% of 49 files
[ 12/ 98] loading... 24.5% of 49 files
[ 13/ 98] loading... 26.5% of 49 files
[ 14/ 98] loading... 28.6% of 49 files
[ 15/ 98] loading... 30.6% of 49 files
[ 16/ 98] loading... 32.7% of 49 filesBacktrace:
18 (primitive-load "/gnu/store/vbc37bjl6bbmx5ch9zk544h3nh447dzx-guix-cli-core-builder")
In ice-9/eval.scm:
619:8 17 (_ #f)
In ice-9/boot-9.scm:
152:2 16 (with-fluid* _ _ _)
In guix/build/compile.scm:
249:8 15 (compile-files "." "/gnu/store/nphdfgl8c6j18rm907bxkmyj66ik8bcq-guix-cli-core" ("guix/scripts/archive.scm" "guix/scripts/build.scm" "guix/scripts/authenticate.scm" "guix/scripts/c?" ?) ?)
In system/base/target.scm:
65:6 14 (with-target _ _)
In guix/build/compile.scm:
253:12 13 (_)
168:9 12 (loop ("gnu/home/services/symlink-manager.scm" "gnu/home/services/shells.scm" "gnu/services/configuration.scm" "gnu/home/services/utils.scm" "gnu/home/services/xdg.scm" "gnu/home/?" ?) ?)
In ice-9/boot-9.scm:
3327:17 11 (resolve-interface (gnu home services symlink-manager) #:select _ #:hide _ #:prefix _ #:renamer _ #:version _)
In ice-9/threads.scm:
390:8 10 (_ _)
In ice-9/boot-9.scm:
3253:13 9 (_)
In ice-9/threads.scm:
390:8 8 (_ _)
In ice-9/boot-9.scm:
3544:20 7 (_)
2836:4 6 (save-module-excursion #<procedure 7fffdfc64960 at ice-9/boot-9.scm:3545:21 ()>)
3564:26 5 (_)
In unknown file:
4 (primitive-load-path "gnu/home/services/symlink-manager" #<procedure 7fffe062ff60 at ice-9/boot-9.scm:3551:37 ()>)
In ice-9/eval.scm:
626:19 3 (_ #<directory (gnu home services symlink-manager) 7fffe02986e0>)
182:19 2 (proc #<directory (gnu home services symlink-manager) 7fffe02986e0>)
142:16 1 (compile-top-call #<directory (gnu home services symlink-manager) 7fffe02986e0> (7 . service-type) ((10 (13 15 7 . name) (5 . home-symlink-manager)) (10 (13 15 7 . extensions) (?)) # ?))
In unknown file:
0 (%resolve-variable (7 . service-type) #<directory (gnu home services symlink-manager) 7fffe02986e0>)

ERROR: In procedure %resolve-variable:
error: service-type: unbound variable

Ludo’.
L
L
Ludovic Courtès wrote on 1 Aug 2022 00:08
(name . ()(address . paren@disroot.org)(address . 56722-done@debbugs.gnu.org)
87bkt5aqb6.fsf@gnu.org
Hi,

"(" <paren@disroot.org> skribis:

Toggle quote (4 lines)
> vhallac has determined that commit
> ba22560627f848f40891a56355ff26b6de1380bc, which allowed `guix gc` to
> delete Home generations, caused this issue. Somehow.

Thanks for the heads-up. The offending commit is reinstated together
with a fix in 4de445f3dae5f5b42d59003cceddecfb296fb73b.

Ludo’.
Closed
(
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 56722-done@debbugs.gnu.org)
CLU6UE89RUCM.29X9QMGDG13HG@guix-aspire
On Sun Jul 31, 2022 at 11:08 PM BST, Ludovic Courtès wrote:
Toggle quote (2 lines)
> Thanks for the heads-up. The offending commit is reinstated together
> with a fix in 4de445f3dae5f5b42d59003cceddecfb296fb73b.
Thanks, Ludo'!

-- (
Closed
?