Re: Guix repl load-path confusion

2020-03-22 Thread Pierre Neidhardt
Jelle Licht  writes:

> The reason why I ran into this problem is that that
> building/installing/doing anything cool with emacs-guix consistently
> triggered this bug for me, as they used a repl in the background with
> the appropriate load-path set up.
>
> Should we consider this behavior a bug in guix, or simply a caveat that
> we should document in the manual section on channels?
>
>  - Jelle, who is extremely psyched about finally finding the cause
>of an issue that has been bothering me for 4 years :D

Ha!

I've been experiencing many breakages with emacs-guix for many tasks,
but I haven't taken the time to reproduce any of them reliably.

None of my channels' directories overlap with that of Guix if I'm not
mistaken, so it may be unrelated issues.

It seems to be working fine for me today though :)

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Re: Guix repl load-path confusion

2020-03-21 Thread Jelle Licht
Pierre Neidhardt  writes:

> No clue but for what it's worth, I can't reproduce on Guix
> ce226e9d8d52d2530f057f2000d36c0d55380ade :p

Tldr: Loading the modules in $HOME/.config/guix/current in a guile repl
breaks building packages when there are overlapping directories between
your configured guix channels.

Thanks! I finally figured it out. This has to do with overlapping
directory trees in guix channels. If you have a channel which has either
an overlapping `gnu/packages/...'  (my channel) or for example the guix
home manager channel (with `guix/scripts/...'), you run into these
obscure issues.

As I can simply use my own prefixed directory structure for my own
channel, and AFAICS there has already been gwl related discussions on
how to package guix extensions such as home manager, this issue is
easily prevented.

The reason why I ran into this problem is that that
building/installing/doing anything cool with emacs-guix consistently
triggered this bug for me, as they used a repl in the background with
the appropriate load-path set up.

Should we consider this behavior a bug in guix, or simply a caveat that
we should document in the manual section on channels?

 - Jelle, who is extremely psyched about finally finding the cause
   of an issue that has been bothering me for 4 years :D




Re: Guix repl load-path confusion

2020-03-21 Thread Pierre Neidhardt
No clue but for what it's worth, I can't reproduce on Guix
ce226e9d8d52d2530f057f2000d36c0d55380ade :p

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Guix repl load-path confusion

2020-03-19 Thread Jelle Licht
Simple question:
When I run the following in `guix repl':

--8<---cut here---start->8---
~ $ guix repl
GNU Guile 3.0.1
Copyright (C) 1995-2020 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guix-user)> ,m (guix ui)
scheme@(guix ui)> (run-guix "build" "ed")
0.1 MB will be downloaded:
   /gnu/store/c2vas7isbs7iwjsr7wr09iwdsw9vvy25-ed-1.15
substituting /gnu/store/c2vas7isbs7iwjsr7wr09iwdsw9vvy25-ed-1.15...
downloading from 
https://ci.guix.gnu.org/nar/lzip/c2vas7isbs7iwjsr7wr09iwdsw9vvy25-ed-1.15...
 ed-1.15  56KiB1.0MiB/s 00:00 
[##] 100.0%

/gnu/store/c2vas7isbs7iwjsr7wr09iwdsw9vvy25-ed-1.15
scheme@(guix ui)> 
--8<---cut here---end--->8---
.. everything seems to work as intended.

When I run: `guix repl -L
/home/jelle/.config/guix/current/share/guile/site/3.0', everything goes
really wrong:

--8<---cut here---start->8---
guix repl -L /home/jelle/.config/guix/current/share/guile/site/3.0
GNU Guile 3.0.1
Copyright (C) 1995-2020 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guix-user)> ,m (guix ui)
scheme@(guix ui)> (run-guix "build" "ed")
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
The following derivations will be built:
[snip] many packages [/snip]
   /gnu/store/xh1fy30irfhh9hwvd3ghw8ylxs8bdmyw-xz-5.2.4.drv
   /gnu/store/z8hdiqhpfa5d78k9si93rpf8lb15w6r5-lzip-1.21.drv
building /gnu/store/yqx8r9ifvzzl9rjpfmaywi6glqklxmc8-ld-wrapper-boot0-0.drv...
building 
"/gnu/store/w8fw0vzvai0yw5akfq3gd94avb7jvd4h-binutils-cross-boot0-2.32"/bin/ld 
wrapper in "/gnu/store/8xyx4dr7db18rs0w8mf1xdd63ywvl2bg-ld-wrapper-boot0-0"
Backtrace:
In ice-9/boot-9.scm:
 157: 11 [catch #t # ...]
In unknown file:
   ?: 10 [apply-smob/1 #]
In ice-9/boot-9.scm:
  63: 9 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 8 [eval # #]
In ice-9/boot-9.scm:
2320: 7 [save-module-excursion #]
3966: 6 [#]
1645: 5 [%start-stack load-stack #]
1650: 4 [#]
In unknown file:
   ?: 3 [primitive-load 
"/gnu/store/rj0sfjn8hnznw9yi1670isfxf4wdiv6y-ld-wrapper-boot0-0-guile-builder"]
In ice-9/eval.scm:
 387: 2 [eval # ()]
 432: 1 [eval # #]
In unknown file:
   ?: 0 [copy-file "/gnu/store/6f15hjcvf8a2xhwgf33xkfq3winks17f-ld-wrapper.in" 
...]

ERROR: In procedure copy-file:
ERROR: In procedure copy-file: No such file or directory
builder for 
`/gnu/store/yqx8r9ifvzzl9rjpfmaywi6glqklxmc8-ld-wrapper-boot0-0.drv' failed 
with exit code 1
build of /gnu/store/yqx8r9ifvzzl9rjpfmaywi6glqklxmc8-ld-wrapper-boot0-0.drv 
failed
View build log at 
'/var/log/guix/drvs/yq/x8r9ifvzzl9rjpfmaywi6glqklxmc8-ld-wrapper-boot0-0.drv.bz2'.
[snip] many packages [/snip]
cannot build derivation 
`/gnu/store/241aiwcpir0bigydsp4sn5ji9rd52i2d-ed-1.15.drv': 1 dependencies 
couldn't be built
guix build: error: build of 
`/gnu/store/241aiwcpir0bigydsp4sn5ji9rd52i2d-ed-1.15.drv' failed
--8<---cut here---end--->8---

Does anyone know why things go so wrong?

Thanks for any helping hands here,
 - Jelle