;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
-;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Raymond Nicholson <rain1@openmailbox.org>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
-;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2016, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
-;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;;
((string-prefix? "aarch64" arch) "arm64")
((string-prefix? "alpha" arch) "alpha")
((string-prefix? "powerpc" arch) "powerpc") ;including "powerpc64le"
+ ((string-prefix? "s390" arch) "s390")
(else arch))))
(define-public (system->defconfig system)
(define-public linux-libre-headers
(package
(name "linux-libre-headers")
- (version "4.4.47")
+ (version "4.9.59")
(source (origin
(method url-fetch)
(uri (linux-libre-urls version))
(sha256
(base32
- "00zdq7swhvzbbnnhzizq6m34q5k4fycpcp215bmkbxh1ic76v7bs"))))
+ "0z8hq8a6ic38xh33idzl0k0yi4isgd7ncl2g1d6mzf9ixw5krhvc"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(arguments
("bc" ,bc)
("openssl" ,openssl)
("kmod" ,kmod)
+ ;; On x86, build with GCC-7 for full retpoline support.
+ ;; FIXME: Remove this when our default compiler has retpoline support.
+ ,@(match (system->linux-architecture
+ (or (%current-target-system) (%current-system)))
+ ((or "x86_64" "i386")
+ `(("gcc" ,gcc-7)))
+ (_
+ '()))
,@(match (and configuration-file
(configuration-file
(system->linux-architecture
(begin
(copy-file config ".config")
(chmod ".config" #o666))
- (system* "make" ,defconfig))
+ (invoke "make" ,defconfig))
;; Appending works even when the option wasn't in the
;; file. The last one prevails if duplicated.
(display extra-configuration port)
(close-port port))
- (zero? (system* "make" "oldconfig")))))
+ (invoke "make" "oldconfig"))))
(replace 'install
(lambda* (#:key inputs native-inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(find-files "." "\\.dtb$"))
;; Install kernel modules
(mkdir-p moddir)
- (zero? (system* "make"
- (string-append "DEPMOD=" kmod "/bin/depmod")
- (string-append "MODULE_DIR=" moddir)
- (string-append "INSTALL_PATH=" out)
- (string-append "INSTALL_MOD_PATH=" out)
- "INSTALL_MOD_STRIP=1"
- "modules_install"))))))
+ (invoke "make"
+ (string-append "DEPMOD=" kmod "/bin/depmod")
+ (string-append "MODULE_DIR=" moddir)
+ (string-append "INSTALL_PATH=" out)
+ (string-append "INSTALL_MOD_PATH=" out)
+ "INSTALL_MOD_STRIP=1"
+ "modules_install")))))
#:tests? #f))
- (home-page "https://www.gnu.org/software/linux-libre//")
+ (home-page "https://www.gnu.org/software/linux-libre/")
(synopsis "100% free redistribution of a cleaned Linux kernel")
(description
"GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel.
(define %intel-compatible-systems '("x86_64-linux" "i686-linux"))
(define %linux-compatible-systems '("x86_64-linux" "i686-linux" "armhf-linux"))
-(define %linux-libre-version "4.14.10")
-(define %linux-libre-hash "05l3r8i34l6b6mlgkia4xvlpc6h9nfwhsb74fy8g9dfbklx51zc8")
-
;; linux-libre configuration for armhf-linux is derived from Debian armmp. It
;; supports qemu "virt" machine and possibly a large number of ARM boards.
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
+(define %linux-libre-version "4.15.7")
+(define %linux-libre-hash "1h17wc12lvva5vcm2z06cf57ywxb6i2snm9vxixw1lwibnksrb6l")
+
(define-public linux-libre
(make-linux-libre %linux-libre-version
%linux-libre-hash
%linux-compatible-systems
#:configuration-file kernel-config))
+(define %linux-libre-4.14-version "4.14.23")
+(define %linux-libre-4.14-hash "0mz8v67zj3wn3kdjb2a781vx7nc1imi7kmlvf1h1m0f37hw0s47y")
+
+(define-public linux-libre-4.14
+ (make-linux-libre %linux-libre-4.14-version
+ %linux-libre-4.14-hash
+ %linux-compatible-systems
+ #:configuration-file kernel-config))
+
(define-public linux-libre-4.9
- (make-linux-libre "4.9.74"
- "1xavyjj1ajg1nb6iy75ih1k2rwcfx09vjav1a69r0vq4q140qsfc"
+ (make-linux-libre "4.9.85"
+ "17anlawvbzw6m2lrbriy7kfncdllkl7n8vjzwl2dnrgxddavd3rf"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.4
- (make-linux-libre "4.4.109"
- "1yn0vzvh8g26zgmblr92krcik18c0290mqdba5lbz7sd29jbhvzn"
+ (make-linux-libre "4.4.119"
+ "1cicg1yxf6rvaz8jcz8mdvnkrba9hd16pkp9mm602bzgks6s1fy9"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.1
- (make-linux-libre "4.1.48"
- "13ii6ixcm46hzk1ns6n4hrrv4dyc0n3wvj2qhmxi178akdcgbn8a"
+ (make-linux-libre "4.1.49"
+ "0dklmqj6ayjlkz97b811zdvpgb3yppahinji9l9jmkz4ssi7a1gs"
%intel-compatible-systems
#:configuration-file kernel-config))
#:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic"))
+(define-public linux-libre-arm-generic-4.14
+ (make-linux-libre %linux-libre-4.14-version
+ %linux-libre-4.14-hash
+ '("armhf-linux")
+ #:defconfig "multi_v7_defconfig"
+ #:extra-version "arm-generic"))
+
(define-public linux-libre-arm-omap2plus
(make-linux-libre %linux-libre-version
%linux-libre-hash
#:defconfig "omap2plus_defconfig"
#:extra-version "arm-omap2plus"))
+(define-public linux-libre-arm-omap2plus-4.14
+ (make-linux-libre %linux-libre-4.14-version
+ %linux-libre-4.14-hash
+ '("armhf-linux")
+ #:defconfig "omap2plus_defconfig"
+ #:extra-version "arm-omap2plus"))
+
\f
;;;
;;; Pluggable authentication modules (PAM).
(define-public util-linux
(package
(name "util-linux")
- (version "2.30.1")
+ (version "2.31")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/"
name "-" version ".tar.xz"))
(sha256
(base32
- "0hdq2fz405a89fyha4bgwg0rx8b65inxq17w8fg8qhmcj4x3dr0v"))
+ "12nw108xjhm63sh2n5a0qs33vpvbvb6rln96l9j50p7wykf7rgpr"))
(patches (search-patches "util-linux-tests.patch"))
(modules '((guix build utils)))
(snippet
(arguments
`(#:configure-flags (list "--disable-use-tty-group"
"--enable-fs-paths-default=/run/current-system/profile/sbin"
+ ;; Don't try to chown root:root mount and umount
+ "--disable-makeinstall-chown"
;; Install completions where our
;; bash-completion package expects them.
(string-append "--with-bashcompletiondir="
(define-public usbutils
(package
(name "usbutils")
- (version "008")
+ (version "009")
(source
(origin
(method url-fetch)
"usbutils-" version ".tar.xz"))
(sha256
(base32
- "132clk14j4nm8crln2jymdbbc2vhzar2j2hnxyh05m79pbq1lx24"))))
+ "0q3iavmak2bs9xw486w4xfbjl0hbzii93ssgpr95mxmm9kjz1gwb"))))
(build-system gnu-build-system)
(inputs
`(("libusb" ,libusb)
(define-public strace
(package
(name "strace")
- (version "4.20")
+ (version "4.21")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://sourceforge/strace/strace/" version
- "/strace-" version ".tar.xz"))
+ (uri (string-append "https://github.com/strace/strace/releases/"
+ "download/v" version "/strace-" version ".tar.xz"))
(sha256
(base32
- "08y5b07vb8jc7ak5xc3x2kx1ly6xiwv1gnppcqjs81kks66i9wsv"))))
+ "0dsw6xcfrmygidp1dj2ch8cl8icrar7789snkb2r8gh78kdqhxjw"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(arguments
;; Compilation uses -Werror by default, but it fails.
'(#:configure-flags '("--disable-werror")))
- (home-page "http://www.ltrace.org/")
+ (home-page "https://www.ltrace.org/")
(synopsis "Library call tracer for Linux")
(description
"ltrace intercepts and records dynamic library calls which are called by
(define-public iptables
(package
(name "iptables")
- (version "1.6.1")
+ (version "1.6.2")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.bz2"))
(sha256
(base32
- "1x8c9y340x79djsq54bc1674ryv59jfphrk4f88i7qbvbnyxghhg"))))
+ "0crp0lvh5m2f15pr8cw97h8yb8zjj10x95zj06j46cr68vx2vl2m"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
#:configure-flags ; add $libdir to the RUNPATH of executables
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))))
(home-page "https://www.netfilter.org/projects/iptables/index.html")
- (synopsis "Program to configure the Linux IP packet filtering rules")
+ (synopsis "Programs to configure Linux IP packet filtering rules")
(description
- "iptables is the userspace command line program used to configure the
-Linux 2.4.x and later IPv4 packet filtering ruleset (firewall). It is targeted at
-system administrators. Since Network Address Translation is also configured
-from the packet filter ruleset, iptables is used for this, too. The iptables
-package also includes ip6tables. ip6tables is used for configuring the IPv6
-packet filter.")
+ "@command{iptables} is the user-space command line program used to
+configure the Linux 2.4.x and later IPv4 packet filtering ruleset
+(@dfn{firewall}), including @dfn{NAT} (Network Address Translation).
+
+This package also includes @command{ip6tables}, which is used to configure the
+IPv6 packet filter.
+
+Both commands are targeted at system administrators.
+")
(license license:gpl2+)))
(define-public ebtables
(define-public iproute
(package
(name "iproute2")
- (version "4.14.1")
+ (version "4.15.0")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "0rq0n7yxb0hmk0s6wx5awzjgf7ikjbibd0a5ix20ldfcmxlc0fnl"))))
+ "0mc3g4kj7h3jhwz2b2gdf41gp6bhqn7axh4mnyvhkdnpk5m63m28"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
inadequately in modern network environments, and both should be deprecated.")
(license license:gpl2+)))
-;; There are two packages for net-tools. The first, net-tools, is more recent
-;; and probably safer to use with untrusted inputs (i.e. the internet). The
-;; second, net-tools-for-tests, is relatively old and buggy. It can be used in
-;; package test suites and should never be referred to by a built package. Use
-;; #:disallowed-references to enforce this.
-;;
-;; When we are able to rebuild many packages (i.e. core-updates), we can update
-;; net-tools-for-tests if appropriate.
-;;
-;; See <https://bugs.gnu.org/27811> for more information.
(define-public net-tools
;; XXX: This package is basically unmaintained, but it provides a few
;; commands not yet provided by Inetutils, such as 'route', so we have to
configuration (iptunnel, ipmaddr).")
(license license:gpl2+))))
-(define-public net-tools-for-tests
- (hidden-package (package (inherit net-tools)
- (version "1.60")
- ;; Git depends on net-tools-for-tests via GnuTLS, so we can't use git-fetch
- ;; here. We should find a better workaround for this problem so that we can
- ;; use the latest upstream source.
- (source (origin
- (method url-fetch)
- (uri (list (string-append
- "mirror://sourceforge/net-tools/net-tools-"
- version ".tar.bz2")
- (string-append
- "http://distro.ibiblio.org/rootlinux/rootlinux-ports"
- "/base/net-tools/net-tools-1.60.tar.bz2")))
- (sha256
- (base32
- "0yvxrzk0mzmspr7sa34hm1anw6sif39gyn85w4c5ywfn8inxvr3s"))
- (patches (search-patches "net-tools-bitrot.patch"))))
- (build-system gnu-build-system)
- (arguments
- '(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1)
- (srfi srfi-26))
- #:phases (alist-cons-after
- 'unpack 'patch
- (lambda* (#:key inputs #:allow-other-keys)
- (define (apply-patch file)
- (zero? (system* "patch" "-p1" "--force"
- "--input" file)))
-
- (let ((patch.gz (assoc-ref inputs "patch")))
- (format #t "applying Debian patch set '~a'...~%"
- patch.gz)
- (system (string-append "gunzip < " patch.gz " > the-patch"))
- (and (apply-patch "the-patch")
- (for-each apply-patch
- (find-files "debian/patches"
- "\\.patch")))))
- (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 "/sbin"))
-
- ;; Pretend we have everything...
- (system "yes | make config")
-
- ;; ... except for the things we don't have.
- ;; HAVE_AFDECnet requires libdnet, which we don't have.
- ;; HAVE_HWSTRIP and HAVE_HWTR require kernel headers
- ;; that have been removed.
- (substitute* '("config.make" "config.h")
- (("^.*HAVE_(AFDECnet|HWSTRIP|HWTR)[ =]1.*$") ""))))
- (alist-cons-after
- 'install 'remove-redundant-commands
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Remove commands and man pages redundant with
- ;; Inetutils.
- (let* ((out (assoc-ref outputs "out"))
- (dup (append-map (cut find-files out <>)
- '("^hostname"
- "^(yp|nis|dns)?domainname"))))
- (for-each delete-file dup)
- #t))
- %standard-phases)))
-
- ;; Binaries that depend on libnet-tools.a don't declare that
- ;; dependency, making it parallel-unsafe.
- #:parallel-build? #f
-
- #:tests? #f ; no test suite
- #:make-flags (let ((out (assoc-ref %outputs "out")))
- (list "CC=gcc"
- (string-append "BASEDIR=" out)
- (string-append "INSTALLNLSDIR=" out "/share/locale")
- (string-append "mandir=/share/man")))))
-
- ;; We added unzip to the net-tools package's native-inputs when
- ;; switching its source from a Git checkout to a zip archive. We
- ;; need to specify the native-inputs here to keep unzip out of the
- ;; build of net-tools-for-tests, so that we don't have to rebuild
- ;; many packages on the master branch. We can make
- ;; net-tools-for-tests inherit directly from net-tools in the next
- ;; core-updates cycle.
- (native-inputs `(("gettext" ,gettext-minimal)))
-
- ;; Use the big Debian patch set (the thing does not even compile out of
- ;; the box.)
- ;; XXX The patch is not actually applied, due to a bug in the 'patch' phase
- ;; above. However, this package variant is only used in GnuTLS's tests. It
- ;; will be adjusted when convenient for the build farm.
- ;; See <https://bugs.gnu.org/27811> for more information.
- (inputs `(("patch" ,(origin
- (method url-fetch)
- (uri
- "http://ftp.de.debian.org/debian/pool/main/n/net-tools/net-tools_1.60-24.2.diff.gz")
- (sha256
- (base32
- "0p93lsqx23v5fv4hpbrydmfvw1ha2rgqpn2zqbs2jhxkzhjc030p")))))))))
-
(define-public libcap
(package
(name "libcap")
(mkdir-p dest)
(zero? (system* "tar" "xf" (assoc-ref inputs "libnl3-doc")
"--strip-components=1" "-C" dest))))))))
- (home-page "http://www.infradead.org/~tgr/libnl/")
+ (home-page "https://www.infradead.org/~tgr/libnl/")
(synopsis "NetLink protocol library suite")
(description
"The libnl suite is a collection of libraries providing APIs to netlink
(define-public iw
(package
(name "iw")
- (version "4.9")
+ (version "4.14")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "1klpvv98bnx1zm6aqalnri2vd7w80scmdaxr2qnblb6mz82whk1j"))))
+ "12ddd6vh6vs97135bnlyr0szv7hvpbnmfh48584frzab0z0725ph"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libnl" ,libnl)))
"0hsn8l1iblvx27bpd4dvnvnbh9ri3sv2f9xzpsnfz3379kb7skgj"))))
(build-system cmake-build-system)
(native-inputs
- `(("python" ,python)
- ("python-pytest" ,python-pytest)))
+ `(("python" ,python)))
(inputs `(("fuse" ,fuse)))
(arguments
- '(#:phases
- (modify-phases %standard-phases
- (replace 'check
- ;; Borrowed from the Makefile
- (lambda _ (zero? (system* "python3" "-m" "pytest")))))))
+ ;; The tests were never actually run ("collected 0 items"), but in recent
+ ;; versions of pytest that causes an error.
+ '(#:tests? #f))
(home-page "https://github.com/rpodgorny/unionfs-fuse")
(synopsis "User-space union file system")
(description
;; The post-systemd fork, maintained by Gentoo.
(package
(name "eudev")
- (version "3.2.2")
+ (version "3.2.4")
(source (origin
(method url-fetch)
- (uri (string-append
- "http://dev.gentoo.org/~blueness/eudev/eudev-"
- version ".tar.gz"))
+ (uri (string-append "https://github.com/gentoo/eudev/archive/v"
+ version ".zip"))
+ (file-name (string-append name "-" version ".zip"))
(sha256
(base32
- "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y"))
+ "1r1ag0snarygrj5qqxi2xdq9w6g3sfjd5jx1b0fl7zmqlsz3vvxx"))
(patches (search-patches "eudev-rules-directory.patch"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (modify-phases %standard-phases
- (add-after 'install 'build-hwdb
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and
- ;; similar tools to display product names.
- (let ((out (assoc-ref outputs "out")))
- (zero? (system* (string-append out "/bin/udevadm")
- "hwdb" "--update"))))))))
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'bootstrap
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "man/make.sh"
+ (("/usr/bin/xsltproc")
+ (string-append (assoc-ref inputs "xsltproc")
+ "/bin/xsltproc")))
+ ;; Manual pages are regenerated here.
+ (zero? (system* "./autogen.sh"))))
+ (add-after 'install 'build-hwdb
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and
+ ;; similar tools to display product names.
+ (let ((out (assoc-ref outputs "out")))
+ (zero? (system* (string-append out "/bin/udevadm")
+ "hwdb" "--update"))))))
+ #:configure-flags (list "--enable-manpages")))
(native-inputs
- `(("pkg-config" ,pkg-config)
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("gperf" ,gperf)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ;; For tests.
("perl" ,perl)
- ("gperf" ,gperf)))
+ ("python" ,python-wrapper)
+ ;; For documentation.
+ ("docbook-xml" ,docbook-xml-4.2)
+ ("docbook-xsl" ,docbook-xsl)
+ ("libxml2" ,libxml2) ;for $XML_CATALOG_FILES
+ ("xsltproc", libxslt)))
(inputs
;; When linked against libblkid, eudev can populate /dev/disk/by-label
;; and similar; it also installs the '60-persistent-storage.rules' file,
(define-public lvm2
(package
(name "lvm2")
- (version "2.02.176")
+ (version "2.02.177")
(source (origin
(method url-fetch)
(uri (string-append "ftp://sources.redhat.com/pub/lvm2/releases/LVM2."
version ".tgz"))
(sha256
(base32
- "0wx4rvy4frdmb66znh2xms2j2n06sm361ki6l5ks4y1ciii87kny"))
+ "1wl0isn0yz5wvglwylnlqkppafwmvhliq5bd92vjqp5ir4za49a0"))
(modules '((guix build utils)))
(snippet
'(begin
;; Replace /bin/sh with the right file name.
(patch-makefile-SHELL "make.tmpl")
- #t))
- (add-before 'strip 'make-objects-writable
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Make compiled objects writable so they can be stripped.
- (let ((out (assoc-ref outputs "out")))
- (for-each (lambda (file)
- (chmod file #o755))
- (append
- (find-files (string-append out "/lib"))
- (find-files (string-append out "/sbin"))))
- #t))))
+ #t)))
#:configure-flags (list (string-append "--sysconfdir="
(assoc-ref %outputs "out")
It works with most newer systems.")
(license license:gpl2+)))
+(define-public iucode-tool
+ (package
+ (name "iucode-tool")
+ (version "2.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://gitlab.com/iucode-tool/releases"
+ "/raw/latest/iucode-tool_" version ".tar.xz"))
+ (sha256
+ (base32
+ "0w99k1aq1xw148ffk1xykqf60rdbphb1jknw98jcmadq4pwxl44q"))))
+ (build-system gnu-build-system)
+ (home-page "https://gitlab.com/iucode-tool/iucode-tool/wikis/home")
+ (synopsis "Manipulate Intel microcode bundles")
+ (description
+ "@command{iucode_tool} is a utility to work with microcode packages for
+Intel processors. It can convert between formats, extract specific versions,
+create a firmware image suitable for the Linux kernel, and more.")
+ ;; cpuid.h is available for i686, x86_64, and ia64.
+ (supported-systems '("i686-linux" "x86_64-linux"))
+ (license license:gpl2+)))
+
(define-public i2c-tools
(package
(name "i2c-tools")
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; no tests
- (home-page "http://ghedo.github.io/pflask/")
+ (home-page "https://ghedo.github.io/pflask/")
(synopsis "Simple tool for creating Linux namespace containers")
(description "pflask is a simple tool for creating Linux namespace
containers. It can be used for running a command or even booting an OS inside
(define-public hdparm
(package
(name "hdparm")
- (version "9.52")
+ (version "9.53")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/" name "/" name "/"
name "-" version ".tar.gz"))
(sha256
(base32
- "1djgxhfadd865dcrl6dp7dvjxpaisy7mk17mbdbglwg24ga9qhn3"))))
+ "1rb5086gp4l1h1fn2nk10ziqxjxigsd0c1zczahwc5k9vy8zawr6"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (let ((out (assoc-ref %outputs "out")))
@command{hdparm} provides a command line interface to various Linux kernel
interfaces provided by the SATA/ATA/SAS @code{libata} subsystem, and the older
-IDE driver subsystem. Many external USB drive enclosures with @dfn{SCSI-ATA
-Command Translation} (SAT) are also supported.")
+IDE driver subsystem. Many external USB drive enclosures with SCSI-ATA Command
+Translation (@dfn{SAT}) are also supported.")
(license (license:non-copyleft "file://LICENSE.TXT"))))
(define-public rfkill
which is used to enable and disable wireless networking devices, typically
WLAN, Bluetooth and mobile broadband.")
(license (license:non-copyleft "file://COPYING"
- "See COPYING in the distribution."))))
+ "See COPYING in the distribution."))
+ ;; rfkill is part of util-linux as of 2.31.
+ (properties `((superseded . ,util-linux)))))
(define-public acpi
(package
(version "1.7")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://sourceforge/acpiclient/acpiclient/"
+ (uri (string-append "mirror://sourceforge/acpiclient/acpiclient/"
version "/" name "-" version ".tar.gz"))
(sha256
(base32
(string-append "--with-udevdir=" out "/lib/udev")))
#:phases
(modify-phases %standard-phases
- ,@(if (string=? (%current-system) "armhf-linux")
- ;; This test fails unpredictably.
- ;; TODO: skip it for all architectures.
- `((add-before 'check 'skip-wonky-test
- (lambda _
- (substitute* "unit/test-gatt.c"
- (("tester_init\\(&argc, &argv\\);") "return 77;"))
- #t)))
- `())
-
+ ;; Test unit/test-gatt fails unpredictably. Seems to be a timing
+ ;; issue (discussion on upstream mailing list:
+ ;; https://marc.info/?t=149578476300002&r=1&w=2)
+ (add-before 'check 'skip-wonky-test
+ (lambda _
+ (substitute* "unit/test-gatt.c"
+ (("tester_init\\(&argc, &argv\\);") "return 77;"))
+ #t))
(add-after 'install 'post-install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(define-public fuse-exfat
(package
(name "fuse-exfat")
- (version "1.2.7")
+ (version "1.2.8")
(source (origin
(method url-fetch)
(uri (string-append
version "/" name "-" version ".tar.gz"))
(sha256
(base32
- "0df0ccnd0dgwc6rvk9qmrz0nfb8whc5s3wg9qnw1mzbrh4rcvhw2"))))
+ "1jwnxw0bg9v5ij8xvbg4xpjr50nykq8a1lmc2xkblz204rq7wd8z"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(uri (string-append
"http://www.nico.schottelius.org/software/gpm/archives/gpm-"
version ".tar.bz2"))
+ (patches (search-patches "gpm-glibc-2.26.patch"))
(sha256
(base32
"13d426a8h403ckpc8zyf7s2p5rql0lqbg2bv0454x0pvgbfbf4gh"))))
(define-public btrfs-progs
(package
(name "btrfs-progs")
- (version "4.14")
+ (version "4.14.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/"
"btrfs-progs-v" version ".tar.xz"))
(sha256
(base32
- "1bwirg6hz6gyfj5r3xkj4lfwadvl9pxlccf916fsmdn27fy5q289"))))
+ "1palnddw3d50kyflwk1j4xapbc6jniid6j5i9dsr8l8a7nkv7ich"))))
(build-system gnu-build-system)
(outputs '("out"
"static")) ; static versions of the binaries in "out"
(lambda _ (zero? (system* "make" "static"))))
(add-after 'install 'install-bash-completion
(lambda* (#:key outputs #:allow-other-keys)
- (install-file "btrfs-completion"
- (string-append (assoc-ref outputs "out")
- "/etc/bash_completion.d"))
- #t))
+ (let* ((out (assoc-ref outputs "out"))
+ (bashcomp (string-append out "/etc/bash_completion.d")))
+ (mkdir-p bashcomp)
+ (copy-file "btrfs-completion"
+ (string-append bashcomp "/btrfs"))
+ #t)))
(add-after 'install 'install-static
(let ((staticbin (string-append (assoc-ref %outputs "static")
"/bin")))
;; to do the same for consistency. They also recommend using the
;; "Release" build type.
#:configure-flags (list "-GNinja"
- ;; Defaults to "lib64" on 64-bit archs.
- (string-append "-DCMAKE_INSTALL_LIBDIR="
- (assoc-ref %outputs "out") "/lib")
"-DCMAKE_BUILD_TYPE=Release")
#:phases
(modify-phases %standard-phases
(define-public haveged
(package
(name "haveged")
- (version "1.9.1")
+ (version "1.9.2")
(source
(origin
(method url-fetch)
version ".tar.gz"))
(sha256
(base32
- "059pxlfd4l5dqhd6r3lynzfz4wby2f17294fy17pi9j2jpnn68ww"))))
+ "0w5ypz6451msckivjriwyw8djydlwffam7x23xh626s2vzdrlzgp"))))
(build-system gnu-build-system)
(home-page "http://www.issihosts.com/haveged")
(synopsis "Entropy source for the Linux random number generator")
(("^DOCBOOKTOMAN.*$")
"DOCBOOKTOMAN = true\n"))
#t)))))
- (home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/")
+ (home-page "https://www.kernel.org/pub/linux/utils/kernel/module-init-tools/")
(synopsis "Tools for loading and managing Linux kernel modules")
(description
"Tools for loading and managing Linux kernel modules, such as `modprobe',
(define-public efivar
(package
(name "efivar")
- (version "30")
+ (version "34")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/rhinstaller/" name
"-" version ".tar.bz2"))
(sha256
(base32
- "12qjnm44yi55ffqxjpgrxy82s89yjziy84w2rfjjknsd8flj0mqz"))))
+ "09a31y6sl3b33myy42gl9k732k1f440ycd07l6ac5d5l53kk8zhv"))))
(build-system gnu-build-system)
(arguments
`(;; Tests require a UEFI system and is not detected in the chroot.
#:tests? #f
#:make-flags (list (string-append "prefix=" %output)
(string-append "libdir=" %output "/lib")
+ "CC_FOR_BUILD=gcc"
(string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
#:phases
(modify-phases %standard-phases
(define-public tlp
(package
(name "tlp")
- (version "1.0")
+ (version "1.1")
(source (origin
(method url-fetch)
(uri (string-append
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1v3qpj9kp4rxwqapayd0i9419wwv4bikyrzjvqn0r9xkgnr1f9v4"))))
+ "068hzmh90x600saynbl7iwg1pm0ywldn4jazyxx5y1fixs8s1qbn"))))
(inputs `(("bash" ,bash)
("dbus" ,dbus)
("ethtool" ,ethtool)
(setenv "TLP_CONF" "/etc/tlp")
(setenv "TLP_SHCPL"
(string-append out "/share/bash-completion/completions"))
- (setenv "TLP_MAN" (string-append out "/share/man")))))
+ (setenv "TLP_MAN" (string-append out "/share/man"))
+ (setenv "TLP_META" (string-append out "/share/metainfo")))))
(delete 'check) ; no tests
(add-before 'install 'fix-installation
(lambda _
(substitute* "Makefile" (("\\[ -f \\$\\(_CONF\\) \\]") "#"))))
(replace 'install
(lambda _
- (zero? (system* "make" "install-tlp" "install-man"))))
+ (invoke "make" "install-tlp" "install-man")
+ #t))
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((bin (string-append (assoc-ref outputs "out") "/bin"))
(define-public libnftnl
(package
(name "libnftnl")
- (version "1.0.8")
+ (version "1.0.9")
(source
(origin
(method url-fetch)
"libnftnl-" version ".tar.bz2"))
(sha256
(base32
- "0f10cfiyl4c0f8k3brxfrw28x7a6qvrakaslg4jgqncwxycxggg6"))))
+ "0d9nkdbdck8sg6msysqyv3m9kjr9sjif5amf26dfa0g3mqjdihgy"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(define-public nftables
(package
(name "nftables")
- (version "0.8")
+ (version "0.8.1")
(source
(origin
(method url-fetch)
"/files/nftables-" version ".tar.bz2"))
(sha256
(base32
- "16iq9x0qxikdhp1nan500rk33ycqddl1k57876m4dfv3n7kqhnrz"))))
+ "1i1gfy8l7qyhc5vlrpp63s0n5kybmc9pi4dywiq8rmkhrrnddsla"))))
(build-system gnu-build-system)
(inputs `(("bison", bison)
("flex", flex)
"PRoot is a user-space implementation of @code{chroot}, @code{mount --bind},
and @code{binfmt_misc}. This means that users don't need any privileges or
setup to do things like using an arbitrary directory as the new root
-filesystem, making files accessible somewhere else in the file system
+file system, making files accessible somewhere else in the file system
hierarchy, or executing programs built for another CPU architecture
transparently through QEMU user-mode. Also, developers can use PRoot as a
generic process instrumentation engine thanks to its extension mechanism.
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/JasonFerrara/jmtpfs")
- (synopsis "Use a FUSE filesystem to access data over MTP")
- (description "jmtpfs uses FUSE (filesystem in userspace) to provide access
+ (synopsis "Use a FUSE file system to access data over MTP")
+ (description "jmtpfs uses FUSE (file system in userspace) to provide access
to data over the Media Transfer Protocol (MTP). Unprivileged users can mount
-the MTP device as a filesystem.")
+the MTP device as a file system.")
(license license:gpl3)))
(define-public procenv
(base32 "0dvscyf47i3j5ay0amncqmqw9kd916689r2pqdvpnsrhp6j46zp1"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags '("--disable-silent-rules")))
+ (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("expat" ,expat) ("libcap" ,libcap) ("check" ,check)
("groff" ,groff) ; for tests
("libselinux" ,libselinux)))
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/share/man/man1"))
#t))))))
- (home-page "http://bisqwit.iki.fi/source/snapscreenshot.html")
+ (home-page "https://bisqwit.iki.fi/source/snapscreenshot.html")
(synopsis "Take screenshots of one or more Linux text consoles")
(description
"snapscreenshot saves a screenshot of one or more Linux text consoles as a
(define-public fbcat
(package
(name "fbcat")
- (version "0.5")
+ (version "0.5.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jwilk/fbcat/releases/download/"
version "/" name "-" version ".tar.gz"))
(sha256
- (base32 "1dla1na3nf3s4xy0p6w0v54zipg1x8c14yqsw8w9qjzhchr4caxw"))))
+ (base32 "0pj9hxmwhbz6kmd7847yx2jh1scl9l25zgndyi8s9vlzdkq2q8d7"))))
(build-system gnu-build-system)
- (native-inputs
- ;; For building the man pages.
- `(("docbook-xml" ,docbook-xml)
- ("docbook-xsl" ,docbook-xsl)
- ("xsltproc" ,libxslt)))
(inputs
;; The ‘fbgrab’ wrapper can use one of several PPM-to-PNG converters. We
;; choose netpbm simply because it's the smallest. It still adds ~94 MiB
`(("pnmtopng" ,netpbm)))
(outputs (list "out" "fbgrab"))
(arguments
- `(#:make-flags (list "CC=gcc")
+ `(#:make-flags
+ (list "CC=gcc"
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'fix-docbook-location
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "doc/Makefile"
- (("http://docbook.sourceforge.net/release/xsl/current")
- (string-append (assoc-ref inputs "docbook-xsl")
- "/xml/xsl/docbook-xsl-"
- ,(package-version docbook-xsl))))
- #t))
(delete 'configure) ; no configure script
- (add-after 'build 'build-documentation
- (lambda* (#:key make-flags #:allow-other-keys)
- (zero? (apply system* "make" "-C" "doc"
- make-flags))))
(add-after 'build 'qualify-references
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((pnmtopng (assoc-ref inputs "pnmtopng"))
(("pnmtopng" all)
(string-append pnmtopng "/bin/" all)))
#t)))
- (replace 'install
- ;; The Makefile lacks an ‘install’ target. Install files manually.
+ (add-after 'install 'split-fbgrab-output
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(out:fbgrab (assoc-ref outputs "fbgrab")))
- (install-file "fbcat" (string-append out "/bin"))
- (install-file "doc/fbcat.1"
- (string-append out "/share/man/man1"))
- (install-file "fbgrab" (string-append out:fbgrab "/bin"))
- (install-file "doc/fbgrab.1"
- (string-append out:fbgrab "/share/man/man1"))
+ (for-each (lambda (file)
+ (let ((old (string-append out "/" file))
+ (new (string-append out:fbgrab "/" file)))
+ (mkdir-p (dirname new))
+ (rename-file old new)))
+ (list "bin/fbgrab"
+ "share/man/man1/fbgrab.1"))
#t))))))
(home-page "https://jwilk.net/software/fbcat")
(synopsis "Take a screenshot of the contents of the Linux framebuffer")