Subject: bug#26848: closed (Re: Status: procedure resolve-interface finds no code for GUIX_PACKAGE_PATH modules which are otherwise working)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 10 Jun 2020 18:29:02 +0000

Your bug report

#26848: procedure resolve-interface finds no code for GUIX_PACKAGE_PATH modules which are otherwise working

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
26848: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=26848
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: Status: procedure resolve-interface finds no code for GUIX_PACKAGE_PATH modules which are otherwise working
From: Royce Strange <[email-masked]>
To: [email-masked]
Date: Wed, 10 Jun 2020 13:28:37 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello.

Alex Kost's suggestion to use "sudo -E" for system reconfiguration 
is what is needed when setting GUIX_PACKAGE_PATH in a user's environment
to use personal packages.

>From sudo's man page:
-----
     -E, --preserve-env
                 Indicates to the security policy that the user wishes to pre‐
                 serve their existing environment variables.  The security
                 policy may return an error if the user does not have permis‐
                 sion to preserve the environment.
-----

Verifying myself (as I still need to switch to using channels):
-----
$ guix --version
guix (GNU Guix) 2971ed57345ee4e00058efeaf27c6a0790fdc9dd

$ env | grep "GUIX_PACKAGE_PATH"
GUIX_PACKAGE_PATH=/home/royce/guix-config/.paths/my-packages

$ sudo guix system reconfigure my-config.scm 
guix system: error: failed to load 'my-config.scm':
ice-9/boot-9.scm:3300:6: In procedure resolve-interface:
no code for module (roy guix packages emacs)

$ sudo -E guix system reconfigure my-config.scm
...
guix system: bootloader successfully installed on '/boot/efi'
To complete the upgrade, run 'herd restart SERVICE' to stop,
upgrade, and restart each service that was not automatically restarted.
-----

Going to go ahead and close,
as it has been three years since it was suggested, 
and the fix proposed by Alex Kost works.

Subject: procedure resolve-interface finds no code for GUIX_PACKAGE_PATH modules which are otherwise working
From: ng0 <[email-masked]>
To: [email-masked]
Date: Mon, 8 May 2017 22:24:19 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

[user@abyayala ~/src/packages]$ sudo guix system reconfigure /etc/config.scm
guix system: error: failed to load '/etc/config.scm':
ice-9/boot-9.scm:2903:6: In procedure resolve-interface:
ice-9/boot-9.scm:2903:6: no code for module (ng0 packages personalized)

[user@abyayala ~/src/packages]$ env | grep "PACKAGE"
GUIX_PACKAGE_PATH=/home/user/src/packages

From /etc/config.scm first two lines:

(use-modules (gnu) (guix) (gnu system nss)
             (ng0 packages personalized))

This is used to reference "ii-ssl" in (packages),
which comes from the module in
https://git.pragmatique.xyz/ng0-packages/log.html

and which can be installed and used by the users.

Running "guix system build /etc/config.scm" with this
succeeds, just the "sudo guix system reconfigure /etc/config.scm"
produces this error.

I tried building the system with the config.scm located
in the same directory as the root of packages.git, but
this produces the same error.
-- 
https://pragmatique.xyz
PGP: https://people.pragmatique.xyz/ng0/