summaryrefslogtreecommitdiff
path: root/gnu/packages/linux.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/linux.scm')
-rw-r--r--gnu/packages/linux.scm334
1 files changed, 166 insertions, 168 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 196cc7785f..b92b146f3b 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 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, 2018 Mark H Weaver <mhw@netris.org>
@@ -159,13 +159,13 @@ defconfig. Return the appropriate make target if applicable, otherwise return
(define-public linux-libre-headers
(package
(name "linux-libre-headers")
- (version "4.9.59")
+ (version "4.14.26")
(source (origin
(method url-fetch)
(uri (linux-libre-urls version))
(sha256
(base32
- "0z8hq8a6ic38xh33idzl0k0yi4isgd7ncl2g1d6mzf9ixw5krhvc"))))
+ "1m2zr17wpasg5riysbaa4g5i492jzr93py2jm088ki818s4a9cm3"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(arguments
@@ -185,29 +185,29 @@ defconfig. Return the appropriate make target if applicable, otherwise return
(%current-system)))))
(setenv "ARCH" arch)
(format #t "`ARCH' set to `~a'~%" (getenv "ARCH"))
- (and (zero? (system* "make" defconfig))
- (zero? (system* "make" "mrproper" "headers_check"))))))
+ (invoke "make" defconfig)
+ (invoke "make" "mrproper" "headers_check"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- (and (zero? (system* "make"
- (string-append "INSTALL_HDR_PATH=" out)
- "headers_install"))
- (begin
- (mkdir (string-append out "/include/config"))
- (call-with-output-file
- (string-append out
- "/include/config/kernel.release")
- (lambda (p)
- (format p "~a-default~%" ,version)))
-
- ;; Remove the '.install' and '..install.cmd' files; the
- ;; latter contains store paths, which pulls in bootstrap
- ;; binaries in the build environment, and prevents bit
- ;; reproducibility for the bootstrap binaries.
- (for-each delete-file (find-files out "\\.install"))
-
- #t))))))
+ (invoke "make"
+ (string-append "INSTALL_HDR_PATH=" out)
+ "headers_install")
+
+ (mkdir (string-append out "/include/config"))
+ (call-with-output-file
+ (string-append out
+ "/include/config/kernel.release")
+ (lambda (p)
+ (format p "~a-default~%" ,version)))
+
+ ;; Remove the '.install' and '..install.cmd' files; the
+ ;; latter contains store paths, which pulls in bootstrap
+ ;; binaries in the build environment, and prevents bit
+ ;; reproducibility for the bootstrap binaries.
+ (for-each delete-file (find-files out "\\.install"))
+
+ #t))))
#:allowed-references ()
#:tests? #f))
(home-page "https://www.gnu.org/software/linux-libre/")
@@ -556,7 +556,7 @@ providing the system administrator with some help in common tasks.")
(define-public util-linux
(package
(name "util-linux")
- (version "2.31")
+ (version "2.32")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/"
@@ -564,14 +564,15 @@ providing the system administrator with some help in common tasks.")
name "-" version ".tar.xz"))
(sha256
(base32
- "12nw108xjhm63sh2n5a0qs33vpvbvb6rln96l9j50p7wykf7rgpr"))
+ "0d2758kjll5xqm5fpp3sww1h66aahx161sf2b60jxqv4qymrfwvc"))
(patches (search-patches "util-linux-tests.patch"))
(modules '((guix build utils)))
(snippet
- ;; We take the 'logger' program from GNU Inetutils and 'kill'
- ;; from GNU Coreutils.
+ ;; We take 'nologin' from Shadow, the 'logger' program from
+ ;; GNU Inetutils and 'kill' from GNU Coreutils.
'(begin
(substitute* "configure"
+ (("build_nologin=yes") "build_nologin=no")
(("build_logger=yes") "build_logger=no")
(("build_kill=yes") "build_kill=no"))
#t))))
@@ -643,32 +644,6 @@ block devices, UUIDs, TTYs, and many other tools.")
(license (list license:gpl3+ license:gpl2+ license:gpl2 license:lgpl2.0+
license:bsd-4 license:public-domain))))
-;; The patch 'util-linux-CVE-2018-7738.patch' fixes a security bug in
-;; the Bash completions for `mount`. Since this bug doesn't affect
-;; other programs that link against libraries from util-linux, we don't
-;; need to use a graft to make the fix available. Instead, users
-;; installing util-linux will get the fix in this newer version, and
-;; (@ (gnu system) %base-packages) takes care to use this package.
-;; This solution was suggested here:
-;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30827#13>
-(define-public util-linux-2.31.1
- (package
- (inherit util-linux)
- (name "util-linux")
- ;; XXX Don't update this without also updating %base-packages!
- (version "2.31.1")
- (source (origin
- (inherit (package-source util-linux))
- (uri (string-append "mirror://kernel.org/linux/utils/"
- name "/v" (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "04fzrnrr3pvqskvjn9f81y0knh0jvvqx4lmbz5pd4lfdm5pv2l8s"))
- (patches
- (append (origin-patches (package-source util-linux))
- (search-patches "util-linux-CVE-2018-7738.patch")))))))
-
(define-public ddate
(package
(name "ddate")
@@ -823,18 +798,18 @@ slabtop, and skill.")
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
- (and (zero? (system* "make" "install-libs"))
-
- ;; Make the .a writable so that 'strip' works.
- ;; Failing to do that, due to debug symbols, we
- ;; retain a reference to the final
- ;; linux-libre-headers, which refer to the
- ;; bootstrap binaries.
- (let ((archives (find-files lib "\\.a$")))
- (for-each (lambda (file)
- (chmod file #o666))
- archives)
- #t))))))))
+ (invoke "make" "install-libs")
+
+ ;; Make the .a writable so that 'strip' works.
+ ;; Failing to do that, due to debug symbols, we
+ ;; retain a reference to the final
+ ;; linux-libre-headers, which refer to the
+ ;; bootstrap binaries.
+ (let ((archives (find-files lib "\\.a$")))
+ (for-each (lambda (file)
+ (chmod file #o666))
+ archives))
+ #t))))))
(home-page "http://e2fsprogs.sourceforge.net/")
(synopsis "Creating and checking ext2/ext3/ext4 file systems")
(description
@@ -877,7 +852,8 @@ slabtop, and skill.")
(with-directory-excursion bin
(copy-file e2fsck "e2fsck")
(remove-store-references "e2fsck")
- (chmod "e2fsck" #o555))))))
+ (chmod "e2fsck" #o555))
+ #t))))
(home-page (package-home-page e2fsprogs))
(synopsis "Statically-linked e2fsck command from e2fsprogs")
(description "This package provides statically-linked e2fsck command taken
@@ -1311,7 +1287,8 @@ inadequately in modern network environments, and both should be deprecated.")
;; think about adding them later.
(substitute* '("config.make" "config.h")
(("^.*HAVE_(AFDECnet|HWSTRIP|HWTR|SELINUX|AFBLUETOOTH)[ =]1.*$")
- "")))))
+ ""))
+ #t)))
(add-after 'install 'remove-redundant-commands
(lambda* (#:key outputs #:allow-other-keys)
;; Remove commands and man pages redundant with Inetutils.
@@ -1363,7 +1340,8 @@ configuration (iptunnel, ipmaddr).")
(substitute* "Make.Rules"
(("LDFLAGS := #-g")
(string-append "LDFLAGS := -Wl,-rpath="
- %output "/lib"))))))
+ %output "/lib")))
+ #t)))
#:tests? #f ; no 'check' target
#:make-flags (list "lib=lib"
(string-append "prefix="
@@ -1399,7 +1377,7 @@ Linux-based operating systems.")
(arguments
'(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (add-before 'bootstrap 'patch-stuff
(lambda _
;; Fix "field ‘ip6’ has incomplete type" errors.
(substitute* "libbridge/libbridge.h"
@@ -1412,7 +1390,7 @@ Linux-based operating systems.")
(("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;")
"$(MAKE) $(MFLAGS) -C $$x || exit 1;"))
- (zero? (system* "autoreconf" "-vf")))))
+ #t)))
#:tests? #f)) ; no 'check' target
(home-page
@@ -1720,16 +1698,19 @@ UnionFS-FUSE additionally supports copy-on-write.")
(source (origin (inherit (package-source fuse))
(modules '((guix build utils)))
(snippet
- ;; Normally libfuse invokes mount(8) so that /etc/mtab is
- ;; updated. Change calls to 'mtab_needs_update' to 0 so that
- ;; it doesn't do that, allowing us to remove the dependency on
- ;; util-linux (something that is useful in initrds.)
- '(substitute* '("lib/mount_util.c"
- "util/mount_util.c")
- (("mtab_needs_update[[:blank:]]*\\([a-z_]+\\)")
- "0")
- (("/bin/")
- "")))))))
+ '(begin
+ ;; Normally libfuse invokes mount(8) so that /etc/mtab is
+ ;; updated. Change calls to 'mtab_needs_update' to 0 so
+ ;; that it doesn't do that, allowing us to remove the
+ ;; dependency on util-linux (something that is useful in
+ ;; initrds.)
+ (substitute* '("lib/mount_util.c"
+ "util/mount_util.c")
+ (("mtab_needs_update[[:blank:]]*\\([a-z_]+\\)")
+ "0")
+ (("/bin/")
+ ""))
+ #t))))))
(define-public unionfs-fuse/static
(package (inherit unionfs-fuse)
@@ -1738,11 +1719,13 @@ UnionFS-FUSE additionally supports copy-on-write.")
(source (origin (inherit (package-source unionfs-fuse))
(modules '((guix build utils)))
(snippet
- ;; Add -ldl to the libraries, because libfuse.a needs that.
- '(substitute* "src/CMakeLists.txt"
- (("target_link_libraries(.*)\\)" _ libs)
- (string-append "target_link_libraries"
- libs " dl)"))))))
+ '(begin
+ ;; Add -ldl to the libraries, because libfuse.a needs that.
+ (substitute* "src/CMakeLists.txt"
+ (("target_link_libraries(.*)\\)" _ libs)
+ (string-append "target_link_libraries"
+ libs " dl)")))
+ #t))))
(arguments
'(#:tests? #f
#:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-static")
@@ -1904,7 +1887,8 @@ system.")
(substitute* '("src/unicode_start" "src/unicode_stop")
;; Assume the Coreutils are in $PATH.
(("/usr/bin/tty")
- "tty"))))))
+ "tty"))
+ #t))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -1917,7 +1901,8 @@ system.")
(("gzip")
(string-append gzip "/bin/gzip"))
(("bzip2")
- (string-append bzip2 "/bin/bzip2"))))))
+ (string-append bzip2 "/bin/bzip2")))
+ #t)))
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
;; Make sure these programs find their comrades.
@@ -1926,7 +1911,8 @@ system.")
(for-each (lambda (prog)
(wrap-program (string-append bin "/" prog)
`("PATH" ":" prefix (,bin))))
- '("unicode_start" "unicode_stop"))))))))
+ '("unicode_start" "unicode_stop"))
+ #t))))))
(inputs `(("check" ,check)
("gzip" ,gzip)
("bzip2" ,bzip2)
@@ -1970,7 +1956,7 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
(define-public kmod
(package
(name "kmod")
- (version "24")
+ (version "25")
(source (origin
(method url-fetch)
(uri
@@ -1978,7 +1964,7 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
"kmod-" version ".tar.xz"))
(sha256
(base32
- "15xkkkzvca9flvkm48gkh8y8f13vlm3sl7nz9ydc7b3jy4fqs2v1"))
+ "1kgixs4m3jvwk7fb3d18n6j77qhgi9qfv4csj35rs5ancr4ycrbi"))
(patches (search-patches "kmod-module-directory.patch"))))
(build-system gnu-build-system)
(native-inputs
@@ -1987,19 +1973,20 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
`(("xz" ,xz)
("zlib" ,zlib)))
(arguments
- `(#:tests? #f ; FIXME: Investigate test failures
+ `(#:tests? #f ; FIXME: Investigate test failures
#:configure-flags '("--with-xz" "--with-zlib")
- #:phases (alist-cons-after
- 'install 'install-modprobe&co
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (for-each (lambda (tool)
- (symlink "kmod"
- (string-append bin "/" tool)))
- '("insmod" "rmmod" "lsmod" "modprobe"
- "modinfo" "depmod"))))
- %standard-phases)))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-modprobe&co
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (for-each (lambda (tool)
+ (symlink "kmod"
+ (string-append bin "/" tool)))
+ '("insmod" "rmmod" "lsmod" "modprobe"
+ "modinfo" "depmod"))
+ #t))))))
(home-page "https://www.kernel.org/")
(synopsis "Kernel module tools")
(description "Kmod is a set of tools to handle common tasks with Linux
@@ -2015,7 +2002,7 @@ from the module-init-tools project.")
;; The post-systemd fork, maintained by Gentoo.
(package
(name "eudev")
- (version "3.2.4")
+ (version "3.2.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/gentoo/eudev/archive/v"
@@ -2023,27 +2010,26 @@ from the module-init-tools project.")
(file-name (string-append name "-" version ".zip"))
(sha256
(base32
- "1r1ag0snarygrj5qqxi2xdq9w6g3sfjd5jx1b0fl7zmqlsz3vvxx"))
+ "0c9l3m3mr1nvrvlcnzh5gjdg9p9k7hh0jk04wh596cbmbass2nhd"))
(patches (search-patches "eudev-rules-directory.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
- (add-before 'configure 'bootstrap
+ (add-before 'bootstrap 'patch-file-names
(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"))))
+ #t))
(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"))))))
+ (invoke (string-append out "/bin/udevadm")
+ "hwdb" "--update")))))
#:configure-flags (list "--enable-manpages")))
(native-inputs
`(("autoconf" ,autoconf)
@@ -2096,7 +2082,8 @@ time.")
(("confdir = .*$")
"confdir = @sysconfdir@\n")
(("DEFAULT_SYS_DIR = @DEFAULT_SYS_DIR@")
- "DEFAULT_SYS_DIR = @sysconfdir@"))))
+ "DEFAULT_SYS_DIR = @sysconfdir@"))
+ #t))
(patches (search-patches "lvm2-static-link.patch"))))
(build-system gnu-build-system)
(native-inputs
@@ -2214,6 +2201,11 @@ interface.")
(arguments
'(#:phases (modify-phases %standard-phases
(delete 'configure)
+ (add-after 'unpack 'gzip-determinism
+ (lambda _
+ (substitute* "Makefile"
+ (("gzip") "gzip --no-name"))
+ #t))
(add-before
'build 'no-werror-no-ldconfig
(lambda _
@@ -2281,10 +2273,17 @@ compliance.")
"1f9mcp78sdd4sci6v32vxfcl1rfjpv205jisz1p93kkfnaisy7ip"))
;; We're building 'regulatory.bin' by ourselves.
- (snippet '(delete-file "regulatory.bin"))))
+ (snippet '(begin
+ (delete-file "regulatory.bin")
+ #t))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'gzip-determinism
+ (lambda _
+ (substitute* "Makefile"
+ (("gzip") "gzip --no-name"))
+ #t))
(delete 'configure))
;; The 'all' target of the makefile depends on $(REGDB_CHANGED), which
@@ -2714,7 +2713,8 @@ also contains the libsysfs library.")
"includedir = @includedir@"))
(substitute* "configure"
(("includedir='(\\$\\{prefix\\}/include)'" all orig)
- (string-append "includedir='" orig "/sysfs'")))))))
+ (string-append "includedir='" orig "/sysfs'")))
+ #t))))
(synopsis "System utilities based on Linux sysfs (version 1.x)")))
(define-public cpufrequtils
@@ -3131,16 +3131,15 @@ write access to exFAT devices.")
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (replace 'bootstrap
(lambda _
;; The tarball was not generated with 'make dist' so we
;; need to bootstrap things ourselves.
(substitute* "autogen.sh"
(("/bin/sh") (which "sh")))
- (and (zero? (system* "./autogen.sh"))
- (begin
- (patch-makefile-SHELL "Makefile.include.in")
- #t)))))
+ (invoke "./autogen.sh")
+ (patch-makefile-SHELL "Makefile.include.in")
+ #t)))
;; Make sure programs find libgpm.so.
#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
@@ -3164,7 +3163,7 @@ and copy/paste text in the console and in xterm.")
(define-public btrfs-progs
(package
(name "btrfs-progs")
- (version "4.14.1")
+ (version "4.15.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/"
@@ -3172,14 +3171,15 @@ and copy/paste text in the console and in xterm.")
"btrfs-progs-v" version ".tar.xz"))
(sha256
(base32
- "1palnddw3d50kyflwk1j4xapbc6jniid6j5i9dsr8l8a7nkv7ich"))))
+ "15izak6jg6pqr6ha9447cdrdj9k6kfiarvwlrj53cpvrsv02l437"))
+ (patches (search-patches "btrfs-progs-e-value-block.patch"))))
(build-system gnu-build-system)
(outputs '("out"
"static")) ; static versions of the binaries in "out"
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'build 'build-static
- (lambda _ (zero? (system* "make" "static"))))
+ (lambda _ (invoke "make" "static")))
(add-after 'install 'install-bash-completion
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -3192,9 +3192,9 @@ and copy/paste text in the console and in xterm.")
(let ((staticbin (string-append (assoc-ref %outputs "static")
"/bin")))
(lambda _
- (zero? (system* "make"
- (string-append "bindir=" staticbin)
- "install-static"))))))
+ (invoke "make"
+ (string-append "bindir=" staticbin)
+ "install-static")))))
#:test-target "test"
#:parallel-tests? #f)) ; tests fail when run in parallel
(inputs `(("e2fsprogs" ,e2fsprogs)
@@ -3213,7 +3213,9 @@ and copy/paste text in the console and in xterm.")
("docbook-xsl" ,docbook-xsl)
;; For tests.
("acl" ,acl)
- ("which" ,which)))
+ ("which" ,which)
+ ;; The tests need 'grep' with perl regexp support.
+ ("grep" ,grep)))
(home-page "https://btrfs.wiki.kernel.org/")
(synopsis "Create and manage btrfs copy-on-write file systems")
(description "Btrfs is a @dfn{copy-on-write} (CoW) file system for Linux
@@ -3246,7 +3248,8 @@ repair and easy administration.")
(mkdir-p (dirname target))
(copy-file source target)
(remove-store-references target)
- (chmod target #o555)))))
+ (chmod target #o555)
+ #t))))
(home-page (package-home-page btrfs-progs))
(synopsis "Statically-linked btrfs command from btrfs-progs")
(description "This package provides the statically-linked @command{btrfs}
@@ -3266,12 +3269,6 @@ from the btrfs-progs package. It is meant to be used in initrds.")
(base32
"1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "autoreconf" "-vif")))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -3299,14 +3296,16 @@ disks and SD cards. This package provides the userland utilities.")
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'enter-subdirectory
(lambda _
- (chdir "tools/laptop/freefall")))
+ (chdir "tools/laptop/freefall")
+ #t))
(delete 'configure)
(add-before 'build 'increase-timeout
(lambda _
;; The default of 2 seconds is too low: it assumes an
;; open lid and AC power without actually checking.
(substitute* "freefall.c"
- (("alarm\\(2\\)") "alarm(5)")))))
+ (("alarm\\(2\\)") "alarm(5)"))
+ #t)))
#:make-flags (list (string-append "PREFIX="
(assoc-ref %outputs "out"))
"CC=gcc")
@@ -3336,9 +3335,10 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(modules '((guix build utils)))
;; Fix erroneous man page location in Makefile leading to
;; a compilation failure.
- (snippet
- '(substitute* "CMakeLists.txt"
- (("thinkfan\\.1") "src/thinkfan.1")))))
+ (snippet '(begin
+ (substitute* "CMakeLists.txt"
+ (("thinkfan\\.1") "src/thinkfan.1"))
+ #t))))
(build-system cmake-build-system)
(arguments
`(#:modules ((guix build cmake-build-system)
@@ -3389,11 +3389,12 @@ from userspace.")
(base32
"1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy"))
(modules '((guix build utils)))
- (snippet
- ;; Install under $prefix.
- '(substitute* '("src/Makefile.in" "ntfsprogs/Makefile.in")
- (("/sbin")
- "@sbindir@")))))
+ (snippet '(begin
+ ;; Install under $prefix.
+ (substitute* '("src/Makefile.in" "ntfsprogs/Makefile.in")
+ (("/sbin")
+ "@sbindir@"))
+ #t))))
(build-system gnu-build-system)
(inputs `(("util-linux" ,util-linux)
("fuse" ,fuse))) ;libuuid
@@ -3436,11 +3437,11 @@ The package provides additional NTFS tools.")
(modify-phases %standard-phases
(replace 'build
(lambda _
- (zero? (system* "ninja"
- "-j" (number->string (parallel-job-count))))))
+ (invoke "ninja"
+ "-j" (number->string (parallel-job-count)))))
(replace 'install
(lambda _
- (zero? (system* "ninja" "install")))))))
+ (invoke "ninja" "install"))))))
(native-inputs
`(("ninja" ,ninja)
("pkg-config" ,pkg-config)
@@ -3492,12 +3493,7 @@ The following service daemons are also provided:
(build-system gnu-build-system)
(arguments
`(;; Avoid using OpenSSL, curl, and libxml2, reducing the closure by 166 MiB.
- #:configure-flags '("--without-nistbeacon")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
- (lambda _
- (zero? (system* "sh" "autogen.sh")))))))
+ #:configure-flags '("--without-nistbeacon")))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -3694,9 +3690,12 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
(file-name (string-append name "-" version ".tar.gz"))
(modules '((guix build utils)))
(snippet
- ;; The snapshots lack a .git directory, breaking ‘git describe’.
- `(substitute* "Makefile"
- (("\"unknown\"") (string-append "\"v" ,version "\""))))))
+ `(begin
+ ;; The snapshots lack a .git directory,
+ ;; breaking ‘git describe’.
+ (substitute* "Makefile"
+ (("\"unknown\"") (string-append "\"v" ,version "\"")))
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -4244,24 +4243,23 @@ userspace queueing component and the logging subsystem.")
(setenv "PATH"
(string-append (getenv "PATH") ":/bin"))
- (zero? (system* "make" "check" "-C" "tests"
- ;;"V=1"
- "-j" (number->string n))))))
+ (invoke "make" "check" "-C" "tests"
+ ;;"V=1"
+ "-j" (number->string n)))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; The 'install' rule does nearly nothing.
- (let ((out (assoc-ref outputs "out")))
- (and (zero?
- ;; TODO: 'make install-care' (does not even
- ;; build currently.)
- (system* "make" "-C" "src" "install"
- (string-append "PREFIX=" out)))
- (let ((man1 (string-append out
- "/share/man/man1")))
- (mkdir-p man1)
- (copy-file "doc/proot/man.1"
- (string-append man1 "/proot.1"))
- #t))))))))
+ (let* ((out (assoc-ref outputs "out"))
+ (man1 (string-append out "/share/man/man1")))
+ ;; TODO: 'make install-care' (does not even
+ ;; build currently.)
+ (invoke "make" "-C" "src" "install"
+ (string-append "PREFIX=" out))
+
+ (mkdir-p man1)
+ (copy-file "doc/proot/man.1"
+ (string-append man1 "/proot.1"))
+ #t))))))
(native-inputs `(("which" ,which)
;; For 'mcookie', used by some of the tests.