mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
Merge remote-tracking branch 'origin/master' into core-updates-frozen.
This commit is contained in:
commit
a1eca979fb
307 changed files with 24852 additions and 48445 deletions
|
@ -30,12 +30,11 @@
|
|||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
|
||||
;;; Copyright © 2018, 2020 Brendan Tildesley <mail@brendan.scot>
|
||||
;;; Copyright © 2018 Manuel Graf <graf@init.at>
|
||||
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
|
||||
;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
|
||||
;;; Copyright © 2019, 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2019, 2020, 2021 Brice Waegeneire <brice@waegenei.re>
|
||||
;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2020, 2021 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
|
@ -221,18 +220,8 @@ defconfig. Return the appropriate make target if applicable, otherwise return
|
|||
(file-name (string-append "linux-libre-deblob-check-" version "-" gnu-revision))
|
||||
(sha256 deblob-check-hash))))
|
||||
|
||||
(define* (computed-origin-method gexp-promise hash-algo hash
|
||||
#:optional (name "source")
|
||||
#:key (system (%current-system))
|
||||
(guile (default-guile)))
|
||||
"Return a derivation that executes the G-expression that results
|
||||
from forcing GEXP-PROMISE."
|
||||
(mlet %store-monad ((guile (package->derivation guile system)))
|
||||
(gexp->derivation (or name "computed-origin")
|
||||
(force gexp-promise)
|
||||
#:graft? #f ;nothing to graft
|
||||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
;; XXXX: Workaround 'snippet' limitations
|
||||
(define computed-origin-method (@@ (guix packages) computed-origin-method))
|
||||
|
||||
(define (make-linux-libre-source version
|
||||
upstream-source
|
||||
|
@ -362,55 +351,40 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
|
||||
;; The current "stable" kernels. That is, the most recently released major
|
||||
;; versions that are still supported upstream.
|
||||
(define-public linux-libre-5.14-version "5.14.4")
|
||||
(define-public linux-libre-5.14-version "5.14.11")
|
||||
(define-public linux-libre-5.14-gnu-revision "gnu")
|
||||
(define deblob-scripts-5.14
|
||||
(linux-libre-deblob-scripts
|
||||
linux-libre-5.14-version
|
||||
linux-libre-5.14-gnu-revision
|
||||
(base32 "00vv2a51cvw2nx8iazmiy9i4h3jj9gvvpwz9gxp2v1hcmrsxq935")
|
||||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
|
||||
(define-public linux-libre-5.14-pristine-source
|
||||
(let ((version linux-libre-5.14-version)
|
||||
(hash (base32 "1dijf7qsjlqx893c2sxg5jrjdm8v1nv4hicvqlmp1v92s3h7kqj2")))
|
||||
(hash (base32 "0capilz3wx29pw7n2m5cn229vy9psrccmdspp27znhjkvwj0m0wk")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.14)))
|
||||
|
||||
(define-public linux-libre-5.13-version "5.13.17")
|
||||
(define-public linux-libre-5.13-gnu-revision "gnu1")
|
||||
(define deblob-scripts-5.13
|
||||
(linux-libre-deblob-scripts
|
||||
linux-libre-5.13-version
|
||||
linux-libre-5.13-gnu-revision
|
||||
(base32 "0hj3w3vh1rj24xgl4v72mr6vaz1qzsnc5xzdfjga1zy84bw8lhkp")
|
||||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-5.13-pristine-source
|
||||
(let ((version linux-libre-5.13-version)
|
||||
(hash (base32 "06qa3c8wx87l4mh9h8gjcra5k5l6bcirs59s7baxdfjkxlihvrsa")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.13)))
|
||||
|
||||
;; 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-5.10-version "5.10.65")
|
||||
(define-public linux-libre-5.10-version "5.10.72")
|
||||
(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 "19d1pdsilq1ycnx1zw3vhf9mwdxbi5nmgzm0g1kj1lkkf1y4i1mv")
|
||||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
|
||||
(define-public linux-libre-5.10-pristine-source
|
||||
(let ((version linux-libre-5.10-version)
|
||||
(hash (base32 "0riyq1gdm18642fpnhpcw8hspcjqzprzhqnygjxabjjvrvdxxlzd")))
|
||||
(hash (base32 "0z2cp8gqnbv7iz8kb5ydfmk019m0gds8wwvwc6kccsk4wypkbmml")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.10)))
|
||||
|
||||
(define-public linux-libre-5.4-version "5.4.146")
|
||||
(define-public linux-libre-5.4-version "5.4.152")
|
||||
(define-public linux-libre-5.4-gnu-revision "gnu1")
|
||||
(define deblob-scripts-5.4
|
||||
(linux-libre-deblob-scripts
|
||||
|
@ -420,12 +394,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-5.4-pristine-source
|
||||
(let ((version linux-libre-5.4-version)
|
||||
(hash (base32 "1bjkfk24j86akm6df3c5b28viyq363drhssml7rcrl69286f92dk")))
|
||||
(hash (base32 "1may19d47d06mplpk29dpjsq31sxk8wwbwb2jspj3vay9h9wfi40")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.4)))
|
||||
|
||||
(define-public linux-libre-4.19-version "4.19.206")
|
||||
(define-public linux-libre-4.19-version "4.19.210")
|
||||
(define-public linux-libre-4.19-gnu-revision "gnu1")
|
||||
(define deblob-scripts-4.19
|
||||
(linux-libre-deblob-scripts
|
||||
|
@ -435,12 +409,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-4.19-pristine-source
|
||||
(let ((version linux-libre-4.19-version)
|
||||
(hash (base32 "1h44lvzxd0cngj71bk8qba9dz7jlqj68ir6xjwfafglb81ppgsxp")))
|
||||
(hash (base32 "0cv126j4sghwgzjm9p5l1brcnxkbgggja2ai37gl8m2s99cj59wv")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.19)))
|
||||
|
||||
(define-public linux-libre-4.14-version "4.14.246")
|
||||
(define-public linux-libre-4.14-version "4.14.250")
|
||||
(define-public linux-libre-4.14-gnu-revision "gnu1")
|
||||
(define deblob-scripts-4.14
|
||||
(linux-libre-deblob-scripts
|
||||
|
@ -450,12 +424,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-4.14-pristine-source
|
||||
(let ((version linux-libre-4.14-version)
|
||||
(hash (base32 "0fpgig84shpas1jc0h4s3aw9brkcq1as84gjbk4bfhc48bpi4mlw")))
|
||||
(hash (base32 "0zbf6gxm8iwf7cra310gfd0zyj8l9ckdahky9w6wb9wlznwkvd54")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.14)))
|
||||
|
||||
(define-public linux-libre-4.9-version "4.9.282")
|
||||
(define-public linux-libre-4.9-version "4.9.286")
|
||||
(define-public linux-libre-4.9-gnu-revision "gnu1")
|
||||
(define deblob-scripts-4.9
|
||||
(linux-libre-deblob-scripts
|
||||
|
@ -465,12 +439,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-4.9-pristine-source
|
||||
(let ((version linux-libre-4.9-version)
|
||||
(hash (base32 "059fin4si93ya13xy831w84q496ksxidpd3kyw38918sfy4p6wk7")))
|
||||
(hash (base32 "0id62p43dmkl9ir278p0dsfg3q7m1d8rlxv0c9qi1pzalkygv8p2")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.9)))
|
||||
|
||||
(define-public linux-libre-4.4-version "4.4.283")
|
||||
(define-public linux-libre-4.4-version "4.4.288")
|
||||
(define-public linux-libre-4.4-gnu-revision "gnu1")
|
||||
(define deblob-scripts-4.4
|
||||
(linux-libre-deblob-scripts
|
||||
|
@ -480,7 +454,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
|
||||
(define-public linux-libre-4.4-pristine-source
|
||||
(let ((version linux-libre-4.4-version)
|
||||
(hash (base32 "1d9v4h4cbc4i371lhhwpxbmg88gna6xyi2ahfvv0clz60802y982")))
|
||||
(hash (base32 "028w3yzmzymy7l1nf3n1pfbg95hfi4ilphkyl00ddgj8sfm542c7")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.4)))
|
||||
|
@ -521,14 +495,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
(search-patch
|
||||
"linux-libre-arm64-generic-pinebook-lcd.patch"))))
|
||||
|
||||
(define-public linux-libre-5.13-source
|
||||
(source-with-patches linux-libre-5.13-pristine-source
|
||||
(list %boot-logo-patch
|
||||
%linux-libre-arm-export-__sync_icache_dcache-patch
|
||||
;; Pinebook Pro patch to fix LCD display
|
||||
(search-patch
|
||||
"linux-libre-arm64-generic-pinebook-lcd.patch"))))
|
||||
|
||||
(define-public linux-libre-5.10-source
|
||||
(source-with-patches linux-libre-5.10-pristine-source
|
||||
(list %boot-logo-patch
|
||||
|
@ -644,11 +610,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
|||
linux-libre-5.14-gnu-revision
|
||||
linux-libre-5.14-source))
|
||||
|
||||
(define-public linux-libre-headers-5.13
|
||||
(make-linux-libre-headers* linux-libre-5.13-version
|
||||
linux-libre-5.13-gnu-revision
|
||||
linux-libre-5.13-source))
|
||||
|
||||
(define-public linux-libre-headers-5.10
|
||||
(make-linux-libre-headers* linux-libre-5.10-version
|
||||
linux-libre-5.10-gnu-revision
|
||||
|
@ -957,18 +918,11 @@ It has been modified to remove all non-free binary blobs.")
|
|||
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-5.13
|
||||
(make-linux-libre* linux-libre-5.13-version
|
||||
linux-libre-5.13-gnu-revision
|
||||
linux-libre-5.13-source
|
||||
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-version linux-libre-5.13-version)
|
||||
(define-public linux-libre-gnu-revision linux-libre-5.13-gnu-revision)
|
||||
(define-public linux-libre-pristine-source linux-libre-5.13-pristine-source)
|
||||
(define-public linux-libre-source linux-libre-5.13-source)
|
||||
(define-public linux-libre linux-libre-5.13)
|
||||
(define-public linux-libre-version linux-libre-5.14-version)
|
||||
(define-public linux-libre-gnu-revision linux-libre-5.14-gnu-revision)
|
||||
(define-public linux-libre-pristine-source linux-libre-5.14-pristine-source)
|
||||
(define-public linux-libre-source linux-libre-5.14-source)
|
||||
(define-public linux-libre linux-libre-5.14)
|
||||
|
||||
(define-public linux-libre-5.10
|
||||
(make-linux-libre* linux-libre-5.10-version
|
||||
|
@ -1202,9 +1156,9 @@ It has been modified to remove all non-free binary blobs.")
|
|||
(define-public linux-libre-with-bpf
|
||||
(let ((base-linux-libre
|
||||
(make-linux-libre*
|
||||
linux-libre-5.13-version
|
||||
linux-libre-5.13-gnu-revision
|
||||
linux-libre-5.13-source
|
||||
linux-libre-5.14-version
|
||||
linux-libre-5.14-gnu-revision
|
||||
linux-libre-5.14-source
|
||||
'("x86_64-linux" "i686-linux" "armhf-linux"
|
||||
"aarch64-linux" "riscv64-linux")
|
||||
#:extra-version "bpf"
|
||||
|
@ -1383,52 +1337,6 @@ battery charging thresholds, keyboard backlight, fans and thermal monitors,
|
|||
and the notification, WiFi, and Bluetooth LED.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public rtl8812au-aircrack-ng-linux-module
|
||||
(let ((commit "b8167e66b4ac046b3b76c2c40008d84528e91594")
|
||||
(revision "5"))
|
||||
(package
|
||||
(name "rtl8812au-aircrack-ng-linux-module")
|
||||
(version (git-version "5.6.4.2" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/aircrack-ng/rtl8812au")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1940f2yz5c4q2fhcd91zfzl32fhdsgr297vzamm7nd8kdk0gymi2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Remove bundled tarballs, APKs, word lists, speadsheets,
|
||||
;; and other unnecessary unlicenced things.
|
||||
(for-each delete-file-recursively (list "android"
|
||||
"docs"
|
||||
"tools"))
|
||||
#t))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
`(#: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 (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")
|
||||
(synopsis "Linux driver for Realtek USB wireless network adapters")
|
||||
(description
|
||||
"This is Realtek's rtl8812au Linux driver for USB 802.11n wireless
|
||||
network adapters, modified by the aircrack-ng project to support monitor mode
|
||||
and frame injection. It provides a @code{88XXau} kernel module that supports
|
||||
RTL8812AU, RTL8821AU, and RTL8814AU chips.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public rtl8821ce-linux-module
|
||||
(let ((commit "897e7c4c15dd5a0a569745dc223d969a26ff5bfc")
|
||||
(revision "3"))
|
||||
|
@ -1448,15 +1356,20 @@ RTL8812AU, RTL8821AU, and RTL8814AU chips.")
|
|||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "CC=gcc"
|
||||
(list (string-append "CC=" ,(cc-for-target))
|
||||
(string-append "KSRC="
|
||||
(assoc-ref %build-inputs "linux-module-builder")
|
||||
"/lib/modules/build"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'build
|
||||
(lambda* (#:key (make-flags '()) #:allow-other-keys)
|
||||
(apply invoke "make" make-flags))))
|
||||
(lambda* (#:key (make-flags '()) (parallel-build? #t)
|
||||
#:allow-other-keys)
|
||||
(apply invoke "make"
|
||||
`(,@(if parallel-build?
|
||||
`("-j" ,(number->string (parallel-job-count)))
|
||||
'())
|
||||
,@make-flags)))))
|
||||
#:tests? #f)) ; no test suite
|
||||
(home-page "https://github.com/tomaspinho/rtl8821ce")
|
||||
(synopsis "Linux driver for Realtek RTL8821CE wireless network adapters")
|
||||
|
@ -1464,6 +1377,40 @@ RTL8812AU, RTL8821AU, and RTL8814AU chips.")
|
|||
network adapters.")
|
||||
(license license:gpl2))))
|
||||
|
||||
(define-public rtl8812au-aircrack-ng-linux-module
|
||||
(let ((commit "b8167e66b4ac046b3b76c2c40008d84528e91594")
|
||||
(revision "5"))
|
||||
(package
|
||||
(inherit rtl8821ce-linux-module)
|
||||
(name "rtl8812au-aircrack-ng-linux-module")
|
||||
(version (git-version "5.6.4.2" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/aircrack-ng/rtl8812au")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1940f2yz5c4q2fhcd91zfzl32fhdsgr297vzamm7nd8kdk0gymi2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Remove bundled tarballs, APKs, word lists, speadsheets,
|
||||
;; and other unnecessary unlicenced things.
|
||||
(for-each delete-file-recursively (list "android"
|
||||
"docs"
|
||||
"tools"))))))
|
||||
(supported-systems '("x86_64-linux" "i686-linux"))
|
||||
(home-page "https://github.com/aircrack-ng/rtl8812au")
|
||||
(synopsis "Linux driver for Realtek USB wireless network adapters")
|
||||
(description
|
||||
"This is Realtek's rtl8812au Linux driver for USB 802.11n wireless
|
||||
network adapters, modified by the aircrack-ng project to support monitor mode
|
||||
and frame injection. It provides a @code{88XXau} kernel module that supports
|
||||
RTL8812AU, RTL8821AU, and RTL8814AU chips.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public vhba-module
|
||||
(package
|
||||
(name "vhba-module")
|
||||
|
@ -3037,37 +2984,21 @@ Linux-based operating systems.")
|
|||
(define-public bridge-utils
|
||||
(package
|
||||
(name "bridge-utils")
|
||||
(version "1.7")
|
||||
(version "1.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/kernel/people/shemminger/"
|
||||
(uri (string-append "mirror://kernel.org/linux/utils/net/"
|
||||
"bridge-utils/bridge-utils-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0zlrigizac2nfwgvksm92v4wafrpgxlbci3gwimc795ib7k8g6ck"))))
|
||||
(base32 "03p6cmhm6cqhnfsfa1wv7frhb361y12daf7gr1h5qh51y7j8n7d6"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; The tarball lacks all the generated files.
|
||||
(native-inputs `(("autoconf" ,autoconf)
|
||||
("automake" ,automake)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'patch-stuff
|
||||
(lambda _
|
||||
;; Fix "field ‘ip6’ has incomplete type" errors.
|
||||
(substitute* "libbridge/libbridge.h"
|
||||
(("#include <linux/if_bridge.h>")
|
||||
"#include <linux/in6.h>\n#include <linux/if_bridge.h>"))
|
||||
|
||||
;; Ensure that the entire build fails if one of the
|
||||
;; sub-Makefiles fails.
|
||||
(substitute* "Makefile.in"
|
||||
(("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;")
|
||||
"$(MAKE) $(MFLAGS) -C $$x || exit 1;"))
|
||||
|
||||
#t)))
|
||||
#:tests? #f)) ; no 'check' target
|
||||
'(#:tests? #f)) ; no 'check' target
|
||||
|
||||
(home-page "https://wiki.linuxfoundation.org/networking/bridge")
|
||||
(synopsis "Manipulate Ethernet bridges")
|
||||
|
@ -3441,7 +3372,7 @@ user-space processes.")
|
|||
(define-public unionfs-fuse
|
||||
(package
|
||||
(name "unionfs-fuse")
|
||||
(version "2.1")
|
||||
(version "2.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -3450,7 +3381,7 @@ user-space processes.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0bwx70x834qgqh53vqp18bhbxbsny80hz922rbgj8k9wj7cbfilm"))))
|
||||
"1yigh8z1q6iq6yjyq7kl7vpbpjnxjld32apvjaw2bl44pqqg56hh"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("python" ,python)))
|
||||
|
@ -4830,7 +4761,7 @@ Translation (@dfn{SAT}) are also supported.")
|
|||
(define-public nvme-cli
|
||||
(package
|
||||
(name "nvme-cli")
|
||||
(version "1.14")
|
||||
(version "1.15")
|
||||
(home-page "https://github.com/linux-nvme/nvme-cli")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -4838,7 +4769,7 @@ Translation (@dfn{SAT}) are also supported.")
|
|||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "0dpadz945482srqpsbfx1bh7rc499fgpyzz1flhk9g9xjbpapkzc"))
|
||||
(base32 "0qr1wa163cb7z6g083nl3zcc28mmlbxh1m97pd54bp3gyrhmdhhr"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
@ -5547,7 +5478,7 @@ and copy/paste text in the console and in xterm.")
|
|||
(define-public btrfs-progs
|
||||
(package
|
||||
(name "btrfs-progs")
|
||||
(version "5.14")
|
||||
(version "5.14.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/kernel/"
|
||||
|
@ -5555,7 +5486,7 @@ and copy/paste text in the console and in xterm.")
|
|||
"btrfs-progs-v" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mwxhwws6scjjpfws5xp7988wwwfa46jp5y3kn6jjmjpxiqm85da"))))
|
||||
"0ny5z3x8rqin0aci9qxpjc6dk5y0c1yvgk7353qnv92wai396jnm"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"static")) ; static versions of the binaries in "out"
|
||||
|
@ -5566,8 +5497,7 @@ and copy/paste text in the console and in xterm.")
|
|||
(substitute* "Makefile"
|
||||
(("\\$\\(DESTDIR\\)\\$\\(udevruledir\\)")
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/lib/udev/rules.d")))
|
||||
#t))
|
||||
"/lib/udev/rules.d")))))
|
||||
(add-after 'build 'build-static
|
||||
(lambda _ (invoke "make" "static")))
|
||||
(add-after 'install 'install-bash-completion
|
||||
|
@ -5576,8 +5506,7 @@ and copy/paste text in the console and in xterm.")
|
|||
(bashcomp (string-append out "/etc/bash_completion.d")))
|
||||
(mkdir-p bashcomp)
|
||||
(copy-file "btrfs-completion"
|
||||
(string-append bashcomp "/btrfs"))
|
||||
#t)))
|
||||
(string-append bashcomp "/btrfs")))))
|
||||
(add-after 'install 'install-static
|
||||
(let ((staticbin (string-append (assoc-ref %outputs "static")
|
||||
"/bin")))
|
||||
|
@ -6105,15 +6034,14 @@ invocations of itself.")
|
|||
(define-public ntfs-3g
|
||||
(package
|
||||
(name "ntfs-3g")
|
||||
(version "2017.3.23")
|
||||
(version "2021.8.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://tuxera.com/opensource/"
|
||||
"ntfs-3g_ntfsprogs-" version ".tgz"))
|
||||
(patches (search-patches "ntfs-3g-CVE-2019-9755.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy"))
|
||||
"1yrf42xr92qv3pads8lzp5nyssz6875ncfgg8v3jwjyr0nm87f2m"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Install under $prefix.
|
||||
|
@ -6122,8 +6050,8 @@ invocations of itself.")
|
|||
"@sbindir@"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("util-linux" ,util-linux)
|
||||
("fuse" ,fuse))) ;libuuid
|
||||
(inputs `(("util-linux" ,util-linux) ; libuuid
|
||||
("fuse" ,fuse)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(arguments
|
||||
'(#:configure-flags (list "--disable-static"
|
||||
|
@ -6269,7 +6197,7 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(package
|
||||
(name "rng-tools")
|
||||
(home-page "https://github.com/nhorman/rng-tools")
|
||||
(version "6.13")
|
||||
(version "6.14")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page)
|
||||
|
@ -6277,7 +6205,7 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0m4895f44a668r0z7md5ifq7syndsb2by2dfhk794vmhprsk1406"))))
|
||||
"1hrbm4y7fbzkg5j2f7vpj19ri2ff2lp77al17fhi4mv0bvdfjd9m"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(;; Disable support for various hardware entropy sources as they need
|
||||
|
@ -6378,7 +6306,7 @@ cpufreq sub-system is enabled or not.")
|
|||
(define-public haveged
|
||||
(package
|
||||
(name "haveged")
|
||||
(version "1.9.14")
|
||||
(version "1.9.15")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -6387,8 +6315,11 @@ cpufreq sub-system is enabled or not.")
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "050hmnh5s2s4mb83f4d1fk23mk27pprg840c1aagc6v1sz6x5dhq"))))
|
||||
(base32 "1zb790adsmqq3r26zlaxfrk2hpgxjcjz8l73hn3hli3l3javykvd"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--disable-static")))
|
||||
(home-page "https://www.issihosts.com/haveged")
|
||||
(synopsis "Entropy source for the Linux random number generator")
|
||||
(description
|
||||
|
@ -6630,7 +6561,7 @@ of flash storage.")
|
|||
(define-public libseccomp
|
||||
(package
|
||||
(name "libseccomp")
|
||||
(version "2.5.1")
|
||||
(version "2.5.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/seccomp/libseccomp/"
|
||||
|
@ -6638,7 +6569,7 @@ of flash storage.")
|
|||
"/libseccomp-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0m8dlg1v7kflcxvajs4p76p275qwsm2abbf5mfapkakp7hw7wc7f"))))
|
||||
"1pw7rd4gwqpmraipgdqkdkhnx4ql35wrn3lnjgl6pncinkgm59hp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("--disable-static")
|
||||
|
@ -6647,8 +6578,7 @@ of flash storage.")
|
|||
(lambda _
|
||||
;; This test does a native system call and fails when
|
||||
;; run under QEMU user-mode emulation. Just skip it.
|
||||
(delete-file "tests/52-basic-load.tests")
|
||||
#t)))))
|
||||
(delete-file "tests/52-basic-load.tests"))))))
|
||||
(native-inputs
|
||||
`(("gperf" ,gperf)
|
||||
("which" ,which)))
|
||||
|
@ -6923,7 +6853,7 @@ interface in sysfs, which can be accomplished with the included udev rules.")
|
|||
(define-public tlp
|
||||
(package
|
||||
(name "tlp")
|
||||
(version "1.3.1")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -6932,7 +6862,7 @@ interface in sysfs, which can be accomplished with the included udev rules.")
|
|||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "14fcnaz9pw534v4d8dddqq4wcvpf1kghr8zlrk62r5lrl46sp1p5"))))
|
||||
(base32 "0bnsz9bw9rj1apl80jwz39zj5mnlps3jbckihvl8bbdbrbhj6p06"))))
|
||||
(native-inputs
|
||||
`(("shellcheck" ,shellcheck)))
|
||||
(inputs
|
||||
|
@ -6976,6 +6906,7 @@ interface in sysfs, which can be accomplished with the included udev rules.")
|
|||
(setenv "TLP_NO_INIT" "1")
|
||||
(setenv "TLP_NO_PMUTILS" "1")
|
||||
(setenv "TLP_SBIN" (string-append out "/bin"))
|
||||
(setenv "TLP_BATD" (string-append out "/share/tlp/bat.d"))
|
||||
(setenv "TLP_BIN" (string-append out "/bin"))
|
||||
(setenv "TLP_TLIB" (string-append out "/share/tlp"))
|
||||
(setenv "TLP_FLIB" (string-append out "/share/tlp/func.d"))
|
||||
|
@ -6983,6 +6914,8 @@ interface in sysfs, which can be accomplished with the included udev rules.")
|
|||
(setenv "TLP_CONFDEF"
|
||||
(string-append out "/share/tlp/defaults.conf"))
|
||||
(setenv "TLP_CONFDIR" (string-append out "/etc/tlp.d"))
|
||||
(setenv "TLP_CONFREN"
|
||||
(string-append out "/share/tlp/rename.conf"))
|
||||
(setenv "TLP_ELOD"
|
||||
(string-append out "/lib/elogind/system-sleep"))
|
||||
(setenv "TLP_SHCPL"
|
||||
|
@ -7154,143 +7087,141 @@ userspace queueing component and the logging subsystem.")
|
|||
(license license:gpl2)))
|
||||
|
||||
(define-public proot
|
||||
(package
|
||||
(name "proot")
|
||||
;; The last stable release was made in 2015, and fails to build for
|
||||
;; the aarch64 platform.
|
||||
(version "5.2.0-alpha")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/proot-me/PRoot")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "09vp806y4hqfq2fn2hpi873rh4j6a3c572ph4mkirx1n32wj8srl"))))
|
||||
(build-system gnu-build-system)
|
||||
;; The powerpc64le-linux and mips64el-linux architectures are not
|
||||
;; supported (see:
|
||||
;; https://github.com/proot-me/proot/blob/master/src/arch.h#L51).
|
||||
(supported-systems '("x86_64-linux" "i686-linux"
|
||||
"armhf-linux" "aarch64-linux" "i586-gnu"))
|
||||
(arguments
|
||||
;; Disable the test suite on ARM platforms, as there are too many
|
||||
;; failures to keep track of (see for example:
|
||||
;; https://github.com/proot-me/proot/issues/263).
|
||||
`(#:tests? ,(not (string-match "^(arm|aarch64)"
|
||||
(or (%current-target-system)
|
||||
(%current-system))))
|
||||
#:make-flags '("-C" "src")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* (find-files "src" "\\.[ch]$")
|
||||
(("\"/bin/sh\"")
|
||||
(string-append "\"" (assoc-ref inputs "bash")
|
||||
"/bin/sh\"")))
|
||||
(let ((revision "0")
|
||||
(commit "a70023ab3db47d011265451b99a1abef7b9d7afc"))
|
||||
(package
|
||||
(name "proot")
|
||||
;; The last stable release was made in 2015, and fails to build for the
|
||||
;; aarch64 platform. Use the latest commit, which includes fixes for
|
||||
;; the supported ARM architectures and the test suite, among others.
|
||||
(version (git-version "5.2.0-alpha" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/proot-me/PRoot")
|
||||
(commit (string-append commit))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1kmry3rb967phxnxjfnx310gy1d4gpmjd6fp3hbm9v9jciysxy4z"))))
|
||||
(build-system gnu-build-system)
|
||||
;; The powerpc64le-linux and mips64el-linux architectures are not
|
||||
;; supported (see:
|
||||
;; https://github.com/proot-me/proot/blob/master/src/arch.h#L51).
|
||||
(supported-systems '("x86_64-linux" "i686-linux"
|
||||
"armhf-linux" "aarch64-linux" "i586-gnu"))
|
||||
(arguments
|
||||
;; Disable the test suite on armhf-linux, as there are too many
|
||||
;; failures to keep track of (see for example:
|
||||
;; https://github.com/proot-me/proot/issues/286).
|
||||
`(#:tests? ,(not (string-prefix? "armhf"
|
||||
(or (%current-target-system)
|
||||
(%current-system))))
|
||||
#:make-flags '("-C" "src")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* (find-files "src" "\\.[ch]$")
|
||||
(("\"/bin/sh\"")
|
||||
(string-append "\"" (assoc-ref inputs "bash")
|
||||
"/bin/sh\"")))
|
||||
|
||||
(substitute* "src/GNUmakefile"
|
||||
(("/bin/echo") (which "echo")))
|
||||
(substitute* "src/GNUmakefile"
|
||||
(("/bin/echo") (which "echo"))
|
||||
(("^VERSION = .*")
|
||||
(string-append "VERSION := " ,version "\n")))
|
||||
|
||||
(substitute* (find-files "test" "\\.sh$")
|
||||
;; Some of the tests try to "bind-mount" /bin/true.
|
||||
(("-b /bin/true:")
|
||||
(string-append "-b " (which "true") ":"))
|
||||
;; Likewise for /bin.
|
||||
(("-b /bin:") "-b /gnu:")
|
||||
;; Others try to run /bin/sh.
|
||||
(("/bin/sh") (which "sh"))
|
||||
;; Others assume /etc/fstab exists.
|
||||
(("/etc/fstab") "/etc/passwd"))
|
||||
(substitute* "test/GNUmakefile"
|
||||
(("-b /bin:") "-b /gnu:"))
|
||||
(substitute* "test/test-c6b77b77.mk"
|
||||
(("/bin/bash") (which "bash"))
|
||||
(("/usr/bin/test") (which "test")))
|
||||
(substitute* "test/test-16573e73.c"
|
||||
(("/bin/([a-z-]+)" _ program)
|
||||
(which program)))
|
||||
(substitute* "test/test-d2175fc3.sh"
|
||||
(("\\^/bin/true\\$") "$(which true)"))
|
||||
(substitute* "test/test-5467b986.sh"
|
||||
(("-w /usr") "-w /gnu")
|
||||
(("-w usr") "-w gnu")
|
||||
(("/usr/share") "/gnu/store")
|
||||
(("share") "store"))
|
||||
(substitute* "test/test-092c5e26.sh"
|
||||
(("-q echo ")
|
||||
"-q $(which echo) "))
|
||||
(substitute* (find-files "test" "\\.sh$")
|
||||
;; Some of the tests try to "bind-mount" /bin/true.
|
||||
(("-b /bin/true:")
|
||||
(string-append "-b " (which "true") ":"))
|
||||
;; Likewise for /bin.
|
||||
(("-b /bin:") "-b /gnu:")
|
||||
;; Others try to run /bin/sh.
|
||||
(("/bin/sh") (which "sh"))
|
||||
;; Others assume /etc/fstab exists.
|
||||
(("/etc/fstab") "/etc/passwd"))
|
||||
(substitute* "test/GNUmakefile"
|
||||
(("-b /bin:") "-b /gnu:"))
|
||||
(substitute* "test/test-c6b77b77.mk"
|
||||
(("/bin/bash") (which "bash"))
|
||||
(("/usr/bin/test") (which "test")))
|
||||
(substitute* "test/test-16573e73.c"
|
||||
(("/bin/([a-z-]+)" _ program)
|
||||
(which program)))
|
||||
(substitute* "test/test-d2175fc3.sh"
|
||||
(("\\^/bin/true\\$") "$(which true)"))
|
||||
(substitute* "test/test-5467b986.sh"
|
||||
(("-w /usr") "-w /gnu")
|
||||
(("-w usr") "-w gnu")
|
||||
(("/usr/share") "/gnu/store")
|
||||
(("share") "store"))
|
||||
(substitute* "test/test-092c5e26.sh"
|
||||
(("-q echo ")
|
||||
"-q $(which echo) "))
|
||||
|
||||
;; The following tests are known to fail (see:
|
||||
;; https://github.com/proot-me/proot/issues/184).
|
||||
(delete-file "test/test-0228fbe7.sh")
|
||||
(delete-file "test/test-2db65cd2.sh")
|
||||
;; The following tests are known to fail (see:
|
||||
;; https://github.com/proot-me/proot/issues/184).
|
||||
(delete-file "test/test-0228fbe7.sh")
|
||||
(delete-file "test/test-2db65cd2.sh")
|
||||
(delete-file "test/test-cdd39012.sh")
|
||||
(delete-file "test/test-d92b57ca.sh")
|
||||
|
||||
;; This one fails with "bind: Address already in use"
|
||||
;; (see: https://github.com/proot-me/proot/issues/260).
|
||||
(delete-file "test/test-ssssssss.c")
|
||||
;; This one fails on a waitpid call that returns 1 (see:
|
||||
;; https://github.com/proot-me/proot/issues/261).
|
||||
(delete-file "test/test-ptrace01.c")
|
||||
|
||||
;; This one fails on a waitpid call that returns 1 (see:
|
||||
;; https://github.com/proot-me/proot/issues/261).
|
||||
(delete-file "test/test-ptrace01.c")
|
||||
;; XXX: This test fails in an obscure corner case, just
|
||||
;; skip it.
|
||||
(delete-file "test/test-kkkkkkkk.c")
|
||||
|
||||
;; XXX: This test fails in an obscure corner case, just
|
||||
;; skip it.
|
||||
(delete-file "test/test-kkkkkkkk.c")
|
||||
;; This one requires Docker.
|
||||
(delete-file "test/test-docker.sh")
|
||||
|
||||
;; The socket tests requires networking.
|
||||
(for-each delete-file
|
||||
(find-files "test" "test-socket.*\\.sh$"))))
|
||||
(delete 'configure)
|
||||
(add-after 'build 'build-manpage
|
||||
(lambda _
|
||||
(with-directory-excursion "doc"
|
||||
(invoke "make" "proot/man.1" "SUFFIX=.py"))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((n (parallel-job-count)))
|
||||
;; There are lots of segfaults with seccomp support
|
||||
;; (x86_64, Linux-libre 4.11.0) (see:
|
||||
;; https://github.com/proot-me/proot/issues/106).
|
||||
(setenv "PROOT_NO_SECCOMP" "1")
|
||||
;; Most of the tests expect "/bin" to be in $PATH so
|
||||
;; they can run things that live in $ROOTFS/bin.
|
||||
(setenv "PATH"
|
||||
(string-append (getenv "PATH") ":/bin"))
|
||||
(invoke "make" "check" "-C" "test"
|
||||
;;"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"))
|
||||
(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"))))))))
|
||||
(native-inputs `(("which" ,which)
|
||||
;; For 'mcookie', used by some of the tests.
|
||||
("util-linux" ,util-linux)
|
||||
;; XXX: Choose the old coreutils because its 'stat'
|
||||
;; program does not use statx(2) when running 'stat -c
|
||||
;; %a' or similar, which PRoot doesn't properly support
|
||||
;; (see: https://github.com/proot-me/proot/issues/262).
|
||||
("coreutils-old" ,coreutils-8.30)
|
||||
("pkg-config" ,pkg-config)
|
||||
;; For rst2man, used to generate the manual page.
|
||||
("python-docutils" ,python-docutils)))
|
||||
(inputs `(("libarchive" ,libarchive)
|
||||
("talloc" ,talloc)))
|
||||
(home-page "https://github.com/proot-me/PRoot")
|
||||
(synopsis "Unprivileged chroot, bind mount, and binfmt_misc")
|
||||
(description
|
||||
"PRoot is a user-space implementation of @code{chroot}, @code{mount --bind},
|
||||
;; The socket tests requires networking.
|
||||
(for-each delete-file
|
||||
(find-files "test" "test-socket.*\\.sh$"))))
|
||||
(delete 'configure)
|
||||
(add-after 'build 'build-manpage
|
||||
(lambda _
|
||||
(with-directory-excursion "doc"
|
||||
(invoke "make" "proot/man.1" "SUFFIX=.py"))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((n (parallel-job-count)))
|
||||
;; Most of the tests expect "/bin" to be in $PATH so
|
||||
;; they can run things that live in $ROOTFS/bin.
|
||||
(setenv "PATH"
|
||||
(string-append (getenv "PATH") ":/bin"))
|
||||
(invoke "make" "check" "-C" "test"
|
||||
;;"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"))
|
||||
(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"))))))))
|
||||
(native-inputs `(("which" ,which)
|
||||
;; For 'mcookie', used by some of the tests.
|
||||
("util-linux" ,util-linux)
|
||||
("coreutils" ,coreutils)
|
||||
("pkg-config" ,pkg-config)
|
||||
;; For rst2man, used to generate the manual page.
|
||||
("python-docutils" ,python-docutils)))
|
||||
(inputs `(("libarchive" ,libarchive)
|
||||
("talloc" ,talloc)))
|
||||
(home-page "https://github.com/proot-me/PRoot")
|
||||
(synopsis "Unprivileged chroot, bind mount, and binfmt_misc")
|
||||
(description
|
||||
"PRoot is a user-space implementation of @code{chroot}, @code{mount --bind},
|
||||
and @code{binfmt_misc}. This means that users don't need any privileges or
|
||||
setup to do things like using an arbitrary directory as the new root
|
||||
file system, making files accessible somewhere else in the file system
|
||||
|
@ -7299,7 +7230,7 @@ transparently through QEMU user-mode. Also, developers can use PRoot as a
|
|||
generic process instrumentation engine thanks to its extension mechanism.
|
||||
Technically PRoot relies on @code{ptrace}, an unprivileged system-call
|
||||
available in the kernel Linux.")
|
||||
(license license:gpl2+)))
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public proot-static
|
||||
(package
|
||||
|
@ -7834,8 +7765,24 @@ IP addresses and routes, and configure IPsec.")
|
|||
(base32
|
||||
"0dqf5j2sw4hq68rqvxbrsf44ygfzx9ypiyzipk4cvp9aimbvsbc6"))))
|
||||
(build-system meson-build-system)
|
||||
;; Install static libraries for use by the initrd's xfsprogs/static.
|
||||
(outputs (list "out" "static"))
|
||||
(arguments
|
||||
'(#:configure-flags '("-Ddistro_install=true" "-Ddefault_library=shared")))
|
||||
`(#:configure-flags
|
||||
(list "-Ddistro_install=true"
|
||||
"-Ddefault_library=both")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'separate-static
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(static (assoc-ref outputs "static")))
|
||||
(with-directory-excursion out
|
||||
(for-each (lambda (source)
|
||||
(let ((target (string-append static "/" source)))
|
||||
(mkdir-p (dirname target))
|
||||
(rename-file source target)))
|
||||
(find-files "lib" "\\.a$")))))))))
|
||||
(home-page "https://github.com/benhoyt/inih")
|
||||
(synopsis "Simple .INI parser library for C")
|
||||
(description "The inih (INI Not Invented Here) library is a simple .INI file
|
||||
|
@ -7861,6 +7808,8 @@ compatible with Python's ConfigParser style of .INI files, including RFC
|
|||
(outputs (list "out" "python"))
|
||||
(arguments
|
||||
`(#:tests? #f ; kernel/user integration tests are in package "xfstests"
|
||||
#:make-flags
|
||||
(list "V=1")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'separate-python-output
|
||||
|
@ -7874,8 +7823,8 @@ compatible with Python's ConfigParser style of .INI files, including RFC
|
|||
(string-append python script)))
|
||||
(list "/sbin/xfs_scrub_all")))))
|
||||
(add-after 'install 'install-headers
|
||||
(lambda _
|
||||
(invoke "make" "install-dev"))))))
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke "make" "install-dev" make-flags))))))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)))
|
||||
(inputs
|
||||
|
@ -7890,6 +7839,57 @@ file systems.")
|
|||
;; licensed under lgpl2.1. the other stuff is licensed under gpl2.
|
||||
(license (list license:gpl2 license:lgpl2.1))))
|
||||
|
||||
(define-public xfsprogs/static
|
||||
(package
|
||||
(inherit xfsprogs)
|
||||
(name "xfsprogs-static")
|
||||
(outputs (list "out"))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments xfsprogs)
|
||||
((#:make-flags make-flags ''())
|
||||
`(cons* "LLDFLAGS=-all-static" ,make-flags))
|
||||
((#:phases _ ''())
|
||||
`(modify-phases %standard-phases
|
||||
(add-after 'install 'delete-useless-files
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(with-directory-excursion (assoc-ref outputs "out")
|
||||
(for-each delete-file-recursively
|
||||
(list "include" "lib")))))))))
|
||||
(inputs
|
||||
`(("libinih:static" ,libinih "static")
|
||||
("util-linux:static" ,util-linux "static")
|
||||
,@(remove (match-lambda
|
||||
((label . _)
|
||||
(member label '("python"))))
|
||||
(package-inputs xfsprogs))))
|
||||
(synopsis "Statically linked XFS file system tools")))
|
||||
|
||||
(define-public xfs_repair/static
|
||||
(package
|
||||
(name "xfs_repair-static")
|
||||
(version (package-version xfsprogs/static))
|
||||
(source #f)
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let* ((xfsprogs (assoc-ref %build-inputs "xfsprogs"))
|
||||
(out (assoc-ref %outputs "out"))
|
||||
(sbin (string-append out "/sbin")))
|
||||
(install-file (string-append xfsprogs "/sbin/xfs_repair") sbin)
|
||||
(with-directory-excursion sbin
|
||||
(remove-store-references "xfs_repair"))))))
|
||||
(inputs
|
||||
`(("xfsprogs" ,xfsprogs/static)))
|
||||
(home-page (package-home-page xfsprogs/static))
|
||||
(synopsis "Statically linked @command{xfs_repair} from xfsprogs")
|
||||
(description
|
||||
"This package provides a statically linked @command{xfs_repair} taken
|
||||
from the xfsprogs package. It is meant to be used in initrds.")
|
||||
(license (package-license xfsprogs/static))))
|
||||
|
||||
(define-public genext2fs
|
||||
(package
|
||||
(name "genext2fs")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue