unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
@ 2017-11-30 20:57 Adonay Felipe Nogueira
  2017-12-04  9:07 ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Adonay Felipe Nogueira @ 2017-11-30 20:57 UTC (permalink / raw)
  To: 29519

I'm experimenting developing directly to the Git checkout instead of
using GUIX_PACKAGE_PATH to develop and test package definitions.

Currently this is what I do:

--8<---------------cut here---------------start------------->8---
# If the local clone is somewhat dirty, clear it.
git reset --hard HEAD
git clean -fdx
# Uptdate the local clone.
git pull
# Use my already-installed Guix to prepare environment to hack on Guix.
guix environment guix
# Follow the info pages.
./bootstrap
# I checked contents of "/var" and it is indeed the localstatedir
# because "guix" (and gc lock, temproots and so on) is there.
./configure --localstatedir="/var"
# Do I need to do `make'? Since I'm used to do it I'll do it anyways.
make
# Back to following the info pages.
make check
--8<---------------cut here---------------end--------------->8---

Now I keep the first terminal open, and in a second terminal, I also go
to the local copy and do `guix environment guix', and keep that terminal
for now.

In a third terminal I stop the system's guix-daemon service, with
something similar to `sudo service guix-daemon stop'.

Then I go back to the first terminal, and do `sudo ./pre-inst-env
guix-daemon --debug --build-users-group=guixbuild', and that terminal is
now busy logging the daemon's activity.

In the second terminal I do `./pre-inst-env guix build --verbosity=4
hello' and I get this:

--8<---------------cut here---------------start------------->8---
acquiring global GC lock `/var/guix/gc.lock'
acquiring read lock on `/var/guix/temproots/26301'
acquiring write lock on `/var/guix/temproots/26301'
downgrading to read lock on `/var/guix/temproots/26301'
[... Repetitions of the same last two messages...]
starting substituter program `/home/adfeno/Projetos/Software/guix/nix/scripts/substitute'
substitute: guile: warning: failed to install locale
substitute: warning: failed to install locale: Invalid argument
substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
substitute: ;;; Failed to autoload make-session in (gnutls):
substitute: ;;; ERROR: missing interface for module (gnutls)
substitute: Backtrace:
substitute:            1 (primitive-load "/home/adfeno/Projetos/Software/guix/sc?")
substitute: In guix/ui.scm:
substitute:   1452:12  0 (run-guix-command _ . _)
substitute:
substitute: guix/ui.scm:1452:12: In procedure run-guix-command:
substitute: guix/ui.scm:1452:12: make-session: unbound variable
guix build: error: build failed: substituter `substitute' died unexpectedly
--8<---------------cut here---------------end--------------->8---

This also happens if I *don't* stop the already installed Guix daemon,
with the difference that in this case after stopping the ./pre-inst-env
guix-daemon, any further attempts to use the installed Guix daemon ---
even if no longer in the environment and even in a new terminal --- will
be denied, forcing me to restart this one.

In both cases (./pre-inst-env guix-daemon with installed guix-daemon
running or not), the ./pre-inst-env guix-daemon shows this:

