aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDariqq <dariqq@posteo.net>2024-12-16 21:33:12 +0000
committerLudovic Courtès <ludo@gnu.org>2025-05-14 18:11:07 +0200
commitde247e40576e0f84a004b18a9b737f2b8ca0420b (patch)
tree943580b91612d3ce8ef5f563e2683638e7afbe5a
parentb79fcdf444c7f7c24a342fe009e7c65aa3dfb49e (diff)
downloadguix-de247e40576e0f84a004b18a9b737f2b8ca0420b.tar.gz
guix-de247e40576e0f84a004b18a9b737f2b8ca0420b.zip
gnu: Add shepherd-for-home.
* gnu/packages/admin.scm (shepherd-for-home): New variable. Change-Id: If66c7e7b688de239ca862326b51592b43ba22c25 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/admin.scm29
1 files changed, 29 insertions, 0 deletions
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)