Subject: [bug#41601] [PATCH] doc: Make 'sudo -E ./pre-inst-env guix-daemon' example less prominent.

From: Julien Lepiller <[email-masked]>
Date: Fri, 29 May 2020 11:36:15 -0400

Le 29 mai 2020 11:00:03 GMT-04:00, Marius Bakke <[email-masked]> a écrit :
>* doc/contributing.texi (Running Guix Before It Is Installed): Move
>'./pre-inst-env guix-daemon' example after the mention of
>GUILE_LOAD_PATH &
>co, because running the daemon from the checkout frequently trips new
>users.
>Additionally clarify that sudo must be setuid.
>---
> doc/contributing.texi | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
>diff --git a/doc/contributing.texi b/doc/contributing.texi
>index 88128e5498..d9e54dd23b 100644
>--- a/doc/contributing.texi
>+++ b/doc/contributing.texi
>@@ -161,13 +161,8 @@ with all the dependencies available
>(@pxref{Building from Git}), and then
> simply prefix each command with
> @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the
> top build tree of Guix; it is generated by @command{./configure}).
>-An example@footnote{The @option{-E} flag to
>-@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set
>-such that @command{guix-daemon} and the tools it uses can find the
>Guile
>-modules they need.}:
> 
> @example
>-$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
> $ ./pre-inst-env guix build hello
> @end example
> 
>@@ -205,6 +200,16 @@ $1 = 361
>The @command{pre-inst-env} script sets up all the environment variables
>necessary to support this, including @env{PATH} and
>@env{GUILE_LOAD_PATH}.
> 
>+When root privileges are required, use the @option{-E} argument to
>+@command{sudo} to preserve the environment@footnote{Additionally, make
>sure
>+to use the installed @command{sudo} such as
>@file{/run/setuid-programs/sudo}
>+instead of the @code{sudo} package, otherwise sudo won't be able to
>elevate
>+privileges}.  E.g. if you are testing changes to
>@command{guix-daemon}:
>+
>+@example
>+$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
>+@end example
>+
>Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade
>the
> local source tree; it simply updates the @file{~/.config/guix/current}
>symlink (@pxref{Invoking guix pull}).  Run @command{git pull} instead
>if

Looks good, but you should mention that, before running the daemon that way, the one running on the system must be stopped (herd stop guix-daemon or whatever init system is installed).