From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arne Babenhauserheide Subject: bug#40496: cannot install bootloader Date: Wed, 08 Apr 2020 08:48:41 +0200 Message-ID: <87sghe8oc6.fsf@web.de> References: <87sghf2gek.fsf@web.de> <87ftdfkp1h.fsf@devup.no> <87k12r2dyu.fsf@web.de> <87a73mly4f.fsf@devup.no> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:34174) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jM4WF-00028d-MW for bug-guix@gnu.org; Wed, 08 Apr 2020 02:49:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jM4WE-0005je-Bj for bug-guix@gnu.org; Wed, 08 Apr 2020 02:49:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:39731) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jM4WE-0005jZ-4L for bug-guix@gnu.org; Wed, 08 Apr 2020 02:49:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jM4WE-0004e1-2E for bug-guix@gnu.org; Wed, 08 Apr 2020 02:49:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-reply-to: <87a73mly4f.fsf@devup.no> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane-mx.org@gnu.org Sender: "bug-Guix" To: Marius Bakke Cc: 40496@debbugs.gnu.org Marius Bakke writes: > Arne Babenhauserheide writes: > >> Marius Bakke writes: >> >>> Arne Babenhauserheide writes: >>>> 1. &message: "'/gnu/store/xlcbi7dc89n4wvyz4jk6j0g4590ymi6q-grub-efi-= 2.04/sbin/grub-install --boot-directory //boot --bootloader-id=3DGuix --efi= -directory //boot/efi' exited with status 1; output follows:\n\n /gnu/stor= e/xlcbi7dc89n4wvyz4jk6j0g4590ymi6q-grub-efi-2.04/sbin/grub-install: error: = /gnu/store/xlcbi7dc89n4wvyz4jk6j0g4590ymi6q-grub-efi-2.04/lib/grub/i386-pc/= modinfo.sh doesn't exist. Please specify --target or --directory.\n" >>> >>> This error suggests that you are attempting to use EFI GRUB on a non-EFI >>> system. >>> >>> More specifically, you are using 'grub-efi-bootloader', but 'grub-efi' >>> failed to detect a UEFI system and attempts to install the 'i386-pc' >>> (BIOS) target instead, which does not exist in 'grub-efi'. >>> >>> Does that ring a bell? >> >> Yes: I=E2=80=99m now booting from the live-USB Stick of Guix, so grub mi= ght not >> detect that this is a UEFI system. > > Disabling "legacy BIOS compatibility" in your firmware configuration > should work around this. Some firmwares tend to try "legacy" boot > before a native UEFI boot on external media. I=E2=80=99ll try that, thank you! > The GRUB EFI detection code just checks whether /sys/firmware/efi > exists, which is only the case when you are already booted in "UEFI > mode". > >> I don=E2=80=99t know why it stopped booting. After a pull + system recon= figure >> on 30th of March, the bios did not see my system disk as bootable >> anymore =E2=80=94 but this could also be due to problems in the disk, so= I=E2=80=99m not >> sure that it=E2=80=99s due to Guix. > > That's terrible. Yes, wednesday and thursday last week were hard days. This is my homeoffice computer and I only got everything I require for work back into fully working state yesterday. Though on the bright side: Friday to tuesday I actually worked more or less productively with Emacs lsp-java plus workarounds. > I hope you are able to recover your system. If the problem is "just" > that the boot entry is missing, Do you mean in grub? > you should be able to create a new one > with "efibootmgr --create" manually. Here is a typical entry with the > EFI System Partition as the first partition of a disk: > > # efibootmgr -v > BootCurrent: 0000 > Timeout: 1 seconds > BootOrder: 0000,0002 > Boot0000* Guix HD(1,GPT,32944052-6012-4cda-b270-fe653d430c84,0x800,0x480= 0)/File(\EFI\Guix\grubx64.efi) When I run efibootmgr -v, I get an error: $ efibootmgr -v EFI variables are not supported on this system. > 1 is the partition number, and the UUID is the same as 'lsblk -o > PARTUUID /dev/sda1' assuming your disk is /dev/sda. I don't remember > what 0x800 and 0x4800 means, but don't think they are required. I get somewhat too little information from that: $ lsblk -O /dev/nvme1n1p1 NAME KNAME PATH MAJ:MIN FSAVAIL FSSIZE FSTYPE FSUSED FSUSE% MOUNTPOINT LABE= L UUID PTUUID PTTYPE PARTTYPE PARTLABEL PARTUUID PARTFLAGS RA RO RM HOTPLU= G MODEL SERIAL SIZE STATE OWNER GROUP MODE ALIGNMENT MIN-IO OPT-IO P= HY-SEC LOG-SEC ROTA SCHED RQ-SIZE TYPE DISC-ALN DISC-GRAN DISC-MAX DISC-ZER= O WSAME WWN RAND PKNAME HCTL TRAN SUBSYSTEMS REV VENDOR ZONED nvme1n1p1 nvme1n1p1 /dev/nvme1n1p1 259:2 15,4G 884,9G 824,5G 93% /home = 128 0 0 = 0 900G root disk brw-rw---- 0 512 0 = 512 512 0 none 1023 part 0 512B 2T = 0 0B 0 nvme block:nvme:pci Best wishes, Arne -- Unpolitisch sein hei=C3=9Ft politisch sein ohne es zu merken