1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-22 09:05:54 +02:00

services: shepherd: Allow custom 'shepherd' package.

* gnu/services/shepherd.scm (<shepherd-configuration>): New record.
(shepherd-boot-gexp, shepherd-root-service-type): Use it.
(scm->go, shepherd-configuration-file): Allow passing custom
shepherd package.
* gnu/system.scm (operating-system-shepherd-service-names): Use the new
record.
* guix/scripts/system.scm (export-shepherd-graph): Adjust accordingly.
* doc/guix.texi (Shepherd Services). Document it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Maxime Devos
2021-01-22 20:06:55 +01:00
committed by Ludovic Courtès
parent dae521a0c9
commit 95f72dcd7a
4 changed files with 64 additions and 19 deletions
+6 -4
View File
@@ -12,6 +12,7 @@
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1134,10 +1135,11 @@ we're running in the final root."
(define (operating-system-shepherd-service-names os)
"Return the list of Shepherd service names for OS."
(append-map shepherd-service-provision
(service-value
(fold-services (operating-system-services os)
#:target-type
shepherd-root-service-type))))
(shepherd-configuration-services
(service-value
(fold-services (operating-system-services os)
#:target-type
shepherd-root-service-type)))))
(define* (operating-system-derivation os)
"Return a derivation that builds OS."