aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2024-11-03 15:16:11 +0200
committerEfraim Flashner <efraim@flashner.co.il>2024-11-06 12:49:40 +0200
commit5a0e4b60d36f6748eca19f5f8cb3161c577b1f7e (patch)
treecc9ee06fbc4a8ab8a869c15cf798382dee87bd9c
parent847374eb151a4416849e1c2df794d27bd778e307 (diff)
downloadguix-5a0e4b60d36f6748eca19f5f8cb3161c577b1f7e.tar.gz
guix-5a0e4b60d36f6748eca19f5f8cb3161c577b1f7e.zip
gnu: Add shepherd-run.
* gnu/packages/admin.scm (shepherd-run): New variable. Change-Id: I4b08c84f83bcc588db7a11619321f4c8dee48257
-rw-r--r--gnu/packages/admin.scm40
1 files changed, 40 insertions, 0 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index c6a2a33a03..9c765b51a9 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -423,6 +423,46 @@ interface and is based on GNU Guile.")
(native-inputs (list pkg-config guile-2.2))
(inputs (list guile-2.2 guile2.2-fibers))))
+(define-public shepherd-run
+ (package
+ (name "shepherd-run")
+ (version "0.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~efraim/shepherd-run")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "033l8ignsrr6p2wgwcyqlswpbf58kyl8cf7zwkz028gqfq4arkr8"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags #~(list (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure) ; No configure script.
+ ;; First 'check checks the shell script which loads the gawk code.
+ ;; This 'check checks the installed gawk script.
+ (add-after 'patch-shebangs 'check-again
+ (lambda args
+ (apply (assoc-ref %standard-phases 'check)
+ (append args
+ (list #:make-flags
+ (list (string-append "BINARY=" %output
+ "/bin/shepherd-run"))))))))))
+ (native-inputs (list diffutils help2man))
+ (inputs (list gawk))
+ (synopsis "Create GNU Shepherd services from the command line")
+ (description
+ "Shepherd-run is a script which assists in creating one-off shepherd
+services from the command line. It is meant to partially fill the void left
+by @command{systemd-run}, since GNU Guix uses GNU Shepherd as its system service
+manager.")
+ (home-page "https://git.sr.ht/~efraim/shepherd-run")
+ (license license:gpl3+)))
+
(define-public swineherd
(package
(name "swineherd")