guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

10/11: pull: Work around Ubuntu's 'sudo'.


From: guix-commits
Subject: 10/11: pull: Work around Ubuntu's 'sudo'.
Date: Wed, 18 Sep 2019 17:10:38 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit ee25048e51dd45ad91a1ad4b0f25f4013843c52b
Author: Ludovic Courtès <address@hidden>
Date:   Wed Sep 18 22:59:13 2019 +0200

    pull: Work around Ubuntu's 'sudo'.
    
    Partly fixes <https://bugs.gnu.org/36785>.
    Reported by Julien Lepiller <address@hidden>.
    
    * guix/scripts/pull.scm (ensure-default-profile): Do not call
    'migrate-generations' when "SUDO_USER" is set.
---
 guix/scripts/pull.scm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm
index 54bbadd..4b03cea 100644
--- a/guix/scripts/pull.scm
+++ b/guix/scripts/pull.scm
@@ -293,8 +293,15 @@ true, display what would be built without actually 
building it."
 
   ;; In 0.15.0+ we'd create ~/.config/guix/current-[0-9]*-link symlinks.  Move
   ;; them to %PROFILE-DIRECTORY.
-  (unless (string=? %profile-directory
-                    (dirname (canonicalize-profile %user-profile-directory)))
+  ;;
+  ;; XXX: Ubuntu's 'sudo' preserves $HOME by default, and thus the second
+  ;; condition below is always false when one runs "sudo guix pull".  As a
+  ;; workaround, skip this code when $SUDO_USER is set.  See
+  ;; <https://bugs.gnu.org/36785>.
+  (unless (or (getenv "SUDO_USER")
+              (string=? %profile-directory
+                        (dirname
+                         (canonicalize-profile %user-profile-directory))))
     (migrate-generations %user-profile-directory %profile-directory))
 
   ;; Make sure ~/.config/guix/current points to /var/guix/profiles/….



reply via email to

[Prev in Thread] Current Thread [Next in Thread]