;;; Copyright © 2020 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages calendar)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cpio)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages compression)
"deblob-check"))
(sha256 deblob-check-hash))))
-(define deblob-scripts-5.6
+(define deblob-scripts-5.7
(linux-libre-deblob-scripts
- "5.6.7"
- (base32 "196fdbfy1f8zbmnv0ik720snig2bacsh7hfyvgbmlsfk3cil2zgv")
- (base32 "1g0bi3c8xzy1vz6w1xbpkb3a26bqn9d1yphcqz2ki4aikra81wid")))
+ "5.7.8"
+ (base32 "1gharhw104wxp9dxjkzzvsqc2xn44mc9yvacc3v7jh7b6bb0a64a")
+ (base32 "1n198gx18rxc7xflgiwya43inkwayc91pgb129kngfza8sm6v8ks")))
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
- "5.4.37"
+ "5.4.51"
(base32 "0ckxn7k5zgcqk30dq943bnamr6a6zjbw2aqjl3x30f4kvh5f6k25")
(base32 "10qb890is4z58vr8czh3xx69q62l3b3j38y410kgiw8nii3zx5lr")))
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
- "4.19.103"
+ "4.19.132"
(base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy")
(base32 "1w2wgxblpq09i33qmqgw5v3r5rm9vkkygr6m0sgv4zgczk9s29wr")))
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
- "4.14.170"
+ "4.14.188"
(base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6")
(base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky")))
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
- "4.9.213"
+ "4.9.230"
(base32 "1wvldzlv7q2xdbadas87dh593nxr4a8p5n0f8zpm72lja6w18hmg")
(base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2")))
(define deblob-scripts-4.4
(linux-libre-deblob-scripts
- "4.4.213"
+ "4.4.230"
(base32 "0x2j1i88am54ih2mk7gyl79g25l9zz4r08xhl482l3fvjj2irwbw")
(base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf")))
(sha256 hash)))
-(define-public linux-libre-5.6-version "5.6.15")
-(define-public linux-libre-5.6-pristine-source
- (let ((version linux-libre-5.6-version)
- (hash (base32 "0kh34f9vdfsi9g83fa1i1926djyzfi466w02c4y4d46ljf9pkav5")))
+(define-public linux-libre-5.7-version "5.7.9")
+(define-public linux-libre-5.7-pristine-source
+ (let ((version linux-libre-5.7-version)
+ (hash (base32 "1y231c3lf94lgnnn8bzi2yfx40h4xsli2hq0kaxdd744lxk30zd8")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
- deblob-scripts-5.6)))
+ deblob-scripts-5.7)))
-(define-public linux-libre-5.4-version "5.4.43")
+(define-public linux-libre-5.4-version "5.4.52")
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
- (hash (base32 "0i07g72138xdf1l8x593jndq0waf3fx7plz3m6n5f9fl885bjrr6")))
+ (hash (base32 "0fjxx8xpp0v0wwfw6zd5nc21i2r82wzcsy2yyl7w5c90259zlzh3")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
-(define-public linux-libre-4.19-version "4.19.125")
+(define-public linux-libre-4.19-version "4.19.133")
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
- (hash (base32 "0zmxs6q2rgssvsh76xq9xgcax7bps19x2448d1q1fj9pzc7g8hwq")))
+ (hash (base32 "1i6vfzg8xds4lvvzkxaak74727iq35hx4vxr14w65bq9gpzfacxr")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
-(define-public linux-libre-4.14-version "4.14.182")
+(define-public linux-libre-4.14-version "4.14.188")
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
- (hash (base32 "142v7qnfska86jqzilwq00kxdrq08iaaaw7f47xp9bnhb8fiy7b7")))
+ (hash (base32 "0jq6cyxa0mxnvd33gi66a4x3xlfsih2aaifa6yyvgldihw9y0vvn")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
-(define-public linux-libre-4.9-version "4.9.225")
+(define-public linux-libre-4.9-version "4.9.230")
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
- (hash (base32 "1s63aymgsc4lsysy9d972ps9cyrf6bncyy5wcpv5a3wbaj678iz5")))
+ (hash (base32 "0z03djys7k3z6z55xrw8rj4mv5i4h763lckz2anwxwgbwdb95fnm")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
-(define-public linux-libre-4.4-version "4.4.226")
+(define-public linux-libre-4.4-version "4.4.230")
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
- (hash (base32 "1dwvm81i62b06jsl38spfn719zrsbwq5z8viwckrpw4ma4w9k0j1")))
+ (hash (base32 "1qx74qli8yjc2rkb7kig79c1yv7pfqa8zi1wi0rndn4d4yk62cfa")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
(sha256
(base32 "1ifnfhpakzffn4b8n7x7w5cps9mzjxlkcfz9zqak2vaw8nzvl39f"))))
+(define %linux-libre-fix-atheros-9271-patch
+ (search-patch "linux-libre-fix-atheros-9271.patch"))
+
(define (source-with-patches source patches)
(origin
(inherit source)
(patches (append (origin-patches source)
patches))))
-(define-public linux-libre-5.6-source
- (source-with-patches linux-libre-5.6-pristine-source
+(define-public linux-libre-5.7-source
+ (source-with-patches linux-libre-5.7-pristine-source
(list %boot-logo-patch
- %linux-libre-arm-export-__sync_icache_dcache-patch
- ;; Pinebook Pro patch from linux-next,
- ;; can be dropped for linux-libre 5.7
- (search-patch
- "linux-libre-support-for-Pinebook-Pro.patch"))))
+ %linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-5.4-source
(source-with-patches linux-libre-5.4-pristine-source
(define-public linux-libre-4.14-source
(source-with-patches linux-libre-4.14-pristine-source
- (list %boot-logo-patch)))
+ (list %boot-logo-patch
+ %linux-libre-fix-atheros-9271-patch)))
(define-public linux-libre-4.9-source
(source-with-patches linux-libre-4.9-pristine-source
- (list %boot-logo-patch)))
+ (list %boot-logo-patch
+ %linux-libre-fix-atheros-9271-patch)))
(define-public linux-libre-4.4-source
(source-with-patches linux-libre-4.4-pristine-source
- (list %boot-logo-patch)))
+ (list %boot-logo-patch
+ %linux-libre-fix-atheros-9271-patch)))
\f
;;;
(description "Headers of the Linux-Libre kernel.")
(license license:gpl2)))
-(define-public linux-libre-headers-5.6
- (make-linux-libre-headers* linux-libre-5.6-version
- linux-libre-5.6-source))
+(define-public linux-libre-headers-5.7
+ (make-linux-libre-headers* linux-libre-5.7-version
+ linux-libre-5.7-source))
(define-public linux-libre-headers-5.4
(make-linux-libre-headers* linux-libre-5.4-version
("CONFIG_CIFS" . m)
("CONFIG_9P_FS" . m)))
+;; See https://github.com/iovisor/bcc/blob/master/INSTALL.md#kernel-configuration
+(define %bpf-extra-linux-options
+ `(;; Needed for probes
+ ("CONFIG_UPROBE_EVENTS" . #t)
+ ("CONFIG_KPROBE_EVENTS" . #t)
+ ;; kheaders module also helpful for tracing
+ ("CONFIG_IKHEADERS" . #t)
+ ("CONFIG_BPF" . #t)
+ ("CONFIG_BPF_SYSCALL" . #t)
+ ("CONFIG_BPF_JIT_ALWAYS_ON" . #t)
+ ;; optional, for tc filters
+ ("CONFIG_NET_CLS_BPF" . m)
+ ;; optional, for tc actions
+ ("CONFIG_NET_ACT_BPF" . m)
+ ("CONFIG_BPF_JIT" . #t)
+ ;; for Linux kernel versions 4.1 through 4.6
+ ;; ("CONFIG_HAVE_BPF_JIT" . y)
+ ;; for Linux kernel versions 4.7 and later
+ ("CONFIG_HAVE_EBPF_JIT" . #t)
+ ;; optional, for kprobes
+ ("CONFIG_BPF_EVENTS" . #t)
+ ;; kheaders module
+ ("CONFIG_IKHEADERS" . #t)))
+
(define (config->string options)
(string-join (map (match-lambda
((option . 'm)
("CONFIG_RTC_DRV_RK808" . #t))
%default-extra-linux-options)))
-(define-public linux-libre-arm-generic-5.6
- (make-linux-libre* linux-libre-5.6-version
- linux-libre-5.6-source
+(define-public linux-libre-arm-generic-5.7
+ (make-linux-libre* linux-libre-5.7-version
+ linux-libre-5.7-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic"
("CONFIG_RTC_DRV_RK808" . #t))
%default-extra-linux-options)))
-(define-public linux-libre-arm64-generic-5.6
- (make-linux-libre* linux-libre-5.6-version
- linux-libre-5.6-source
+(define-public linux-libre-arm64-generic-5.7
+ (make-linux-libre* linux-libre-5.7-version
+ linux-libre-5.7-source
'("aarch64-linux")
#:defconfig "defconfig"
#:extra-version "arm64-generic"
'("riscv64-linux")
#:extra-version "riscv64-generic"))
+(define-public linux-libre-with-bpf
+ (let ((base-linux-libre
+ (make-linux-libre*
+ linux-libre-5.4-version
+ linux-libre-5.4-source
+ '("x86_64-linux" "i686-linux" "armhf-linux"
+ "aarch64-linux" "riscv64-linux")
+ #:extra-version "bpf"
+ #:configuration-file kernel-config
+ #:extra-options
+ (append %bpf-extra-linux-options
+ %default-extra-linux-options))))
+ (package
+ (inherit base-linux-libre)
+ (inputs `(("cpio" ,cpio) ,@(package-inputs base-linux-libre))))))
+
+
\f
;;;
;;; Linux kernel modules.
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/teleshoes/acpi_call.git")
+ (url "https://github.com/teleshoes/acpi_call")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(license license:gpl3+)))) ; see README.md (no licence headers)
(define-public rtl8812au-aircrack-ng-linux-module
- (let ((commit "945d6ed6505c32f0993b1dba576388e92e78101b")
- (revision "0"))
+ (let ((commit "df2b8dfd8cb7d9f6cfeb55abaeab8a5372011fc9")
+ (revision "1"))
(package
(name "rtl8812au-aircrack-ng-linux-module")
(version (git-version "5.6.4.2" revision commit))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/aircrack-ng/rtl8812au.git")
+ (url "https://github.com/aircrack-ng/rtl8812au")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "1pjws7qb5l4z9k80vgz4zdxmqhbwxjjrmkpf0hijf821byyddvi7"))
+ (base32 "1qcr0j8yhg8l9l0f5y55zcsk1mgf3qd46yh9xfqgg91szxa3yvca"))
(modules '((guix build utils)))
(snippet
'(begin
#t))))
(build-system linux-module-build-system)
(arguments
- `(#:phases
+ `(#:make-flags
+ (list (string-append "KSRC="
+ (assoc-ref %build-inputs "linux-module-builder")
+ "/lib/modules/build"))
+ #:phases
(modify-phases %standard-phases
(replace 'build
- (lambda* (#:key inputs make-flags #:allow-other-keys)
- (apply invoke "make"
- (string-append "KSRC="
- (assoc-ref inputs "linux-module-builder")
- "/lib/modules/build")
- (or make-flags '())))))
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply invoke "make" make-flags))))
#:tests? #f)) ; no test suite
(supported-systems '("x86_64-linux" "i686-linux"))
(home-page "https://github.com/aircrack-ng/rtl8812au")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/tomaspinho/rtl8821ce.git")
+ (url "https://github.com/tomaspinho/rtl8821ce")
(commit commit)))
(file-name (git-file-name name version))
(sha256
"17jiw25k74kv5lnvgycvj2g1n06hbrpjz6p4znk4a62g136rhn4s"))))
(build-system linux-module-build-system)
(arguments
- `(#:phases
+ `(#:make-flags
+ (list "CC=gcc"
+ (string-append "KSRC="
+ (assoc-ref %build-inputs "linux-module-builder")
+ "/lib/modules/build"))
+ #:phases
(modify-phases %standard-phases
(replace 'build
- (lambda* (#:key (make-flags '()) inputs #:allow-other-keys)
- (setenv "CC" "gcc")
- (invoke "make"
- (string-append "KSRC="
- (assoc-ref inputs "linux-module-builder")
- "/lib/modules/build")))))
- #:tests? #f))
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply invoke "make" make-flags))))
+ #:tests? #f)) ; no test suite
(home-page "https://github.com/tomaspinho/rtl8821ce")
(synopsis "Linux driver for Realtek RTL8821CE wireless network adapters")
(description "This is Realtek's RTL8821CE Linux driver for wireless
between the CDemu userspace daemon and linux kernel.")
(license license:gpl2+)))
+(define-public bbswitch-module
+ (package
+ (name "bbswitch-module")
+ (version "0.8")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Bumblebee-Project/bbswitch")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1glch4j0x1dzlp2yrb67v2r5jg9609jb6p8m251y78m74advqw0l"))))
+ (build-system linux-module-build-system)
+ (arguments
+ ;; No tests.
+ `(#:tests? #f))
+ (home-page "https://github.com/Bumblebee-Project/bbswitch")
+ (synopsis "Kernel module that disables discrete Nvidia graphics cards")
+ (description "The bbswitch module provides a way to toggle the Nvidia
+graphics card on Optimus laptops.")
+ (license license:gpl2)))
+
(define-public ddcci-driver-linux
(package
(name "ddcci-driver-linux")
supported under @file{/sys/class/backlight/}.")
(license license:gpl2+)))
+(define-public v4l2loopback-linux-module
+ (package
+ (name "v4l2loopback-linux-module")
+ (version "0.12.5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/umlaeute/v4l2loopback")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qi4l6yam8nrlmc3zwkrz9vph0xsj1cgmkqci4652mbpbzigg7vn"))))
+ (build-system linux-module-build-system)
+ (arguments
+ `(#:tests? #f)) ; no test suite
+ (home-page "https://github.com/umlaeute/v4l2loopback")
+ (synopsis "Linux kernel module to create virtual V4L2 video devices")
+ (description
+ "This Linux module creates virtual video devices. @acronym{V4L2, Video
+for Linux 2} applications will treat these as ordinary video devices but read
+video data generated by another application, instead of a hardware device such
+as a capture card.
+
+This lets you apply nifty effects to your Jitsi video, for example, but also
+allows some more serious things like adding streaming capabilities to an
+application by hooking GStreamer into the loopback device.")
+ (license license:gpl2+)))
+
\f
;;;
;;; Pluggable authentication modules (PAM).
(name "ddate")
(version "0.2.2")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/bo0ts/ddate/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bo0ts/ddate")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "1bbqqq8mswj4bp9083gxjaky5ysfznax4cynsqwmy125z053yg6m"))))
+ (base32 "1qchxnxvghbma6gp1g78wnjxsri0b72ha9axyk31cplssl7yn73f"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f))
(home-page "https://github.com/bo0ts/ddate")
(define-public strace
(package
(name "strace")
- (version "5.5")
+ (version "5.7")
(home-page "https://strace.io")
(source (origin
(method url-fetch)
"/strace-" version ".tar.xz"))
(sha256
(base32
- "1zrhpzjlgfwfl8dd53llswmmharm5rbi0zch7lln5sjris69an4z"))))
+ "1n6cfz3i2krkyvxpdp3kmxhf7sy5xp0danzaiirbk5fdkfgvb15j"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(lambda _
(substitute* "strace.c"
(("/bin/sh") (which "sh")))
+ #t))
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ ;; XXX These hang forever even if the test time-out is extended.
+ (substitute* "tests/Makefile.in"
+ (("^\tstrace-DD?D?\\.test \\\\.*") ""))
#t)))
;; Don't fail if the architecture doesn't support different personalities.
#:configure-flags '("--enable-mpers=check")
(define-public iptables
(package
(name "iptables")
- (version "1.8.4")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://netfilter.org/iptables/iptables-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0z0mgs1ghvn3slc868mgbf2g26njgrzcy5ggyb5w4i55j1a3lflr"))))
+ ;; XXX When updating, remove the ‘install-missing-script’ phase.
+ (version "1.8.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (list (string-append "mirror://netfilter.org/iptables/iptables-"
+ version ".tar.bz2")
+ (string-append "https://www.netfilter.org/projects/iptables/"
+ "files/iptables-" version ".tar.bz2")))
+ (sha256
+ (base32 "02a3575ypdpg6a2x752mhk3f7h1381ymkq1n0gss6fp6292xfmyl"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(arguments
'(#:tests? #f ; no test suite
#:configure-flags ; add $libdir to the RUNPATH of executables
- (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))))
+ (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-missing-script
+ ;; A typo prevents installation of /sbin/iptables-apply. It's been
+ ;; fixed upstream (d4ed0c741fc789bb09d977d74d30875fdd50d08b), but
+ ;; a patch would require bootstrapping and more inputs. Simply copy
+ ;; the file ourselves.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (sbin (string-append out "/sbin")))
+ (install-file "iptables/iptables-apply" sbin)
+ #t))))))
(home-page "https://www.netfilter.org/projects/iptables/index.html")
(synopsis "Programs to configure Linux IP packet filtering rules")
(description
(define-public iproute
(package
(name "iproute2")
- (version "5.5.0")
+ (version "5.7.0")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "0ywg70f98wgfai35jl47xzpjp45a6n7crja4vc8ql85cbi1l7ids"))))
+ "088gs56iqhdlpw1iqjwrss4zxd4zbl2wl8s2implrrdajjxcfpbj"))))
(build-system gnu-build-system)
(arguments
`( ;; There is a test suite, but it wants network namespaces and sudo.
(define-public powertop
(package
(name "powertop")
- (version "2.12")
+ (version "2.13")
(source
(origin
(method url-fetch)
(uri (string-append "https://01.org/sites/default/files/downloads/"
"powertop-" version ".tar.gz"))
(sha256
- (base32 "1kiiwa5p2r7h1lzcf53xq61ckaa4wk565s9fs6vw4bfk84y3mfsw"))))
+ (base32 "0y1ixw8v17fdb1ima0zshrd0rh4zxdh10r93nrrvq6d4lhn9jpx6"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(define-public inotify-tools
(package
(name "inotify-tools")
- (version "3.20.1")
+ (version "3.20.2.2")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rvoicilas/inotify-tools.git")
+ (url "https://github.com/rvoicilas/inotify-tools")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
- "14dci1i4mhsd5sa33k8h3ayphk19kizynh5ql9ryibdpmcanfiyq"))))
+ "1r12bglkb0bkqff6kgxjm81hk6z20nrxq3m7iv15d4nrqf9pm7s0"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
(define-public kmod
(package
(name "kmod")
- (version "26")
+ (version "27")
(source (origin
(method url-fetch)
(uri
"kmod-" version ".tar.xz"))
(sha256
(base32
- "17dvrls70nr3b3x1wm8pwbqy4r8a5c20m0dhys8mjhsnpg425fsp"))
+ "035wzfzjx4nwidk747p8n085mgkvy531ppn16krrajx2dkqzply1"))
(patches (search-patches "kmod-module-directory.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("xz" ,xz)
("zlib" ,zlib)))
(arguments
- `(#:tests? #f ; FIXME: Investigate test failures
- #:configure-flags '("--with-xz" "--with-zlib")
+ `(#:configure-flags '("--with-xz" "--with-zlib"
+ "--disable-test-modules")
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-tests
+ (lambda _
+ ;; XXX: These tests need '--sysconfdir=/etc' to pass.
+ (substitute* "Makefile.in"
+ (("testsuite/test-modprobe") "")
+ (("testsuite/test-depmod") "")
+ (("testsuite/test-blacklist") ""))
+ #t))
(add-after 'install 'install-modprobe&co
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rfjakob/earlyoom.git")
+ (url "https://github.com/rfjakob/earlyoom")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
#t))))))
(synopsis "Logical volume management for Linux (statically linked)")))
+(define-public thin-provisioning-tools
+ (package
+ (name "thin-provisioning-tools")
+ (version "0.8.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jthornber/thin-provisioning-tools")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01wl8c0cjbx1smbhj8dx6av5bnw5775m58gasc3vqwvsj0s9hq19"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; Doesn't build with --enable-testing due to a function name collision
+ ;; with glibc. Fixed upstream. TODO: Enable tests when 0.9.0 is released.
+ `(#:tests? #f))
+ (native-inputs
+ `(("automake" ,automake)
+ ("autoreconf" ,autoconf)))
+ (inputs
+ `(("boost" ,boost)
+ ("expat" ,expat)
+ ("libaio" ,libaio)))
+ (synopsis "Tools for manipulating the metadata of device-mapper targets")
+ (description "A suite of tools for manipulating the metadata of the
+dm-thin, dm-cache and dm-era device-mapper targets.")
+ (home-page "https://github.com/jthornber/thin-provisioning-tools")
+ (license license:gpl3+)))
+
(define-public wireless-tools
(package
(name "wireless-tools")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/groeck/lm-sensors.git")
+ (url "https://github.com/groeck/lm-sensors")
(commit (string-append "V" (string-join
(string-split version #\.) "-")))))
(file-name (git-file-name name version))
#t)))
#:make-flags (list (string-append "prefix="
(assoc-ref %outputs "out"))
- ;; Make sure the kernel headers are treated as system
- ;; headers to suppress warnings from those.
- (string-append "C_INCLUDE_PATH="
- (assoc-ref %build-inputs "kernel-headers")
- "/include")
+ "CC=gcc"
"WERROR=0"
;; By default, 'config/Makefile' uses lib64 on
(name "pflask")
(version "0.2")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/ghedo/pflask/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ghedo/pflask")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1g8fjj67dfkc2s0852l9vqi1pm61gp4rxbpzbzg780f5s5hd1fys"))))
+ "1jikjbhlxlqracnai3v9krzcgd2xwp0p4adw5n07yxc7b857damz"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; no tests
`(#:configure-flags '("--localstatedir=/var")
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-reference-to-squashfs-tools
+ (add-after 'unpack 'patch-references
(lambda _
(substitute* "libexec/cli/build.exec"
(("if ! singularity_which mksquashfs") "if 0")
(("if ! mksquashfs")
(string-append "if ! " (which "mksquashfs"))))
+ (substitute* (list "libexec/cli/help.exec"
+ "libexec/bootstrap-scripts/functions"
+ "libexec/bootstrap-scripts/post.sh"
+ "libexec/functions")
+ (("egrep ")
+ (string-append (which "egrep") " ")))
#t))
(add-after 'install 'set-PATH
(lambda* (#:key inputs outputs #:allow-other-keys)
(define-public nvme-cli
(package
(name "nvme-cli")
- (version "1.10.1")
+ (version "1.12")
(home-page "https://github.com/linux-nvme/nvme-cli")
(source (origin
(method git-fetch)
(url home-page)
(commit (string-append "v" version))))
(sha256
- (base32 "12wp2wxmsw2v8m9bhvwvdbhdgx1md8iilhbl19sfzz2araiwi2x8"))
+ (base32 "0ldky34sn0m5c4hgiip0fkzm465nca69bhxicpd5dg8wxhzxqrp3"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
;; For tests.
("cmocka" ,cmocka)))
(inputs
- `(("json-c" ,json-c)
+ `(("json-c" ,json-c-0.13)
("libaio" ,libaio)
("liburcu" ,liburcu)
("lvm2" ,lvm2)
(define-public bluez
(package
(name "bluez")
- (version "5.53")
+ (version "5.54")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://kernel.org/linux/bluetooth/bluez-"
version ".tar.xz"))
- (patches (search-patches "bluez-CVE-2020-0556.patch"))
(sha256
(base32
- "1g1qg6dz6hl3csrmz75ixr12lwv836hq3ckb259svvrg62l2vaiq"))))
+ "1p2ncvjz6alr9n3l5wvq2arqgc7xjs6dqyar1l9jp0z8cfgapkb8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(define-public thinkfan
(package
(name "thinkfan")
- (version "1.1")
+ (version "1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/vmatare/thinkfan.git")
+ (url "https://github.com/vmatare/thinkfan")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1fxd1w3z65glw6y04myn7ihgswkx6sqnkky159mik4n96pfrsvr5"))))
+ (base32 "0vmkpj575a1w52zx1jn6kdrk8rc9vp0f1bldi1bajicpgbs6rjd3"))))
(build-system cmake-build-system)
(arguments
`(#:modules ((guix build cmake-build-system)
(inputs
`(("libatasmart" ,libatasmart)
("yaml-cpp" ,yaml-cpp)))
- (home-page "http://thinkfan.sourceforge.net/")
+ (home-page "https://github.com/vmatare/thinkfan")
(synopsis "Simple fan control program")
(description
"Thinkfan is a simple fan control program. It reads temperatures,
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/teleshoes/tpacpi-bat.git")
+ (url "https://github.com/teleshoes/tpacpi-bat")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(define-public haveged
(package
(name "haveged")
- (version "1.9.8")
+ (version "1.9.13")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/jirka-h/haveged.git")
+ (url "https://github.com/jirka-h/haveged")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1znr58fb3faq4nmrvc3c5whkc1f3chivm4vhicdwr9pdsyqqsd51"))))
+ (base32 "0g3hcvpky76cabgcfqh65fay7nnjkms32sgmlf33q969833hijqz"))))
(build-system gnu-build-system)
(home-page "https://www.issihosts.com/haveged")
(synopsis "Entropy source for the Linux random number generator")
(define-public mcelog
(package
(name "mcelog")
- (version "168")
+ (version "170")
(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
- "1c4faayg1gcm3002b2fdrfnv76z92mvfzccvx8w9crjp0d17sp24"))
+ "1m11v1y7cvpm7hwsghj23z77ps1w5jzn8000iwiyxpb939h2km5l"))
(file-name (string-append name "-" version ".tar.gz"))
(modules '((guix build utils)))
(snippet
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list "CC=gcc"
(string-append "prefix=" out)
- (string-append "DOCDIR=" out "/share/doc/mcelog")
+ (string-append "DOCDIR=" out "/share/doc/"
+ ,name "-" ,version)
"etcprefix=$(DOCDIR)/examples"))
;; The tests will only run as root on certain supported CPU models.
#:tests? #f))
(home-page "https://mcelog.org/")
(synopsis "Machine check monitor for x86 Linux systems")
(description
- "The mcelog daemon is required by the Linux kernel to log memory, I/O, CPU,
-and other hardware errors on x86 systems. It can also perform user-defined
-tasks, such as bringing bad pages off-line, when configurable error thresholds
-are exceeded.")
+ "The mcelog daemon logs memory, I/O, CPU, and other hardware errors on x86
+systems running the kernel Linux. It can also perform user-defined tasks, such
+as bringing bad pages off-line, when configurable error thresholds are
+exceeded.")
(license license:gpl2)))
(define-public mtd-utils
(package
(name "mtd-utils")
- (version "2.1.1")
+ (version "2.1.2")
(source (origin
(method url-fetch)
(uri (string-append
"mtd-utils-" version ".tar.bz2"))
(sha256
(base32
- "1lijl89l7hljx8xx70vrz9srd3h41v5gh4b0lvqnlv831yvyh5cd"))))
+ "1mp9fqgnz5r69s8ly98ry6k2blqnaqpllwi8m930dm0n8zrwbm4a"))))
(arguments
'(#:configure-flags '("--enable-unit-tests")))
(native-inputs
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/clbr/radeontop.git")
+ (url "https://github.com/clbr/radeontop")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/haikarainen/light.git")
+ (url "https://github.com/haikarainen/light")
(commit (string-append "v" version))))
(sha256
(base32 "1a70zcf88ifsnwll486aicjnh48zisdf8f7vi34ihw61kdadsq9s"))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/linrunner/TLP.git")
+ (url "https://github.com/linrunner/TLP")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public lshw
(package
(name "lshw")
- (version "B.02.18")
+ (version "B.02.19.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.ezix.org/software/"
".tar.gz"))
(sha256
(base32
- "0brwra4jld0d53d7jsgca415ljglmmx1l2iazpj4ndilr48yy8mf"))))
+ "100gm1c6gb2hkfws22h0xhvv7nz38p49lxd1csikj8qlhyn4gcwv"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases (delete 'configure))
(define-public libnftnl
(package
(name "libnftnl")
- (version "1.1.6")
+ (version "1.1.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://netfilter.org/libnftnl/"
"libnftnl-" version ".tar.bz2"))
(sha256
- (base32 "1jhyxsfrfqjascrm5lnxlcyzj6n0gc0qc1bp2asb7m61dxlmmsy1"))))
+ (base32 "13zd90bfrr0q3j0l0cbc8kiizccw6n8gp727kqnfljh024zw3nr0"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(define-public nftables
(package
(name "nftables")
- (version "0.9.3")
+ (version "0.9.6")
(source
(origin
(method url-fetch)
(string-append "https://www.nftables.org/projects/nftables"
"/files/nftables-" version ".tar.bz2")))
(sha256
- (base32 "0y6vbqp6x8w165q65h4n9sba1406gaz0d4744gqszbm7w9f92swm"))))
+ (base32 "0vmn6xwqa1nq6crfxshh049b199d0aj6hfgin7k068xhibzgvmk8"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags
'("--disable-man-doc"))) ; FIXME: Needs docbook2x.
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/proot-me/PRoot.git")
+ (url "https://github.com/proot-me/PRoot")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(version "0.5")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://github.com/JasonFerrara/jmtpfs/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JasonFerrara/jmtpfs")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "10v8d7mmx8b8123x5f9y9zaaa428ms6wkngwn2ra71n5a53wrjn0"))))
+ "1pm68agkhrwgrplrfrnbwdcvx5lrivdmqw8pb5gdmm3xppnryji1"))))
(build-system gnu-build-system)
(inputs
`(("file" ,file)
(version "0.51")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://github.com/jamesodhunt/procenv/archive/"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jamesodhunt/procenv")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
- (base32 "1javw97yw0qvjmj14js8vw6nsfyf2xc0kfiyq5f2hsp0553w2cdq"))))
+ (base32 "1ilrsw1rc85w29mkbkmm5n5w427gapv43yrjzvkb4kc9xhscgdjn"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags '("--disable-silent-rules")))
(native-inputs `(("groff" ,groff) ; for tests
itself and its environment as possible. It can be used as a test
tool, to understand the type of environment a process runs in, and for
comparing system environments.")
- (home-page "http://github.com/jamesodhunt/procenv/")
+ (home-page "https://github.com/jamesodhunt/procenv/")
(license license:gpl3+)))
(define-public libfabric
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/dgraziotin/mbpfan.git")
+ (url "https://github.com/dgraziotin/mbpfan")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/intel/opa-psm2.git")
+ (url "https://github.com/intel/opa-psm2")
(commit (string-append "PSM2_" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/vishvananda/netlink.git")
+ (url "https://github.com/vishvananda/netlink")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/jeremie-koenig/genext2fs.git")
+ (url "https://github.com/jeremie-koenig/genext2fs")
;; 1.4.1-3 had a VCS tag but 1.4.1-4 doesn't.
(commit "9ee43894634998b0b2b309d636f25c64314c9421")))
(file-name (git-file-name name version))
(substitute* "Makefile"
(("/bin/sh") (which "sh")))
#t))
- (add-after 'unpack 'patch-getopt
+ (add-after 'unpack 'patch-script
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "scripts/fakeroot.in"
(("getopt")
(string-append (assoc-ref inputs "util-linux")
- "/bin/getopt")))
+ "/bin/getopt"))
+ (("sed")
+ (string-append (assoc-ref inputs "sed")
+ "/bin/sed"))
+ (("cut")
+ (string-append (assoc-ref inputs "coreutils")
+ "/bin/cut")) )
#t))
(add-before 'configure 'setenv
(lambda _
("xz" ,xz))) ; for the tests
(inputs
`(("libcap" ,libcap/next)
- ("util-linux" ,util-linux)))
+ ("util-linux" ,util-linux)
+ ("sed" ,sed)
+ ("coreutils" ,coreutils)))
(synopsis "Provides a fake root environment")
(description "@command{fakeroot} runs a command in an environment where
it appears to have root privileges for file manipulation. This is useful
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/linuxwacom/input-wacom.git")
+ (url "https://github.com/linuxwacom/input-wacom")
(commit (string-append "input-wacom-" version))))
(file-name (git-file-name name version))
(sha256
@code{NFS} to cache data locally on disk. The content of the cache is
persistent over reboots.")
(license license:gpl2+)))
+
+(define-public libbpf
+ (package
+ (name "libbpf")
+ (version "0.0.9")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/libbpf/libbpf")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "18l0gff7nm841mwhr7bc7x863xcyvwh58zl7mc0amnsjqlbrvqg7"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libelf" ,libelf)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; No tests
+ #:make-flags
+ (list
+ (string-append "PREFIX=''")
+ (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+ (string-append "LIBDIR=/lib")
+ (string-append
+ "CC=" (assoc-ref %build-inputs "gcc") "/bin/gcc"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'pre-build
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "scripts/check-reallocarray.sh"
+ (("/bin/rm" rm)
+ (string-append (assoc-ref inputs "coreutils") rm)))
+ (chdir "src")
+ #t)))))
+ (home-page "https://github.com/libbpf/libbpf")
+ (synopsis "BPF CO-RE (Compile Once – Run Everywhere)")
+ (description
+ "Libbpf supports building BPF CO-RE-enabled applications, which, in
+contrast to BCC, do not require the Clang/LLVM runtime or linux kernel
+headers.")
+ (license `(,license:lgpl2.1 ,license:bsd-2))))