Subject: Re: bug#39089: Guix System: Very long, scary boot time

From: Danny Milosavljevic <[email-masked]>
Date: Sat, 11 Jan 2020 16:05:31 +0100

Hi sirgazil,

On Sat, 11 Jan 2020 09:36:31 -0500
sirgazil via Bug reports for GNU Guix <[email-masked]> wrote:

> Everytime I boot, it takes about 2 minutes to get to the log in screen. This is a lot compared to the time it takes to boot, say, Trisquel 8 on a USB stick, which takes about 15 seconds.
> 
> In the process, I see lots of lines of things I don't understand (maybe I'm not supposed to understand them), and the following lines are particularly confusing:
> 
>     This is the GNU system. Welcome.
>     Login:
> 
> Sometimes, the two lines above stay there enough time to make you think that the system is waiting for your input; if you are new to the system, you may even start writing your login, but then more lines start appearing and send the login out of sight. 
> 
> Some lines are scary. Things like "ABC not found", "EFG not detected". But finally you get to the GDM login screen.
> 
> I'm used to this after using the system for about a year now, but I think this is a bug.

It most definitely is a usability problem.  If usability is a goal, then it is a
bug.

I think it's our job as a distribution to integrate the components properly into
the system so that confusing stuff like that doesn't happen.

As a first step, we could just not start a getty on tty1 when gdm is configured
to start (see tty1 in %base-services in (gnu services base)).  Then the thing
above wouldn't appear.

The usual fix a lot of other distributions (and BIOSes) have is to display a
splash screen on top.

(Also, gdm doesn't like it at all if one uses Ctrl-Alt-Fx to switch consoles
apparently)

But if possible, could you post the actual messages that appear on your machine
to a bug report?  We can then find out where they come from and decide what
to do about them.

Standard usability limits for the duration an action is allowed to take to
start (and make itself known to the user) after the user asked for something:

* Less than one second for a system to feel snappy and no annoyance to happen
* At least less than two seconds absolute maximum.  You are annoying the user
* More is not usable

Because of long boot times (15 s is ALSO too long) I almost never reboot
(only suspend).

I've tried booting Guix now and I took note of the following points in time:

t = 0 s: I press the power button
t = 8 s: Grub asks for my system password  
t = 45 s: Console login prompt appears 
t = 55 s: GDM login prompt appears