--8<---------------cut here---------------start------------->8---
extra chroot directories: ''
automatic deduplication set to 1
listening on `/var/guix/daemon-socket/socket'
accepted connection from pid 26186, user adfeno
443 operations
--8<---------------cut here---------------end--------------->8---

I hope this helps finding out what the problem is.


Respectfully, Adonay.

-- 
- https://libreplanet.org/wiki/User:Adfeno
- Palestrante e consultor sobre /software/ livre (não confundir com
  gratis).
- "WhatsApp"? Ele não é livre. Por favor, veja formas de se comunicar
  instantaneamente comigo no endereço abaixo.
- Contato: https://libreplanet.org/wiki/User:Adfeno#vCard
- Arquivos comuns aceitos (apenas sem DRM): Corel Draw, Microsoft
  Office, MP3, MP4, WMA, WMV.
- Arquivos comuns aceitos e enviados: CSV, GNU Dia, GNU Emacs Org, GNU
  GIMP, Inkscape SVG, JPG, LibreOffice (padrão ODF), OGG, OPUS, PDF
  (apenas sem DRM), PNG, TXT, WEBM.

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2017-11-30 20:57 bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls) Adonay Felipe Nogueira
@ 2017-12-04  9:07 ` Ludovic Courtès
  2018-01-16 18:40   ` Adonay Felipe Nogueira
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2017-12-04  9:07 UTC (permalink / raw)
  To: Adonay Felipe Nogueira, Leo Famulari; +Cc: 29519

Hello,

Adonay Felipe Nogueira <adfeno@hyperbola.info> skribis:

> starting substituter program `/home/adfeno/Projetos/Software/guix/nix/scripts/substitute'
> substitute: guile: warning: failed to install locale
> substitute: warning: failed to install locale: Invalid argument
> substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
> substitute: ;;; Failed to autoload make-session in (gnutls):
> substitute: ;;; ERROR: missing interface for module (gnutls)
> substitute: Backtrace:
> substitute:            1 (primitive-load "/home/adfeno/Projetos/Software/guix/sc?")
> substitute: In guix/ui.scm:
> substitute:   1452:12  0 (run-guix-command _ . _)
> substitute:
> substitute: guix/ui.scm:1452:12: In procedure run-guix-command:
> substitute: guix/ui.scm:1452:12: make-session: unbound variable
> guix build: error: build failed: substituter `substitute' died unexpectedly

The problem is that the (gnutls) module is not in the search path of
‘guix substitute’.

Usually the solution is to start the daemon using something like:

  sudo -E ./pre-inst-env guix-daemon …

so that ‘guix-daemon’ inherits the correct values for ‘GUILE_LOAD_PATH’,
etc.

Does that work for you?

We used to have this suggestion in the doc, but it was reverted in
commit 73a203450d21241eca50375aeb26fb418b287414.  Leo, do you think we
can reinstate it?  I’m not sure why it was reverted in the first place.

Thanks,
Ludo’.

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2017-12-04  9:07 ` Ludovic Courtès
@ 2018-01-16 18:40   ` Adonay Felipe Nogueira
  2018-01-16 20:44     ` Leo Famulari
  2018-01-17 23:53     ` Leo Famulari
  0 siblings, 2 replies; 7+ messages in thread
From: Adonay Felipe Nogueira @ 2018-01-16 18:40 UTC (permalink / raw)
  To: 29519

I didn't test this yet, but I was wondering about `sudo'
"-E"/"--preserve-env" option, wasn't it dropped because it would
conflict with other variables that the user has? Or better yet, because
it would take package definitions from other places?

2017-12-04T10:07:40+0100 Ludovic Courtès wrote:
> Hello,
>
> The problem is that the (gnutls) module is not in the search path of
> ‘guix substitute’.
>
> Usually the solution is to start the daemon using something like:
>
>   sudo -E ./pre-inst-env guix-daemon …
>
> so that ‘guix-daemon’ inherits the correct values for ‘GUILE_LOAD_PATH’,
> etc.
>
> Does that work for you?
>
> We used to have this suggestion in the doc, but it was reverted in
> commit 73a203450d21241eca50375aeb26fb418b287414.  Leo, do you think we
> can reinstate it?  I’m not sure why it was reverted in the first place.
>
> Thanks,
> Ludo’.
>

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2018-01-16 18:40   ` Adonay Felipe Nogueira
@ 2018-01-16 20:44     ` Leo Famulari
  2018-01-17  8:54       ` Ludovic Courtès
  2018-01-17 23:53     ` Leo Famulari
  1 sibling, 1 reply; 7+ messages in thread
From: Leo Famulari @ 2018-01-16 20:44 UTC (permalink / raw)
  To: Adonay Felipe Nogueira; +Cc: 29519

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

On Tue, Jan 16, 2018 at 04:40:30PM -0200, Adonay Felipe Nogueira wrote:
> I didn't test this yet, but I was wondering about `sudo'
> "-E"/"--preserve-env" option, wasn't it dropped because it would
> conflict with other variables that the user has? Or better yet, because
> it would take package definitions from other places?
> 
> 2017-12-04T10:07:40+0100 Ludovic Courtès wrote:
> > Hello,
> >
> > The problem is that the (gnutls) module is not in the search path of
> > ‘guix substitute’.
> >
> > Usually the solution is to start the daemon using something like:
> >
> >   sudo -E ./pre-inst-env guix-daemon …
> >
> > so that ‘guix-daemon’ inherits the correct values for ‘GUILE_LOAD_PATH’,
> > etc.
> >
> > Does that work for you?
> >
> > We used to have this suggestion in the doc, but it was reverted in
> > commit 73a203450d21241eca50375aeb26fb418b287414.  Leo, do you think we
> > can reinstate it?  I’m not sure why it was reverted in the first place.

I missed this request previously :/

Originally, I reverted the suggestion because it was causing problems
for some users on #guix, and I thought it was risky to propagate the
user's environment into a privileged context.

But perhaps it's not any more risky than using sudo, in general.

