From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: Re: grub-install: error: failed to get canonical path of '/boot/efi' Date: Fri, 11 Oct 2019 10:28:37 +0200 Message-ID: <87zhi7sn2i.fsf@gnu.org> References: <87y2xxqz64.fsf@doubleloop.net> 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]:43541) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iIqHy-0000eT-TH for help-guix@gnu.org; Fri, 11 Oct 2019 04:28:43 -0400 In-Reply-To: <87y2xxqz64.fsf@doubleloop.net> (Neil Mather's message of "Sun, 06 Oct 2019 22:36:49 +0000") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Neil Mather Cc: help-guix@gnu.org Hi Neil, Neil Mather skribis: > I get the following errors right at the end of the installation process: > > error: '/gnu/store/dzr35fc1wvgkgz2d4qp3xzhn6wg313c-grub-efi-2.02/sbin/gru= b-install --boot-directory=3D/mnt/boot --bootloader-id=3DGuix --efi-directo= ry=3D/boot/efi' exited with status 1; output follows: > > Installing for x86_64-efi platform. > /gnu/store/dzr35fc1wvgkgz2d4qp3xzhn6wg313c-grub-efi-2.02/sbin/grub-instal= l: error: failed to get canonical path of '/boot/efi'. > > guix system: error: failed to install bootloader /gnu/store/kcimndl2hncnn= g4vhyylipabdxk7f0r9-bootloader-installer > > This is using the guided graphical installer, with the option to use the = full disk. I didn't change anything from the installer's suggested partiti= on layout. > > The machine does support EFI. > > Out of interest, I tried installing via legacy BIOS, and that worked OK. The relevant code in GRUB is: --8<---------------cut here---------------start------------->8--- char * t =3D grub_util_path_concat (2, bootdir, GRUB_DIR_NAME); grub_install_mkdir_p (t); grubdir =3D grub_canonicalize_file_name (t); if (!grubdir) grub_util_error (_("failed to get canonical path of `%s'"), t); free (t); --8<---------------cut here---------------end--------------->8--- I believe the only way this can fail is if =E2=80=98grub-install=E2=80=99 f= ails to create /boot/efi on the target device for some reason. Could it be that the target device was (re)mounted read-only or was full? Did /var/log/messages in the installer show any hints? Thanks for reporting the issue, Ludo=E2=80=99.