;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
-;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
("bc" ,bc)
("openssl" ,openssl)
("kmod" ,kmod)
+ ("elfutils" ,elfutils) ; Needed to enable CONFIG_STACK_VALIDATION
+ ("flex" ,flex)
+ ("bison" ,bison)
;; On x86, build with GCC-7 for full retpoline support.
;; FIXME: Remove this when our default compiler has retpoline support.
,@(match (system->linux-architecture
(ice-9 match))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-/bin/pwd
+ (lambda _
+ (substitute* (find-files "." "^Makefile(\\.include)?$")
+ (("/bin/pwd") "pwd"))
+ #t))
(replace 'configure
(lambda* (#:key inputs native-inputs target #:allow-other-keys)
;; Avoid introducing timestamps
;; 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.11")
-(define %linux-libre-hash "0nrsmw7x5nsc3906dfvfakkibv8pv09r1sf5ckzbkcbkwpyq62h8")
+(define %linux-libre-version "4.16.1")
+(define %linux-libre-hash "1zqbg7ivf79nzw0lw18bbld2wq16880k83526bwqh1nsydayp6k0")
(define-public linux-libre
(make-linux-libre %linux-libre-version
%linux-compatible-systems
#:configuration-file kernel-config))
-(define %linux-libre-4.14-version "4.14.28")
-(define %linux-libre-4.14-hash "0xg3zsm1yjsvxir8sz7zliz8gcc8d45xh23qyiszl75cfqjl36l3")
+(define %linux-libre-4.14-version "4.14.33")
+(define %linux-libre-4.14-hash "0ps9whsxc20gw5ags18rgkwgy6fzg66by70g8xjds7nijpzgl69m")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
#:configuration-file kernel-config))
(define-public linux-libre-4.9
- (make-linux-libre "4.9.88"
- "0qlhd8xw3g00i7krpfndkwxzjszk067h26qsxxsszvxyx2s6gp4x"
+ (make-linux-libre "4.9.93"
+ "0flmsh4xy7ymyzwm8y4x4id798mx6vy3d6ala7x1bq41hf00075p"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.4
- (make-linux-libre "4.4.122"
- "1ayilv7474vsif3jpb723jbcy4kymv1fpdr96c1g743bad1wkqqq"
+ (make-linux-libre "4.4.127"
+ "1av536sp6ancx0fy71wpmqv4r66pksrcjbnrcjggard6im4c8pjy"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.1
- (make-linux-libre "4.1.50"
- "1hl1pk724v2waa55bhxfmxyz9nl6pkcj4dc3l80jfvqdfgr55mm2"
+ (make-linux-libre "4.1.51"
+ "0l8lpwjpckp44hjyx5qrxqdwwi97gyyc1n6pmk66cr3fpdhnk540"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public util-linux
(package
(name "util-linux")
- (version "2.31.1")
+ (version "2.32")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/"
name "-" version ".tar.xz"))
(sha256
(base32
- "04fzrnrr3pvqskvjn9f81y0knh0jvvqx4lmbz5pd4lfdm5pv2l8s"))
- (patches (search-patches "util-linux-tests.patch"
- "util-linux-CVE-2018-7738.patch"))
+ "0d2758kjll5xqm5fpp3sww1h66aahx161sf2b60jxqv4qymrfwvc"))
+ (patches (search-patches "util-linux-tests.patch"))
(modules '((guix build utils)))
(snippet
;; We take 'nologin' from Shadow, the 'logger' program from
(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
(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
(define-public strace
(package
(name "strace")
- (version "4.21")
+ (version "4.22")
+ (home-page "https://strace.io")
(source (origin
(method url-fetch)
- (uri (string-append "https://github.com/strace/strace/releases/"
- "download/v" version "/strace-" version ".tar.xz"))
+ (uri (string-append home-page "/files/" version
+ "/strace-" version ".tar.xz"))
(sha256
(base32
- "0dsw6xcfrmygidp1dj2ch8cl8icrar7789snkb2r8gh78kdqhxjw"))))
+ "17dkpnsjxmys1ydidm9wcvc3wscsz44fmlxw3dclspn9cj9d1306"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(("/bin/sh") (which "sh")))
#t)))))
(native-inputs `(("perl" ,perl)))
- (home-page "https://strace.io/")
(synopsis "System call tracer for Linux")
(description
"strace is a system call tracer, i.e. a debugging tool which prints out a
This package also includes @command{ip6tables}, which is used to configure the
IPv6 packet filter.
-Both commands are targeted at system administrators.
-")
+Both commands are targeted at system administrators.")
(license license:gpl2+)))
(define-public ebtables
(define-public iproute
(package
(name "iproute2")
- (version "4.15.0")
+ (version "4.16.0")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "0mc3g4kj7h3jhwz2b2gdf41gp6bhqn7axh4mnyvhkdnpk5m63m28"))))
+ "02pfalg319jpbjz273ph725br8dnkzpfvi98azi9yd6p1w128p0c"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
(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 _
(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
;; 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="
(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/"
"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"))
(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)
("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
(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}
'(#: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")))
#:tests? #f)) ;no tests
(define-public radeontop
(package
(name "radeontop")
- (version "1.0")
+ (version "1.1")
(home-page "https://github.com/clbr/radeontop/")
(source (origin
(method url-fetch)
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1z38nibirqxrbsfyhfcrnzlcw16cqjp4ds6qnjfxalwayf9fm5x9"))))
+ "1fv06j5c99imvzkac3j40lgjhr5b2i77fnyffhlvj92bli1fm1c6"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
Also included is @command{fbgrab}, a wrapper around @command{fbcat} that
emulates the behaviour of Gunnar Monell's older fbgrab utility.")
(license license:gpl2)))
+
+(define-public libcgroup
+ (package
+ (name "libcgroup")
+ (version "0.41")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://sourceforge/libcg/" name "/"
+ version "/" name "-" version ".tar.bz2"))
+ (sha256
+ (base32 "0lgvyq37gq84sk30sg18admxaj0j0p5dq3bl6g74a1ppgvf8pqz4"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f))
+ (native-inputs
+ `(("bison" ,bison)
+ ("flex" ,flex)))
+ (inputs
+ `(("linux-pam" ,linux-pam)))
+ (home-page "https://sourceforge.net/projects/libcg/")
+ (synopsis "Control groups management tools")
+ (description "Control groups is Linux kernel method for process resource
+restriction, permission handling and more. This package provides userspace
+interface to this kernel feature.")
+ (license license:lgpl2.1)))