Ludo, please let me know if you'd still like me to reinstate the advice
to use `sudo -E`.

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

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2018-01-16 20:44     ` Leo Famulari
@ 2018-01-17  8:54       ` Ludovic Courtès
  2018-01-17 23:51         ` Leo Famulari
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-01-17  8:54 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 29519

Heya,

Leo Famulari <leo@famulari.name> skribis:

> On Tue, Jan 16, 2018 at 04:40:30PM -0200, Adonay Felipe Nogueira wrote:
>> 2017-12-04T10:07:40+0100 Ludovic Courtès wrote:
>> > Hello,
>> >
>> > The problem is that the (gnutls) module is not in the search path of
>> > ‘guix substitute’.
>> >
>> > Usually the solution is to start the daemon using something like:
>> >
>> >   sudo -E ./pre-inst-env guix-daemon …
>> >
>> > so that ‘guix-daemon’ inherits the correct values for ‘GUILE_LOAD_PATH’,
>> > etc.
>> >
>> > Does that work for you?
>> >
>> > We used to have this suggestion in the doc, but it was reverted in
>> > commit 73a203450d21241eca50375aeb26fb418b287414.  Leo, do you think we
>> > can reinstate it?  I’m not sure why it was reverted in the first place.
>
> I missed this request previously :/
>
> Originally, I reverted the suggestion because it was causing problems
> for some users on #guix, and I thought it was risky to propagate the
> user's environment into a privileged context.
>
> But perhaps it's not any more risky than using sudo, in general.
>
> Ludo, please let me know if you'd still like me to reinstate the advice
> to use `sudo -E`.

I think you can reinstate it, perhaps with a word of caution explaining
what -E does?

Thanks,
Ludo’.

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2018-01-17  8:54       ` Ludovic Courtès
@ 2018-01-17 23:51         ` Leo Famulari
  0 siblings, 0 replies; 7+ messages in thread
From: Leo Famulari @ 2018-01-17 23:51 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 29519-done

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

On Wed, Jan 17, 2018 at 09:54:49AM +0100, Ludovic Courtès wrote:
> Heya,
> 
> Leo Famulari <leo@famulari.name> skribis:
> 
> > On Tue, Jan 16, 2018 at 04:40:30PM -0200, Adonay Felipe Nogueira wrote:
> >> 2017-12-04T10:07:40+0100 Ludovic Courtès wrote:
> >> > Hello,
> >> >
> >> > The problem is that the (gnutls) module is not in the search path of
> >> > ‘guix substitute’.
> >> >
> >> > Usually the solution is to start the daemon using something like:
> >> >
> >> >   sudo -E ./pre-inst-env guix-daemon …
> >> >
> >> > so that ‘guix-daemon’ inherits the correct values for ‘GUILE_LOAD_PATH’,
> >> > etc.
> >> >
> >> > Does that work for you?
> >> >
> >> > We used to have this suggestion in the doc, but it was reverted in
> >> > commit 73a203450d21241eca50375aeb26fb418b287414.  Leo, do you think we
> >> > can reinstate it?  I’m not sure why it was reverted in the first place.
> >
> > I missed this request previously :/
> >
> > Originally, I reverted the suggestion because it was causing problems
> > for some users on #guix, and I thought it was risky to propagate the
> > user's environment into a privileged context.
> >
> > But perhaps it's not any more risky than using sudo, in general.
> >
> > Ludo, please let me know if you'd still like me to reinstate the advice
> > to use `sudo -E`.
> 
> I think you can reinstate it, perhaps with a word of caution explaining
> what -E does?

Done in 67441b9a6ebd4be094a88f6ea4555de026de4dfc.

I didn't add a warning about -E... I worry about re-documenting other
software in our own manual.

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

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

* bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls)
  2018-01-16 18:40   ` Adonay Felipe Nogueira
  2018-01-16 20:44     ` Leo Famulari
@ 2018-01-17 23:53     ` Leo Famulari
  1 sibling, 0 replies; 7+ messages in thread
From: Leo Famulari @ 2018-01-17 23:53 UTC (permalink / raw)
  To: Adonay Felipe Nogueira; +Cc: 29519

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

On Tue, Jan 16, 2018 at 04:40:30PM -0200, Adonay Felipe Nogueira wrote:
> I didn't test this yet, but I was wondering about `sudo'
> "-E"/"--preserve-env" option, wasn't it dropped because it would
> conflict with other variables that the user has? Or better yet, because
> it would take package definitions from other places?

That's sort of what I was worried about, but I guess each person using
pre-inst-env needs to understand what `sudo -E` does and how their
environment might interact with a privileged environment.

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

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

end of thread, other threads:[~2018-01-17 23:54 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-30 20:57 bug#29519: ./pre-inst-env: substitute: Failed to autoload make-session in (gnutls) Adonay Felipe Nogueira
2017-12-04  9:07 ` Ludovic Courtès
2018-01-16 18:40   ` Adonay Felipe Nogueira
2018-01-16 20:44     ` Leo Famulari
2018-01-17  8:54       ` Ludovic Courtès
2018-01-17 23:51         ` Leo Famulari
2018-01-17 23:53     ` Leo Famulari

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).