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.scm408
1 files changed, 269 insertions, 139 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 0fe64bacf3..2c6df78518 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 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-2018, 2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015-2018, 2020, 2022-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2016–2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
@@ -78,6 +78,9 @@
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;; Copyright © 2023, 2024 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
+;;; Copyright © 2024 Gabriel Wicki <gabriel@erlikon.ch>
+;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -132,6 +135,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
+ #:use-module (gnu packages golang-build)
#:use-module (gnu packages gperf)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
@@ -491,117 +495,137 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
"linux-" version ".tar.xz"))
(sha256 hash)))
+;; The current "mainline" kernel.
+
+(define-public linux-libre-6.8-version "6.8.1")
+(define-public linux-libre-6.8-gnu-revision "gnu")
+(define deblob-scripts-6.8
+ (linux-libre-deblob-scripts
+ linux-libre-6.8-version
+ linux-libre-6.8-gnu-revision
+ (base32 "1kqwcm8baq3zx1z8jrgnvm9yps3y9jbf4pv1pbqqprpdscgl9089")
+ (base32 "04xk6myysrfrhfpq6zah8wk2ska7idmr968nh6pcd0ixbhas2k92")))
+(define-public linux-libre-6.8-pristine-source
+ (let ((version linux-libre-6.8-version)
+ (hash (base32 "0s7zgk9m545v8y7qjhv7cprrh58j46gpmb8iynyhy2hlwcv8j34d")))
+ (make-linux-libre-source version
+ (%upstream-linux-source version hash)
+ deblob-scripts-6.8)))
+
+
+
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
-(define-public linux-libre-6.6-version "6.6.9")
+(define-public linux-libre-6.7-version "6.7.10")
+(define-public linux-libre-6.7-gnu-revision "gnu")
+(define deblob-scripts-6.7
+ (linux-libre-deblob-scripts
+ linux-libre-6.7-version
+ linux-libre-6.7-gnu-revision
+ (base32 "1ddngihfmwffgvxxv8xsppi76r6grvdxr6zzfzvgl9qw07a6c9fd")
+ (base32 "1lhsy2qnmz47r8m926k1kng912m64j7pnpcvd1ddgdqpq5byp88j")))
+(define-public linux-libre-6.7-pristine-source
+ (let ((version linux-libre-6.7-version)
+ (hash (base32 "00vw90mypcliq0d72jdh1ql2dfmm7gpswln2qycxdz7rfsrrzfd9")))
+ (make-linux-libre-source version
+ (%upstream-linux-source version hash)
+ deblob-scripts-6.7)))
+
+;; The "longterm" kernels — the older releases with long-term upstream support.
+;; Here are the support timelines:
+;; <https://www.kernel.org/category/releases.html>
+
+(define-public linux-libre-6.6-version "6.6.22")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
linux-libre-6.6-version
linux-libre-6.6-gnu-revision
- (base32 "0g8m0rb15b0231dv8ji456s75a67szsaim71may3yprplycz6pav")
- (base32 "0kavbby960k7wg355p3hjb9v1c4gnk8dv3lkfhpz44ayhv7kihg5")))
+ (base32 "1qm8f3fq4yx59f7b6yky5ryyf229ypxnry922sr8cy0s7mp62cmv")
+ (base32 "014w19b9igdy3rpwrqn21why151zlc9hdx2b1qvdkjsbz6smx3lp")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
- (hash (base32 "1cs8ym3yq9czjx6sbxpmn16l6a577mc4c1ff7nk1p2gw1jpnbg4f")))
+ (hash (base32 "1x52c6ywmspp3naishzsknhy7i0b7mv9baxx25a0y987cjsygqr3")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
-;; The "longterm" kernels — the older releases with long-term upstream support.
-;; Here are the support timelines:
-;; <https://www.kernel.org/category/releases.html>
-(define-public linux-libre-6.1-version "6.1.70")
+(define-public linux-libre-6.1-version "6.1.82")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
linux-libre-6.1-version
linux-libre-6.1-gnu-revision
(base32 "1sf80f2i4vf888xjcn84ymn4w5ynn30ib9033zwmv7f09yvfhapy")
- (base32 "1jg2v1nxd6i5x536vmd1l14xhpzrcimpmjfipb1zkrwil102y25f")))
+ (base32 "08y5smwgbl2l74dlk850pbvn8d1y14cqvll2gbx80vmvfwlzp8c3")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
- (hash (base32 "1vxgardfm2fi4c7zkxpljqicllfqqnp835a9lyb7dh2nchk6a4zd")))
+ (hash (base32 "01pcrcjp5mifjjmfz7j1jb8nhq8nkxspavxmv1l7d1qnskcx4l6i")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
-(define-public linux-libre-5.15-version "5.15.145")
+(define-public linux-libre-5.15-version "5.15.152")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
linux-libre-5.15-version
linux-libre-5.15-gnu-revision
(base32 "18ac30kxg2mf2f6gk3p935hzhz2qs110jy4xwk21kblnnkskbxj8")
- (base32 "1idjrn2w8jrixj8ifkk1awxyyq5042nc4p2mld4rda96azlnp948")))
+ (base32 "1a4la9nfdl5qiyfbzhgbqhl638wy1crkgpfnfaj0qf3hg4jsg0g4")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
- (hash (base32 "086nssif66s86wkixz4yb7xilz1k49g32l0ib28r8fjzc23rv95j")))
+ (hash (base32 "0zm4wkryj4mim4fr7pf5g9rlzh31yb1c40lkp85lvcm5yhjm507h")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
-(define-public linux-libre-5.10-version "5.10.205")
+(define-public linux-libre-5.10-version "5.10.213")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
linux-libre-5.10-version
linux-libre-5.10-gnu-revision
(base32 "1b33rkn32b923025iiz4xzxiy8y5ii9j5qk4021mg575890rl4ch")
- (base32 "0xrrnmb5kcc5r21bdm24aq0fnkk1imn367c1cxlj78b6l6gigx4b")))
+ (base32 "12csh2zyjrqzgqcv799gv8h4xaw1irxh2zqddn4jqp5p7psx4j5k")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
- (hash (base32 "0qw8g0h4k0b4dyvspbj51cwr68ihwjzsi2b2261ipy3l1nl1fln5")))
+ (hash (base32 "105df7w6m5a3fngi6ajqs5qblaq4lbxsgcppllrk7v1r68i31kw4")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
-(define-public linux-libre-5.4-version "5.4.265")
+(define-public linux-libre-5.4-version "5.4.272")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
linux-libre-5.4-gnu-revision
(base32 "0xg5cz82k2cb0ikxvwv1hp5c3h377jkb5sd6aszvsk7hnabhk62v")
- (base32 "0sw67b2pk3lng4y67diqqnhxaggnp3nbkx8dxc5fs27rinfxr4m1")))
+ (base32 "0x0xg0fcykpd117x3q0gim8jilhx922ashhckjvafxv2gk2zzjhj")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
- (hash (base32 "05cvvwjiznn7hfd02qklklalg0chahvh5v18w64lcva6kzj9kbjd")))
+ (hash (base32 "0rp3waqrm489crcrms2ls7fxcw5jdkjhazvx82z68gj0kaaxb69m")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
-(define-public linux-libre-4.19-version "4.19.303")
+(define-public linux-libre-4.19-version "4.19.310")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
linux-libre-4.19-gnu-revision
(base32 "0pjal2cc2f99cvw8r4icb4l24j41k48jkj6bqk7pcahzcgx33ycb")
- (base32 "1425mhkfxn18vxn05bb4h3li7x1jl7l1hf1zi8xhnqv3wa31h9wl")))
+ (base32 "0fgkp3v7qgqpn7l1987xcwwlrmwsbscqnxfv06p8nkavrhymrv3c")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
- (hash (base32 "0dlbl47xs7z4yf9cxbxqzd7zs1f9070jr6ck231wgppa6lwwwb82")))
+ (hash (base32 "0sfy2g9jzxd8ia0idll72l7npi2kssdkz29h8jjxhilgmg299v4m")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
-(define-public linux-libre-4.14-version "4.14.334")
-(define-public linux-libre-4.14-gnu-revision "gnu1")
-(define deblob-scripts-4.14
- (linux-libre-deblob-scripts
- linux-libre-4.14-version
- linux-libre-4.14-gnu-revision
- (base32 "1vbgykwzf7j0yjqcwn747cfhwj0rgw3s9h627q94wb9a19x9p0fr")
- (base32 "1faagsj4i31z2bp83hflx3q9vrddjnn37a3ah2b47iaplva7z1nd")))
-(define-public linux-libre-4.14-pristine-source
- (let ((version linux-libre-4.14-version)
- (hash (base32 "0iaaqdkszmfarvjfszc9rf7y9zsv3w82934xmvmzmsbiz86547ca")))
- (make-linux-libre-source version
- (%upstream-linux-source version hash)
- deblob-scripts-4.14)))
-
(define %boot-logo-patch
;; Linux-Libre boot logo featuring Freedo and a gnu.
(origin
@@ -630,6 +654,16 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
+(define-public linux-libre-6.8-source
+ (source-with-patches linux-libre-6.8-pristine-source
+ (list %boot-logo-patch
+ %linux-libre-arm-export-__sync_icache_dcache-patch)))
+
+(define-public linux-libre-6.7-source
+ (source-with-patches linux-libre-6.7-pristine-source
+ (list %boot-logo-patch
+ %linux-libre-arm-export-__sync_icache_dcache-patch)))
+
(define-public linux-libre-6.6-source
(source-with-patches linux-libre-6.6-pristine-source
(list %boot-logo-patch
@@ -667,10 +701,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
-(define-public linux-libre-4.14-source
- (source-with-patches linux-libre-4.14-pristine-source
- (list %boot-logo-patch)))
-
;;;
;;; Kernel headers.
@@ -749,6 +779,16 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(description "Headers of the Linux-Libre kernel.")
(license license:gpl2)))
+(define-public linux-libre-headers-6.8
+ (make-linux-libre-headers* linux-libre-6.8-version
+ linux-libre-6.8-gnu-revision
+ linux-libre-6.8-source))
+
+(define-public linux-libre-headers-6.7
+ (make-linux-libre-headers* linux-libre-6.7-version
+ linux-libre-6.7-gnu-revision
+ linux-libre-6.7-source))
+
(define-public linux-libre-headers-6.6
(make-linux-libre-headers* linux-libre-6.6-version
linux-libre-6.6-gnu-revision
@@ -779,11 +819,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
linux-libre-4.19-gnu-revision
linux-libre-4.19-source))
-(define-public linux-libre-headers-4.14
- (make-linux-libre-headers* linux-libre-4.14-version
- linux-libre-4.14-gnu-revision
- linux-libre-4.14-source))
-
;; The following package is used in the early bootstrap, and thus must be kept
;; stable and with minimal build requirements.
(define-public linux-libre-headers-5.15.49
@@ -1093,6 +1128,28 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages.
;;;
+(define-public linux-libre-6.7
+ (make-linux-libre* linux-libre-6.7-version
+ linux-libre-6.7-gnu-revision
+ linux-libre-6.7-source
+ '("x86_64-linux" "i686-linux" "armhf-linux"
+ "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
+ #:configuration-file kernel-config))
+
+(define-public linux-libre-version linux-libre-6.7-version)
+(define-public linux-libre-gnu-revision linux-libre-6.7-gnu-revision)
+(define-public linux-libre-pristine-source linux-libre-6.7-pristine-source)
+(define-public linux-libre-source linux-libre-6.7-source)
+(define-public linux-libre linux-libre-6.7)
+
+(define-public linux-libre-6.8
+ (make-linux-libre* linux-libre-6.8-version
+ linux-libre-6.8-gnu-revision
+ linux-libre-6.8-source
+ '("x86_64-linux" "i686-linux" "armhf-linux"
+ "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
+ #:configuration-file kernel-config))
+
(define-public linux-libre-6.6
(make-linux-libre* linux-libre-6.6-version
linux-libre-6.6-gnu-revision
@@ -1101,12 +1158,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
-(define-public linux-libre-version linux-libre-6.6-version)
-(define-public linux-libre-gnu-revision linux-libre-6.6-gnu-revision)
-(define-public linux-libre-pristine-source linux-libre-6.6-pristine-source)
-(define-public linux-libre-source linux-libre-6.6-source)
-(define-public linux-libre linux-libre-6.6)
-
(define-public linux-libre-6.1
(make-linux-libre* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
@@ -1147,14 +1198,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux")
#:configuration-file kernel-config))
-(define-public linux-libre-4.14
- (make-linux-libre* linux-libre-4.14-version
- linux-libre-4.14-gnu-revision
- linux-libre-4.14-source
- '("x86_64-linux" "i686-linux" "armhf-linux"
- "powerpc64le-linux")
- #:configuration-file kernel-config))
-
;; Linux-Libre-LTS points to the *newest* released long-term support version of
;; Linux-Libre.
;; Reference: <https://www.kernel.org/category/releases.html>
@@ -1217,14 +1260,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#: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-gnu-revision
- linux-libre-4.14-source
- '("armhf-linux")
- #:defconfig "multi_v7_defconfig"
- #:extra-version "arm-generic"))
-
(define-public linux-libre-arm-omap2plus
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
@@ -1241,14 +1276,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#: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-gnu-revision
- linux-libre-4.14-source
- '("armhf-linux")
- #:defconfig "omap2plus_defconfig"
- #:extra-version "arm-omap2plus"))
-
(define-public linux-libre-arm64-generic
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
@@ -1321,7 +1348,24 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
linux-libre-gnu-revision
linux-libre-source
'("riscv64-linux")
- #:extra-version "riscv64-generic"))
+ #:extra-version "riscv64-generic"
+ #:extra-options
+ (append
+ ;; required `guix system vm'
+ `(("CONFIG_USB_HID" . m)
+ ("CONFIG_HID_GEMBIRD" . m)
+ ("CONFIG_AHCI_DWC" . m)
+ ("CONFIG_SATA_AHCI" . m)
+ ("CONFIG_CRYPTO_SERPENT" . m)
+ ("CONFIG_CRYPTO_WP512" . m)
+ ("CONFIG_USB_UAS" . m)
+ ("CONFIG_USB_STORAGE" . m)
+ ("CONFIG_HID_GENERIC" . m)
+ ("CONFIG_DRM_CIRRUS_QEMU" . m)
+ ("CONFIG_HW_RANDOM_VIRTIO" . m)
+ ("CONFIG_VIRTIO_CONSOLE" . m)
+ ("CONFIG_CRYPTO_XTS" . m))
+ %default-extra-linux-options)))
(define-public linux-libre-mips64el-fuloong2e
(make-linux-libre* linux-libre-version
@@ -2122,14 +2166,14 @@ deviation, and minimum and maximum values. It can show a nice histogram too.")
(define-public psmisc
(package
(name "psmisc")
- (version "23.5")
+ (version "23.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/psmisc/psmisc/psmisc-"
version ".tar.xz"))
(sha256
- (base32 "12z5786dnf37n8wvv73wdcqp3nvsqzhwdk3ajna0mag4yz1fqdyw"))))
+ (base32 "09y30ywh1d4s4f0wgvki115kgpliq48rarmfmmjl0iq22jf5viaq"))))
(build-system gnu-build-system)
(arguments
(list
@@ -2346,7 +2390,7 @@ by Robert Shea and Robert Anton Wilson.")
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ;no test suite
- (inputs (list fuse-2 mbedtls-apache))
+ (inputs (list fuse-2 mbedtls-lts))
(synopsis "FUSE driver to read/write Windows BitLocker drives")
(description
"This package provides means to to read BitLocker encrypted
@@ -2463,14 +2507,14 @@ slabtop, tload, top, vmstat, w, watch and sysctl.")
(define-public usbutils
(package
(name "usbutils")
- (version "015")
+ (version "017")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/usb/usbutils/"
"usbutils-" version ".tar.xz"))
(sha256
- (base32 "0vnsdzx997v8ksi5dbsi2vc8b3mcm5b6jnmcdhszdyag3yxm3d63"))))
+ (base32 "0nz008kshcajc9asxr4j5dh4wgq72z52lws4ga6y60wirzymz8m6"))))
(build-system gnu-build-system)
(outputs (list "out" "python"))
(arguments
@@ -2537,7 +2581,7 @@ module.")
(define-public e2fsprogs
(package
(name "e2fsprogs")
- (version "1.46.4")
+ (version "1.47.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2546,7 +2590,7 @@ module.")
"e2fsprogs-" version ".tar.xz"))
(sha256
(base32
- "04wp77fg842dhribgn0xvbd77idh0n7a839ga4bwy78v7i9l445i"))))
+ "1nymjw801lmlr5y6bg1zv9jsip5dkyxqislbdzpir4mx5czzajhl"))))
(build-system gnu-build-system)
(inputs (list `(,util-linux "lib")))
(native-inputs (list pkg-config
@@ -3634,7 +3678,7 @@ devices. It replaces @code{iwconfig}, which is deprecated.")
(inputs
(list kmod libnl ncurses pciutils zlib))
(home-page "https://01.org/powertop/")
- (synopsis "Analyze power consumption on Intel-based laptops")
+ (synopsis "Analyze power consumption on x86-based laptops")
(description
"PowerTOP is a Linux tool to diagnose issues with power consumption and
power management. In addition to being a diagnostic tool, PowerTOP also has
@@ -4330,10 +4374,9 @@ to the in-kernel OOM killer.")
(license license:expat)))
(define-public eudev
- ;; The post-systemd fork, maintained by Gentoo.
(package
(name "eudev")
- (version "3.2.11")
+ (version "3.2.14")
(source (origin
(method git-fetch)
(uri (git-reference (url "https://github.com/gentoo/eudev")
@@ -4341,8 +4384,9 @@ to the in-kernel OOM killer.")
(file-name (git-file-name name version))
(sha256
(base32
- "0dzaqwjnl55f69ird57wb6skahc6l7zs1slsrzqqfhww33icp6av"))
- (patches (search-patches "eudev-rules-directory.patch"))))
+ "1f6lz57igi7iw2ls3fpzgw42bfznam4nf9368h7x8yf1mb737yxz"))
+ (patches (search-patches "eudev-rules-directory.patch"))
+ (modules '((guix build utils)))))
(build-system gnu-build-system)
(arguments
(list
@@ -4353,6 +4397,31 @@ to the in-kernel OOM killer.")
(substitute* "man/make.sh"
(("/usr/bin/xsltproc")
(search-input-file (or native-inputs inputs) "/bin/xsltproc")))))
+ (add-before 'bootstrap 'install-in-lib
+ (lambda _
+ ;; When the udev-service-type instantiates /etc, it collects
+ ;; hardware files from the <package>/lib/udev/hwdb.d directories
+ ;; of different packages. Since we set sysconfdir to /etc, the
+ ;; only package-dependent location we can install hwdb files is
+ ;; in <package>/lib/udev/hwdb.d. Eudev is configured to install
+ ;; these files in sysconfdir, but they should be placed into
+ ;; udevlibexecdir.
+ (copy-file "hwdb/Makefile.am" "hwdb/files.am")
+ (call-with-output-file "hwdb/Makefile.am"
+ (lambda (port)
+ (format port "hardwarelibdir = $(udevlibexecdir)/hwdb.d\n")
+ (format port "include ./files.am")))
+ (substitute* "hwdb/files.am"
+ (("dist_udevhwdb_DATA =")
+ "dist_hardwarelib_DATA ="))
+ ;; Do not install the empty udev.conf template.
+ (substitute* "src/udev/Makefile.am"
+ (("dist_udevconf_DATA =")
+ "dist_noinst_DATA ="))
+ ;; Do not ensure that /etc/udev/rules.d exists.
+ (substitute* "rules/Makefile.am"
+ (("\\$\\(MKDIR_P\\) \\$\\(DESTDIR\\)\\$\\(udevconfdir\\)/rules\\.d")
+ "true"))))
(add-after 'install 'move-static-library
(lambda _
(let ((source (string-append #$output "/lib/libudev.a"))
@@ -4364,19 +4433,17 @@ to the in-kernel OOM killer.")
;; such that Libtool looks for it in the usual places.
(substitute* (string-append #$output "/lib/libudev.la")
(("old_library=.*")
- "old_library=''\n")))))
- (add-after 'install 'build-hwdb
- (lambda _
- ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and
- ;; similar tools to display product names.
- ;;
- ;; XXX: This can't be done when cross-compiling. Find another way
- ;; to generate hwdb.bin for cross-built systems.
- #$@(if (%current-target-system)
- #~(#t)
- #~((invoke (string-append #$output "/bin/udevadm")
- "hwdb" "--update"))))))
- #:configure-flags #~(list "--enable-manpages")))
+ "old_library=''\n"))))))
+ #:configure-flags
+ #~(list "--enable-manpages"
+ ;; By default, autoconf uses $prefix/etc. The udev-service-type
+ ;; makes sure /etc is set up with rules and hardware file
+ ;; descriptions.
+ "--sysconfdir=/etc")))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "UDEV_HWDB_PATH")
+ (files '("lib/udev/hwdb.d")))))
(native-inputs
(list autoconf
automake
@@ -4408,25 +4475,36 @@ time.")
(define-public python-evdev
(package
(name "python-evdev")
- (version "1.3.0")
+ (version "1.5.0")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "evdev" version))
+ (method git-fetch) ; no tests data in PyPi package
+ (uri (git-reference
+ (url "https://github.com/gvalkov/python-evdev")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "0kb3636yaw9l8xi8s184w0r0n9ic5dw3b8hx048jf9fpzss4kimi"))))
- (build-system python-build-system)
+ (base32 "1cbakix48zxivbznzb02w7sbxmqfaiaahhvjnjz4yif4vyrdyjli"))))
+ (build-system pyproject-build-system)
(arguments
- `(#:tests? #f ;no rule for tests
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'fix-hard-coded-directory
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "setup.py"
- (("/usr/include/linux")
- (string-append
- (assoc-ref inputs "kernel-headers") "/include/linux")))
- #t)))))
+ (list
+ #:test-flags
+ ;; Silent tests requiring access to /dev/uinput.
+ #~(list "-k" (string-append "not test_open"
+ " and not test_open_context"
+ " and not test_enable_events"
+ " and not test_abs_values"
+ " and not test_write"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'fix-hard-coded-directory
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "setup.py"
+ (("/usr/include/linux")
+ (string-append
+ (assoc-ref inputs "kernel-headers") "/include/linux"))))))))
+ (native-inputs
+ (list python-pytest))
(home-page "https://github.com/gvalkov/python-evdev")
(synopsis "Bindings to the Linux input handling subsystem")
(description
@@ -5264,6 +5342,51 @@ existing Docker images. Singularity requires kernel support for container
isolation or root privileges.")
(license license:bsd-3)))
+(define-public python-spython
+ (package
+ (name "python-spython")
+ (version "0.3.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "spython" version))
+ (sha256
+ (base32 "0kly851k6mj7xzcybciav5d0pq5q04pzg7c5a1g712bqbxkha4ck"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Configure absolute path to singularity.
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((singularity (search-input-file inputs "bin/singularity")))
+ (substitute* "spython/utils/terminal.py"
+ (("software=\"singularity\"")
+ (string-append "software=\"" singularity "\"")))
+ (substitute* (list "spython/utils/terminal.py"
+ "spython/main/help.py"
+ "spython/main/base/command.py")
+ (("\\[\"singularity\"")
+ (string-append "[\"" singularity "\"")))
+ (substitute* "spython/main/execute.py"
+ (("shutil.which\\(\"singularity\"\\)")
+ (string-append "shutil.which(\"" singularity "\")"))))))
+ ;; Skip tests that require network access.
+ (add-before 'check 'skip-tests
+ (lambda _
+ (delete-file "spython/tests/test_client.py"))))))
+ (inputs
+ (list singularity))
+ (native-inputs
+ (list python-pytest
+ python-pytest-runner))
+ (home-page "https://github.com/singularityhub/singularity-cli")
+ (synopsis "Singularity Python client")
+ (description "@code{python-spython} is a Python library to interact with
+Singularity containers.")
+ (license license:mpl2.0)))
+
(define-public libnvme
(package
(name "libnvme")
@@ -7497,15 +7620,16 @@ running boot option, and more.")
(define-public sysstat
(package
(name "sysstat")
- (version "12.4.4")
+ (version "12.7.5")
(source
(origin
(method url-fetch)
- (uri (string-append "http://pagesperso-orange.fr/sebastien.godard/"
+ (uri (string-append "https://sysstat.github.io/sysstat-packages/"
"sysstat-" version ".tar.xz"))
(sha256
- (base32 "091xjip7l52dxal8dsfh5chksr4g9gclnssw3hjjxy84kr3yf4lm"))))
+ (base32 "0ssdrm3k0fclq5b5i0aznfwdkbac9l9cf88idaq3pls9lm040rjp"))))
(build-system gnu-build-system)
+ (native-inputs (list gettext-minimal))
(arguments
`(#:tests? #f ; no test suite.
;; Without this flag, it tries to install the man pages with group 'root'
@@ -7522,7 +7646,7 @@ running boot option, and more.")
(substitute* "Makefile"
(("mkdir -p \\$\\(DESTDIR\\)\\$\\(SA_DIR\\)")
"")))))))
- (home-page "http://sebastien.godard.pagesperso-orange.fr/")
+ (home-page "https://sysstat.github.io")
(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},
@@ -7820,7 +7944,7 @@ every time the power supply source is changed.")
(("\"tlp-stat\"")
(string-append "'" tlp-stat "'"))
(("/usr/share/tlp/defaults.conf")
- (string-append "'" defaults.conf "'")))
+ defaults.conf))
(substitute* "ui_config_objects/gtkusblist.py"
(("\"lsusb\"")
(string-append "'" lsusb "'")))
@@ -8798,22 +8922,25 @@ framebuffer dump file (copy) to a PNG image.")
(define-public libcgroup
(package
(name "libcgroup")
- (version "2.0.2")
+ (version "3.1.0")
(home-page "https://github.com/libcgroup/libcgroup")
(source
(origin
(method url-fetch)
- (uri (string-append home-page "/releases/download/v"
- version "/" name "-" version ".tar.gz"))
+ (uri (string-append
+ "https://github.com/libcgroup/libcgroup/releases/download/v"
+ version "/" name "-" version ".tar.gz"))
(sha256
- (base32 "1y0c9ncsawamj77raiw6qkbm5cdsyvhjb2mvgma1kxmgw0r3pxlf"))))
+ (base32 "0n0jkvmagw14vgwx3j5b6vv5h25lasrg2a7xihq9h11ww2qw8vlp"))))
(build-system gnu-build-system)
(arguments
;; Tests are virtualized with lxc, it is not very feasible
;; to make them executable under guix build. Also, note that
;; origin is using source tarball release which is prepared
;; after testing.
- `(#:tests? #f))
+ (list #:tests? #f
+ #:configure-flags
+ #~'("--disable-systemd")))
(native-inputs
(list bison flex))
(inputs
@@ -9359,7 +9486,7 @@ types and interfaces and translates so that the X server can use them.")
(define-public pipewire
(package
(name "pipewire")
- (version "1.0.0")
+ (version "1.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -9368,7 +9495,7 @@ types and interfaces and translates so that the X server can use them.")
(file-name (git-file-name name version))
(sha256
(base32
- "0a8wvsnbgqanp2vjdpkaxpny0k17hz720rd20zdi00s9xjbcrycr"))))
+ "10psfk260pqgi375d5q80yyzy2a1jabs3cgvrd0w18sdwi1knp21"))))
(build-system meson-build-system)
(arguments
(list
@@ -9467,7 +9594,7 @@ tools for managing PipeWire.")
(define-public ell
(package
(name "ell")
- (version "0.59")
+ (version "0.61")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -9476,7 +9603,7 @@ tools for managing PipeWire.")
(file-name (git-file-name name version))
(sha256
(base32
- "11xlkdvw7pyd9idq1zsnl946dry9aksnz29wbpzxqjc97xhhd5xq"))))
+ "1lkjf24ap40wk747z1iv8ds8z40alc5x8rzsgczjj1707x2ik6mj"))))
(build-system gnu-build-system)
(arguments
;; Tests launch dbus-daemon instances that all try to bind to
@@ -10304,25 +10431,25 @@ text-based database (@file{$XDG_CONFIG_HOME/modprobed-db}), which can be read
directly by @code{make localmodconfig} as described above.")
(license license:expat)))
-(define-public kconfig-hardened-check
+(define-public kernel-hardening-checker
(package
- (name "kconfig-hardened-check")
- (version "0.6.1")
+ (name "kernel-hardening-checker")
+ (version "0.6.6")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/a13xp0p0v/kconfig-hardened-check")
+ (url "https://github.com/a13xp0p0v/kernel-hardening-checker")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "0bpdy2a7l75y5cqzzc92nh4gapzgza8ml5i8ximr6brf6pr3681z"))))
+ "1w9xx3xvx4wrfdkdwkfzjlfichgkvacil9b8s1fcgla63z65m5f6"))))
(build-system python-build-system)
- (home-page "https://github.com/a13xp0p0v/kconfig-hardened-check")
+ (home-page "https://github.com/a13xp0p0v/kernel-hardening-checker")
(synopsis
"Tool for checking the security hardening options of the Linux kernel")
(description
- "@code{kconfig-hardened-check} is a tool for checking the security
+ "@code{kernel-hardening-checker} is a tool for checking the security
hardening options of the Linux kernel. Provided preferences are based on
suggestions from various sources, including:
@@ -10336,6 +10463,9 @@ suggestions from various sources, including:
This tool supports checking Kconfig options and kernel cmdline parameters.")
(license license:gpl3)))
+(define-public kconfig-hardened-check
+ (deprecated-package "kconfig-hardened-check" kernel-hardening-checker))
+
(define-public firejail
(package
(name "firejail")