From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48721) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dLnBi-0000QZ-Bm for guix-patches@gnu.org; Fri, 16 Jun 2017 05:05:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dLnBe-0002zj-8L for guix-patches@gnu.org; Fri, 16 Jun 2017 05:05:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47550) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dLnBe-0002zM-4m for guix-patches@gnu.org; Fri, 16 Jun 2017 05:05:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dLnBd-0005ph-NS for guix-patches@gnu.org; Fri, 16 Jun 2017 05:05:01 -0400 Subject: [bug#27327] [PATCH] bootloader: Add u-boot. Resent-Message-ID: Date: Fri, 16 Jun 2017 11:04:34 +0200 From: Danny Milosavljevic Message-ID: <20170616110434.7640597f@scratchpost.org> In-Reply-To: <87zid8gwag.fsf@gnu.org> References: <20170611105838.24708-1-dannym@scratchpost.org> <87zid8gwag.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 27327@debbugs.gnu.org Hi Ludo, On Fri, 16 Jun 2017 10:40:39 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > > + (package #f) > > + (installer #f))) =20 >=20 > I still find it weird to use #f for these two fields. >=20 > I would find it more reasonable to have, say, a =E2=80=98make-u-boot-boot= loader=E2=80=99 > that returns a with all the fields appropriately set (not > #f). Otherwise it sounds like we=E2=80=99re going to have to deal with s= upport > requests #about =E2=80=9Cwrong type to apply: #f=E2=80=9D, and I=E2=80=99= d like to avoid that. > :-) Yeah, but I think Mathieu added explicit support for leaving those #f. > Can=E2=80=99t we just say that =E2=80=98package=E2=80=99 is always a =20 Difficult. U-Boot is more like a BIOS is on PCs. That means in normal ope= ration you'd not flash it. If there was a mistake in the flashed U-Boot of= ten you can't fix it again without electronics knowledge and gear (if at al= l - serial pads must be available on the board). There's no extra BIOS. U= -Boot does it all: RAM initialization, keyboard initialization, display in= itialization etcetc. Sometimes flashing is only possible via serial cable (or worse) from an ext= ernal machine. Also, there are lots of forks of U-Boot. Since U-Boot is licensed under GP= L the package should be available somewhere - but not necessarily in the U-= Boot master branch (and often it's in fact not available there). In short, we should add U-Boot packages gradually, and only after testing e= ach U-Boot package on the hardware. That means in the beginning we'd have a LOT of (package #f) - but that's st= ill preferrable to bricking. >and that > =E2=80=98installer=E2=80=99 is always a procedure? Yeah, the installation procedure could probably check (if package (invoke "= ...")). =20 I've submitted this minimal patch mostly to make clear how U-Boot would ext= end extlinux. I think it's good to have it in place as a guard against too= -much-syslinux-bias :) That said, it should actually make GuixSD boot on a machine with U-Boot alr= eady installed.