unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#31997] [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants to use new Interface.
@ 2018-06-28 19:49 Joshua Lewis Hayes
  2020-12-18 23:27 ` zimoun
  0 siblings, 1 reply; 3+ messages in thread
From: Joshua Lewis Hayes @ 2018-06-28 19:49 UTC (permalink / raw)
  To: 31997


[-- Attachment #1.1: Type: text/plain, Size: 5294 bytes --]

Though make-linux-libre provides a keyed interface for configuration and
versioning, it remains unaccessable to users due to a lack of public
definition.

This adapts linux-libre to become a public keyed interface for greater
flexibility for users, without promoting proprietary software. Also redefines
linux-libre-<version/arch> variants to use linux-libre as the interface
being used, to reduce direct reliance on the low-level make-linux-libre
function.

From 91dcc98640b5e7eb494893100f6ebae823a6cb58 Mon Sep 17 00:00:00 2001
From: Joshua Lewis Hayes <professordey@liberum.world>
Date: Thu, 28 Jun 2018 20:01:47 +0000
Subject: [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants
to use new Interface.

* gnu/packages/linux.scm (linux-libre): Add Keyed Interface
* gnu/packages/linux.scm (linux-libre-*): Redefine to use Interface

---
gnu/packages/linux.scm | 89 ++++++++++++++++++++++++++------------------------
1 file changed, 47 insertions(+), 42 deletions(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 50f90e165..74292288f 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -28,6 +28,7 @@
;;; Copyright © 2017 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
+;;; Copyright © 2018 Joshua Lewis Hayes <professordey@liberum.world>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -405,66 +406,70 @@ It has been modified to remove all non-free binary blobs.")
 (define %linux-libre-version "4.17.3")
 (define %linux-libre-hash "06mjbs3i0xq1h1cgr6xldr6a8rxsy30mf86wp3n2ff6l5v78iw2q")

-(define-public linux-libre
- (make-linux-libre %linux-libre-version
- %linux-libre-hash
- %linux-compatible-systems
- #:configuration-file kernel-config))
-
 (define %linux-libre-4.14-version "4.14.52")
 (define %linux-libre-4.14-hash "0lx916iw33n32h1fca59r7mh6l2smyml6igvzhimcah62hqx4rk8")

+(define-public (linux-libre #:key
+ (version %linux-libre-version)
+ (hash %linux-libre-hash)
+ (systems %linux-compatible-systems)
+ (configuration-file kernel-config)
+ (defconfig "defconfig")
+ (extra-version #f)
+ (extra-options %extra-options)
+ (patches (list %boot-logo-patch)))
+ (make-linux-libre version
+ hash
+ systems
+ #:configuration-file configuration-file
+ #:defconfig defconfig
+ #:extra-version extra-version
+ #:extra-options extra-options
+ #:patches patches))
+
 (define-public linux-libre-4.14
- (make-linux-libre %linux-libre-4.14-version
- %linux-libre-4.14-hash
- '("x86_64-linux" "i686-linux" "armhf-linux")
- #:configuration-file kernel-config))
+ (linux-libre #:version %linux-libre-4.14-version
+ #:hash %linux-libre-4.14-hash
+ #:systems '("x86_64-linux" "i686-linux" "armhf-linux")))

 (define-public linux-libre-4.9
- (make-linux-libre "4.9.110"
- "0nzfna9w9a45y521d3dcxkdv66gn38n4pq814rdqazk74qb5macn"
- %intel-compatible-systems
- #:configuration-file kernel-config))
+ (linux-libre #:version "4.9.110"
+ #:hash "0nzfna9w9a45y521d3dcxkdv66gn38n4pq814rdqazk74qb5macn"
+ #:systems %intel-compatible-systems))

 (define-public linux-libre-4.4
- (make-linux-libre "4.4.138"
- "1030ra5gn24qmx8lsnhr6kfnfm60avzs23r81dl7mvzr5dci8vsl"
- %intel-compatible-systems
- #:configuration-file kernel-config))
+ (linux-libre #:version "4.4.138"
+ #:hash "1030ra5gn24qmx8lsnhr6kfnfm60avzs23r81dl7mvzr5dci8vsl"
+ #:systems %intel-compatible-systems))

 (define-public linux-libre-4.1
- (make-linux-libre "4.1.52"
- "0a2flzf79kz9c1y9zpxdclsfivp38d2sgnwifg4gvyqixdy63sk9"
- %intel-compatible-systems
- #:configuration-file kernel-config))
+ (linux-libre #:version "4.1.52"
+ #:hash "0a2flzf79kz9c1y9zpxdclsfivp38d2sgnwifg4gvyqixdy63sk9"
+ #:systems %intel-compatible-systems))

 (define-public linux-libre-arm-generic

- (make-linux-libre %linux-libre-version
- %linux-libre-hash
- '("armhf-linux")
- #:defconfig "multi_v7_defconfig"
- #:extra-version "arm-generic"))
+ (linux-libre #:systems '("armhf-linux")
+ #:defconfig "multi_v7_defconfig"
+ #:extra-version "arm-generic"))

 (define-public linux-libre-arm-generic-4.14
- (make-linux-libre %linux-libre-4.14-version
- %linux-libre-4.14-hash
- '("armhf-linux")
- #:defconfig "multi_v7_defconfig"
- #:extra-version "arm-generic"))
+ (linux-libre #:version %linux-libre-4.14-version
+ #:hash %linux-libre-4.14-hash
+ #:systems '("armhf-linux")
+ #:defconfig "multi_v7_defconfig"
+ #:extra-version "arm-generic"))

 (define-public linux-libre-arm-omap2plus
- (make-linux-libre %linux-libre-version
- %linux-libre-hash
- '("armhf-linux")
- #:defconfig "omap2plus_defconfig"
- #:extra-version "arm-omap2plus"))
+ (linux-libre #:systems '("armhf-linux")
+ #:defconfig "omap2plus_defconfig"
+ #:extra-version "arm-omap2plus"))

 (define-public linux-libre-arm-omap2plus-4.14
- (make-linux-libre %linux-libre-4.14-version
- %linux-libre-4.14-hash
- '("armhf-linux")
- #:defconfig "omap2plus_defconfig"
- #:extra-version "arm-omap2plus"))
+ (linux-libre #:version %linux-libre-4.14-version
+ #:hash %linux-libre-4.14-hash
+ #:systems '("armhf-linux")
+ #:defconfig "omap2plus_defconfig"
+ #:extra-version "arm-omap2plus"))

^L
;;;
--
2.16.1

[-- Attachment #1.2: Type: text/html, Size: 15669 bytes --]

[-- Attachment #2: signature.asc --]
[-- Type: text/plain, Size: 523 bytes --]

-----BEGIN PGP SIGNATURE-----
Version: Keybase OpenPGP v2.0.77
Comment: https://keybase.io/crypto

wsBcBAABCgAGBQJbNUhzAAoJENvNe1OK93o8oSMIAIKtOLCFBaIdA4CJcNiRXAyU
kT01Ri9NLWBlXQVuYh601UnOVZR1+lPEau+CJUaSE1Zv79r6z+SbyTshyQiMxFDz
StS5mFFTDLGmH+9d4VLvYlaDbPWIJsBYrUALEH0PGASLEPS4nOoIMKTHqNvxmCri
I+1z0QM09Mup8mWVdOtrWaRt9qjK6AhORzav+bJXKO0xWARWM82rZ3oq6CTtip4G
neWe6lQvJQAM3iT8znoI97PRYpiA89HhZFiaqAeLHzsJxN72+1ZMaj8Aj7CfdiH3
zjwJlUH5k2BQL/EJZ8Kpfj8/hpaSbPR9FRs1RgRgkrnPbcWvwuWRtNkigO0Nsn0=
=wy3c
-----END PGP SIGNATURE-----

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

* [bug#31997] [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants to use new Interface.
  2018-06-28 19:49 [bug#31997] [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants to use new Interface Joshua Lewis Hayes
@ 2020-12-18 23:27 ` zimoun
  2020-12-19  8:25   ` Joshua Hayes (ProfessorDey)
  0 siblings, 1 reply; 3+ messages in thread
From: zimoun @ 2020-12-18 23:27 UTC (permalink / raw)
  To: Joshua Lewis Hayes, Leo Famulari; +Cc: 31997

Hi,

What is the status of this bug:

   <http://issues.guix.gnu.org/issue/31997>

?

On Thu, 28 Jun 2018 at 19:49, Joshua Lewis Hayes <professordey@liberum.world> wrote:

> From 91dcc98640b5e7eb494893100f6ebae823a6cb58 Mon Sep 17 00:00:00 2001
> From: Joshua Lewis Hayes <professordey@liberum.world>
> Date: Thu, 28 Jun 2018 20:01:47 +0000
> Subject: [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants
> to use new Interface.
>
> * gnu/packages/linux.scm (linux-libre): Add Keyed Interface
> * gnu/packages/linux.scm (linux-libre-*): Redefine to use Interface

I am in favor to try to apply it and merge it if it is still relevant,
otherwise I will close it after the usual 3 weeks delay.


All the best,
simon




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

* [bug#31997] [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants to use new Interface.
  2020-12-18 23:27 ` zimoun
