aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/admin.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/admin.scm')
-rw-r--r--gnu/packages/admin.scm226
1 files changed, 155 insertions, 71 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 88d68a3afc..77d02baa4e 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -9,7 +9,7 @@
;;; Copyright © 2016, 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016, 2017, 2023 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016-2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@@ -31,7 +31,7 @@
;;; Copyright © 2019, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019, 2020, 2021 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
-;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2021, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
@@ -414,6 +414,18 @@ interface and is based on GNU Guile.")
(replace "guile-fibers"
(this-package-native-input "guile-fibers"))))))
+(define-public shepherd-1.0
+ (package
+ (inherit shepherd-0.10)
+ (version "1.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/shepherd/shepherd-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0z4yxl8g0k3b6k4x7b3ks10x31hs46j5kmw0ah5cr417n0rszrp8"))))))
+
(define-public shepherd shepherd-0.10)
(define-public guile2.2-shepherd
@@ -423,6 +435,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.2.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
+ "0mvn5qi4bq9nsb1462pbzssb1z5w2s160lqd2ps3rjjc4z3f3gjj"))))
+ (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")
@@ -529,12 +581,21 @@ inspired by @command{vi}.")
,(map dirname
(map (cut search-input-file inputs <>)
(list "bin/readlink"
- "sbin/sfdisk")))))))))))
+ "sbin/sfdisk"
+ "bin/sed"
+ "bin/grep"
+ "bin/awk"
+ "bin/udevadm"
+ "bin/flock")))))))))))
(inputs
(list bash-minimal ;for wrap-program
- coreutils ;for readlink
+ coreutils ;for readlink and cat
+ sed ;growpart
+ grep ;growpart
+ gawk ;awk for growpart
+ eudev ;udevadm for growpart
python
- util-linux)) ;sfdisk for growpart
+ util-linux)) ;sfdisk, flock, partx, blkid for growpart
(home-page "https://launchpad.net/cloud-utils")
(synopsis "Set of utilities for cloud computing environments")
(description
@@ -1004,7 +1065,17 @@ re-executing them as necessary.")
"\\\""))
;; On some systems, 'libls.sh' may fail with an error such as:
;; "Failed to tell switch -a apart from -A".
- #:parallel-tests? #f))
+ #:parallel-tests? #f
+ #:phases (if (target-hurd64?)
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'apply-hurd64-patch
+ (lambda _
+ (let ((patch
+ #$(local-file
+ (search-patch
+ "inetutils-hurd64.patch"))))
+ (invoke "patch" "--force" "-p1" "-i" patch)))))
+ #~%standard-phases)))
(inputs
(list coreutils
shadow ;for login (used in telnetd and rlogind)
@@ -2622,7 +2693,8 @@ system is under heavy load.")
;; XXX The test suite seems to cause instability on the VisionFive 2
;; build machines, maybe it's stressing them as intended but this is
;; unhelpful.
- (list #:tests? (not (target-riscv64?))
+ (list #:tests? (and (not (%current-target-system))
+ (not (target-riscv64?)))
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "BINDIR=" #$output "/bin")
@@ -5017,10 +5089,17 @@ elogind's uaccess feature.")
;; XXX Guix's America/Los_Angeles time zone is somehow broken.
(add-before 'check 'hack-time-zone
(lambda _
- (setenv "TZ" "PST8PDT"))))))
- (native-inputs (list python-pytest))
+ (setenv "TZ" "PST8PDT")
+ (substitute* (find-files "tests" "^test.*\\.py$")
+ (("America/Los_Angeles") "PST8PDT")))))))
+ (native-inputs
+ (list python-pytest
+ python-setuptools
+ python-wheel))
(propagated-inputs
- (list python-pygments python-ruamel.yaml python-xmltodict))
+ (list python-pygments
+ python-ruamel.yaml
+ python-xmltodict))
(home-page "https://github.com/kellyjonbrazil/jc")
(synopsis "Convert the output of command-line tools to JSON")
(description "@code{jc} JSONifies the output of many CLI tools and
@@ -5722,7 +5801,7 @@ on a GUI toolkit.")
(define-public libseat
(package
(name "libseat")
- (version "0.8.0")
+ (version "0.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -5731,15 +5810,15 @@ on a GUI toolkit.")
(file-name (git-file-name name version))
(sha256
(base32
- "02wzrgp8di6hqmicnm2fim6jnvbn62wy248ikvdvrhiywrb7i931"))))
+ "1q1ih1f9v5240nlas1gz44giwq4k88p3yikfq7w0a4sw58yr6pz8"))))
(build-system meson-build-system)
(arguments
- `(#:configure-flags '("-Dlibseat-logind=elogind"
- "-Dserver=disabled")))
+ (list #:configure-flags #~(list "-Dlibseat-logind=elogind"
+ "-Dserver=disabled")))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ (list pkg-config))
(propagated-inputs
- `(("elogind" ,elogind)))
+ (list elogind))
(home-page "https://sr.ht/~kennylevinsen/seatd")
(synopsis "Seat management library")
(description
@@ -5752,16 +5831,16 @@ allows applications to use whatever seat management is available.")
(inherit libseat)
(name "seatd")
(arguments
- `(#:configure-flags '("-Dlibseat-logind=elogind")
- #:phases
- (modify-phases %standard-phases
- (add-after 'install 'remove-libs
- (lambda* (#:key outputs #:allow-other-keys)
- (with-directory-excursion (assoc-ref outputs "out")
- (for-each delete-file-recursively '("lib" "include"))))))))
+ (list #:configure-flags #~(list "-Dlibseat-logind=elogind")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'remove-libs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion (assoc-ref outputs "out")
+ (for-each delete-file-recursively '("lib" "include"))))))))
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("scdoc" ,scdoc)))
+ (list pkg-config
+ scdoc))
(inputs '())
(synopsis "Seat management daemon")
(description
@@ -6181,54 +6260,59 @@ file or files to several hosts.")
(define-public du-dust
(package
(name "du-dust")
- (version "0.8.6")
- (source (origin
- (method url-fetch)
- (uri (crate-uri "du-dust" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1w52xdz1vi6awsvf4lph791zv13phjvz4ypmxr7f6pgxd3crr77c"))))
+ (version "1.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "du-dust" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0qr6ikq2ds8bq35iw480qyhf3d43dj61wiwp8587n3mgqf5djx8w"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-test-flags
- (list "--release" "--"
- "--skip=test_apparent_size")
- #:install-source? #f
- #:cargo-inputs (("rust-ansi-term" ,rust-ansi-term-0.12)
- ("rust-atty" ,rust-atty-0.2)
- ("rust-clap" ,rust-clap-3)
- ("rust-clap-complete" ,rust-clap-complete-3)
- ("rust-clap-mangen" ,rust-clap-mangen-0.1)
- ("rust-config-file" ,rust-config-file-0.2)
- ("rust-directories" ,rust-directories-4)
- ("rust-lscolors" ,rust-lscolors-0.13)
- ("rust-rayon" ,rust-rayon-1)
- ("rust-regex" ,rust-regex-1)
- ("rust-serde" ,rust-serde-1)
- ("rust-stfu8" ,rust-stfu8-0.2)
- ("rust-sysinfo" ,rust-sysinfo-0.27)
- ("rust-terminal-size" ,rust-terminal-size-0.2)
- ("rust-thousands" ,rust-thousands-0.2)
- ("rust-unicode-width" ,rust-unicode-width-0.1)
- ("rust-winapi-util" ,rust-winapi-util-0.1))
- #:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-2)
- ("rust-tempfile" ,rust-tempfile-3))
- #:phases
- (modify-phases %standard-phases
- (add-after 'install 'install-extras
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (share (string-append out "/share")))
- (install-file "man-page/dust.1"
- (string-append share "/man/man1"))
- (mkdir-p (string-append out "/etc/bash_completion.d"))
- (copy-file "completions/dust.bash"
- (string-append out "/etc/bash_completion.d/dust"))
- (install-file "completions/dust.fish"
- (string-append share "/fish/vendor_completions.d"))
- (install-file "completions/_dust"
- (string-append share "/zsh/site-functions"))))))))
+ (list #:cargo-test-flags `(list "--release" "--"
+ "--skip=test_apparent_size")
+ #:install-source? #f
+ #:cargo-inputs `(("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-clap" ,rust-clap-4)
+ ("rust-clap-complete" ,rust-clap-complete-4)
+ ("rust-clap-mangen" ,rust-clap-mangen-0.2)
+ ("rust-config-file" ,rust-config-file-0.2)
+ ("rust-ctrlc" ,rust-ctrlc-3)
+ ("rust-directories" ,rust-directories-4)
+ ("rust-filesize" ,rust-filesize-0.2)
+ ("rust-lscolors" ,rust-lscolors-0.13)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-stfu8" ,rust-stfu8-0.2)
+ ("rust-sysinfo" ,rust-sysinfo-0.27)
+ ("rust-terminal-size" ,rust-terminal-size-0.2)
+ ("rust-thousands" ,rust-thousands-0.2)
+ ("rust-unicode-width" ,rust-unicode-width-0.1)
+ ("rust-winapi-util" ,rust-winapi-util-0.1))
+ #:cargo-development-inputs `(("rust-assert-cmd" ,rust-assert-cmd-2)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'install 'install-extras
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (share (string-append out "/share")))
+ (install-file "man-page/dust.1"
+ (string-append share "/man/man1"))
+ (mkdir-p (string-append out
+ "/etc/bash_completion.d"))
+ (copy-file "completions/dust.bash"
+ (string-append out
+ "/etc/bash_completion.d/dust"))
+ (install-file "completions/dust.fish"
+ (string-append share
+ "/fish/vendor_completions.d"))
+ (install-file "completions/_dust"
+ (string-append share
+ "/zsh/site-functions"))))))))
(home-page "https://github.com/bootandy/dust")
(synopsis "Graphical disk usage analyzer")
(description "This package provides a graphical disk usage analyzer in