summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/home/services.scm3
-rw-r--r--guix/scripts/home.scm2
2 files changed, 4 insertions, 1 deletions
diff --git a/gnu/home/services.scm b/gnu/home/services.scm
index c497b14617..5c9b743f7b 100644
--- a/gnu/home/services.scm
+++ b/gnu/home/services.scm
@@ -508,7 +508,8 @@ environment, and its configuration file, when available.")))
 
 (define %guix-home-root-directory
   ;; Absolute file name of the module hierarchy.
-  (parent-directory (dirname (search-path %load-path "gnu/home/services.scm"))))
+  (parent-directory
+   (dirname (dirname (search-path %load-path "gnu/home/services.scm")))))
 
 (define %service-type-path
   ;; Search path for service types.
diff --git a/guix/scripts/home.scm b/guix/scripts/home.scm
index 8656db22c9..55e7b436c1 100644
--- a/guix/scripts/home.scm
+++ b/guix/scripts/home.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2021 Andrew Tropin <andrew@trop.in>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2021 Oleg Pykhalov <go.wigust@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -189,6 +190,7 @@ ACTION must be one of the sub-commands that takes a home environment
 declaration as an argument (a file name.)  OPTS is the raw alist of options
 resulting from command-line parsing."
   (define (ensure-home-environment file-or-exp obj)
+    (ensure-profile-directory)
     (unless (home-environment? obj)
       (leave (G_ "'~a' does not return a home environment ~%")
              file-or-exp))