diff options
Diffstat (limited to 'gnu/packages/linux.scm')
-rw-r--r-- | gnu/packages/linux.scm | 156 |
1 files changed, 94 insertions, 62 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e17bc37ed2..415cb4e026 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -52,6 +52,7 @@ ;;; Copyright © 2020 David Dashyan <mail@davie.li> ;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net> ;;; Copyright © 2021 B. Wilson <elaexuotee@wilsonb.com> +;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru> ;;; ;;; This file is part of GNU Guix. ;;; @@ -355,49 +356,36 @@ 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.13-version "5.13.2") +(define-public linux-libre-5.13-version "5.13.6") (define deblob-scripts-5.13 (linux-libre-deblob-scripts linux-libre-5.13-version - (base32 "1mhc215a1y8bxip2f0sqmyl0rf7cgw22cmg26hg9x0pfm9li2c95") - (base32 "1hkbkyy3myraczaj982z72m0p1yxjwigqhsz2kx9g74qkap0xy9d"))) + (base32 "08xai5zqgk0y0rwhssf81lf8vivjg12wjkv7855l3ljkivgjclbf") + (base32 "153jf5l5x4438zgxwggaky2ahjlfl48j438vhpzks6h77lzc51a5"))) (define-public linux-libre-5.13-pristine-source (let ((version linux-libre-5.13-version) - (hash (base32 "0dx9khk7fh003xyb3xix0kc0rmjncg7ric5p830zhadnrw4hv563"))) + (hash (base32 "0xjjl8dmilp425b1cp977v26qxlg1147gh54kni949pzxwh1fb56"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.13))) -(define-public linux-libre-5.12-version "5.12.17") -(define deblob-scripts-5.12 - (linux-libre-deblob-scripts - linux-libre-5.12-version - (base32 "1vdsr9y4gckknrbqcjyfakwva3k0vb5zcivzk3k1s9mh7qp9dils") - (base32 "1kb98sbn6lgf5cpd2f8mav93hxh0aywybfjzxx35294ipll1264y"))) -(define-public linux-libre-5.12-pristine-source - (let ((version linux-libre-5.12-version) - (hash (base32 "1ghyqxfxslxzr7273vj2yn14pkdnkja3wk50xxhavpvf87i8c40j"))) - (make-linux-libre-source version - (%upstream-linux-source version hash) - deblob-scripts-5.12))) - ;; 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.50") +(define-public linux-libre-5.10-version "5.10.54") (define deblob-scripts-5.10 (linux-libre-deblob-scripts linux-libre-5.10-version - (base32 "1rmnx1px4sizs2lq831yd2g9dyflg0vmykz3cv9443x2a2vwy81f") - (base32 "1fdvjhc048nk8v27bgir0fdjqm8hn4yfdgd3mdjird4ary80ywb2"))) + (base32 "16w9r5h8r8j5ckq2brr15xgdq3ksr2pgwcmjx5a7bqry8a60i3m4") + (base32 "0c9x07gplzajm0h5if3fpw2rvfb7psw3yp7i2n6ws7ggq1dvmki2"))) (define-public linux-libre-5.10-pristine-source (let ((version linux-libre-5.10-version) - (hash (base32 "0dmlpy9k7am99495bxcm46i4y6g34d1fzdkzz3wgzb4mgmx35nlb"))) + (hash (base32 "0i5y56v34gm0djgmh2bld4hmndf1ymfkwyd1lkn8fwc4c4rccl5z"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.10))) -(define-public linux-libre-5.4-version "5.4.132") +(define-public linux-libre-5.4-version "5.4.136") (define deblob-scripts-5.4 (linux-libre-deblob-scripts linux-libre-5.4-version @@ -405,12 +393,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1xghbbnaisjd0k1klbyn1p7r6r4x5a1bpmkm56a3gh2zvw4s7mj8"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1vq0dmrn7gl2vprm08l8by5ja3xjgggrcd38vqg7b7jpnfzssrl4"))) + (hash (base32 "05mdkgscnfvhanspipd9ka0phfqzdlcxzm5j1x0jvf46pwvds8j3"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.197") +(define-public linux-libre-4.19-version "4.19.199") (define deblob-scripts-4.19 (linux-libre-deblob-scripts linux-libre-4.19-version @@ -418,12 +406,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf"))) (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "10kj442qaky6rpl65k5rrvd3p6mdgz4p321zvf4s312ixfdja0g6"))) + (hash (base32 "16iawii33rpc7lgf4ri3idwj32g88p3k3s4lznvmbn66s3wanyrx"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.239") +(define-public linux-libre-4.14-version "4.14.241") (define deblob-scripts-4.14 (linux-libre-deblob-scripts linux-libre-4.14-version @@ -431,12 +419,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky"))) (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "167zwm3giizv42m0xjz71xnb2swlwiaw0xw0dg8j8mb74hz1drx0"))) + (hash (base32 "0zczi2hv6ib67niycn6s2gaw73y0nxz0c75w11xa4jqmf2xh9fxm"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.275") +(define-public linux-libre-4.9-version "4.9.277") (define deblob-scripts-4.9 (linux-libre-deblob-scripts linux-libre-4.9-version @@ -444,12 +432,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2"))) (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "08mz7mzmhk5n1gwadrc5fw8s40jk0rayvdpjcricl4sv56574lb6"))) + (hash (base32 "1pkjcz9llc7hkmzfyjcx20b5njnqbkwlzyy1ncc8na71nn6rvsg6"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.275") +(define-public linux-libre-4.4-version "4.4.277") (define deblob-scripts-4.4 (linux-libre-deblob-scripts linux-libre-4.4-version @@ -457,7 +445,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf"))) (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "1aiwq6019sibsw5smj6ii28cr64dv24c19k4n8c09nakhmhcg94i"))) + (hash (base32 "1m5zkssh523f15fvy80rcvfwqzdkldz3jhny6vbaj8q0zvk3w5r5"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -498,14 +486,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.12-source - (source-with-patches linux-libre-5.12-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 @@ -620,10 +600,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (make-linux-libre-headers* linux-libre-5.13-version linux-libre-5.13-source)) -(define-public linux-libre-headers-5.12 - (make-linux-libre-headers* linux-libre-5.12-version - linux-libre-5.12-source)) - (define-public linux-libre-headers-5.10 (make-linux-libre-headers* linux-libre-5.10-version linux-libre-5.10-source)) @@ -925,16 +901,10 @@ 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.12 - (make-linux-libre* linux-libre-5.12-version - linux-libre-5.12-source - '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux") - #:configuration-file kernel-config)) - -(define-public linux-libre-version linux-libre-5.12-version) -(define-public linux-libre-pristine-source linux-libre-5.12-pristine-source) -(define-public linux-libre-source linux-libre-5.12-source) -(define-public linux-libre linux-libre-5.12) +(define-public linux-libre-version linux-libre-5.13-version) +(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-5.10 (make-linux-libre* linux-libre-5.10-version @@ -1148,8 +1118,8 @@ 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.12-version - linux-libre-5.12-source + linux-libre-5.13-version + linux-libre-5.13-source '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux") #:extra-version "bpf" @@ -1654,6 +1624,31 @@ at login. Local and dynamic reconfiguration are its key features.") ;;; Miscellaneous. ;;; +(define-public powercap + (package + (name "powercap") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/powercap/powercap") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1hp2i1d195v0n4jgvgaymkxlpgyhn07ic273gkda95lz65cdfcgm")))) + (build-system cmake-build-system) + (arguments + '(#:configure-flags + '("-DBUILD_SHARED_LIBS=ON"))) + (home-page "https://github.com/powercap/powercap") + (synopsis "Utilities for accessing the powercap Linux kernel feature") + (description "This package contains utilities for accessing the powercap +Linux kernel feature through sysfs. It includes an implementation for working +with Intel @acronym{RAPL, Running Average Power Limit}. +It provides the commands @code{powercap-info} and @code{powercap-set}.") + (license license:bsd-3))) + (define-public powerstat (package (name "powerstat") @@ -3790,7 +3785,7 @@ devices that can inject events directly into the input subsystem.") (define-public interception-dual-function-keys (package (name "interception-dual-function-keys") - (version "1.3.0") + (version "1.4.0") (home-page "https://gitlab.com/interception/linux/plugins/dual-function-keys") (source (origin (method git-fetch) @@ -3800,14 +3795,15 @@ devices that can inject events directly into the input subsystem.") (file-name (git-file-name name version)) (sha256 (base32 - "1gvhkmwzl5fyyc7k8rc4rf2b9mzh05wa8wcybf9hz2x1mqkc7lmz")))) + "0s49vbg3j4rwh78i8rx8qr7myql09p7b3lhrjl0p7dd98xp6ann6")))) (build-system gnu-build-system) (inputs `(("libevdev" ,libevdev) ("yaml-cpp" ,yaml-cpp))) (arguments - `(#:make-flags (list "CC=gcc" "CXX=g++" - (string-append "PREFIX=" (assoc-ref %outputs "out"))) + `(#:make-flags (list ,(string-append "CC=" (cc-for-target)) + ,(string-append "CXX=" (cxx-for-target)) + (string-append "PREFIX=" %output)) #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-libevdev-path @@ -3818,9 +3814,9 @@ devices that can inject events directly into the input subsystem.") (string-append libevdev "/include/libevdev-1.0"))) #t))) ;; No configure script - (delete 'configure) - ;; No target 'check' - (delete 'check)))) + (delete 'configure)) + ;; No tests are included. + #:tests? #f)) (synopsis "Tap for one key, hold for another") (description "Dual Function Keys is a plugin for @code{interception-tools} that allows @@ -8348,3 +8344,39 @@ Availability and Serviceability} reports from Linux kernel trace events. These trace events are logged in @file{/sys/kernel/debug/tracing} and reported through standard log mechanisms like syslog.") (license license:gpl2))) + +(define-public libgpiod + (package + (name "libgpiod") + (version "1.6.3") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 (base32 "0rv8a11hx3pc6sdw6nfc6k35hkp2clb3v53n1381cvip8fzhbsad")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + '("--enable-tools=yes" + "--enable-bindings-cxx" + "--enable-bindings-python"))) + (native-inputs + `(("automake" ,automake) + ("autoconf" ,autoconf) + ("libtool" ,libtool) + ("autoconf-archive" ,autoconf-archive) + ("pkg-config" ,pkg-config) + ("python" ,python-3))) + (synopsis "Interact with the Linux GPIO character device") + (description + "This package provides a C library with C++/Python bindings and +command-line tools for interacting with GPIO devices that avoids the usage of +older system-wide @file{/sys} interface.") + (home-page "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/") + (license (list license:lgpl2.1+ ;; libgpiod + license:gpl2+ ;; gpio-tools + license:lgpl3+)))) ;; C++ bindings |