From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-devel-bounces+larch=yhetil.org@gnu.org>
Received: from mp2 ([2001:41d0:2:4a6f::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms11 with LMTPS
	id lb5dOPEswl7lIAAA0tVLHw
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Mon, 18 May 2020 06:36:33 +0000
Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp2 with LMTPS
	id mDPYM/Eswl5THQAAB5/wlQ
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Mon, 18 May 2020 06:36:33 +0000
Received: from lists.gnu.org (lists.gnu.org [209.51.188.17])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by aspmx1.migadu.com (Postfix) with ESMTPS id 802DB940365
	for <larch@yhetil.org>; Mon, 18 May 2020 06:36:33 +0000 (UTC)
Received: from localhost ([::1]:52992 helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	id 1jaZO4-0000jT-6q
	for larch@yhetil.org; Mon, 18 May 2020 02:36:32 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:60082)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <efraim@flashner.co.il>)
 id 1jaZNW-0000i8-5T
 for guix-devel@gnu.org; Mon, 18 May 2020 02:35:58 -0400
Received: from flashner.co.il ([178.62.234.194]:33436)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <efraim@flashner.co.il>) id 1jaZNV-0001Vv-07
 for guix-devel@gnu.org; Mon, 18 May 2020 02:35:57 -0400
Received: from localhost (unknown [188.120.128.132])
 by flashner.co.il (Postfix) with ESMTPSA id AC5F8400E5;
 Mon, 18 May 2020 06:35:54 +0000 (UTC)
Date: Mon, 18 May 2020 09:35:19 +0300
From: Efraim Flashner <efraim@flashner.co.il>
To: Begley Brothers Inc <begleybrothers@gmail.com>
Subject: Re: Replacing Yocto with Guix kernel image builds: best practices
Message-ID: <20200518063519.GB18220@E5400>
References: <CAJsH2Qm88r9_pu-YLA9hmWb+NjtovHpnS_PDxGoUi=zu67s4Yw@mail.gmail.com>
 <20200517132043.GE31833@E5400>
 <CAJsH2Qkb5pd8nNVKouC10+Ngrzox9kMO4KPpsaA34H7CyXXu2A@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="eJnRUKwClWJh1Khz"
Content-Disposition: inline
In-Reply-To: <CAJsH2Qkb5pd8nNVKouC10+Ngrzox9kMO4KPpsaA34H7CyXXu2A@mail.gmail.com>
X-PGP-Key-ID: 0x41AAE7DCCA3D8351
X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc
X-PGP-Fingerprint: A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Received-SPF: pass client-ip=178.62.234.194;
 envelope-from=efraim@flashner.co.il; helo=flashner.co.il
X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/18 02:35:55
X-ACL-Warn: Detected OS   = ???
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN
X-Spam_action: no action
X-BeenThere: guix-devel@gnu.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: "Development of GNU Guix and the GNU System distribution."
 <guix-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-devel>
List-Post: <mailto:guix-devel@gnu.org>
List-Help: <mailto:guix-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=subscribe>
Cc: guix-devel <guix-devel@gnu.org>
Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org
Sender: "Guix-devel" <guix-devel-bounces+larch=yhetil.org@gnu.org>
X-Scanner: scn0
Authentication-Results: aspmx1.migadu.com;
	dkim=none;
	dmarc=none;
	spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org
X-Spam-Score: 0.69
X-TUID: XL7fW+ftweeN


