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.