civodul pushed a commit to branch master
in repository guix.
commit de247e40576e0f84a004b18a9b737f2b8ca0420b
Author: Dariqq <[email protected]>
AuthorDate: Mon Dec 16 21:33:12 2024 +0000
gnu: Add shepherd-for-home.
* gnu/packages/admin.scm (shepherd-for-home): New variable.
Change-Id: If66c7e7b688de239ca862326b51592b43ba22c25
Signed-off-by: Ludovic Courtès <[email protected]>
Modified-by: Ludovic Courtès <[email protected]>
---
gnu/packages/admin.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 4d7b95913b..cff378f184 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -603,6 +603,35 @@ interface and is based on GNU Guile.")
(define-public shepherd shepherd-0.10)
+(define-public shepherd-for-home
+ ;; Variant of shepherd without 'sbin' to not shadow 'halt' and 'reboot' on
+ ;; foreign distributions.
+ (let ((base shepherd-1.0))
+ (hidden-package
+ (package/inherit base
+ (name "shepherd-for-home")
+ (source #f)
+ (build-system trivial-build-system)
+ (arguments
+ (list
+ #:modules '((guix build union)
+ (guix build utils))
+ #:builder
+ #~(begin
+ (use-modules (guix build union)
+ (guix build utils))
+ (union-build #$output
+ (list #$(this-package-input "shepherd"))
+ #:create-all-directories? #t)
+ (delete-file-recursively
+ (string-append #$output "/sbin"))
+ (delete-file-recursively
+ (string-append #$output "/share/man/man8")))))
+ (synopsis
+ "The Shepherd for Guix Home, without @command{halt} and
@command{reboot}")
+ (native-inputs '())
+ (inputs (list base))))))
+
(define-public guile2.2-shepherd
(package
(inherit shepherd-0.10)