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.scm85
1 files changed, 75 insertions, 10 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index cb8e73e95a..36f063ca96 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -58,6 +58,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
+ #:use-module (guix build-system ruby)
#:use-module (guix build-system trivial)
#:use-module (guix download)
#:use-module (guix git-download)
@@ -121,6 +122,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages ruby)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages tcl)
#:use-module (gnu packages terminals)
@@ -429,6 +431,71 @@ services.")
graphs and can export its output to different formats.")
(license license:bsd-3)))
+(define-public facter
+ (package
+ (name "facter")
+ (version "4.0.24")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/puppetlabs/facter-ng")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n8yd2p7m0jf0wld6q43f2gqxyz8fiamz3p79wbl53q5qih0vba2"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'delete-facter-ng-gemspec
+ (lambda _
+ ;; XXX: ruby-build-system incorrectly finds
+ ;; facter-ng.gemspec from this directory and tries to
+ ;; build that instead of the proper facter.gemspec.
+ ;; Just delete it as a workaround, as it appears to
+ ;; only exist for backwards-compatibility after the
+ ;; facter-ng->facter rename.
+ (delete-file "agent/facter-ng.gemspec")
+ #t))
+ (add-after 'unpack 'embed-iproute-reference
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((iproute (assoc-ref inputs "iproute")))
+ ;; Provide an absolute reference to the 'ip' executable
+ ;; to avoid propagating it.
+ (substitute* "lib/resolvers/networking_linux_resolver.rb"
+ (("execute\\('ip")
+ (string-append "execute('" iproute "/sbin/ip")))
+ #t)))
+ (delete 'check)
+ (add-after 'wrap 'check
+ (lambda* (#:key tests? outputs #:allow-other-keys)
+ ;; XXX: The test suite wants to run Bundler and
+ ;; complains that the gemspec is invalid. For now
+ ;; just make sure that we can run the wrapped
+ ;; executable directly.
+ (if tests?
+ (invoke (string-append (assoc-ref outputs "out")
+ "/bin/facter")
+ ;; Many facts depend on /sys, /etc/os-release,
+ ;; etc, so we only run a small sample.
+ "facterversion" "architecture"
+ "kernel" "kernelversion")
+ (format #t "tests disabled~%"))
+ #t)))))
+ (inputs
+ `(("iproute" ,iproute)
+ ("ruby-hocon" ,ruby-hocon)
+ ("ruby-sys-filesystem" ,ruby-sys-filesystem)
+ ("ruby-thor" ,ruby-thor)))
+ (synopsis "Collect and display system facts")
+ (description
+ "Facter is a tool that gathers basic facts about nodes (systems) such
+as hardware details, network settings, OS type and version, and more. These
+facts can be collected on the command line with the @command{facter} command
+or via the @code{facter} Ruby library.")
+ (home-page "https://github.com/puppetlabs/facter-ng")
+ (license license:expat)))
+
(define-public htop
(package
(name "htop")
@@ -718,7 +785,7 @@ would need and has several interesting built-in capabilities.")
(define-public netcat-openbsd
(package
(name "netcat-openbsd")
- (version "1.206-1")
+ (version "1.217-1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -727,14 +794,12 @@ would need and has several interesting built-in capabilities.")
(file-name (git-file-name name version))
(sha256
(base32
- "08r3mmck3s5pbvwyq19wp5g8jqcxza3cm8nkc6jm7rqn4jdydc4z"))))
+ "0kcvi3pav2fdx5c22psjv5dggk4cmrqiaq2cklhqngsk4a7vrjan"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f ; no test suite
+ `(#:tests? #f ; no test suite
#:make-flags
- (list "CC=gcc"
- (string-append "CFLAGS=-I" (assoc-ref %build-inputs "libbsd") "/include")
- "LDFLAGS=-lbsd")
+ (list "CC=gcc")
#:phases
(modify-phases %standard-phases
(delete 'configure)
@@ -2027,13 +2092,13 @@ of supported upstream metrics systems simultaneously.")
(define-public ansible
(package
(name "ansible")
- (version "2.9.6")
+ (version "2.9.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ansible" version))
(sha256
- (base32 "1jfbp1i3nl4yvqwd5ssy43dz3pq2x03mn875vb8r56gqh43kmksr"))))
+ (base32 "1l99vwkl48iwr8ffd1ihqia995mz8h8hwk4akm4w0cgiifp88gg8"))))
(build-system python-build-system)
(native-inputs
`(("python-bcrypt" ,python-bcrypt)
@@ -3118,14 +3183,14 @@ everyone's screenshots nowadays.")
(define-public nnn
(package
(name "nnn")
- (version "2.8.1")
+ (version "3.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/nnn-v" version ".tar.gz"))
(sha256
- (base32 "1g47bndxld875d0xb3pgmlw223mz47p1xcvwym861y6l4zkgiyp0"))))
+ (base32 "1zflz7yj5wzdnl0728g8qrld2z6dqn7sblbmkjvyqlv1fwjd1fsf"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)