@ 2020-12-19  8:25   ` Joshua Hayes (ProfessorDey)
  0 siblings, 0 replies; 3+ messages in thread
From: Joshua Hayes (ProfessorDey) @ 2020-12-19  8:25 UTC (permalink / raw)
  To: 31997

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

Hey there,
It's been 2 years since I submitted this issue, but to my knowledge this is still a limitation of guixsd and the approach is still a valid solution, you'd just need to define any additional explicitly hardcoded kernel varients that have been added since I first wrote it, it's a simple enough interface to build in quickly and allows a lot more flexibility. Admittedly I haven't used guixsd in a long while personally due to this exact limitation, so I don't have a development machine readily to hand for my own testing, but can look into converting my old laptop over once I back it up.

Hope this is helpful at least,
Best Regards
Joshua

On 18 December 2020 23:27:00 GMT, zimoun <zimon.toutoune@gmail.com> wrote:
>Hi,
>
>What is the status of this bug:
>
>   <http://issues.guix.gnu.org/issue/31997>
>
>?
>
>On Thu, 28 Jun 2018 at 19:49, Joshua Lewis Hayes
><professordey@liberum.world> wrote:
>
>> From 91dcc98640b5e7eb494893100f6ebae823a6cb58 Mon Sep 17 00:00:00
>2001
>> From: Joshua Lewis Hayes <professordey@liberum.world>
>> Date: Thu, 28 Jun 2018 20:01:47 +0000
>> Subject: [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine
>variants
>> to use new Interface.
>>
>> * gnu/packages/linux.scm (linux-libre): Add Keyed Interface
>> * gnu/packages/linux.scm (linux-libre-*): Redefine to use Interface
>
>I am in favor to try to apply it and merge it if it is still relevant,
>otherwise I will close it after the usual 3 weeks delay.
>
>
>All the best,
>simon

[-- Attachment #2: Type: text/html, Size: 1993 bytes --]

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

end of thread, other threads:[~2020-12-19  8:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-28 19:49 [bug#31997] [PATCH] gnu: linux-libre*: Add Keyed Interface and redefine variants to use new Interface Joshua Lewis Hayes
2020-12-18 23:27 ` zimoun
2020-12-19  8:25   ` Joshua Hayes (ProfessorDey)

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).