Subject: Re: Installation of a new guix system -- summaries of the issues

From: [email-masked]
Date: Fri, 12 Jul 2019 14:40:10 +0200 (CEST)

Hello 

(Julien, Sorry I cannot answer to your email as my provider rejected it for no reason; I read you through the web archives) 

I checked: fsck does not report any error. It is posssible that I have tried to install several packages in parallel 
(I do this all the time with apt, but it uses a lock and issues a warning). 

I checked and actually my manifest in .guix-profile is empty. The other, in .config/guix/current, is as follows: 

(manifest 
(version 3) 
(packages 
(("guix" 
"f67f93b" 
"out" 
"/gnu/store/vz4ri5akjjydgq0x443qcchzhcrxi7cq-guix-f67f93b6d" 
(propagated-inputs ()) 
(search-paths ()) 
(properties 
(source 
(repository 
(version 0) 
(url "https://git.savannah.gnu.org/git/guix.git") 
(branch "master") 
(commit 
"f67f93b6d60c898c3125068b468c2a339678916a"))))) 
("nonguix" 
"5ca352e" 
"out" 
"/gnu/store/5fwmnl472wm7wynby4b42ympqrc9v2dh-nonguix" 
(propagated-inputs ()) 
(search-paths ()) 
(properties 
(source 
(repository 
(version 0) 
(url "https://gitlab.com/nonguix/nonguix") 
(branch "master") 
(commit 
"5ca352ead269e9037c0314140c2fe7854b3fbe2d")))))))) 

Thanks, 
Matthieu 

De: "racin" <[email-masked]> 
À: "bug-guix" <[email-masked]>, "help-guix" <[email-masked]> 
Envoyé: Vendredi 12 Juillet 2019 11:04:00 
Objet: Re: Installation of a new guix system -- summaries of the issues 

(Cross-posting to help-guix as it may be more appropriate) 

I now have two additional issues: 

13. My profile disappeared once again and guix package does not work anymore (it says "guix package: error: unsupported manifest format"). I realize that my .guix-profile/etc/profile file has been emptied. 
Maybe I had a problem during an upgrade, but aren't guix upgrades supposed to be atomic? 

14. Also, my X server hangs unless I force the BIOS to use the "discrete card", which uses more power. My laptop uses an hyprid intel/nvidia configuration, is this supported by guix? 

Thanks, 
Matthieu 

De: "racin" <[email-masked]> 
À: "bug-guix" <[email-masked]> 
Envoyé: Vendredi 12 Juillet 2019 00:32:37 
Objet: Installation of a new guix system -- summaries of the issues 

Hi Guix! 

I have just installed (successfully?) my first guix system! 

As a newcomer (I know system administration quite well, but never used 
guix before) I thought that I could share my experience (i.e. issues I 
had ;)) installing Guix. Probably some of the issues are obvious once 
you know Guix well, but they aren't when, like me, you don't. I hope 
using this list for this post is not inappropriate. 

I did not find any solution for some of the issues yet, so I would 
also welcome help on those! 

So, here is the list of issues I had. 

1. An easy one: on a new computer, you now have to desactive this 
secure boot thingy, else the live CD won't boot. As I understand it 
the guix live CD is not "signed", which was the reason why it did not 
boot (while other live CDs did). This may sound obvious, except for 
people whose previous computer was still using the BIOS; so maybe it 
would be worth writing this in the installation instructions? 

2. I had a lot of trouble understanding how profile worked; 
consequently I think I installed a lot of versions of different 
packages, which took ages. 

After a while, I understood that 

- guix pull creates a new profile, but is not used by default: why? 
Similarly, guix kept telling me that I should do 

# GUIX_PROFILE="/home/matthieu/.guix-profile" 
# . "$GUIX_PROFILE/etc/profile" 

So my question is: shouldn't the default .bashrc uses the newest 
guix command from guix pull, and contain these lines above? 

- sudo guix system reconfigure /etc/config.scm is very different from 
sudo su; guix system reconfigure /etc/config.scm. 

This is written explicitly in the documentation, so that was clear, 
but I fell into the trap. 

- guix system reconfigure /etc/config.scm (without sudo) fails at a 
very late stage. Maybe this command should issue a warning when not 
run with root rights? 

3. At one time it seems that my entire user profile disappeared (maybe 
I shut down my laptop at a wrong time). I had to reinstall every 
package I had installed with guix package -i. 

4. I followed the initial exemple configuration of "A graphical system 
with a choice of lightweight window managers", but it did not contain 
any terminal emulator. 

