aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/linux.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/linux.scm')
-rw-r--r--gnu/packages/linux.scm155
1 files changed, 123 insertions, 32 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 5e450a72a7..aa49d40b7b 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1,13 +1,13 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; 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 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2016, 2017 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 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Raymond Nicholson <rain1@openmailbox.org>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
@@ -19,6 +19,7 @@
;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2016 ng0 <ng0@libertad.pw>
+;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -342,26 +343,26 @@ It has been modified to remove all non-free binary blobs.")
(define %intel-compatible-systems '("x86_64-linux" "i686-linux"))
(define-public linux-libre
- (make-linux-libre "4.8.15"
- "0msgi44mh1ighfawysrzrljikwrapkvk418d6h0v45vj2i5rwln9"
+ (make-linux-libre "4.9.5"
+ "1s8lip1hxjsza0qqw93kwp3281rbgzhk4vnvy6fmny8iz7y75vzd"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.4
- (make-linux-libre "4.4.39"
- "0aqi44xshib7lx9zjc0kj2v172ywa0iy2kb6z0whbiw3f841hv43"
+ (make-linux-libre "4.4.44"
+ "0rg5iw7qxry84hha8vfnzrjq0sfnr3vvdwhdz858y7pblg2vr3f0"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.1
- (make-linux-libre "4.1.37"
- "0q79cxmrz0j5wh7z1dc103q6q6qf7rqgjl7ka8lvn4vl32pr0kq1"
+ (make-linux-libre "4.1.38"
+ "165kmzglhg63hn7y4q7r6cb2dpsljxiq1czvgyx0bkd1vd2bcvsa"
%intel-compatible-systems
#:configuration-file kernel-config))
;; Avoid rebuilding kernel variants when there is a minor version bump.
-(define %linux-libre-version "4.8.15")
-(define %linux-libre-hash "0msgi44mh1ighfawysrzrljikwrapkvk418d6h0v45vj2i5rwln9")
+(define %linux-libre-version "4.9.5")
+(define %linux-libre-hash "1s8lip1hxjsza0qqw93kwp3281rbgzhk4vnvy6fmny8iz7y75vzd")
(define-public linux-libre-arm-generic
(make-linux-libre %linux-libre-version
@@ -606,7 +607,7 @@ slabtop, and skill.")
(build-system gnu-build-system)
(inputs
`(("libusb" ,libusb)
- ("eudev" ,eudev)))
+ ("eudev" ,eudev-with-hwdb)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://www.linux-usb.org/")
@@ -631,9 +632,15 @@ slabtop, and skill.")
"1ix0b83zgw5n0p2grh2961c6796m92yr2jqc2sbr23x3lfsp8r71"))
(modules '((guix build utils)))
(snippet
- '(substitute* "MCONFIG.in"
- (("INSTALL_SYMLINK = /bin/sh")
- "INSTALL_SYMLINK = sh")))))
+ '(begin
+ (substitute* "MCONFIG.in"
+ (("INSTALL_SYMLINK = /bin/sh")
+ "INSTALL_SYMLINK = sh"))
+
+ ;; Do not include a timestamp in libext2fs.info.gz.
+ (substitute* "doc/Makefile.in"
+ (("gzip -9")
+ "gzip -9n"))))))
(build-system gnu-build-system)
(inputs `(("util-linux" ,util-linux)))
(native-inputs `(("pkg-config" ,pkg-config)
@@ -650,6 +657,11 @@ slabtop, and skill.")
"--disable-libuuid" "--disable-uuidd"
"--disable-fsck"
+ ;; Use symlinks instead of hard links for
+ ;; 'fsck.extN' etc. This makes the resulting nar
+ ;; smaller and is preserved across copies.
+ "--enable-symlink-install"
+
;; Install libext2fs et al.
"--enable-elf-shlibs")
@@ -715,6 +727,8 @@ slabtop, and skill.")
(version (package-version e2fsprogs))
(build-system trivial-build-system)
(source #f)
+ (inputs
+ `(("e2fsprogs" ,e2fsprogs/static)))
(arguments
`(#:modules ((guix build utils))
#:builder
@@ -723,23 +737,18 @@ slabtop, and skill.")
(ice-9 ftw)
(srfi srfi-26))
- (let ((source (string-append (assoc-ref %build-inputs "e2fsprogs")
- "/sbin"))
+ (let ((e2fsck (string-append (assoc-ref %build-inputs "e2fsprogs")
+ "/sbin/e2fsck"))
(bin (string-append (assoc-ref %outputs "out") "/sbin")))
(mkdir-p bin)
(with-directory-excursion bin
- (for-each (lambda (file)
- (copy-file (string-append source "/" file)
- file)
- (remove-store-references file)
- (chmod file #o555))
- (scandir source (cut string-prefix? "fsck." <>))))))))
- (inputs `(("e2fsprogs" ,e2fsprogs/static)))
- (synopsis "Statically-linked fsck.* commands from e2fsprogs")
- (description
- "This package provides statically-linked command of fsck.ext[234] taken
-from the e2fsprogs package. It is meant to be used in initrds.")
+ (copy-file e2fsck "e2fsck")
+ (remove-store-references "e2fsck")
+ (chmod "e2fsck" #o555))))))
(home-page (package-home-page e2fsprogs))
+ (synopsis "Statically-linked e2fsck command from e2fsprogs")
+ (description "This package provides statically-linked e2fsck command taken
+from the e2fsprogs package. It is meant to be used in initrds.")
(license (package-license e2fsprogs))))
(define-public extundelete
@@ -1668,7 +1677,7 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
(define-public kmod
(package
(name "kmod")
- (version "22")
+ (version "23")
(source (origin
(method url-fetch)
(uri
@@ -1676,7 +1685,7 @@ to use Linux' inotify mechanism, which allows file accesses to be monitored.")
"kmod-" version ".tar.xz"))
(sha256
(base32
- "10lzfkmnpq6a43a3gkx7x633njh216w0bjwz31rv8a1jlgg1sfxs"))
+ "0mc12sx06p8il1ym3hdmgxxb37apn9yv7xij26gddjdfkx8xa0yk"))
(patches (search-patches "kmod-module-directory.patch"))))
(build-system gnu-build-system)
(native-inputs
@@ -1741,6 +1750,21 @@ device nodes from /dev/, handles hotplug events and loads drivers at boot
time.")
(license license:gpl2+)))
+(define-public eudev-with-hwdb
+ ;; TODO: Merge with 'eudev'.
+ (package
+ (inherit eudev)
+ (name "eudev-with-hwdb")
+ (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"))))))))))
+
(define-public lvm2
(package
(name "lvm2")
@@ -2759,6 +2783,36 @@ easy administration.")
;; GPL2: Everything else.
(license (list license:gpl2 license:gpl2+))))
+(define-public btrfs-progs/static
+ (package
+ (name "btrfs-progs-static")
+ (version (package-version btrfs-progs))
+ (source #f)
+ (build-system trivial-build-system)
+ (inputs
+ `(("btrfs-progs:static" ,btrfs-progs "static")))
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils)
+ (ice-9 ftw)
+ (srfi srfi-26))
+
+ (let* ((btrfs (assoc-ref %build-inputs "btrfs-progs:static"))
+ (out (assoc-ref %outputs "out"))
+ (source (string-append btrfs "/bin/btrfs.static"))
+ (target (string-append out "/bin/btrfs")))
+ (mkdir-p (dirname target))
+ (copy-file source target)
+ (remove-store-references target)
+ (chmod target #o555)))))
+ (home-page (package-home-page btrfs-progs))
+ (synopsis "Statically-linked btrfs command from btrfsprogs")
+ (description "This package provides statically-linked command of btrfs taken
+from the btrfsprogs package. It is meant to be used in initrds.")
+ (license (package-license btrfs-progs))))
+
(define-public freefall
(package
(name "freefall")
@@ -3072,14 +3126,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
(define-public mcelog
(package
(name "mcelog")
- (version "146")
+ (version "147")
(source (origin
(method url-fetch)
(uri (string-append "https://git.kernel.org/cgit/utils/cpu/mce/"
"mcelog.git/snapshot/v" version ".tar.gz"))
(sha256
(base32
- "0jjx4q1mfa380319cqz86nw5wv6jnbpvq2r8n0dyh87mhvrgb4wi"))
+ "10xxmqpd348ifbs7w8j0m53agp28r6imv237ha3kmhp632hmyf1d"))
(file-name (string-append name "-" version ".tar.gz"))
(modules '((guix build utils)))
(snippet
@@ -3281,3 +3335,40 @@ Extensible Firmware Interface (EFI) Boot Manager. This application can
create and destroy boot entries, change the boot order, change the next
running boot option, and more.")
(license license:gpl2+)))
+
+(define-public sysstat
+ (package
+ (name "sysstat")
+ (version "11.4.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://perso.orange.fr/sebastien.godard/"
+ "sysstat-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0f8gk1hma3bk198ziwrhh5jhisnbbgc1v4rxhny58n0zjzw0gm0z"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite.
+ ;; Without this flag, it tries to install the man pages with group 'root'
+ ;; and fails because /etc/passwd lacks an entry for the root user.
+ #:configure-flags
+ (list "--disable-file-attr"
+ (string-append "conf_dir=" (assoc-ref %outputs "out") "/etc"))
+ #:phases
+ (modify-phases %standard-phases
+ ;; The build process tries to create '/var/lib/sa', so we skip that
+ ;; instruction.
+ (add-after 'build 'skip-touching-var
+ (lambda _
+ (substitute* "Makefile"
+ (("mkdir -p \\$\\(DESTDIR\\)\\$\\(SA_DIR\\)")
+ ""))
+ #t)))))
+ (home-page "http://sebastien.godard.pagesperso-orange.fr/")
+ (synopsis "Performance monitoring tools for Linux")
+ (description "The sysstat utilities are a collection of performance
+monitoring tools for Linux. These include @code{mpstat}, @code{iostat},
+@code{tapestat}, @code{cifsiostat}, @code{pidstat}, @code{sar}, @code{sadc},
+@code{sadf} and @code{sa}.")
+ (license license:gpl2+)))