From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id oHL2Mpu8LGHBTgEAgWs5BA (envelope-from ) for ; Mon, 30 Aug 2021 13:10:19 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id aFC0Lpu8LGGGUQAA1q6Kng (envelope-from ) for ; Mon, 30 Aug 2021 11:10:19 +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 6BAF04BD9 for ; Mon, 30 Aug 2021 13:10:19 +0200 (CEST) Received: from localhost ([::1]:51130 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mKfBC-0005GE-J8 for larch@yhetil.org; Mon, 30 Aug 2021 07:10:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38470) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mKfAv-0005Fr-D3 for guix-devel@gnu.org; Mon, 30 Aug 2021 07:10:01 -0400 Received: from flashner.co.il ([178.62.234.194]:40750) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mKfAt-0001pJ-OD; Mon, 30 Aug 2021 07:10:01 -0400 Received: from localhost (unknown [141.226.169.107]) by flashner.co.il (Postfix) with ESMTPSA id 7B0CA40336; Mon, 30 Aug 2021 11:09:57 +0000 (UTC) Date: Mon, 30 Aug 2021 14:07:57 +0300 From: Efraim Flashner To: Vagrant Cascadian Subject: Re: Distributing Guix System Pinebook Pro images Message-ID: Mail-Followup-To: Vagrant Cascadian , Mathieu Othacehe , guix-devel References: <87o89gvcps.fsf@gnu.org> <87v93oror7.fsf@yucca> <87sfysrnkt.fsf@yucca> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="F7LvOE4ndNip2/wR" Content-Disposition: inline In-Reply-To: <87sfysrnkt.fsf@yucca> 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-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 autolearn=ham autolearn_force=no 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." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel , Mathieu Othacehe Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1630321819; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=OoDw1qkqKTAkfBnqYbK4RGx3GxGkL0AOfjB+NRbWpMM=; b=fiYPmMlLip9/jisJavX9IKSJwv0JNvoYt4BswZz67msiT35WeqWd7l0X8Ui6tmH0zwAC78 x5y3cqHq+m2lIpCFxPYIuX010ed5i0Tk8fDuprh4JbbQJeq11n8D4+/q86uPRh0gE65/W2 mfojIaVX850c/Ze+5SRp7gUFSeQu34vZYwV8wqu79qxBmyJ4xBURLmD7H/eKJOAu6bvmh/ bA0xcO62A+dFmLw/BJqL/2xJqRsrTLdhDUGqZoYXMdwJABoP5xS/LqS4haIXto3YIN1uDW JcpHar5DgQ0oyxrejPQx1y/55pYR8Xonjw1B09hHMCkZivJ+2ISEv3igAZrLvQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1630321819; a=rsa-sha256; cv=none; b=Vww8MOXTh/YQpieNyMeORT1E7UXFBznwTWEU6AMadO5w0HgO3w0q+eG7HEraEyMd6vmnuN mrMULSPzlqi5S/3/TCQxkkS/tyQtrSlzbVpnpaoDqBe5/slQ0pQeOwIQ0lRdNZ1SIWI2i0 Sc9ZawRi/fDmhAtN/qobQpIyOlLV7QrxQ9Ox7T2GhJK+NGi5p6l8zZF86xLoKOZmfIWb1f dyrENNvuAcdmZZxrK+g3pAFB4ek2TeCerY1v90zzpb1KdLci2E+55EQTD50vBY1NPvwgvY rKJHSydTWVcYf2107xM+IdrbBMklVWwuk6tcn2n269nLspj+TRs+DGrDhCm7pw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=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-Migadu-Spam-Score: -2.52 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-Migadu-Queue-Id: 6BAF04BD9 X-Spam-Score: -2.52 X-Migadu-Scanner: scn0.migadu.com X-TUID: POwsMivy2+pJ --F7LvOE4ndNip2/wR Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Aug 29, 2021 at 01:41:06PM -0700, Vagrant Cascadian wrote: > On 2021-08-29, Vagrant Cascadian wrote: > > On 2021-08-29, Mathieu Othacehe wrote: > >> The Guix website now offers Pinebook Pro Guix System images[1]. Those > >> images can be directly copied on a micro-SD card and booted from. More > >> details here[2]. > > > > It seems like I need to write up a hybrid pinebook/pinebook-pro > > bootloader definition, then that image could support *two* whole > > platforms. :) >=20 > Something like this, but that is valid guile and actually works :) I've been looking at this a bit since I'm actually nearing the point of having something to write for the HiFive Unmatched. write-file-on-device can be called multiple times, we've only needed it twice for all the other cases though. > diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm > index 6cad33b741..325618c5c5 100644 > --- a/gnu/bootloader/u-boot.scm > +++ b/gnu/bootloader/u-boot.scm > @@ -127,6 +127,28 @@ > =20 > (define install-pinebook-pro-rk3399-u-boot install-rockpro64-rk3399-u-bo= ot) > =20 > +(define install-pinebook-and-pinebook-pro-u-boot > + ;; Install bootloaders for both pinebook pro and pinebook at compatible > + ;; offsets. > + ;; > + ;; pinebook pro > + #~(lambda (bootloader-pinebook-pro root-index image) > + (let ((idb (string-append bootloader-pinebook-pro "/libexec/idbloa= der.img")) > + (u-boot (string-append bootloader-pinebook-pro "/libexec/u-b= oot.itb"))) > + ;; Use alternate offset of 2112 to avoid conflicts with pinebook > + (write-file-on-device idb (stat:size (stat idb)) > + image (* 2112 512)) > + (write-file-on-device u-boot (stat:size (stat u-boot)) > + image (* 16384 512)))) > + ;; pinebook > + #~(lambda (bootloader-pinebook root-index image) > + (let ((spl (string-append bootloader-pinebook "/libexec/u-boot-sun= xi-with-spl.bin")) > + (u-boot (string-append bootloader-pinebook "/libexec/u-boot-= sunxi-with-spl.fit.itb"))) > + (write-file-on-device spl (stat:size (stat spl)) > + image (* 8 1024)) > + (write-file-on-device u-boot (stat:size (stat u-boot)) > + image (* 40 1024))))) This could probably be (very untested) (define install-pinebook-and-pinebook-pro-u-boot ;; Install bootloaders for both the pinebook and pinebook pro at compatib= le ;; offsets. #~(lambda (bootloader-pinebook-pro root-index image) (let ((spl (string-append bootloader-pinebook "/libexec/u-boot-sunxi-= with-spl.bin")) (u-boot (string-append bootloader-pinebook "/libexec/u-boot-sun= xi-with-spl.fit.itb")) (idb (string-append bootloader-pinebook-pro "/libexec/idbloader= =2Eimg")) (u-boot-pro (string-append bootloader-pinebook-pro "/libexec/u-= boot.itb"))) (write-file-on-device spl (stat:size (stat spl)) image (* 8 1024)) (write-file-on-device u-boot (stat:size (stat u-boot)) image (* 40 1024)) ;; Use alternate offset of 2112 to avoid conflicts with pinebook (write-file-on-device idb (stat:size (stat idb)) image (* 2112 512)) (write-file-on-device u-boot (stat:size (stat u-boot-pro)) image (* 16384 512))))) >=20 > =20 > ;;; > @@ -255,3 +277,9 @@ > (inherit u-boot-bootloader) > (package u-boot-pinebook-pro-rk3399) > (disk-image-installer install-pinebook-pro-rk3399-u-boot))) > + > +(define u-boot-pinebook-and-pinebook-pro-bootloader > + (bootloader > + (inherit u-boot-bootloader) not sure what to do with this one though > + (packages '(u-boot-pinebook-pro-rk3399 u-boot-pinebook)) > + (disk-image-installer install-pinebook-and-pinebook-pro-uboot))) >=20 >=20 > live well, > vagrant --=20 Efraim Flashner =D7=A8=D7=A0=D7=A9=D7=9C=D7=A4 = =D7=9D=D7=99=D7=A8=D7=A4=D7=90 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --F7LvOE4ndNip2/wR Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmEsvA0ACgkQQarn3Mo9 g1HEog//X3u59NzvSMZxCYQ35yoEu4lfZfsxndJAmKWUupHPBk0+QWYW6YMLRVEw B7u7S5oADGRNzlhJ/sp0u5mTwS2aXSp4CGLrr5b59W8Di8qLllqTLNbr4AQ1ODub 0VMyRq3BuI/rpmk0MQxBZhFB5D0BFLpvdx4sDwEIX7JMFsC3oRU2dX1TCedC6YCZ UVlXIKY4tUTq58GwbdvrWj2qhwbxjEXFWlYsYZ5wxzZiJ8XGE5joesGtEt+PSbX/ rh5aUYM7HibAOM7EO14k4/kcQdRwIX6JtdW0ASS2uEQDHLnRabO2mnqeEYXjKiyz Ba6ZHJotdsHW01qB+Yy1iR7b1LlSh5YOZDs/vNvc06rh2rDV1GTw5jW6cW9uJoZG KcHsKUAd9qOHYCFUMuFVgEW625ZS5LNohSFcVQRxrITfjS+42n1SoosH46x/narO bFevsNFkeUn8NqYn3vbgnLtL7wJGuSS4nnHyZ3hXw8LOEy+ssVAHWOIctnGDNwJo jCyTWERh0vU3oRTjIBoJATuT206dtOJLNnAgneSNePOn1XS5XPOOaKmtwr7TRZ5x zdUmS/HuOFfCXqIosdWppdu7uOYGt+kKbvBDHSkydOENvnuT9e/h4YYySsWFXnVW JqbIVqmWNgBvp6N0FLmaMREBr8rNLCVl5xJ8Kfk68T9DcLr+yOg= =tux3 -----END PGP SIGNATURE----- --F7LvOE4ndNip2/wR--