diff mbox series

[bug#55805] gnu: linux-libre: enable hidraw by default

Message ID 20220605120222.1902-1-tom@tom-fitzhenry.me.uk
State New
Headers show
Series [bug#55805] gnu: linux-libre: enable hidraw by default | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Tom Fitzhenry June 5, 2022, 12:02 p.m. UTC
* gnu/packages/linux.scm (%default-extra-linux-options): Enable CONFIG_HIDRAW.

hidraw is needed to create /dev/hidraw* devices, commonly used for U2F
devices, e.g. via libu2f-host.

CONFIG_HIDRAW is not enabled in the mainline arm64 defconfig, but is enabled
on:
* the mainline x86_64 defconfig
* gnu/packages/aux-files/linux-libre/*arm64.conf

HIDRAW's Kconfig documentation advises "If unsure, say Y."[0]

Tested by compiling and running linux-libre-arm64-generic, and observing that
/dev/hidraw* devices are created, and SSH-via-U2F now works.

0. Linux kernel, drivers/hid/Kconfig

Link: https://www.kernel.org/doc/Documentation/hid/hidraw.txt
Signed-off-by: Tom Fitzhenry <tom@tom-fitzhenry.me.uk>
---
 gnu/packages/linux.scm | 2 ++
 1 file changed, 2 insertions(+)


base-commit: 8334e7c36ba7266fdbcf783d80c02a072cf1347b

Comments

Pavel Shlyak June 5, 2022, 12:23 p.m. UTC | #1
Nice idea. Good to merge.
Tobias Geerinckx-Rice June 5, 2022, 1:15 p.m. UTC | #2
Hi Tom,

Tom Fitzhenry 写道:
> +    ;; Enable hidraw by default
> +    ("CONFIG_HIDRAW" . #t)

I agree with the content of this change, but why add it here & not 
to the kernel configuration aux-files?

Kind regards,

T G-R
Tom Fitzhenry June 5, 2022, 1:46 p.m. UTC | #3
Tobias Geerinckx-Rice via Guix-patches via <guix-patches@gnu.org>
writes:

> I agree with the content of this change, but why add it here & not to
> the kernel configuration aux-files?

My understanding of gnu/packages/linux.scm is that kernels come in two
forms:

i. "-generic" kernels, which build their .config via mainline defconfig +
  #:extra-options.
  
ii. non "-generic" kernels, which use "#:configuration-file
  kernel-config" to use the config from aux-files.

This patch solely addresses (i) kernels, since (ii) kernels already have
CONFIG_HIDRAW, as we can see by inspecting the aux-files:

$ ls gnu/packages/aux-files/linux-libre/* | wc -l
25
$ grep CONFIG_HIDRAW=y gnu/packages/aux-files/linux-libre/* | wc -l
25
diff mbox series

Patch

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 4fc0ac16af..12e0db23c4 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -687,6 +687,8 @@  (define %default-extra-linux-options
     ("CONFIG_MEMCG_KMEM" . #t)
     ("CONFIG_CPUSETS" . #t)
     ("CONFIG_PROC_PID_CPUSET" . #t)
+    ;; Enable hidraw by default
+    ("CONFIG_HIDRAW" . #t)
     ;; Allow disk encryption by default
     ("CONFIG_DM_CRYPT" . m)
     ;; Modules required for initrd: