[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Custom kernel
Re: Custom kernel
Sun, 11 Dec 2016 23:10:06 +0100
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)
Mark H Weaver <address@hidden> skribis:
> address@hidden (Ludovic Courtès) writes:
>> "Dmitri Anikin" <address@hidden> 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
>> for ARCH and optionally VARIANT, or #f if there is no such configuration."
>> (define* (make-linux-libre version hash supported-systems
>> ;; 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)))
>> and later:
>> (define-public linux-libre
>> (make-linux-libre "4.8.11"
>> #: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
>> (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
> 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:
;; Avoid rebuilding kernel variants when there is a minor version bump.
(define %linux-libre-version "4.8.13")
But it’s a defect that not really due to ‘make-linux-libre’ per se.
Re: Custom kernel, Dmitri Anikin, 2016/12/05