From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: Re: Custom kernel Date: Sun, 11 Dec 2016 09:11:49 -0500 Message-ID: <87y3zma72y.fsf@netris.org> References: <60c00abf5ceeeb6cfe571991f4969c87@mail.teknik.io> <87d1hafkr7.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46995) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cG4rI-0006k3-6Q for help-guix@gnu.org; Sun, 11 Dec 2016 09:12:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cG4rD-0007kH-V9 for help-guix@gnu.org; Sun, 11 Dec 2016 09:12:08 -0500 In-Reply-To: <87d1hafkr7.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Fri, 02 Dec 2016 15:50:20 +0100") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: help-guix@gnu.org, Dmitri Anikin ludo@gnu.org (Ludovic Court=C3=A8s) writes: > "Dmitri Anikin" 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=E2=80=99ll 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 configuratio= n." > =E2=80=A6) > > (define* (make-linux-libre version hash supported-systems > #:key > ;; A function that takes an arch and a varia= nt. > ;; 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 > =E2=80=A6)) > > and later: > > (define-public linux-libre > (make-linux-libre "4.8.11" > "04h3n3lw563i4yhxfkxrrwjvafd3af730l1ih9kqv7qwkm0psy= 7r" > %intel-compatible-systems > #:configuration-file kernel-config)) > > Currently =E2=80=98make-linux-libre=E2=80=99 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=E2=80=99s 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. 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. Thanks, Mark