5. I installed Icecat but I am missing some fonts: some websites do 
not display properly (e.g. numbers do not show up), even if I untick 
"do not load custom fonts" (unticking this improves things a bit). So 
I believe some more font package should be installed with icecat. 

6. I had issues with gdm and lightdm, so I installed the xinit package 
to start X sessions manually. But it seems that startx/xinit looks for 
a X server in the same path than the xinit binary, which won't work on 
guix. 

7. nm-applet fails with this warning Failed to add/activate connection: (1) Not authorized to control networking. 
I have to do sudo nm-applet to have it working (but it works well, wifi and wired) 

8. Is there an equivalent to apt-file, e.g. a way to know in which 
packages a file would be located? This would be very useful, for 
instance I had trouble finding where the latex executable is 
located, or ghc complaining about finding linux/errno.h when I 
wanted to install xmonad. The problem is even more important for 
guix, as in other systems the dependencies eventually show up in 
your profile (e.g. installing texlive-latex-beamer would install 
the latex binary), whereas in guix you have to explicitely install 
the right package in Guix. 

9. nm-applet cannot find the right icon sets, so it uses a "forbidden 
sign" icon everywhere (which is a bit scary). The error I get is 

failed to load icon "nm-stage03-connecting11": Icon 
'nm-stage03-connecting11' not present in theme Adwaita 

so I guess some icon are missing; I tried to install 
gnome-icon-theme with no luck. 

10. My latest problem happened when I tried to install slim (but the 
problem remains when I switch back to gdm or tried to use a previous 
system configuration, which surprised me). Now when I boot, I have a 
"gdm" user that was created and which attemps to log 505 times, which 
freezes my computer for 2 minutes (I I try to use it at the same 
times, it hangs). My work-around is to switch to the console and wait 
that all these unsuccessful connection stops, but this is not 
ideal... 

11. Before I found this work-around I tried to fix the problem by 
booting + chrooting from another OS, a solution I have often used to 
fix my OS but could not do on guix... Which scares me a bit because I 
fill that I have no easy way to fix my OS if it was broken. Is there 
an easy way to do that in guix? 

12. I also remember that the installer said something like "I will 
erase the whole disk and you would loose all your data", while I used 
the manual partitionning scheme and asked to format only one 
partition, and this was a bit scary. 

Wow, that was a long list. Obviously I did not write about everything 
that went well during the installation, so thanks for your hard work! 
By posting this, I just hope that it will help new users to have less 
problems to solve in the future! 

Thanks, 
Matthieu 

PS: here is my config.scm file 

;; This is an operating system configuration generated 
;; by the graphical installer. 

(use-modules (gnu)) 
(use-service-modules desktop networking ssh xorg) 
(use-modules (nongnu packages linux)) 
(use-modules (srfi srfi-1)) ; for remove 

(operating-system 
(locale "en_US.utf8") 
(timezone "Europe/Paris") 
(keyboard-layout 
(keyboard-layout "us" "altgr-intl")) 
(kernel linux) 
(firmware (cons* iwlwifi-firmware %base-firmware)) 
(bootloader 
(bootloader-configuration 
(bootloader grub-efi-bootloader) 
(target "/boot/efi") 
(keyboard-layout keyboard-layout))) 
(file-systems 
(cons* (file-system 
(mount-point "/") 
(device 
(uuid "7dd68b9b-26ba-47f7-aa82-3469060d2936" 
'ext4)) 
(type "ext4")) 
(file-system 
(mount-point "/boot/efi") 
(device (uuid "90D1-BAAF" 'fat32)) 
(type "vfat")) 
%base-file-systems)) 
(host-name "x1") 
(users (cons* (user-account 
(name "matthieu") 
(comment "Matthieu") 
(group "users") 
(home-directory "/home/matthieu") 
(supplementary-groups 
'("wheel" "netdev" "audio" "video"))) 
%base-user-accounts)) 
(packages 
(append 
(list (specification->package "xmonad") 
(specification->package "awesome") 
(specification->package "dmenu") 
(specification->package "tlsdate") ; for initial time adjustment 
(specification->package "nss-certs")) 
%base-packages)) 
(services 
(append 
(list (service openssh-service-type) 

(set-xorg-configuration 
(xorg-configuration 
(keyboard-layout keyboard-layout))) 

(service slim-service-type (slim-configuration 
(display ":0") 
(vt "vt6"))) 

) 

(remove (lambda (service) 
(eq? (service-kind service) gdm-service-type)) 

%desktop-services 

))))