X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/378506a964abdc591bb4edba0620b2ce2a07d5ce..1837bdcd9fddd62100cda3250cd95325d0d1c0b9:/gnu/packages/linux.scm diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2d206ebaa1..adde74dcdb 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -37,6 +37,7 @@ ;;; Copyright © 2019 Stefan Stefanović ;;; Copyright © 2019 Pierre Langlois ;;; Copyright © 2019 Brice Waegeneire +;;; Copyright © 2019 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -83,6 +84,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages golang) #:use-module (gnu packages gperf) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) @@ -104,6 +106,7 @@ #:use-module (gnu packages readline) #:use-module (gnu packages rrdtool) #:use-module (gnu packages samba) + #:use-module (gnu packages sdl) #:use-module (gnu packages serialization) #:use-module (gnu packages slang) #:use-module (gnu packages texinfo) @@ -122,6 +125,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system go) + #:use-module (guix build-system meson) #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module (guix build-system linux-module) @@ -182,33 +186,33 @@ defconfig. Return the appropriate make target if applicable, otherwise return "deblob-check")) (sha256 deblob-check-hash)))) -(define deblob-scripts-5.3 +(define deblob-scripts-5.4 (linux-libre-deblob-scripts - "5.3.11" - (base32 "15n09zq38d69y1wl28s3nasf3377qp2yil5b887zpqrm00dif7i4") - (base32 "1xk3gzgnl9m29avka32zkggl36sdxyvps40hr12hjy42l1ysfshm"))) + "5.4.4" + (base32 "0ckxn7k5zgcqk30dq943bnamr6a6zjbw2aqjl3x30f4kvh5f6k25") + (base32 "09hy3jqb8lny861pxjbjvzg90imi8p7z10j14xp0rclxmyb81rk3"))) (define deblob-scripts-4.19 (linux-libre-deblob-scripts - "4.19.84" + "4.19.90" (base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy") - (base32 "1s89hmy4ihd65by2p1xxkxj476f6c9s5g9r9yvqncb50xlhilk50"))) + (base32 "0xpcl6pd1280gm81bivz45dfhy6v16j0hghxhjynmcbasgnx8vpd"))) (define deblob-scripts-4.14 (linux-libre-deblob-scripts - "4.14.154" + "4.14.159" (base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6") - (base32 "1pcsfzpcv3bs30iyhwpk1x64r0gyv7wi22spnq6avzj1ayva10kw"))) + (base32 "0yd0c3qxk5rm686j4kd5v4zppjj3k9ivqnv46z4p3xh1gqmhv7cz"))) (define deblob-scripts-4.9 (linux-libre-deblob-scripts - "4.9.201" + "4.9.206" (base32 "1wvldzlv7q2xdbadas87dh593nxr4a8p5n0f8zpm72lja6w18hmg") (base32 "0is8gn4qdd7h5l6lacvhqdch26lmrbgxfm8ab7fx8n85ha7y358w"))) (define deblob-scripts-4.4 (linux-libre-deblob-scripts - "4.4.201" + "4.4.206" (base32 "0x2j1i88am54ih2mk7gyl79g25l9zz4r08xhl482l3fvjj2irwbw") (base32 "12ac4g3ky8yma8sylmxvvysqvd4hnaqjiwmxrxb6wlxggfd7zkbx"))) @@ -352,42 +356,42 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." "linux-" version ".tar.xz")) (sha256 hash))) -(define-public linux-libre-5.3-version "5.3.14") -(define-public linux-libre-5.3-pristine-source - (let ((version linux-libre-5.3-version) - (hash (base32 "0ckrbzwsc4lxd3l287wsd88mkfsd0kpf8nzchd9nfmkjiil14mwm"))) +(define-public linux-libre-5.4-version "5.4.7") +(define-public linux-libre-5.4-pristine-source + (let ((version linux-libre-5.4-version) + (hash (base32 "1jgwg5qb7lb30m5ywvpfagzrl6d0i524qpy3v99mina6j4fv5jdb"))) (make-linux-libre-source version (%upstream-linux-source version hash) - deblob-scripts-5.3))) + deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.87") +(define-public linux-libre-4.19-version "4.19.92") (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "07fsds2k0hxqgny86winzl46d79g6mb9s28bp7nwlvwf67l22wm5"))) + (hash (base32 "18l3k0hgyanh6axgmmaaff139vpw6lf3fcf9iglpqwgspgw7rhr9"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.157") +(define-public linux-libre-4.14-version "4.14.161") (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "0cvpagbjwpj63lpybfq1rnwdnxcjw49z0b5prah39krf0nd7dylh"))) + (hash (base32 "1jc1izlvgymp9x61r4yz2xhplwmp6x8laxqj9wy33iz6a2gn48wx"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.205") +(define-public linux-libre-4.9-version "4.9.208") (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "01cbqxw77g6rdg7dgk73pg9a2n9v4sxp48q2a77w1b068xjfifcq"))) + (hash (base32 "0njjw1i8dilihn1hz62zra4b9y05fb3r2k2sqlkd0wfn86c1rbdp"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.205") +(define-public linux-libre-4.4-version "4.4.208") (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "19pasidvfmf94rs86v80x7hpirz9gavmkxwcl76ya61fq7lqy7zs"))) + (hash (base32 "03jj91z5dc0ybpjy9w6aanb3k53gcj7gsjc32h3ldf72hlmgz6aq"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -420,10 +424,9 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (patches (append (origin-patches source) patches)))) -(define-public linux-libre-5.3-source - (source-with-patches linux-libre-5.3-pristine-source - (list (search-patch "linux-libre-active-entropy.patch") - %boot-logo-patch +(define-public linux-libre-5.4-source + (source-with-patches linux-libre-5.4-pristine-source + (list %boot-logo-patch %linux-libre-arm-export-__sync_icache_dcache-patch))) (define-public linux-libre-4.19-source @@ -516,9 +519,9 @@ 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.3 - (make-linux-libre-headers* linux-libre-5.3-version - linux-libre-5.3-source)) +(define-public linux-libre-headers-5.4 + (make-linux-libre-headers* linux-libre-5.4-version + linux-libre-5.4-source)) (define-public linux-libre-headers-4.19 (make-linux-libre-headers* linux-libre-4.19-version @@ -773,16 +776,16 @@ It has been modified to remove all non-free binary blobs.") ;;; Generic kernel packages. ;;; -(define-public linux-libre-5.3 - (make-linux-libre* linux-libre-5.3-version - linux-libre-5.3-source +(define-public linux-libre-5.4 + (make-linux-libre* linux-libre-5.4-version + linux-libre-5.4-source '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux") #:configuration-file kernel-config)) -(define-public linux-libre-version linux-libre-5.3-version) -(define-public linux-libre-pristine-source linux-libre-5.3-pristine-source) -(define-public linux-libre-source linux-libre-5.3-source) -(define-public linux-libre linux-libre-5.3) +(define-public linux-libre-version linux-libre-5.4-version) +(define-public linux-libre-pristine-source linux-libre-5.4-pristine-source) +(define-public linux-libre-source linux-libre-5.4-source) +(define-public linux-libre linux-libre-5.4) (define-public linux-libre-4.19 (make-linux-libre* linux-libre-4.19-version @@ -1074,6 +1077,13 @@ at login. Local and dynamic reconfiguration are its key features.") (sha256 (base32 "16i7qzjmm6g0lzha8yzpfrlcxnvkgh95hkq9gdjd4zmzb8d0wxa1")))) (build-system gnu-build-system) + (arguments + `(,@(if (%current-target-system) + '(#:configure-flags + (list + "ac_cv_func_malloc_0_nonnull=yes" + "ac_cv_func_realloc_0_nonnull=yes")) + '()))) (inputs `(("ncurses" ,ncurses))) (home-page "https://gitlab.com/psmisc/psmisc") (synopsis "Small utilities that use the proc file system") @@ -1474,7 +1484,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") (define-public strace (package (name "strace") - (version "5.3") + (version "5.4") (home-page "https://strace.io") (source (origin (method url-fetch) @@ -1482,7 +1492,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") "/strace-" version ".tar.xz")) (sha256 (base32 - "0ix06z4vnc49mv76f22kixz8dsh7daqv9mpgwcgl0mlnfjc124vc")))) + "0hd7sb7l99y9rcj8jjc1b6m3ryds17krsymdg3dvd40jsla0bl7p")))) (build-system gnu-build-system) (arguments '(#:phases @@ -1670,7 +1680,7 @@ external rate conversion.") (define-public iptables (package (name "iptables") - (version "1.6.2") + (version "1.8.4") (source (origin (method url-fetch) (uri (string-append @@ -1678,7 +1688,7 @@ external rate conversion.") version ".tar.bz2")) (sha256 (base32 - "0crp0lvh5m2f15pr8cw97h8yb8zjj10x95zj06j46cr68vx2vl2m")))) + "0z0mgs1ghvn3slc868mgbf2g26njgrzcy5ggyb5w4i55j1a3lflr")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -2067,8 +2077,18 @@ configuration and monitoring interfaces.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("libnl" ,libnl))) (arguments - `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) - "CC=gcc") + `(#:make-flags + (let* ((target ,(%current-target-system)) + (gcc (if target (string-append target "-gcc") "gcc")) + (pkg-config (if target + (string-append target "-pkg-config") + "pkg-config"))) + (list + (string-append "CC=" gcc) + (string-append "PKG_CONFIG=" + (assoc-ref %build-inputs "pkg-config") + "/bin/" pkg-config) + (string-append "PREFIX=" (assoc-ref %outputs "out")))) #:phases (modify-phases %standard-phases (delete 'configure)))) (home-page "https://wireless.wiki.kernel.org/") (synopsis "Tool for configuring wireless devices") @@ -2811,8 +2831,20 @@ mapper. Kernel components are part of Linux-libre.") (string-append "INSTALL_MAN=" %output "/share/man") (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib") "BUILD_STATIC=") - #:phases (modify-phases %standard-phases - (delete 'configure)) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key target #:allow-other-keys) + (when ,(%current-target-system) + ;; Cross-compilation: use the cross tools. + (substitute* (find-files "." "Makefile") + (("CC = .*$") + (string-append "CC = " target "-gcc\n")) + (("AR = .*$") + (string-append "AR = " target "-ar\n")) + (("RANLIB = .*$") + (string-append "RANLIB = " target "-ranlib\n")))) + #t))) #:tests? #f)) (synopsis "Tools for manipulating Linux Wireless Extensions") (description "Wireless Tools are used to manipulate the now-deprecated @@ -3023,9 +3055,9 @@ country-specific regulations for the wireless spectrum.") (("cat ") (string-append (assoc-ref inputs "coreutils") "/bin/cat ")) - (("egrep ") + (("grep ") (string-append (assoc-ref inputs "grep") - "/bin/egrep ")) + "/bin/grep ")) (("sed -e") (string-append (assoc-ref inputs "sed") "/bin/sed -e")) @@ -3746,7 +3778,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") (define-public bluez (package (name "bluez") - (version "5.50") + (version "5.51") (source (origin (method url-fetch) (uri (string-append @@ -3754,7 +3786,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") version ".tar.xz")) (sha256 (base32 - "048r91vx9gs5nwwbah2s0xig04nwk14c5s0vb7qmaqdvighsmz2z")))) + "1fpbsl9kkfq6mn6n0dg4h0il4c7fzhwhn79gh907k5b2kwszpvgb")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -3909,7 +3941,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "5.3.1") + (version "5.4") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -3917,7 +3949,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "0f6s1iwiqbncrvxp74k50s88x6zqf85sjxg04kyni82l1vk1m8xz")))) + "1ykhasv0jc3qi3xrm5841mzkmlbkjw6rm70gl4aww90jj6ak55qg")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of the binaries in "out" @@ -4487,6 +4519,7 @@ from that to the system kernel's @file{/dev/random} machinery.") #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "DESTDIR=" out) (string-append "LDFLAGS=-Wl,-rpath=" out "/lib") + "libdir=/lib" "docdir=/share/doc/cpupower" "confdir=$(docdir)/examples" ;; The Makefile recommends the following changes @@ -5225,14 +5258,16 @@ re-use code and to avoid re-inventing the wheel.") (define-public libnftnl (package (name "libnftnl") - (version "1.1.4") + (version "1.1.5") (source (origin (method url-fetch) (uri (string-append "mirror://netfilter.org/libnftnl/" "libnftnl-" version ".tar.bz2")) (sha256 - (base32 "087dfc2n4saf2k68hyi4byvgz5grwpw5kfjvmkpn3wmd8y1riiy8")))) + (base32 "1wqlxf76bkqf3qhka9sw32qhb2ni20q1k6rn3iril2kw482lvpk6")) + (patches + (search-patches "libnftnl-dont-check-NFTNL_FLOWTABLE_SIZE.patch")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -5249,15 +5284,16 @@ used by nftables.") (define-public nftables (package (name "nftables") - (version "0.9.2") + (version "0.9.3") (source (origin (method url-fetch) - (uri (string-append "http://www.nftables.org/projects/nftables" - "/files/nftables-" version ".tar.bz2")) + (uri (list (string-append "mirror://netfilter.org/nftables/nftables-" + version ".tar.bz2") + (string-append "https://www.nftables.org/projects/nftables" + "/files/nftables-" version ".tar.bz2"))) (sha256 - (base32 - "1x8kalbggjq44j4916i6vyv1rb20dlh1dcsf9xvzqsry2j063djw")))) + (base32 "0y6vbqp6x8w165q65h4n9sba1406gaz0d4744gqszbm7w9f92swm")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-man-doc"))) ; FIXME: Needs docbook2x. @@ -5268,7 +5304,7 @@ used by nftables.") ("libnftnl" ,libnftnl) ("readline" ,readline))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://www.nftables.org") + (home-page "https://www.nftables.org") (synopsis "Userspace utility for Linux packet filtering") (description "nftables is the project that aims to replace the existing {ip,ip6,arp,eb}tables framework. Basically, this project provides a new packet @@ -5470,7 +5506,7 @@ the MTP device as a file system.") (define-public procenv (package (name "procenv") - (version "0.50") + (version "0.51") (source (origin (method url-fetch) @@ -5478,7 +5514,7 @@ the MTP device as a file system.") version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "0dvscyf47i3j5ay0amncqmqw9kd916689r2pqdvpnsrhp6j46zp1")))) + (base32 "1javw97yw0qvjmj14js8vw6nsfyf2xc0kfiyq5f2hsp0553w2cdq")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-silent-rules"))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -6083,6 +6119,47 @@ have to construct the archives directly, without using the archiver.") types and interfaces and translates so that the X server can use them.") (license license:gpl2+))) +(define-public pipewire + (package + (name "pipewire") + (version "0.2.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/PipeWire/pipewire") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc")))) + (build-system meson-build-system) + (arguments + '(#:configure-flags '("-Dsystemd=false"))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("dbus" ,dbus) + ("eudev" ,eudev) + ("ffmpeg" ,ffmpeg) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("libva" ,libva) + ("sbc" ,sbc) + ("sdl2" ,sdl2))) + (home-page "https://pipewire.org/") + (synopsis "Server and user space API to deal with multimedia pipelines") + (description + "PipeWire is a project that aims to greatly improve handling of audio and +video under Linux. It aims to support the usecases currently handled by both +PulseAudio and Jack and at the same time provide same level of powerful handling +of Video input and output. It also introduces a security model that makes +interacting with audio and video devices from containerized applications easy, +with supporting Flatpak applications being the primary goal. Alongside Wayland +and Flatpak we expect PipeWire to provide a core building block for the future +of Linux application development.") + (license license:lgpl2.0+))) + (define-public ell (package (name "ell")