Subject: Troubles and solutions during install GuixSD
From: Axel Koolhaas <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Mon, 19 Mar 2018 22:41:43 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

I've recently installed GuixSD on my old laptop, but there were some problems where a Gentoo user even couldn't get past without IRC help.

First i ran into old package problems, maybe mention on "https://www.gnu.org/software/guix/manual/html_node/Proceeding-with-the-Installation.html#Proceeding-with-the-Installation"<https://www.gnu.org/software/guix/manual/html_node/Proceeding-with-the-Installation.html#Proceeding-with-the-Installation> that one has to run "guix pull " to avoid these kind of errors:

warning: collision encountered: /gnu/store/hi7gadjf2gc3ma5bzabpkzjzcd89zz87-util-linux-2.30.1/share/man/man8/nologin.8.gz /gnu/store/a8arlhcrf70113zw7b3qrwqbqfq2hgj6-shadow-4.5/share/man/man8/nologin.8.gz
warning: arbitrarily choosing /gnu/store/hi7gadjf2gc3ma5bzabpkzjzcd89zz87-util-linux-2.30.1/share/man/man8/nologin.8.gz
Backtrace:
           5 (primitive-load "/gnu/store/nai4dbb66sv8b1c7s8dh10kf13h…")
In ./guix/build/profiles.scm:
    137:2  4 (build-profile "/gnu/store/xwjp5021qhc5y75spvj2wgvhb9y…" …)
In unknown file:
           3 (hash-for-each #<procedure 76ed40 at ./guix/build/unio…> …)
           2 (hash-for-each #<procedure addf40 at ./guix/build/unio…> …)
           1 (hash-for-each #<procedure b68a80 at ./guix/build/unio…> …)
           0 (scm-error misc-error #f "~A ~S" ("union-build: col…" …) …)

ERROR: In procedure scm-error:
ERROR: union-build: collision between file and directories ((files ("/gnu/store/2m4kj0py6dcsm33r4h0wgmm7cqc9fhqi-nano-2.9.1/share/locale/es")) (dirs ("/gnu/store/hi7gadjf2gc3ma5bzabpkzjzcd89zz87-util-linux-2.30.1/share/locale/es" "/gnu/store/a8arlhcrf70113zw7b3qrwqbqfq2hgj6-shadow-4.5/share/locale/es" "/gnu/store/w3h1kpg13s8d12rddqkjv29xzidxwxyj-man-db-2.7.6.1/share/locale/es" "/gnu/store/w7mj8n7lzmwihs58hipfwcih82j31n60-info-reader-6.3/share/locale/es" "/gnu/store/9gww54njmvi0isyhlxabbzz80bx751zs-sudo-1.8.21p2/share/locale/es" "/gnu/store/pwl7clzd9z87vrgbk5lqp49glddn432v-e2fsprogs-1.43.6/share/locale/es" "/gnu/store/6b6mps3s9nmavlixkkifmp93fkzv13wd-kbd-2.0.4/share/locale/es" "/gnu/store/ars9lm9jk9hgdifg0gqvf1jrvz5mdg1j-bash-4.4.12/share/locale/es" "/gnu/store/jq01kjk404gwyjz0xnr098zh20b5i0n3-coreutils-8.27/share/locale/es" "/gnu/store/44hxccx5q9dwai01d3ngvjs23ng4ynz3-findutils-4.6.0/share/locale/es" "/gnu/store/ccsanpky6z3f4w5gd75x3i0xgv9yalw7-grep-3.0/share/locale/es" "/gnu/store/s5n8rml09apz4ld8g9j3k9fjh8mkpb83-sed-4.4/share/locale/es" "/gnu/store/nlk8wizl96yf9xrzgis41vqwdfzyhj8s-diffutils-3.6/share/locale/es" "/gnu/store/50kx5jp0ccr2vk0q5q6ini1r1ajyqxqk-gawk-4.1.4/share/locale/es" "/gnu/store/30zazbgh0lx2pav0ikx5hglgay28264j-tar-1.29/share/locale/es")))
builder for `/gnu/store/1sm0amip5hdqk2wmjcwh207y022wgc7s-profile.drv' failed with exit code 1
cannot build derivation `/gnu/store/zd61d3qda8ij0pkxc5kiyf7rxk0xyp26-system.drv': 1 dependencies couldn't be built
guix system: error: build failed: build of `/gnu/store/zd61d3qda8ij0pkxc5kiyf7rxk0xyp26-system.drv' failed

Secondly, in the manual now, it appears as if to mount the EFI System Partition /mnt/boot/efi, whilst one needs to mount ESP at /boot/efi, resulting in this kind of error:

/gnu/store/nwg3rkmb2is1j6zfin0v58lgw2b57kwh-system
/gnu/store/r8qpnbydygbwdfsjcla4ms5rjikbmkjv-grub.cfg
/gnu/store/nkn9f21jjzcj0a3mr4sqc0qj549g8vfl-grub-efi-2.02
/gnu/store/gjb81f7h063l83rlfb9ih1vrsg9k0z4l-bootloader-installer

initializing operating system under '/mnt'...
copying to '/mnt'...
populating '/mnt'...
Installing for x86_64-efi platform.
/gnu/store/nkn9f21jjzcj0a3mr4sqc0qj549g8vfl-grub-efi-2.02/sbin/grub-install: error: failed to get canonical path of `/boot/efi'.
guix system: error: failed to install bootloader /gnu/store/gjb81f7h063l83rlfb9ih1vrsg9k0z4l-bootloader-installer

Thirdly, whilst this isn't a bug but more noob user-friendliness, maybe add a link or an example of a working EFI config to manual?
I now had to search before finding e.g.

(file-systems (cons* (file-system
                         (device "my-root")
                         (title 'label)
                         (mount-point "/")
                         (type "ext4"))
                       (file-system
                         (device (uuid "1234-ABCD" 'fat))
                         (title 'uuid)
                         (mount-point "/boot/efi")
                         (type "vfat"))
                       %base-file-systems))

Also, whilst I know this but not all other people, one needs to mount ESP's with "mount -t vfat /dev/sda* /boot/efi", maybe also mention this in the guide?

Kind regards,
Shoaloak