;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
-;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; 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
(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
"05yxrp44ky2kg6qknk1ih0kvwkgbn9fbz77r3vci7agslh5wjm8g"))))
(build-system gnu-build-system)
(arguments
- `(#:phases (alist-replace 'configure
- (lambda* (#:key inputs outputs
- #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (man8 (string-append
- out "/share/man/man8"))
- (sbin (string-append out "/sbin"))
- (shadow (assoc-ref inputs "shadow"))
- (login (string-append shadow
- "/bin/login")))
- (substitute* "Makefile"
- (("^SBINDIR.*")
- (string-append "SBINDIR = " out
- "/sbin\n"))
- (("^MANDIR.*")
- (string-append "MANDIR = " out
- "/share/man/man8\n")))
-
- ;; Pick the right 'login' by default.
- (substitute* "mingetty.c"
- (("\"/bin/login\"")
- (string-append "\"" login "\"")))
-
- (mkdir-p sbin)
- (mkdir-p man8)))
- %standard-phases)
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (man8 (string-append out "/share/man/man8"))
+ (sbin (string-append out "/sbin"))
+ (shadow (assoc-ref inputs "shadow"))
+ (login (string-append shadow "/bin/login")))
+ (substitute* "Makefile"
+ (("^SBINDIR.*")
+ (string-append "SBINDIR = " out
+ "/sbin\n"))
+ (("^MANDIR.*")
+ (string-append "MANDIR = " out
+ "/share/man/man8\n")))
+
+ ;; Pick the right 'login' by default.
+ (substitute* "mingetty.c"
+ (("\"/bin/login\"")
+ (string-append "\"" login "\"")))
+
+ (mkdir-p sbin)
+ (mkdir-p man8))
+ #t)))
#:tests? #f)) ; no tests
(inputs `(("shadow" ,shadow)))
(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.2")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
(sha256
(base32
- "0pjsxsy8l71i813sa934cwf1ryp9xbr7nxwsvnzavjdirchq3sga"))))
+ "0ygy0layzqaj838r5xd613iraz09wlfgpyh7pc6cwclql8v3b2vr"))))
(build-system gnu-build-system)
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
("perl-x11-protocol" ,perl-x11-protocol)))
(arguments
`(#:phases
- (alist-cons-after
- 'install 'set-load-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; Put the perl-tk and perl-x11-protocol modules in the perl inc
- ;; path for PROG
- (let* ((out (assoc-ref outputs "out"))
- (prog (string-append out "/bin/cssh"))
- (perl-ver ,(package-version perl))
- (x11-inc (string-append
- (assoc-ref inputs "perl-x11-protocol")
- "/lib/perl5/site_perl/" perl-ver))
- (tk-inc (string-append
- (assoc-ref inputs "perl-tk")
- "/lib/perl5/site_perl/" perl-ver
- "/x86_64-linux")))
- (wrap-program
- prog
- `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc)))))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'install 'set-load-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Put the perl-tk and perl-x11-protocol modules in the perl inc
+ ;; path for PROG
+ (let* ((out (assoc-ref outputs "out"))
+ (prog (string-append out "/bin/cssh"))
+ (perl-ver ,(package-version perl))
+ (x11-inc (string-append
+ (assoc-ref inputs "perl-x11-protocol")
+ "/lib/perl5/site_perl/" perl-ver))
+ (tk-inc (string-append
+ (assoc-ref inputs "perl-tk")
+ "/lib/perl5/site_perl/" perl-ver
+ "/x86_64-linux")))
+ (wrap-program
+ prog
+ `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))
+ #t)))))
;; The clusterssh.sourceforge.net address requires login to view
(home-page "https://sourceforge.net/projects/clusterssh/")
(synopsis "Secure concurrent multi-server terminal control")
"/etc"))
#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'patch-paths
+ (lambda _
+ (substitute* "rc/rc"
+ (("/usr/sbin/sendmail") "sendmail"))
+ #t))
(add-after 'build 'set-packdir
(lambda _
;; Set a default location for archived logs.
(define-public sudo
(package
(name "sudo")
- (version "1.8.19p1")
+ (version "1.8.21p2")
(source (origin
(method url-fetch)
(uri
version ".tar.gz")))
(sha256
(base32
- "14pwdwl03kdbbyjkvxrfx409x3c1fjqz8aqz2wgwddinhz7v3bxq"))))
+ "0s33szq6q59v5s377l4v6ybsdy7pfq6sz7y364j4x09ssdn79ibl"))
+ (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"))
+ #t)))
;; 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")
"http://w1.fi/releases/wpa_supplicant-"
version
".tar.gz"))
+ (patches (search-patches "wpa-supplicant-CVE-2017-13082.patch"
+ "wpa-supplicant-fix-key-reuse.patch"
+ "wpa-supplicant-fix-zeroed-keys.patch"
+ "wpa-supplicant-fix-nonce-reuse.patch"
+ "wpa-supplicant-krack-followups.patch"))
(sha256
(base32
"0l0l5gz3d5j9bqjsbjlfcv4w4jwndllp9fmyai4x9kg6qhs6v4xl"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (chdir "wpa_supplicant")
- (copy-file "defconfig" ".config")
- (let ((port (open-file ".config" "al")))
- (display "
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (chdir "wpa_supplicant")
+ (copy-file "defconfig" ".config")
+ (let ((port (open-file ".config" "al")))
+ (display "
CONFIG_DEBUG_SYSLOG=y
# Choose GnuTLS (the default is OpenSSL.)
CFLAGS += $(shell pkg-config libnl-3.0 --cflags)
CONFIG_LIBNL32=y
CONFIG_READLINE=y\n" port)
- (close-port port)))
-
- (alist-cons-after
- 'install 'install-man-pages
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (man (string-append out "/share/man"))
- (man5 (string-append man "/man5"))
- (man8 (string-append man "/man8")))
- (define (copy-man-page target)
- (lambda (file)
- (install-file file target)))
-
- (mkdir-p man5) (mkdir man8)
- (for-each (copy-man-page man5)
- (find-files "doc/docbook" "\\.5"))
- (for-each (copy-man-page man8)
- (find-files "doc/docbook" "\\.8"))
- #t))
- %standard-phases))
+ (close-port port))))
+ (add-after 'install 'install-man-pages
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (man (string-append out "/share/man"))
+ (man5 (string-append man "/man5"))
+ (man8 (string-append man "/man8")))
+ (define (copy-man-page target)
+ (lambda (file)
+ (install-file file target)))
+
+ (mkdir-p man5) (mkdir man8)
+ (for-each (copy-man-page man5)
+ (find-files "doc/docbook" "\\.5"))
+ (for-each (copy-man-page man8)
+ (find-files "doc/docbook" "\\.8"))
+ #t))))
#:make-flags (list "CC=gcc"
(string-append "BINDIR=" (assoc-ref %outputs "out")
(arguments
(substitute-keyword-arguments (package-arguments wpa-supplicant-minimal)
((#:phases phases)
- `(alist-cons-after
- 'configure 'configure-for-dbus
- (lambda _
- (let ((port (open-file ".config" "al")))
- (display "
+ `(modify-phases ,phases
+ (add-after 'configure 'configure-for-dbus
+ (lambda _
+ (let ((port (open-file ".config" "al")))
+ (display "
CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port)
- (close-port port))
- #t)
- (alist-cons-after
- 'install-man-pages 'install-dbus-conf
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (dir (string-append out "/etc/dbus-1/system.d")))
- (mkdir-p dir)
- (copy-file "dbus/dbus-wpa_supplicant.conf"
- (string-append dir "/wpa_supplicant.conf"))))
- ,phases)))))))
+ (close-port port))
+ #t))
+ (add-after 'install-man-pages 'install-dbus-conf
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (dir (string-append out "/etc/dbus-1/system.d")))
+ (mkdir-p dir)
+ (copy-file "dbus/dbus-wpa_supplicant.conf"
+ (string-append dir "/wpa_supplicant.conf")))
+ #t))))))))
(define-public wakelan
(package
"0vydqpf44146ir6k87gmqaq6xy66xhc1gkr3nsd7jj3nhy7ypx9x"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (mkdir-p (string-append out "/bin"))
- (mkdir-p (string-append out "/share/man/man1"))
-
- ;; It's an old configure script that doesn't understand
- ;; the extra options we pass.
- (setenv "CONFIG_SHELL" (which "bash"))
- (zero?
- (system* "./configure"
- (string-append "--prefix=" out)
- (string-append "--mandir=" out
- "/share/man")))))
- %standard-phases)
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/bin"))
+ (mkdir-p (string-append out "/share/man/man1"))
+
+ ;; It's an old configure script that doesn't understand
+ ;; the extra options we pass.
+ (setenv "CONFIG_SHELL" (which "bash"))
+ (zero?
+ (system* "./configure"
+ (string-append "--prefix=" out)
+ (string-append "--mandir=" out
+ "/share/man")))))))
#:tests? #f))
(home-page "http://kernel.org") ; really, no home page
(synopsis "Send a wake-on-LAN packet")
"HOST=_LINUX"
"OPT_CFLAGS=-Wall -fno-strict-aliasing")
#:tests? #f ; no 'check' target.
- #:phases (alist-delete 'configure %standard-phases)))
+ #:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "http://acpica.org/")
(synopsis "Tools for the development and debug of ACPI tables")
(description
(base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-delete 'configure %standard-phases)
+ '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no check target
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "prefix=" out)))))
"#!$SHELL")))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-cons-before
- 'build 'patch-/bin/sh
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Use the right shell when executing the watcher and
- ;; user-provided shell commands.
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* '("src/direvent.c" "src/progman.c")
- (("\"/bin/sh\"")
- (string-append "\"" bash "/bin/sh\"")))
-
- ;; Adjust the 'shell.at' test accordingly.
- (substitute* "tests/testsuite"
- (("SHELL=/bin/sh")
- (string-append "SHELL=" bash "/bin/sh")))
-
- #t))
- %standard-phases)))
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-/bin/sh
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Use the right shell when executing the watcher and
+ ;; user-provided shell commands.
+ (let ((bash (assoc-ref inputs "bash")))
+ (substitute* '("src/direvent.c" "src/progman.c")
+ (("\"/bin/sh\"")
+ (string-append "\"" bash "/bin/sh\"")))
+
+ ;; Adjust the 'shell.at' test accordingly.
+ (substitute* "tests/testsuite"
+ (("SHELL=/bin/sh")
+ (string-append "SHELL=" bash "/bin/sh")))
+
+ #t))))))
(home-page "https://www.gnu.org/software/direvent/")
(synopsis "Daemon to monitor directories for events such as file removal")
(description
"1g25r6sx85b5lay5n6sbnqv05qxzj6xsafsp93hnrg1h044bps49"))))
(build-system gnu-build-system)
(inputs `(("libcap-ng" ,libcap-ng)))
- (home-page "http://www.smartmontools.org/")
+ (home-page "https://www.smartmontools.org/")
(synopsis "S.M.A.R.T. harddisk control and monitoring tools")
(description
"The smartmontools package contains utility programs to control and
(define-public ansible
(package
(name "ansible")
- (version "2.3.0.0")
+ (version "2.4.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ansible" version))
(sha256
(base32
- "0n54h8g6a6hcp41sasvjqa4yz1pwd8mshbwlcghj0sjnrl3kk7r9"))))
+ "0spv0kjaicwss4q52s727b6grdizcxpa0bbsfg26pgf5kjrayqfs"))
+ (patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
(define-public munge
(package
(name "munge")
- (version "0.5.12")
+ (version "0.5.13")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dun/munge/releases/"
version ".tar.xz"))
(sha256
(base32
- "1s0vlwgm3hcx75vcmjf2y3icy5nv8y07bx93w2cmm6a7x71y6wp9"))))
+ "1nj486bbg1adfg298zck96vgx57kchcypc1zdz1n7w540vyksxcr"))))
(inputs
`(("openssl" ,openssl)
("libgcrypt" ,libgcrypt)))
(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
(list (string-append "DESTDIR=" out)
"prefix=/"))
;; no configure script
- #:phases (alist-delete 'configure %standard-phases)))
+ #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs `(("python-2" ,python-2)))
(synopsis "Versatile resource statistics tool")
(description "Dstat is a versatile replacement for @command{vmstat},
(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"))
- (patches (search-patches "fabric-tests.patch"))))
+ "0k944dxr41whw7ib6380q9x15wyskx7fqni656icdn8rzshn9bwq"))))
(build-system python-build-system)
(arguments
- `(#:python ,python-2)) ;Python 2 only
+ `(#:python ,python-2)) ; Python 2 only
(native-inputs
- `(("python2-fudge" ,python2-fudge) ; Requires < 1.0
- ("python2-jinja2" ,python2-jinja2) ; Requires < 3.0
- ("python2-nose" ,python2-nose))) ; Requires < 2.0
+ `(("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")
(define-public neofetch
(package
(name "neofetch")
- (version "3.1.0")
+ (version "3.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dylanaraps/neofetch/"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1rgznkl7a5q7lnc6zxlwvinq20b7k46n949l1hiwifarv0jgwynv"))))
+ "15p69q0jchfms1fpb4i7kq8b28w2xpgh2zmynln618qxv1myf228"))))
(build-system gnu-build-system)
(arguments
- '(#:tests? #f ; there are no tests
+ `(#:tests? #f ; there are no tests
#:make-flags
(list (string-append "PREFIX=" %output))
#:phases
(("\"/etc/neofetch")
(string-append "\"" out "/etc/neofetch"))
(("\"/usr/share/neofetch")
- (string-append "\"" out "/usr/share/neofetch"))))
+ (string-append "\"" out "/share/neofetch"))))
#t))
- (delete 'configure))))
+ (delete 'configure) ; no configure script
+ (replace 'install
+ (lambda* (#:key make-flags outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/doc/" ,name "-" ,version))
+ (etc (string-append doc "/examples/etc")))
+ (zero? (apply system* `("make" ,@make-flags
+ ,(string-append "SYSCONFDIR=" etc)
+ "install")))))))))
(home-page "https://github.com/dylanaraps/neofetch")
(synopsis "System info script")
(description "Neofetch is a CLI system information tool written in Bash.
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.5")
+ (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
+ "0zswf8lb29zr1z642i1d0zi1y2mxal8qjqdrpdiqjh197jamj3zm"))))
+ (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+)))