~ruther/guix-local

6879fe235cd4366d57433d4154bed530ce60d874 — Taylan Ulrich Bayirli/Kammer 11 years ago 3e39b91
guix package: Try $LOGNAME in addition to $USER.

Fixes <http://bugs.gnu.org/17946>.

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.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
1 files changed, 5 insertions(+), 2 deletions(-)

M guix/scripts/package.scm
M guix/scripts/package.scm => guix/scripts/package.scm +5 -2
@@ 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")))



@@ 808,7 809,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)