--eJnRUKwClWJh1Khz
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, May 18, 2020 at 07:23:12AM +1000, Begley Brothers Inc wrote:
> On Sun, May 17, 2020 at 11:21 PM Efraim Flashner <efraim@flashner.co.il>
> wrote:
>=20
> > On Sun, May 17, 2020 at 09:41:00PM +1000, Begley Brothers Inc wrote:
> > > Hi,
> > > We are now looking to build Linux kernels using Guix instead of Yocto.
> > We
> > > can't see any reason why the builds wouldn't be linux-libre. Ideally =
we'd
> > > like our effort to be accepted by upstream guix.
> > >
> > > However, being new to Guix we are still coming grips with the best
> > > practice(s) for what we would like to do.
> > > We've looked at Guix's linux.scm, and
> > > Efraim Flashner's post[1] is our primary reference - many thanks Efra=
im.
> >
> > I'd like to embarrassingly mention that I never actually booted any of
> > my custom kernels. My machine was a bit too slow to regularly compile
> > for some guess-and-check.
> >
>=20
> No worries. Something is better than nothing and that was very useful
> outline of possible alternatives.
>=20
> <snip>
>=20
> > 1) We did wonder if channels[2] were the way to go with each kernel x.y=
=2Ez
> > > in its own branch and config files therein. Could anyone point us to
> > > packages that setup and use package specific channels?
> > > 2) Should we be aiming to provide a single package with multiple
> > parameters
> > > or is it better to provide a package for each kernel x.y.z, or some o=
ther
> > > partitioning. We'd likely want to script the package definition then -
> > > correct?
> >
> > I would probably start with one package each and then see how they could
> > be made to inherit from one another or grouped together. The way the
> > current make-linux-libre procedures work has grown quite a bit but they
> > should still mostly work as a starting point to add/remove bits for
> > customizing for your needs.
> >
> > I don't think I'd go with different branches. If you keep everything in
> > one branch then it's easier to deduplicate work between the different
> > variants.
> >
>=20
> That was our thought too.
> We're just wondering how best to get that branch content down to the users
> machine without them having to do anything.
>=20
> Thanks again.
>=20

One option would be to include a channels file in the repo that's setup
so that you can add to the README "this is where our customizations
live. In order to build an image, run 'git pull; guix pull
--channels=3Dour-channel-file.scm --profile
~/.config/begley/current; ~/.config/begley/current/bin/guix
system build image.scm'". Then you can distribute the channels file you
need to crate the image together with the code. I would assume they'd be
willing to download the git repo with the code as part of building the
image.

> > Appreciate any comments suggestions or tips.
> > >
> > > [1]:
> > >
> > https://guix.gnu.org/blog/2019/creating-and-using-a-custom-linux-kernel=
-on-guix-system/
> > > [2]: https://guix.gnu.org/manual/en/guix.html#Channels
> > >
> > > --
> > > Kind Regards
> > >
> > > Begley Brothers Inc.
> > >
> > >

--=20
Efraim Flashner   <efraim@flashner.co.il>   =D7=90=D7=A4=D7=A8=D7=99=D7=9D =
=D7=A4=D7=9C=D7=A9=D7=A0=D7=A8
GPG key =3D A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

--eJnRUKwClWJh1Khz
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl7CLKMACgkQQarn3Mo9
g1GjFg/+MuiJQ5XwsS5/LOrew+3ByMUhxg8oOZu8LgcyyikUeBJUoereCkC3N6+A
WyWB80FuoVYailHjBiwGzweB48UWDeINxJFAZ17ICclMCxy5HVBgKvaU319YTEzG
6cY+H38NzdO9Cb72NqGhsNtJTVSTf7QRxC9ww/+Bwuboh6PQzqe27Q4Hluy4oAPI
sfIag4zDWI7QYNUcOhGfG8lK0Oh5+v7cvehtyxI/TIjPThS8m9gl/Wi8dtW5MirL
AqBSiBtUr3iiv6Mb+cT4/cDAHaPJF0G+yQ6kA857KiXEO2R8mNOk+UNeZgXepIHM
N6NxO2szpIM24Eb5azNg/0uXjrvtVSWkio5EJ4oJ2n5Fwn2B84o76wwX36Nbt9wM
Ouk/ipWYq2ZmdbbHZiYe4iCRlZLVO9b3CI+rg8q2mfh2D7/UoxVU7LpN2kTrjsvn
e4ZIrwcFxY6480jDLpw0CqkmZRCEvnHqePSrbKJDnFTaIg4MKb5iqAsilMucddUt
wal1zMF3kHBF4MvbErdlvWlw1HqeI0ITHx1kERcHEqZA58PvQ9jwCFW0ol/xSzC3
wJY84d/1uRlfrq3IsQpwAyh7ji8S8O+QKmysxvsByY13vcf1wVSfKaPOKCPVkk+n
Dwz+fA1LhjkVW82EOl5lkGvq5xsL2IHiQxe2HKZsvxGoKVIKFvY=
=9f6Q
-----END PGP SIGNATURE-----

--eJnRUKwClWJh1Khz--