all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw@netris.org>
Cc: help-guix@gnu.org, Dmitri Anikin <anarki@teknik.io>
Subject: Re: Custom kernel
Date: Sun, 11 Dec 2016 23:10:06 +0100	[thread overview]
Message-ID: <87r35eyv5t.fsf@gnu.org> (raw)
In-Reply-To: <87y3zma72y.fsf@netris.org> (Mark H. Weaver's message of "Sun, 11 Dec 2016 09:11:49 -0500")

Hello!

Mark H Weaver <mhw@netris.org> skribis:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> "Dmitri Anikin" <anarki@teknik.io> skribis:
>>
>>> Is it possible to pass custom patches and kernel config file to be used for linux-libre package?
>>
>> It is possible, yes.
>>
>> If you look at (gnu packages linux), you’ll find this:
>>
>>   (define* (kernel-config arch #:key variant)
>>     "Return the absolute file name of the Linux-Libre build configuration file
>>   for ARCH and optionally VARIANT, or #f if there is no such configuration."
>>      …)
>>
>>   (define* (make-linux-libre version hash supported-systems
>>                              #:key
>>                              ;; A function that takes an arch and a variant.
>>                              ;; See kernel-config for an example.
>>                              (extra-version #f)
>>                              (configuration-file #f)
>>                              (defconfig "defconfig")
>>                              (extra-options %default-extra-linux-options)
>>                              (patches (list %boot-logo-patch)))
>>     (package
>>       …))
>>
>> and later:
>>
>>   (define-public linux-libre
>>     (make-linux-libre "4.8.11"
>>                       "04h3n3lw563i4yhxfkxrrwjvafd3af730l1ih9kqv7qwkm0psy7r"
>>                       %intel-compatible-systems
>>                       #:configuration-file kernel-config))
>>
>> Currently ‘make-linux-libre’ is not public, but we could probably make
>> it public (David, WDYT?).  In the meantime, in your own module, you can
>> do:
>>
>>   (define make-linux-libre
>>     ;; It’s private but I wanna use it anyway!
>>     (@@ (gnu packages linux) make-linux-libre))
>
> I think we should avoid exporting 'make-linux-libre' in its current
> form.

Makes sense.

> Although it was an improvement in some ways over what we had
> previously, I've found it to be an inadequate interface in many
> respects, and in my opinion it needs to be redesigned.  I don't have
> time to make a case now, but in practice it leads to redundancy.  For
> example, when I recently added security fixes to linux-libre, I needed
> to add the patches in two separate places, and every time I update the
> version, I need to update two places as well.

Looking at 6b2921c3acf2cc808128af97784929365f8582af, it seems that
patches lead to modifications in only one place (the ‘make-linux-libre’
call site), no?

There seems to be redundancy here though:

--8<---------------cut here---------------start------------->8---
;; Avoid rebuilding kernel variants when there is a minor version bump.
(define %linux-libre-version "4.8.13")
(define %linux-libre-hash "1n1bhasqih8acag2glwaqsh76avpinvchvwg6g4q1pfm2vs1499x")
--8<---------------cut here---------------end--------------->8---

But it’s a defect that not really due to ‘make-linux-libre’ per se.

Thanks,
Ludo’.

  parent reply	other threads:[~2016-12-11 22:10 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-01 12:34 Custom kernel Dmitri Anikin
2016-12-02 14:50 ` Ludovic Courtès
2016-12-11 14:11   ` Mark H Weaver
2016-12-11 14:59     ` David Craven
2016-12-11 19:58       ` Mark H Weaver
2016-12-11 22:10     ` Ludovic Courtès [this message]
2016-12-12 20:13       ` Mark H Weaver
2016-12-12 22:44         ` Ludovic Courtès
2016-12-05  8:58 ` Dmitri Anikin
2016-12-05  9:33   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r35eyv5t.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=anarki@teknik.io \
    --cc=help-guix@gnu.org \
    --cc=mhw@netris.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.