GNU bug report logs -
#17946
Try LOGNAME in addition to USER
Previous Next
Full log
View this message in rfc822 format
Cron jobs may set the LOGNAME environment variable but no USER,
e.g. under Debian 7 (wheezy). In that case 'guix package' fails to
use $localstatedir/guix/profiles/per-user/$user. From a quick grep I
couldn't find more places in Guix where USER is used, so here's a
patch that just does it straightforwardly in two places in
scripts/package.scm, but perhaps a more generic solution would be good
for the future.
===File
/home/tub/media/src/guix/0001-Try-LOGNAME-in-addition-to-USER.patch===
From 902267cf99aacaea994cc95b77551f0d2bd35836 Mon Sep 17 00:00:00 2001
From: Taylan Ulrich B <taylanbayirli <at> gmail.com>
Date: Sat, 5 Jul 2014 15:28:50 +0300
Subject: [PATCH] Try LOGNAME in addition to USER.
Notoriously, cron jobs may set LOGNAME only and not USER. See
e.g. crontab(5) under Debian 7 (wheezy).
* guix/scripts/package.scm (%profile-directory)
(guix-package): Also try LOGNAME if USER is unset.
---
guix/scripts/package.scm | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index f930b00..2e626f3 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -59,7 +59,8 @@
(define %profile-directory
(string-append %state-directory "/profiles/"
- (or (and=> (getenv "USER")
+ (or (and=> (or (getenv "USER")
+ (getenv "LOGNAME"))
(cut string-append "per-user/" <>))
"default")))
@@ -797,7 +798,9 @@ more information.~%"))
%profile-directory)
(format (current-error-port)
(_ "Please change the owner of `~a' to user ~s.~%")
- %profile-directory (or (getenv "USER") (getuid)))
+ %profile-directory (or (getenv "USER")
+ (getenv "LOGNAME")
+ (getuid)))
(rtfm))))
(define (process-actions opts)
--
1.8.4
============================================================
Taylan
This bug report was last modified 10 years and 322 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.