From 7acd3439eab716882835228be16346c5d3b4df21 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 8 Jun 2015 23:25:51 +0200 Subject: install: Omit /root from the binary tarball. Suggested by Thomas Schwinge . * gnu/system/install.scm (self-contained-tarball): Remove "/root/.guix-profile" from the 'tar' arguments. * doc/guix.texi (Binary Installation): Add a step to create ~root/.guix-profile. --- doc/guix.texi | 18 +++++++++++++----- gnu/system/install.scm | 7 ++++--- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 85ccd4057e..a0f3443d9e 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -284,18 +284,26 @@ As @code{root}, run: # tar xf guix-binary-@value{VERSION}.@var{system}.tar.xz @end example -This creates @file{/gnu/store} (@pxref{The Store}), @file{/var/guix}, -and @file{/root/.guix-profile}. @file{/root/.guix-profile} is a -ready-to-use profile for @code{root} where Guix is installed. +This creates @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. +The latter contains a ready-to-use profile for @code{root} (see next +step.) Do @emph{not} unpack the tarball on a working Guix system since that would overwrite its own essential files. +@item +Make @code{root}'s profile available under @file{~/.guix-profile}: + +@example +# ln -sf /var/guix/profiles/per-user/root/guix-profile \ + ~root/.guix-profile +@end example + @item Run the daemon: @example -# /root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild +# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild @end example @item @@ -313,7 +321,7 @@ To use substitutes from @code{hydra.gnu.org} (@pxref{Substitutes}), authorize them: @example -# guix archive --authorize < /root/.guix-profile/share/guix/hydra.gnu.org.pub +# guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub @end example @end enumerate diff --git a/gnu/system/install.scm b/gnu/system/install.scm index cacd089d6b..27d8ecdefc 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -73,11 +73,12 @@ under /root/.guix-profile where GUIX is installed." (zero? (system* "tar" "--xz" "--format=gnu" "--owner=root:0" "--group=root:0" "-cvf" #$output - ;; Avoid adding /, /var, or /root to the tarball, + ;; Avoid adding / and /var to the tarball, ;; so that the ownership and permissions of those ;; directories will not be overwritten when - ;; extracting the archive. - "./root/.guix-profile" + ;; extracting the archive. Do not include /root + ;; because the root account might have a different + ;; home directory. "./var/guix" (string-append "." (%store-directory))))))) -- cgit 1.4.1