all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the operating-system's kernel.
@ 2020-04-13 11:43 Danny Milosavljevic
  2020-04-14  7:39 ` [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the Brice Waegeneire
  2020-04-22 18:57 ` [bug#40595] #40595 Need a rebase Brice Waegeneire
  0 siblings, 2 replies; 4+ messages in thread
From: Danny Milosavljevic @ 2020-04-13 11:43 UTC (permalink / raw)
  To: 40595; +Cc: Danny Milosavljevic

* gnu/system.scm (package-for-kernel): New procedure.
(operating-system-directory-base-entries): Use it.
* gnu/tests/linux-module.scm: Test it.
---
 gnu/system.scm              | 18 +++++++++++++++++-
 gnu/tests/linux-modules.scm | 11 ++++++++++-
 2 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/gnu/system.scm b/gnu/system.scm
index fd456c6206..53c16233a1 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -32,6 +32,7 @@
   #:use-module (guix derivations)
   #:use-module (guix profiles)
   #:use-module (guix ui)
+  #:use-module (guix utils)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages guile)
@@ -472,6 +473,16 @@ OS."
   (file-append (operating-system-kernel os)
                "/" (system-linux-image-file-name)))
 
+(define (package-for-kernel target-kernel module-package)
+  "Return a package like MODULE-PACKAGE, adapted for TARGET-KERNEL, if
+possible (that is if there's a LINUX keyword argument in the build system)."
+  (package
+    (inherit module-package)
+    (arguments
+     (substitute-keyword-arguments (package-arguments module-package)
+       ((#:linux kernel #f)
+        target-kernel)))))
+
 (define* (operating-system-directory-base-entries os)
   "Return the basic entries of the 'system' directory of OS for use as the
 value of the SYSTEM-SERVICE-TYPE service."
@@ -486,7 +497,12 @@ value of the SYSTEM-SERVICE-TYPE service."
                          (kernel
                           (profile-derivation
                            (packages->manifest
-                            (cons kernel modules))
+                            (cons kernel
+                             (map (lambda (module)
+                                    (if (package? module)
+                                        (package-for-kernel kernel module)
+                                        module))
+                                  modules)))
                            #:hooks (if has-modules?
                                        (list linux-module-database)
                                        '())))
diff --git a/gnu/tests/linux-modules.scm b/gnu/tests/linux-modules.scm
index 788bdc848a..953b132ef7 100644
--- a/gnu/tests/linux-modules.scm
+++ b/gnu/tests/linux-modules.scm
@@ -28,8 +28,10 @@
   #:use-module (guix derivations)
   #:use-module (guix gexp)
   #:use-module (guix modules)
+  #:use-module (guix packages)
   #:use-module (guix monads)
   #:use-module (guix store)
+  #:use-module (guix utils)
   #:export (%test-loadable-kernel-modules-0
             %test-loadable-kernel-modules-1
             %test-loadable-kernel-modules-2))
@@ -118,5 +120,12 @@ with one extra module.")
    (description "Tests loadable kernel modules facility of <operating-system>
 with two extra modules.")
    (value (run-loadable-kernel-modules-test
-           (list acpi-call-linux-module ddcci-driver-linux)
+           (list acpi-call-linux-module
+                 (package
+                   (inherit ddcci-driver-linux)
+                   (arguments
+                    `(#:linux #f
+                      ,@(strip-keyword-arguments '(#:linux)
+                                                 (package-arguments
+                                                  ddcci-driver-linux))))))
            '("acpi_call" "ddcci")))))

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the
  2020-04-13 11:43 [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the operating-system's kernel Danny Milosavljevic
@ 2020-04-14  7:39 ` Brice Waegeneire
  2020-04-22 20:59   ` bug#40595: " Danny Milosavljevic
  2020-04-22 18:57 ` [bug#40595] #40595 Need a rebase Brice Waegeneire
  1 sibling, 1 reply; 4+ messages in thread
From: Brice Waegeneire @ 2020-04-14  7:39 UTC (permalink / raw)
  To: 40595

Hello Danny,

Thanks for the patch, I needed such feature.
It works well and the test pass; LGTM!

- Brice

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#40595] #40595 Need a rebase
  2020-04-13 11:43 [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the operating-system's kernel Danny Milosavljevic
  2020-04-14  7:39 ` [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the Brice Waegeneire
@ 2020-04-22 18:57 ` Brice Waegeneire
  1 sibling, 0 replies; 4+ messages in thread
From: Brice Waegeneire @ 2020-04-22 18:57 UTC (permalink / raw)
  To: 40595

Hello Danny,

Looks like this patch need to be rebased.

Cheers,
- Brice

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#40595: [PATCH] system: Automatically adjust linux-module packages to use the
  2020-04-14  7:39 ` [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the Brice Waegeneire
@ 2020-04-22 20:59   ` Danny Milosavljevic
  0 siblings, 0 replies; 4+ messages in thread
From: Danny Milosavljevic @ 2020-04-22 20:59 UTC (permalink / raw)
  To: Brice Waegeneire; +Cc: 40595-done

[-- Attachment #1: Type: text/plain, Size: 138 bytes --]

Hi Brice,

yes, indeed.

Thanks.

I've rebased it and pushed it to guix master as commit f91ad0b13d8d3d5b1ae92e209b1be6e8473385ba.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-04-22 21:01 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-13 11:43 [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the operating-system's kernel Danny Milosavljevic
2020-04-14  7:39 ` [bug#40595] [PATCH] system: Automatically adjust linux-module packages to use the Brice Waegeneire
2020-04-22 20:59   ` bug#40595: " Danny Milosavljevic
2020-04-22 18:57 ` [bug#40595] #40595 Need a rebase Brice Waegeneire

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.