aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-04-17 12:48:06 +0200
committerLudovic Courtès <ludo@gnu.org>2020-04-17 23:18:32 +0200
commit1e7281108be5fc37daa4cc180e0effdeb4c1a960 (patch)
treee3e145de15685fa91a72e1e4f90ff8ee3463b02a
parent10c413685f13af12fa2bb34796db82e1f52b47af (diff)
downloadguix-1e7281108be5fc37daa4cc180e0effdeb4c1a960.tar
guix-1e7281108be5fc37daa4cc180e0effdeb4c1a960.tar.gz
services: account: Have 'user-processes' depend on 'user-homes'.
Until now, 'user-homes' happened to start right after 'user-processes' and before services that depend on a home directory but the dependency was not explicit. This addresses it. * gnu/system/shadow.scm (account-service-type): Extend USER-PROCESSES-SERVICE-TYPE.
-rw-r--r--gnu/system/shadow.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm
index 42480e823c..a6f1d806cf 100644
--- a/gnu/system/shadow.scm
+++ b/gnu/system/shadow.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
@@ -314,9 +314,7 @@ accounts among ACCOUNTS+GROUPS."
;;
;; XXX: We arrange for this service to stop right after it's done its job so
;; that 'guix system reconfigure' knows that it can reload it fearlessly
- ;; (and thus create new home directories). The cost of this hack is that
- ;; there's a small window during which first-time logins could happen before
- ;; the home directory has been created.
+ ;; (and thus create new home directories).
(list (shepherd-service
(requirement '(file-systems))
(provision '(user-homes))
@@ -374,6 +372,11 @@ the /etc/skel directory for those."
account-activation)
(service-extension shepherd-root-service-type
account-shepherd-service)
+ ;; Have 'user-processes' depend on 'user-homes' so that
+ ;; daemons start after their home directory has been
+ ;; created.
+ (service-extension user-processes-service-type
+ (const '(user-homes)))
(service-extension etc-service-type
etc-files)))))