From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 4DmzDxGvlV8/aQAA0tVLHw (envelope-from ) for ; Sun, 25 Oct 2020 17:00:01 +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 Qbp/CxGvlV8tBAAAB5/wlQ (envelope-from ) for ; Sun, 25 Oct 2020 17:00:01 +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 ACDB29401BC for ; Sun, 25 Oct 2020 17:00:00 +0000 (UTC) Received: from localhost ([::1]:40704 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kWjN9-00050T-51 for larch@yhetil.org; Sun, 25 Oct 2020 12:59:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34806) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kWjME-00050A-O5 for guix-patches@gnu.org; Sun, 25 Oct 2020 12:59:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:54217) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kWjME-0005ew-Ew for guix-patches@gnu.org; Sun, 25 Oct 2020 12:59:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kWjME-0007BH-Eq for guix-patches@gnu.org; Sun, 25 Oct 2020 12:59:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#41066] [PATCH] gnu: bootloader: Support for chain loading. Resent-From: Stefan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 25 Oct 2020 16:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41066 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Danny Milosavljevic , Ludovic =?UTF-8?Q?Court=C3=A8s?= , 41066@debbugs.gnu.org Received: via spool by 41066-submit@debbugs.gnu.org id=B41066.160364510227553 (code B ref 41066); Sun, 25 Oct 2020 16:59:02 +0000 Received: (at 41066) by debbugs.gnu.org; 25 Oct 2020 16:58:22 +0000 Received: from localhost ([127.0.0.1]:37530 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWjLa-0007AL-GP for submit@debbugs.gnu.org; Sun, 25 Oct 2020 12:58:22 -0400 Received: from mx009.vodafonemail.xion.oxcs.net ([153.92.174.39]:25507) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWjLY-0007A9-W0 for 41066@debbugs.gnu.org; Sun, 25 Oct 2020 12:58:21 -0400 Received: from vsmx002.vodafonemail.xion.oxcs.net (unknown [192.168.75.192]) by mta-6-out.mta.xion.oxcs.net (Postfix) with ESMTP id CD8A0602BDA; Sun, 25 Oct 2020 16:58:14 +0000 (UTC) Received: from macbook-pro.kuh-wiese.my-router.de (unknown [2.202.77.30]) by mta-6-out.mta.xion.oxcs.net (Postfix) with ESMTPA id 16D0B6040A8; Sun, 25 Oct 2020 16:58:07 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) From: Stefan In-Reply-To: <20201025023345.73d515d2@scratchpost.org> Date: Sun, 25 Oct 2020 17:58:07 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <4FACB9F5-2A1E-45B5-A53F-42F0E098CEAA@vodafonemail.de> References: <7A4ABEA8-4500-4D55-BCCE-BFB37FB06B2C@vodafonemail.de> <20200524131316.4c6e8a50@scratchpost.org> <3197004D-0131-4781-99FD-60EBE434E794@vodafonemail.de> <023CBBED-35CD-4AD3-97C4-0DE0B7623B9A@vodafonemail.de> <6E5ECFBA-57F4-485F-9403-1D04CF82062D@vodafonemail.de> <4D71A75A-5722-457C-A5CE-98CE51A53450@vodafonemail.de> <975EC414-6A81-444B-9BB0-AE303C6A9511@vodafonemail.de> <20201022194630.597302a2@scratchpost.org> <87eelpp0pn.fsf@gnu.org> <20201024033051.00720ac1@scratchpost.org> <87a6wbiofb.fsf@gnu.org> <20201025023345.73d515d2@scratchpost.org> X-Mailer: Apple Mail (2.3124) X-VADE-STATUS: LEGIT X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -3.3 (---) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: -0.51 X-TUID: BSHUUiEGqVF9 Hi Danny and Ludo! I tried to consider your comments and modified the code as far as I = could grasp the suggestions. Thanks! Now the API looks like this: (bootloader-chain (list (file-append firmware "/boot/") (file-append u-boot-my-scb "/libexec/u-boot.bin") (plain-file "config.txt" "kernel=3Du-boot.bin")) grub-efi-netboot-bootloader #:hook my-special-bootloader-profile-manipulator #:installer (install-grub-efi-netboot "efi/boot")) The suggestion to use file-append simplified a lot, also for the = implementation of the bootloader-collection profile hook. I also added = an optional hook function to do customised manipulations of the profile = before invoking the installer. Regarding this kind of chain-loading: The ARM world seems to consolidate = onto an UEFI firmware, supporting either device-trees or ACPI. There are = two main options for an UEFI firmware to chose from: TianoCore/EDK II = and U-Boot. Some platforms come with an EEPROM or NAND storage to install e.g. = U-Boot with embedded device-tree information as an UEFI firmware. =46rom = a distribution=E2=80=99s point of view this can make using GRUB-EFI the = default choice. And it becomes arguable if the distribution is = responsible to install/update this firmware, if you compare to a BIOS. Other platforms just boot from some FAT partition requiring some blobs = and don=E2=80=99t offer an UEFI firmware. But copying e.g. U-Boot and = some more files onto this FAT partition makes them appear like a system = with an UEFI firmware, giving a kind of compatibility to the future. Bye Stefan