From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.6 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 585DF7534D; Tue, 27 Sep 2022 10:57:17 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 496) id 4A14575338; Tue, 27 Sep 2022 10:57:15 +0000 (UTC) Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [IPv6:2a00:1450:4864:20::131]) by atuin.qyliss.net (Postfix) with ESMTPS id 79F8B75337 for ; Tue, 27 Sep 2022 10:57:11 +0000 (UTC) Received: by mail-lf1-x131.google.com with SMTP id bu25so13219256lfb.3 for ; Tue, 27 Sep 2022 03:57:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=unikie.com; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date; bh=oPOBSZmwkdXrV41Jkd6B1jf5owU4ggEJ3+ihh3kAHXo=; b=VpNSNxjrJmbb5XlWn3/wttaM+q0tECjxIS7CGeIqfOWf54TN22vMkwo7iQLUnHcScl KyjjMDffweXrOfbeScdCWxiB8oFb1E4yusCt5ZGtREkYRsEmp7N2tY5y4rO4eBYGah4l E+xNOgHEL/6eRr/w0efWAQDJz6YKF0aCipM/rWVnCeqZc9hC8RhmZR2TbgZNOkNgF9e9 7JamcufbH5elTAzmU55GpnvHhfWxY7Xef/cPg5gSV3N7S51rfE++sxcZX033rI2hENfi GWO0Ja3QCQKFO4U8LVpRFeQDREZ+5JEX4K5nApy5oljcisdeVGxuInxPDfA4c1JbMM7S aWRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date; bh=oPOBSZmwkdXrV41Jkd6B1jf5owU4ggEJ3+ihh3kAHXo=; b=kqcvF11qOUYI6n0OmVcPm7Q1Z+nMK8R4HVEJehErvOPQ84LUWYbxI6vEhSbY8hSc0E 9xzBSCWCxpINCXHxt7qb9Yf7QtnBvTJiCKr0YwTJQcHWJQyMluLu76O+IG3xtFWNTTrT hzRdo5XH7NoGB4pkZa+P/dqpv74N3OMdoGrk8v8nXk6cf3czvpfPNSh7IxD171CcQMZz EG6nJRZXk7OP79iONgOUhAs37Bd3caQAifvLpx1IZdapXi5goacaLmDyN+toP0IhsEOL ncDsEw8DO4IGt4sxkSGVl7wwS7RmaJ7s2+N62vNXTtQellUjnzwwgp+XsWCtFkAcTq+s x0WQ== X-Gm-Message-State: ACrzQf0Ozm+6oyrOKAriE8eMNHFn5+ugKXo9bCFtjwElXgFoiZlJnJGv FtgEvTcvT4hhrFy6r+eG5hBBsQxUJO4FuK0z X-Google-Smtp-Source: AMsMyM4tH1G/2qbDASz7x+0EafjEkew613c3T0r7YV1wsE5kh3JUtQAtrzZaRQUi9eoM6qSGlBebdw== X-Received: by 2002:a19:9202:0:b0:49d:7310:742f with SMTP id u2-20020a199202000000b0049d7310742fmr11349282lfd.312.1664276230330; Tue, 27 Sep 2022 03:57:10 -0700 (PDT) Received: from localhost.localdomain ([109.204.204.138]) by smtp.gmail.com with ESMTPSA id f9-20020a056512360900b00492e570e036sm130993lfs.54.2022.09.27.03.57.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Sep 2022 03:57:09 -0700 (PDT) From: Ivan Nikolaenko To: devel@spectrum-os.org Subject: [PATCH] EFI Loader: use correct arch suffix Date: Tue, 27 Sep 2022 13:56:49 +0300 Message-Id: <20220927105649.2265480-1-ivan.nikolaenko@unikie.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: KLPZI7LSABO526XOJ6KZL2SCUEKAPG42 X-Message-ID-Hash: KLPZI7LSABO526XOJ6KZL2SCUEKAPG42 X-MailFrom: ivan.nikolaenko@unikie.com X-Mailman-Rule-Hits: header-match-devel.spectrum-os.org-0 X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1 CC: Ivan Nikolaenko X-Mailman-Version: 3.3.5 Precedence: list List-Id: Patches and low-level development discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Previously there were hardcoded "x64" in EFI loaders' filenames. Signed-off-by: Ivan Nikolaenko --- img/combined/default.nix | 5 +++-- img/live/Makefile | 2 +- img/live/default.nix | 5 +++-- nix/eval-config.nix | 11 ++++++++++- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/img/combined/default.nix b/img/combined/default.nix index 3989d55..2086973 100644 --- a/img/combined/default.nix +++ b/img/combined/default.nix @@ -7,6 +7,7 @@ let inherit (builtins) storeDir; inherit (pkgs.lib) removePrefix; + inherit (config) archSuffix; eosimages = import ./eosimages.nix { inherit config; }; @@ -74,8 +75,8 @@ let done mcopy -i $out ${grub}/share/grub/unicode.pf2 ::/grub/fonts - grub-mkimage -o grubx64.efi -p "(hd0,gpt1)/grub" -O ${grub.grubTarget} part_gpt fat - mcopy -i $out grubx64.efi ::/EFI/BOOT/BOOTX64.EFI + grub-mkimage -o grub${archSuffix}.efi -p "(hd0,gpt1)/grub" -O ${grub.grubTarget} part_gpt fat + mcopy -i $out grub${archSuffix}.efi ::/EFI/BOOT/BOOT${lib.toUpper archSuffix}.EFI fsck.vfat -n $out ''; diff --git a/img/live/Makefile b/img/live/Makefile index 9815c88..e63c598 100644 --- a/img/live/Makefile +++ b/img/live/Makefile @@ -36,7 +36,7 @@ build/boot.fat: $(KERNEL) $(INITRAMFS) $(SYSTEMD_BOOT_EFI) build/spectrum.conf $(MCOPY) -i $@ build/spectrum.conf ::/loader/entries $(MCOPY) -i $@ $(KERNEL) ::/spectrum/linux $(MCOPY) -i $@ $(INITRAMFS) ::/spectrum/initrd - $(MCOPY) -i $@ $(SYSTEMD_BOOT_EFI) ::/EFI/BOOT/BOOTX64.EFI + $(MCOPY) -i $@ $(SYSTEMD_BOOT_EFI) ::/EFI/BOOT/$(EFINAME) # veritysetup format produces two files, but Make only (portably) # supports one output per rule, so we combine the two outputs then diff --git a/img/live/default.nix b/img/live/default.nix index 65ad058..7be55ac 100644 --- a/img/live/default.nix +++ b/img/live/default.nix @@ -4,7 +4,7 @@ { config ? import ../../nix/eval-config.nix {} }: let - inherit (config) pkgs; + inherit (config) pkgs archSuffix; inherit (pkgs.lib) cleanSource cleanSourceWith hasSuffix; extfs = pkgs.pkgsStatic.callPackage ../../host/initramfs/extfs.nix { @@ -33,7 +33,8 @@ stdenvNoCC.mkDerivation { INITRAMFS = initramfs; KERNEL = "${rootfs.kernel}/${stdenv.hostPlatform.linux-kernel.target}"; ROOT_FS = rootfs; - SYSTEMD_BOOT_EFI = "${systemd}/lib/systemd/boot/efi/systemd-bootx64.efi"; + SYSTEMD_BOOT_EFI = "${systemd}/lib/systemd/boot/efi/systemd-boot${archSuffix}.efi"; + EFINAME = "BOOT${lib.toUpper archSuffix}.EFI"; buildFlags = [ "build/live.img" ]; makeFlags = [ "SCRIPTS=${scripts}" ]; diff --git a/nix/eval-config.nix b/nix/eval-config.nix index 467f877..4234321 100644 --- a/nix/eval-config.nix +++ b/nix/eval-config.nix @@ -8,6 +8,15 @@ else {} }: -({ pkgs ? import {} }: { +({ pkgs ? import {} }: with pkgs; { inherit pkgs; + + archSuffix = + if pkgs.stdenv.isx86_64 then + "x64" + else if pkgs.stdenv.isAarch64 then + "aa64" + else + throw "Unsupported architecture"; + }) config -- 2.25.1