Thanks for your reply. > You should run "guix pull" for both root and your non-privileged > user(s). The version of Guix deployed for root is the version of Guix > that will be used when running commands like "guix system reconfigure" > as root. If you don't do "guix pull" as root, then whenever you run > "guix" as root, you'll be using out of date Guix code, which includes > the package definitions that come with Guix. The manual discusses the > fact that "guix pull" only updates the Guix copy for the user who runs > it (info '(guix) Invoking guix pull').
I use Guix, but not GuixSD, only on the non-privileged user and there's no package installed but guix on the root user. So technically I can't use `guix system' command, and won't run `guix' command on the root shell interactively. Then the reason that I should pull and upgrade the guix profile of the root user is for implicit executions of the guix as the root user. And the package definition is one of that implicit executions... Is it right? Then I should run `guix pull && guix package -u' _as the root user_ *before* have done it as a non-privileged user, because when the packages are upgraded, the package definitions should be up to date. And the system should be *rebooted* or *restart* the guix build daemon which, in fact, is using the guix binary that the root user has. Is my understanding correct? -- Attic Hermit
