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.scm564
1 files changed, 449 insertions, 115 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index c69773c37b..1903dcc669 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -98,8 +98,9 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages compression)
- #:use-module (gnu packages dbm)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
+ #:use-module (gnu packages dbm)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@@ -129,6 +130,7 @@
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
+ #:use-module (gnu packages onc-rpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages pkg-config)
@@ -360,55 +362,55 @@ 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.16-version "5.16.16")
-(define-public linux-libre-5.16-gnu-revision "gnu")
-(define deblob-scripts-5.16
+(define-public linux-libre-5.17-version "5.17.5")
+(define-public linux-libre-5.17-gnu-revision "gnu")
+(define deblob-scripts-5.17
(linux-libre-deblob-scripts
- linux-libre-5.16-version
- linux-libre-5.16-gnu-revision
- (base32 "0c9c8zd85p84r8k4xhys8xw15pds71v0ca2b6hm1pr4f6lpzck0g")
- (base32 "0hpr1qr68xh52gzzw5jbwq4i8qd2a5mfbn8s2jj378550kfsn3c0")))
-(define-public linux-libre-5.16-pristine-source
- (let ((version linux-libre-5.16-version)
- (hash (base32 "13qk6cjnjwgnxj25mphyv08pjf1sqz7bxxrr3fpl8gz3aghdd9yc")))
+ linux-libre-5.17-version
+ linux-libre-5.17-gnu-revision
+ (base32 "08ip5g827f30qzb3j2l19zkbdqv00sij46nbrjg75h5kkasdbfgr")
+ (base32 "0h9zm17lb5g93yp8rdzbhznrd5jbrl2k096c28wz6ic6gpz0wrvh")))
+(define-public linux-libre-5.17-pristine-source
+ (let ((version linux-libre-5.17-version)
+ (hash (base32 "11z95wsgmj97pg77yck26l0383gncbla0zwpzv4gjdj4p62x3g4v")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
- deblob-scripts-5.16)))
+ deblob-scripts-5.17)))
;; 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.15-version "5.15.30")
+(define-public linux-libre-5.15-version "5.15.36")
(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 "1rfhwfzifmbpnrhmrn3srm736nkm1v6affw915d0fgqzqgi8qfai")
- (base32 "0mwzr1ffrr02pyy4rhwrv8msm9l59mg1d164j6qif7kkax2mdg66")))
+ (base32 "1n57mz5agvf1d0ggbg080d7hvx8p9y0iqxkq4ypg10a7n96zy7y5")
+ (base32 "1s2s1sjdhblaz80shq1jgp4kp9vi7j1bsh4vvsk28s5m6xwf6yvl")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
- (hash (base32 "0ckiz985x88x68psg6wazyk7zpv34k8rbzpzyzj0gaph13za4ki5")))
+ (hash (base32 "1466557034q1fzvpy8vwj8ps3cv2q8s7z76af9y1jz4kgaqmsd1n")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
-(define-public linux-libre-5.10-version "5.10.107")
+(define-public linux-libre-5.10-version "5.10.113")
(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 "1swy3y851jnnmk3hc0khllpsifb98camlwyskpn1dyvjsgjljd8x")
- (base32 "051ig1nn45jmm3nk7cxnqabcq3nn62d4dq4ggycsbnx24ckkzfrr")))
+ (base32 "0mw7qn77y9c6wrnw4rjvf75cpm1w6n1aqqhf8cnghcb97p2yxxrf")
+ (base32 "0wx0y9fbgfbmhdb8v4ki2hq58m0w6gp66wq944sr5x0sv6m4bgf3")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
- (hash (base32 "1snzzhkzdjlj92gqig3sanxlhv0xc0xk2xwjdjr0yds6g43w6ry4")))
+ (hash (base32 "1z3dd5hrdbn2axsi2n70n41q1dq2dvg7s8aph1p6yiajpc16llc2")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
-(define-public linux-libre-5.4-version "5.4.186")
+(define-public linux-libre-5.4-version "5.4.191")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
@@ -418,12 +420,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1mp9d0b7mqw7cl65k0a18265cvn4qwcpnvna8r6n5m3y4pz3rik9")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
- (hash (base32 "1f9rigm58miq5s98bx7pvylqi9hlzlfnq1nrj4cd8f4arcjcvxv1")))
+ (hash (base32 "0fharjqasvq76pciwci6qamdadpfjh2n8gdyri8fj65drmgsi318")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
-(define-public linux-libre-4.19-version "4.19.235")
+(define-public linux-libre-4.19-version "4.19.240")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
@@ -433,12 +435,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1mp9d0b7mqw7cl65k0a18265cvn4qwcpnvna8r6n5m3y4pz3rik9")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
- (hash (base32 "1615y3ma9icmqqr7lisl8nd8zvvkh77a81yl39yvy6qi9345l32k")))
+ (hash (base32 "1hj6vngynx6kjaczjl77jjwqq0kh0lm6jdqjvakd1cgrppaizb3j")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
-(define-public linux-libre-4.14-version "4.14.272")
+(define-public linux-libre-4.14-version "4.14.277")
(define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
@@ -448,12 +450,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1mp9d0b7mqw7cl65k0a18265cvn4qwcpnvna8r6n5m3y4pz3rik9")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
- (hash (base32 "0scx13pc5y5jmm5xa17my242gsgb1mf0cgqzjx656g7kkh4phqcv")))
+ (hash (base32 "058vzn1gcsc194hgwrj78afawz2anm7ga8a1x5m5i4cw8p1arp73")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
-(define-public linux-libre-4.9-version "4.9.307")
+(define-public linux-libre-4.9-version "4.9.312")
(define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
@@ -463,7 +465,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0wdaj40pcq9wg5xnz2zj3jj8bawhfgqxcwp6dnavbf9lq0gca48p")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
- (hash (base32 "1xyhz7hq8yyclxyavzk36sbl41vlb74pccd56240kq34ma1hyis7")))
+ (hash (base32 "09y6wl4j3y46fza6kmssibmxspxx0i44fqrhc2cyvrm2bgxv2bzs")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
@@ -496,8 +498,8 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
-(define-public linux-libre-5.16-source
- (source-with-patches linux-libre-5.16-pristine-source
+(define-public linux-libre-5.17-source
+ (source-with-patches linux-libre-5.17-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
@@ -609,10 +611,10 @@ 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-5.16
- (make-linux-libre-headers* linux-libre-5.16-version
- linux-libre-5.16-gnu-revision
- linux-libre-5.16-source))
+(define-public linux-libre-headers-5.17
+ (make-linux-libre-headers* linux-libre-5.17-version
+ linux-libre-5.17-gnu-revision
+ linux-libre-5.17-source))
(define-public linux-libre-headers-5.15
(make-linux-libre-headers* linux-libre-5.15-version
@@ -743,7 +745,9 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
((option . #t)
(string-append option "=y"))
((option . #f)
- (string-append option "=n")))
+ (string-append option "=n"))
+ ((option . string)
+ (string-append option "=\"" string "\"")))
options)
"\n"))
@@ -924,18 +928,18 @@ It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages.
;;;
-(define-public linux-libre-5.16
- (make-linux-libre* linux-libre-5.16-version
- linux-libre-5.16-gnu-revision
- linux-libre-5.16-source
+(define-public linux-libre-5.17
+ (make-linux-libre* linux-libre-5.17-version
+ linux-libre-5.17-gnu-revision
+ linux-libre-5.17-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
-(define-public linux-libre-version linux-libre-5.16-version)
-(define-public linux-libre-gnu-revision linux-libre-5.16-gnu-revision)
-(define-public linux-libre-pristine-source linux-libre-5.16-pristine-source)
-(define-public linux-libre-source linux-libre-5.16-source)
-(define-public linux-libre linux-libre-5.16)
+(define-public linux-libre-version linux-libre-5.17-version)
+(define-public linux-libre-gnu-revision linux-libre-5.17-gnu-revision)
+(define-public linux-libre-pristine-source linux-libre-5.17-pristine-source)
+(define-public linux-libre-source linux-libre-5.17-source)
+(define-public linux-libre linux-libre-5.17)
(define-public linux-libre-5.15
(make-linux-libre* linux-libre-5.15-version
@@ -1160,9 +1164,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.16-version
- linux-libre-5.16-gnu-revision
- linux-libre-5.16-source
+ linux-libre-5.17-version
+ linux-libre-5.17-gnu-revision
+ linux-libre-5.17-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "riscv64-linux")
#:extra-version "bpf"
@@ -1343,8 +1347,8 @@ and the notification, WiFi, and Bluetooth LED.")
(license license:gpl2)))
(define-public rtl8821ce-linux-module
- (let ((commit "ca204c60724d23ab10244f920d4e50759ed1affb")
- (revision "4"))
+ (let ((commit "dce62b9bbb7c76339b514153fcebb3a19bafdcc7")
+ (revision "5"))
(package
(name "rtl8821ce-linux-module")
(version (git-version "0.0.0" revision commit))
@@ -1357,7 +1361,7 @@ and the notification, WiFi, and Bluetooth LED.")
(file-name (git-file-name name version))
(sha256
(base32
- "18ma8a8h1l90dss0k6al7q6plwr57jc9g67p22g9917k1jfbhm97"))))
+ "0s5v6z4x7xdgr5qm4q7dr9nd5c8qy28jaw0p78hxji3m8if56vka"))))
(build-system linux-module-build-system)
(arguments
(list #:make-flags
@@ -4879,45 +4883,50 @@ also contains the libsysfs library.")
(license (list license:gpl2 license:gpl2+ license:lgpl2.1+))))
(define-public cpufrequtils
- (package
- (name "cpufrequtils")
- (version "008")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://kernel.org/linux/utils/kernel/cpufreq/"
- "cpufrequtils-" version ".tar.gz"))
- (sha256
- (base32 "0xjs8j44hh0cz6qpig1n0iw8xjpr6s5qmcmwh965ngapxgarr7af"))))
- (build-system gnu-build-system)
- (arguments
- `(#:tests? #f ; no test suite
- #:make-flags
- (let ((out (assoc-ref %outputs "out")))
- (list "PROC=false" ; obsoleted by sysfs in Linux 2.6(!)
- (string-append "CC=" ,(cc-for-target))
- (string-append "LDFLAGS=-Wl,-rpath=" out "/lib")
- "INSTALL=install"
- (string-append "bindir=" out "/bin")
- (string-append "sbindir=" out "/sbin")
- (string-append "mandir=" out "/share/man")
- (string-append "includedir=" out "/include")
- (string-append "libdir=" out "/lib")
- (string-append "localedir=" out "/share/locale")
- (string-append "docdir=" out "/share/doc/" ,name)))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)))) ; no configure script
- (native-inputs
- `(("gettext" ,gettext-minimal)))
- (home-page
- "http://ftp.be.debian.org/pub/linux/utils/kernel/cpufreq/cpufrequtils.html")
- (synopsis "Utilities to get and set CPU frequency on Linux")
- (description
- "The cpufrequtils suite contains utilities to retrieve CPU frequency
+ (let ((commit "a2f0c39d5f21596bb9f5223e895c0ff210b265d0")
+ (revision "1"))
+ (package
+ (name "cpufrequtils")
+ (version (git-version "008" revision commit ))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://git.kernel.org/pub/scm/linux/kernel/git/brodo/cpufrequtils.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01n2hp6v89cilqqvqvlcprphyhnljsjclh4h1zf3b1l7ypz29lbp"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no test suite
+ #:make-flags
+ (let ((out (assoc-ref %outputs "out")))
+ (list "PROC=false" ; obsoleted by sysfs in Linux 2.6(!)
+ (string-append "CC=" ,(cc-for-target))
+ (string-append "LDFLAGS=-Wl,-rpath=" out "/lib")
+ "INSTALL=install"
+ (string-append "bindir=" out "/bin")
+ (string-append "sbindir=" out "/sbin")
+ (string-append "mandir=" out "/share/man")
+ (string-append "includedir=" out "/include")
+ (string-append "libdir=" out "/lib")
+ (string-append "localedir=" out "/share/locale")
+ (string-append "docdir=" out "/share/doc/" ,name)))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)))) ; no configure script
+ (native-inputs
+ `(("gettext" ,gettext-minimal)))
+ (home-page
+ "http://ftp.be.debian.org/pub/linux/utils/kernel/cpufreq/cpufrequtils.html")
+ (synopsis "Utilities to get and set CPU frequency on Linux")
+ (description
+ "The cpufrequtils suite contains utilities to retrieve CPU frequency
information, and set the CPU frequency if supported, using the cpufreq
capabilities of the Linux kernel.")
- (license license:gpl2)))
+ (license license:gpl2))))
(define-public libite
(package
@@ -6188,6 +6197,14 @@ from the ntfs-3g package. It is meant to be used in initrds.")
;; to do the same for consistency.
#:configure-flags (list "-GNinja"
+ ,@(if (%current-target-system)
+ `((string-append
+ "-DPKG_CONFIG_EXECUTABLE="
+ (search-input-file
+ %build-inputs
+ (string-append "/bin/"
+ ,(pkg-config-for-target)))))
+ '())
(string-append "-DRST2MAN_EXECUTABLE="
(assoc-ref %build-inputs
"python-docutils")
@@ -6706,8 +6723,7 @@ developers.")
(string-append "PREFIX=" %output))
#:tests? #f)) ; no tests
(native-inputs
- `(("gettext" ,gettext-minimal)
- ("pkg-config" ,pkg-config)))
+ (list gettext-minimal pkg-config))
(inputs
(list libdrm libpciaccess libxcb ncurses))
(home-page "https://github.com/clbr/radeontop/")
@@ -6731,7 +6747,10 @@ under OpenGL graphics workloads.")
"-" version ".tar.bz2"))
(sha256
(base32
- "0jaka7b4lccswjqiv4liclkj6w78gildg7vd6dnw3wf595pfs67h"))))
+ "0jaka7b4lccswjqiv4liclkj6w78gildg7vd6dnw3wf595pfs67h"))
+ (patches
+ (search-patches "efivar-211.patch"))))
+
(build-system gnu-build-system)
(arguments
(list
@@ -7232,11 +7251,11 @@ used by nftables.")
(base32 "08x4xw0s5sap3q7jfr91v7mrkxrydi4dvsckw85ims0qb1ibmviw"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags
- '("--disable-man-doc" ; FIXME: needs docbook2x
- "--disable-static"
- "--with-cli=readline")))
- (inputs (list gmp libmnl libnftnl readline))
- (native-inputs (list pkg-config bison flex))
+ '("--disable-static"
+ "--with-cli=readline"
+ "--with-json")))
+ (inputs (list gmp libmnl libnftnl readline jansson))
+ (native-inputs (list pkg-config bison flex docbook2x))
(home-page "https://www.nftables.org")
(synopsis "Userspace utility for Linux packet filtering")
(description "nftables is the project that aims to replace the existing
@@ -7247,6 +7266,336 @@ infrastructure such as the existing hooks, the connection tracking system, the
userspace queueing component and the logging subsystem.")
(license license:gpl2)))
+(define-public libnetfilter-conntrack
+ (package
+ (name "libnetfilter-conntrack")
+ (version "1.0.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_conntrack/files/"
+ "libnetfilter_conntrack-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "1ky1mqgnplw2h9jf0kn0a69d94jkydhbiipng9l2hdcj13h3pl8c"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libnfnetlink libmnl))
+ (synopsis "Library for kernel connection tracking state table")
+ (description "libnetfilter_conntrack is a userspace library providing a
+programming interface (API) to the in-kernel connection tracking state table.
+The library libnetfilter_conntrack has been previously known as
+libnfnetlink_conntrack and libctnetlink. This library is currently used by
+conntrack-tools among many other applications.")
+ (home-page "https://netfilter.org/projects/libnetfilter_conntrack/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_conntrack")))
+ (license license:gpl2+)))
+
+(define-public libnetfilter-cttimeout
+ (package
+ (name "libnetfilter-cttimeout")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_cttimeout/files/"
+ "libnetfilter_cttimeout-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "1fpyz1zlvcq80244knvyvy87909xjqlj02lmw8yblz2m9xsi5axf"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libmnl))
+ (synopsis "Library for kernel connection tracking timeout infrastructure")
+ (description "libnetfilter_cttimeout is the userspace library that
+provides the programming interface to the fine-grain connection tracking
+timeout infrastructure. With this library, you can create, update and delete
+timeout policies that can be attached to traffic flows. This library is used
+by conntrack-tools.")
+ (home-page "https://netfilter.org/projects/libnetfilter_cttimeout/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_cttimeout")))
+ (license license:gpl2)))
+
+(define-public libnetfilter-cthelper
+ (package
+ (name "libnetfilter-cthelper")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_cthelper/files/"
+ "libnetfilter_cthelper-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0gfgzkc1fjniqwk4jxds72c0lcgfhq2591hrvjrvd9nrqiqqwq87"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libmnl))
+ (synopsis "Library for user-space connection tracking helpers")
+ (description "libnetfilter_cthelper is a userspace library that provides a
+programming interface to user-space connection tracking helpers.
+@enumerate
+@item
+register new user-space connection tracking helpers
+@item
+unregister user-space connection tracking helpers
+@item
+list existing registered user-space connection tracking helpers
+@end enumerate")
+ (home-page "https://netfilter.org/projects/libnetfilter_cthelper/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_cthelper")))
+ (license license:gpl2+)))
+
+(define-public libnetfilter-queue
+ (package
+ (name "libnetfilter-queue")
+ (version "1.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_queue/files/"
+ "libnetfilter_queue-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "1xdra6i4p8jkv943ygjw646qx8df27f7p5852kc06vjx608krzzr"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libmnl libnfnetlink))
+ (synopsis "Library for kernel netfilter infrastructure and state")
+ (description "libnetfilter_queue is a userspace library providing an API
+to packets that have been queued by the kernel packet filter. It is is part
+of a system that deprecates the old ip_queue/libipq mechanism.")
+ (home-page "https://netfilter.org/projects/libnetfilter_queue/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_queue")))
+ (license license:gpl2+)))
+
+(define-public conntrack-tools
+ (package
+ (name "conntrack-tools")
+ (version "1.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "conntrack-tools/files/"
+ "conntrack-tools-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0psx41bclqrh4514yzq03rvs3cq3scfpd1v4kkyxnic2hk65j22r"))))
+ (build-system gnu-build-system)
+ (native-inputs (list bison flex pkg-config))
+ (inputs (list libtirpc
+ libnetfilter-conntrack
+ libnetfilter-cttimeout
+ libnetfilter-cthelper
+ libnetfilter-queue
+ libnfnetlink
+ libmnl))
+ (synopsis "Set of tools targeting the conntrack kernel subsystem")
+ (description "The tool conntrack provides a full featured interface that
+is intended to replace the old @file{/proc/net/ip_conntrack} interface. Using
+conntrack, you can view and manage the in-kernel connection tracking state
+table from userspace. On the other hand, conntrackd covers the specific
+aspects of stateful firewalls to enable highly available scenarios, and can be
+used as statistics collector as well.
+
+Since 1.2.0, the conntrack-tools includes the @command{nfct} command line
+utility. This utility only supports the nfnetlink_cttimeout by now. In the
+long run, we expect that it will replace conntrack by providing a syntax
+similar to nftables.")
+ (home-page "https://netfilter.org/projects/conntrack-tools/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (license license:gpl2+)))
+
+(define-public libnetfilter-acct
+ (package
+ (name "libnetfilter-acct")
+ (version "1.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_acct/files/"
+ "libnetfilter_acct-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "06lsjndgfjsgfjr43px2n2wk3nr7whz6r405mks3887y7vpwwl22"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libmnl))
+ (synopsis "Library providing interface to extended accounting infrastructure")
+ (description "libnetfilter_acct is the userspace library providing interface
+to extended accounting infrastructure.
+
+@enumerate
+@item
+creating accounting objects
+@item
+retrieving accounting objects (and atomically set to zero)
+@item
+deleting accounting objects
+@end enumerate
+For the nfnetlink_acct subsystem.")
+ (home-page "https://netfilter.org/projects/libnetfilter_acct/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_acct")))
+ (license license:lgpl2.1+)))
+
+(define-public nfacct
+ (package
+ (name "nfacct")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/" name
+ "/files/nfacct-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0sdxbxjyapbqcp2ami5jd10vz4xbbdvx39f3wfy1iqsbflc25zzc"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libmnl libnetfilter-acct))
+ (synopsis "Command line tool to create/retrieve/delete accounting objects")
+ (description "nfacct is the command line tool to create/retrieve/delete
+accounting objects
+@enumerate
+@item
+listing the objects of the nfacct table in plain text/XML
+@item
+atomically get and reset objects of the nfacct table
+@item
+adding new objects to the nfacct table
+@item
+deleting objects from the nfacct table
+@end enumerate")
+ (home-page "https://netfilter.org/projects/nfacct/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (license license:gpl2+)))
+
+(define-public libnetfilter-log
+ (package
+ (name "libnetfilter-log")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/"
+ "libnetfilter_log/files/"
+ "libnetfilter_log-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "1spy9xs41v76kid5ana8n126f3mvgq6fjibbfbj4kn0larbhix73"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list libnfnetlink libmnl))
+ (synopsis "Library providing interface to packets logged by netfilter")
+ (description "libnetfilter_log is a userspace library providing interface to
+packets that have been logged by the kernel packet filter. It is is part of a
+system that deprecates the old syslog/dmesg based packet logging. This library
+has been previously known as libnfnetlink_log.
+
+@enumerate
+@item
+receiving to-be-logged packets from the kernel nfnetlink_log subsystem
+@end enumerate")
+ (home-page "https://netfilter.org/projects/libnetfilter_log/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (properties '((upstream-name . "libnetfilter_log")))
+ (license license:gpl2+)))
+
+(define-public ulogd
+ (package
+ (name "ulogd")
+ (version "2.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://netfilter.org/projects/" name
+ "/files/ulogd-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0ax9959c4bapq78n13bbaibcf1gwjir3ngx8l2dh45lw9m4ha2lr"))))
+ (build-system gnu-build-system)
+ (outputs '("out"
+ ;; additonal non-default output plugins
+ "json" "pcap" "sqlite3" "pgsql" "mysql"))
+ (native-inputs (list pkg-config))
+ (inputs (list libnfnetlink
+ libmnl
+ libnetfilter-log
+ libnetfilter-conntrack
+ libnetfilter-acct
+ sqlite
+ libpcap
+ jansson
+ postgresql
+ mysql
+ zlib
+ openssl))
+ (arguments
+ (list #:configure-flags
+ #~(list (string-append "--with-pgsql="
+ (assoc-ref %build-inputs "postgresql"))
+ (string-append "--with-mysql="
+ (assoc-ref %build-inputs "mysql")))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda _
+ (let ((out-etc (string-append #$output "/etc"))
+ (ulogd.conf "ulogd.conf"))
+ (mkdir-p out-etc)
+ (copy-file ulogd.conf (string-append out-etc "/"
+ ulogd.conf)))))
+ (add-after 'install 'setup-plugin-outputs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion
+ (string-append #$output "/lib/ulogd/")
+ (for-each
+ (lambda (output-name)
+ (let ((output-dir (string-append
+ (assoc-ref outputs output-name)
+ "/lib/ulogd/")))
+ (mkdir-p output-dir)
+ (for-each
+ (lambda (plugin)
+ (copy-file plugin (string-append output-dir plugin))
+ (delete-file plugin))
+ (find-files "."
+ (string-append "ulogd_output_"
+ (string-upcase output-name)
+ ".*$")))))
+ (list "json" "pcap" "sqlite3" "pgsql" "mysql"))))))))
+ (synopsis "Logging daemon for netfilter and iptables")
+ (description "ulogd is a userspace logging daemon for netfilter/iptables
+related logging. This includes per-packet logging of security violations,
+per-packet logging for accounting, per-flow logging and flexible user-defined
+accounting.
+
+@enumerate
+@item
+Packet and flow-based traffic accounting
+@item
+Flexible user-defined traffic accounting via nfacct infrastructure
+@item
+SQL database back-end support: SQLite3, PostgreSQL, MySQL
+@item
+Text-based output formats: CSV, XML, Netfilter's LOG, Netfilter's conntrack
+@end enumerate")
+ (home-page "https://netfilter.org/projects/nfacct/index.html")
+ (supported-systems (filter target-linux? %supported-systems))
+ (license license:gpl2)))
+
(define-public proot
(package
(name "proot")
@@ -8021,34 +8370,19 @@ from the xfsprogs package. It is meant to be used in initrds.")
(define-public genext2fs
(package
(name "genext2fs")
- (version "1.4.1-4")
+ (version "1.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/jeremie-koenig/genext2fs")
- ;; 1.4.1-3 had a VCS tag but 1.4.1-4 doesn't.
- (commit "9ee43894634998b0b2b309d636f25c64314c9421")))
+ (url "https://github.com/bestouff/genext2fs")
+ (commit "474111097321f03de9e009aa9f7d4a8948e310b2")))
(file-name (git-file-name name version))
(sha256
- (base32 "0ib5icn78ciz00zhc1bgdlrwaxvsdz7wnplwblng0jirwi9ml7sq"))))
+ (base32 "14lgvml5zz99845ja47jpf4iirjzfqv36ffzachh3hw2ggji9c7l"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'apply-debian-patches
- ;; Debian changes (the revision after ‘-’ in VERSION) are
- ;; maintained as separate patches. Apply those relevant to us.
- (lambda _
- (for-each
- (lambda (file-name)
- (invoke "patch" "-p1" "-i"
- (string-append "debian/patches/" file-name)))
- (list "blocksize+creator.diff" ; add -B/-o options
- "byteswap_fix.diff"))
- #t)))))
(native-inputs
(list autoconf automake))
- (home-page "https://github.com/jeremie-koenig/genext2fs")
+ (home-page "https://github.com/bestouff/genext2fs")
(synopsis "Generate ext2 file system as a normal user")
(description "This package provides a program to generate an ext2
file system as a normal (non-root) user. It does not require you to mount