;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
-;;; Coypright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
-;;; Coypright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Coypright © 2016 John Darrington <jmd@gnu.org>
-;;; Coypright © 2017 Ben Sturmfels <ben@sturm.com.au>
+;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016 John Darrington <jmd@gnu.org>
+;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
+;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
+;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages perl)
#:use-module (gnu packages tcl)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages cross-base)
#:use-module (gnu packages tls)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages bison)
#:use-module (gnu packages autotools)
#:use-module (gnu packages gnome)
#:use-module (gnu packages kerberos)
- #:use-module (gnu packages gtk))
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages xml))
(define-public aide
(package
(name "aide")
- (version "0.15.1")
+ (version "0.16")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/aide/aide/"
version "/aide-" version ".tar.gz"))
(sha256
(base32
- "1vsrc0s62kv1i84skm6k6zy868gayjck268qwj38rpspc8c5qgih"))))
+ "0ibkv4z2gk14fn014kq13rp2ysiq6nn2cflv2q5i7zf466hm6758"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
`(("libgcrypt" ,libgcrypt)
("libgpg-error" ,libgpg-error)
("libmhash" ,libmhash)
+ ("pcre" ,pcre)
("zlib" ,zlib)))
(synopsis "File and directory integrity checker")
(description
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--localstatedir=/var")))
- (native-inputs `(("pkg-config" ,pkg-config)))
- (inputs `(("guile" ,guile-2.0)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+
+ ;; This is the Guile we use as a cross-compiler...
+ ("guile" ,guile-2.2)))
+ (inputs
+ ;; ... and this is the one that appears in shebangs when cross-compiling.
+ `(("guile" ,guile-2.2)))
(synopsis "System service manager")
(description
"The GNU Shepherd is a daemon-managing daemon, meaning that it supervises
"05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy"))))
(build-system gnu-build-system)
(arguments
- '(#:configure-flags '("--localstatedir=/var")
+ `(#:configure-flags '("--localstatedir=/var"
+
+ ;; Make sure 'PATH_PROCNET_DEV' gets defined when
+ ;; cross-compiling (by default it does not.)
+ ,@(if (%current-target-system)
+ '("--with-path-procnet-dev=/proc/net/dev")
+ '()))
;; On some systems, 'libls.sh' may fail with an error such as:
;; "Failed to tell switch -a apart from -A".
#:parallel-tests? #f))
(synopsis "Basic networking utilities")
(description
"Inetutils is a collection of common network programs, such as an ftp
-client and server, a telnet client and server, and an rsh client and server.")
+client and server, a telnet client and server, an rsh client and server, and
+hostname.")
(license license:gpl3+)))
(define-public shadow
(package
(name "shadow")
- (version "4.4")
+ (version "4.5")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/shadow-maint/shadow/releases/"
"download/" version "/shadow-" version ".tar.xz"))
- (patches (search-patches "shadow-4.4-su-snprintf-fix.patch"
- "shadow-CVE-2017-2616.patch"))
(sha256
(base32
- "0g7hf55ar2pafg5g3ldx0fwzjk36wf4xb21p4ndanbjm3c2a9ab1"))))
+ "0hdpai78n63l3v3fgr3kkiqzhd0awrpfnnzz4mf7lmxdh61qb37w"))))
(build-system gnu-build-system)
(arguments
- '(;; Assume System V `setpgrp (void)', which is the default on GNU
+ `(;; Assume System V `setpgrp (void)', which is the default on GNU
;; variants (`AC_FUNC_SETPGRP' is not cross-compilation capable.)
#:configure-flags
'("--with-libpam" "ac_cv_func_setpgrp_void=yes")
(add-before 'build 'set-nscd-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right file name for nscd.
- (let ((libc (assoc-ref inputs "libc")))
+ (let ((libc (assoc-ref inputs
+ ,(if (%current-target-system)
+ "cross-libc"
+ "libc"))))
(substitute* "lib/nscd.c"
(("/usr/sbin/nscd")
(string-append libc "/sbin/nscd"))))))
(for-each delete-file (find-files man "^groups\\."))
#t))))))
- (inputs (if (string-suffix? "-linux"
- (or (%current-target-system)
- (%current-system)))
- `(("linux-pam" ,linux-pam))
- '()))
+ (inputs (if (string-contains (or (%current-target-system)
+ (%current-system))
+ "-linux")
+ `(("linux-pam" ,linux-pam))
+ '()))
(home-page "http://pkg-shadow.alioth.debian.org/")
(synopsis "Authentication-related tools such as passwd, su, and login")
(description
(define-public isc-dhcp
(let* ((bind-major-version "9")
(bind-minor-version "9")
- (bind-patch-version "9")
+ (bind-patch-version "10")
(bind-release-type "-P") ; for patch release, use "-P"
- (bind-release-version "8") ; for patch release, e.g. "6"
+ (bind-release-version "3") ; for patch release, e.g. "6"
(bind-version (string-append bind-major-version
"."
bind-minor-version
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
- "1f5i64f6y4rmy61y63r5if1lifw8dw8r8dh6ns3x4002hanzrpgz"))))
+ "00yh1d5shrq7y0kfwacax4f8dc0akaa2fha430j92n7mshms65m1"))))
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
(define-public tcpdump
(package
(name "tcpdump")
- (version "4.9.0")
+ (version "4.9.1")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
+ (patches (search-patches "tcpdump-CVE-2017-11541.patch"
+ "tcpdump-CVE-2017-11542.patch"
+ "tcpdump-CVE-2017-11543.patch"))
(sha256
(base32
- "0pjsxsy8l71i813sa934cwf1ryp9xbr7nxwsvnzavjdirchq3sga"))))
+ "1wyqbg7bkmgqyslf1ns0xx9fcqi66hvcfm9nf77rl15jvvs8qi7r"))))
(build-system gnu-build-system)
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
(define-public sudo
(package
(name "sudo")
- (version "1.8.19p1")
+ (version "1.8.20p2")
(source (origin
(method url-fetch)
(uri
version ".tar.gz")))
(sha256
(base32
- "14pwdwl03kdbbyjkvxrfx409x3c1fjqz8aqz2wgwddinhz7v3bxq"))))
+ "1na5likm1srnd1g5sjx7b0543sczw0yppacyqsazfdg9b48awhmx"))
+ (modules '((guix build utils)))
+ (snippet
+ '(delete-file-recursively "lib/zlib"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
;; Avoid non-determinism; see <http://bugs.gnu.org/21918>.
#:parallel-build? #f
- #:phases (alist-cons-before
- 'configure 'pre-configure
- (lambda _
- (substitute* "src/sudo_usage.h.in"
- ;; Do not capture 'configure' arguments since we would
- ;; unduly retain references, and also because the
- ;; CPPFLAGS above would close the string literal
- ;; prematurely.
- (("@CONFIGURE_ARGS@") "\"\""))
- (substitute* (find-files "." "Makefile\\.in")
- (("-o [[:graph:]]+ -g [[:graph:]]+")
- ;; Allow installation as non-root.
- "")
- (("^install: (.*)install-sudoers(.*)" _ before after)
- ;; Don't try to create /etc/sudoers.
- (string-append "install: " before after "\n"))
- (("\\$\\(DESTDIR\\)\\$\\(rundir\\)")
- ;; Don't try to create /run/sudo.
- "$(TMPDIR)/dummy")
- (("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
- ;; Don't try to create /var/db/sudo.
- "$(TMPDIR)/dummy")))
- %standard-phases)
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'pre-configure
+ (lambda _
+ (substitute* "src/sudo_usage.h.in"
+ ;; Do not capture 'configure' arguments since we would
+ ;; unduly retain references, and also because the
+ ;; CPPFLAGS above would close the string literal
+ ;; prematurely.
+ (("@CONFIGURE_ARGS@") "\"\""))
+ (substitute* (find-files "." "Makefile\\.in")
+ (("-o [[:graph:]]+ -g [[:graph:]]+")
+ ;; Allow installation as non-root.
+ "")
+ (("^install: (.*)install-sudoers(.*)" _ before after)
+ ;; Don't try to create /etc/sudoers.
+ (string-append "install: " before after "\n"))
+ (("\\$\\(DESTDIR\\)\\$\\(rundir\\)")
+ ;; Don't try to create /run/sudo.
+ "$(TMPDIR)/dummy")
+ (("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
+ ;; Don't try to create /var/db/sudo.
+ "$(TMPDIR)/dummy")))))
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
;; the chroot's /etc/passwd doesn't have it. Turn off the tests.
(inputs
`(("groff" ,groff)
("linux-pam" ,linux-pam)
+ ("zlib" ,zlib)
("coreutils" ,coreutils)))
(home-page "https://www.sudo.ws/")
(synopsis "Run commands as root")
(define-public ansible
(package
(name "ansible")
- (version "2.2.1.0")
+ (version "2.3.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ansible" version))
(sha256
(base32
- "0gz9i30pdmkchi936ijy873k8di6fmf3v5rv551hxyf0hjkjx8b3"))))
+ "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
+ (patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
(define-public nmap
(package
(name "nmap")
- (version "7.40")
+ (version "7.60")
(source (origin
(method url-fetch)
(uri (string-append "https://nmap.org/dist/nmap-" version
".tar.bz2"))
(sha256
(base32
- "121i9mgyc28ra2825akd0ix5qyssv4xc2qlx296mam6hzxgnc54y"))
+ "08bga42ipymmbxd7wy4x5sl26c0ir1fm3n9rc6nqmhx69z66wyd8"))
(modules '((guix build utils)))
(snippet
'(map delete-file-recursively
(define-public thefuck
(package
(name "thefuck")
- (version "3.16")
+ (version "3.19")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0jrhfxmj2asx4jdix9ks3fpl364ph8w9prhwpk4488aj1a0q4rak"))
+ "191zbvkyc02h0wwd46xwj4zzg7jhlr8xv0ji6knqkgjnk0nvqq01"))
(patches (search-patches "thefuck-test-environ.patch"))))
(build-system python-build-system)
(arguments
(define-public cbatticon
(package
(name "cbatticon")
- (version "1.6.5")
+ (version "1.6.6")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/valr/"
name "/archive/" version ".tar.gz"))
(sha256
(base32
- "0xzz1faqgm57bwlkw6sjdfbckf5hck81879zbfk18p7xn9vhvixv"))
+ "1rxlrwd817f2zl4fsc5ha43wjzfidq3yyagq4lgyi150qg36svv3"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(arguments
(source (origin
(method git-fetch)
(uri (git-reference
- (url "git://github.com/TrilbyWhite/interrobang")
+ (url "https://github.com/TrilbyWhite/interrobang")
(commit commit)))
(file-name (string-append name "-" version))
(sha256
'(delete-file-recursively "bin"))
(file-name (string-append name "-" version ".tar.gz"))))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("pkg-config" ,pkg-config)
+ ("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"
+ #:xbinutils (cross-binutils "arm-linux-gnueabihf")
+ #:libc (cross-libc "arm-linux-gnueabihf")))
+ ("cross-libc" ,(cross-libc "arm-linux-gnueabihf"))))
(inputs
`(("libusb" ,libusb)))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f ; no tests exist
+ `(#:tests? #f ; no tests exist
#:make-flags (list (string-append "PREFIX="
(assoc-ref %outputs "out"))
- "CROSS_COMPILE="
- "CC=gcc"
- "all")
+ (string-append "CROSS_COMPILE="
+ "arm-linux-gnueabihf-")
+ "CC=gcc")
#:phases
(modify-phases %standard-phases
(delete 'configure)
+ (add-before 'build 'set-environment-up
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (define (cross? x)
+ (string-contains x "cross-arm-linux"))
+ (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
+ (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH"))
+ (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+ (for-each
+ (lambda (env-name)
+ (let* ((env-value (getenv env-name))
+ (search-path (search-path-as-string->list env-value))
+ (new-search-path (filter (lambda (e) (not (cross? e)))
+ search-path))
+ (new-env-value (list->search-path-as-string
+ new-search-path ":")))
+ (setenv env-name new-env-value)))
+ '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH"))
+ #t))
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "tools" "misc" make-flags))))
+ (add-after 'build 'build-armhf
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "target-tools" make-flags))))
(replace 'install
(lambda* (#:key make-flags #:allow-other-keys)
(zero? (apply system* "make" "install-all" "install-misc"
(define-public fabric
(package
(name "fabric")
- (version "1.13.1")
+ (version "1.13.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Fabric" version))
(sha256
(base32
- "1z17hw0yiqp1blq217zxkg2jzkv8qd79saqhscgsw14mwlcqpwd0"))))
+ "0k944dxr41whw7ib6380q9x15wyskx7fqni656icdn8rzshn9bwq"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f ;XXX: Tests attempt to download Python "fudge" package.
- #:python ,python-2)) ;Python 2 only
+ `(#:python ,python-2)) ; Python 2 only
+ (native-inputs
+ `(("python2-fudge" ,python2-fudge)
+ ("python2-jinja2" ,python2-jinja2)
+ ("python2-nose" ,python2-nose)))
(propagated-inputs
- ;; Required upgrading python-paramiko 1.17.4 to fix an incompatibility
- ;; between python-paramiko and newer python-pycrypto. Without this, the
- ;; `fab` command fails with "ValueError: CTR mode needs counter
- ;; parameter, not IV". See:
- ;; https://github.com/paramiko/paramiko/pull/714#issuecomment-281191548.
`(("python2-paramiko" ,python2-paramiko)))
(home-page "http://fabfile.org")
(synopsis "Simple Pythonic remote execution and deployment tool")
expect you to be deploying Rails applications. Fabric is a simple, Pythonic
tool for remote execution and deployment.")
(license license:bsd-2)))
+
+(define-public neofetch
+ (package
+ (name "neofetch")
+ (version "3.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/dylanaraps/neofetch/"
+ "archive/" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07a32rzmch51znxspzyc7zyaldmr383v70b49wmnjdjs2qfdbv3a"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; there are no tests
+ #:make-flags
+ (list (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-target-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile"
+ (("\\$\\(DESTDIR\\)/etc/")
+ "$(PREFIX)/etc/"))
+ (substitute* "neofetch"
+ (("\"/etc/neofetch")
+ (string-append "\"" out "/etc/neofetch"))
+ (("\"/usr/share/neofetch")
+ (string-append "\"" out "/share/neofetch"))))
+ #t))
+ (delete 'configure))))
+ (home-page "https://github.com/dylanaraps/neofetch")
+ (synopsis "System info script")
+ (description "Neofetch is a CLI system information tool written in Bash.
+Neofetch displays information about your system next to an image, your OS
+logo, or any ASCII file of your choice. The main purpose of Neofetch is to be
+used in screenshots to show other users what operating system or distribution
+you are running, what theme or icon set you are using, etc.")
+ (license license:expat)))
+
+(define-public nnn
+ (package
+ (name "nnn")
+ (version "1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/jarun/nnn/"
+ "archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sivgcmg3hihz15v2wgbxnd0icn06pyvvqdqh8x0mwkhvm434fpb"))))
+ (build-system gnu-build-system)
+ (inputs `(("ncurses" ,ncurses)
+ ("readline" ,readline)))
+ (arguments
+ '(#:tests? #f ; no tests
+ #:phases
+ ;; We do not provide `ncurses.h' within an `ncursesw'
+ ;; sub-directory, so patch the source accordingly. See
+ ;; <http://bugs.gnu.org/19018>.
+ ;; Thanks to gtypist maintainer.
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-curses-lib
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile"
+ (("-lncursesw")
+ "-lncurses"))
+ (substitute* "nnn.c"
+ (("ncursesw\\/curses.h")
+ "ncurses.h")))
+ #t))
+ (delete 'configure))
+ #:make-flags
+ (list
+ (string-append "PREFIX="
+ (assoc-ref %outputs "out"))
+ (string-append "-Wl,-rpath="
+ %output "/lib")
+ "CC=gcc")))
+ (home-page "https://github.com/jarun/nnn")
+ (synopsis "Terminal file browser")
+ (description "@command{nnn} is a fork of @command{noice}, a blazing-fast
+lightweight terminal file browser with easy keyboard shortcuts for
+navigation, opening files and running tasks. There is no config file and
+mime associations are hard-coded. The incredible user-friendliness and speed
+make it a perfect utility on modern distros.")
+ (license license:bsd-2)))
+
+(define-public thermald
+ (package
+ (name "thermald")
+ (version "1.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/01org/thermal_daemon/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256 (base32
+ "14klz9fnvi9jdlaqwrp61xa5nh051n8ykrs1fh1wxd7j66qf2fn6"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after
+ 'unpack 'autogen.sh-and-fix-paths
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; upstartconfir is hardcoded to /etc/init and the build
+ ;; system tries to mkdir that. We don't even need upstart
+ ;; files at all; this is a fast and kludgy workaround
+ (substitute* "data/Makefile.am"
+ (("upstartconfdir = /etc/init")
+ (string-append "upstartconfdir = "
+ out "/etc/init")))
+ ;; Now run autogen
+ (zero? (system* "sh" "autogen.sh"))))))
+ #:configure-flags
+ (let ((out (assoc-ref %outputs "out")))
+ (list (string-append "--sysconfdir="
+ out "/etc")
+ (string-append "--with-udev-dir="
+ out "/lib/udev")
+ (string-append "--with-dbus-sys-dir="
+ out "/etc/dbus-1/system.d")
+ "--localstatedir=/var"))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("glib" ,glib "bin") ; for glib-genmarshal, etc.
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("dbus-glib" ,dbus-glib)
+ ("libxml2" ,libxml2)))
+ (home-page "https://01.org/linux-thermal-daemon/")
+ (synopsis "CPU scaling for thermal management")
+ (description "The Linux Thermal Daemon helps monitor and control temperature
+on systems running the Linux kernel.")
+ ;; arm and aarch64 don't have cpuid.h
+ (supported-systems '("i686-linux" "x86_64-linux"))
+ (license license:gpl2+)))