Installer does not add %base-packages

  • Done
  • quality assurance status badge
Details
4 participants
  • Ludovic Courtès
  • pelzflorian (Florian Pelz)
  • Ricardo Wurmus
  • Timothy Sample
Owner
unassigned
Submitted by
pelzflorian (Florian Pelz)
Severity
serious
P
P
pelzflorian (Florian Pelz) wrote on 3 May 2019 10:56
(address . bug-guix@gnu.org)
20190503085655.fx3oide7huydf337@pelzflorian.localdomain
When and only when the Newt installer creates a packages field in the
operating-system configuration e.g. for nss-certs, it does not add
%base-packages to the packages field. (When no packages field is
created, %base-packages is added by default.)
L
L
Ludovic Courtès wrote on 3 May 2019 12:08
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)(address . 35541@debbugs.gnu.org)
87imuretpb.fsf@gnu.org
"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:

Toggle quote (5 lines)
> When and only when the Newt installer creates a packages field in the
> operating-system configuration e.g. for nss-certs, it does not add
> %base-packages to the packages field. (When no packages field is
> created, %base-packages is added by default.)

Ouch! That renders the installed system unusable, right?

Ludo’.
L
L
Ludovic Courtès wrote on 3 May 2019 12:26
control message for bug #35541
(address . control@debbugs.gnu.org)
87d0kzesvc.fsf@gnu.org
severity 35541 serious
R
R
Ricardo Wurmus wrote on 3 May 2019 12:26
Re: bug#35541: Installer does not add %base-packages
(name . Ludovic Courtès)(address . ludo@gnu.org)
87ftpvhm11.fsf@elephly.net
Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (9 lines)
> "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:
>
>> When and only when the Newt installer creates a packages field in the
>> operating-system configuration e.g. for nss-certs, it does not add
>> %base-packages to the packages field. (When no packages field is
>> created, %base-packages is added by default.)
>
> Ouch! That renders the installed system unusable, right?

This might explain a report that we’ve seen on IRC on release day where
a person was unable to use coreutils. So yes, the system would be
hardly usable.

--
Ricardo
L
L
Ludovic Courtès wrote on 3 May 2019 12:30
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)(address . 35541@debbugs.gnu.org)
874l6beso9.fsf@gnu.org
Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (9 lines)
> "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:
>
>> When and only when the Newt installer creates a packages field in the
>> operating-system configuration e.g. for nss-certs, it does not add
>> %base-packages to the packages field. (When no packages field is
>> created, %base-packages is added by default.)
>
> Ouch! That renders the installed system unusable, right?

I did a full install for a bare-bones-like system with ‘nss-certs’
selected during the install. The resulting system has only ‘guix’ and
‘herd’ as useful commands in /run/current-system/profile/bin.

You can log in but Coreutils commands etc. are missing. You can run:

guix install coreutils grep sed findutils

which solves the problem.

It’s a serious issue nonetheless. :-/

Ludo’.
L
L
Ludovic Courtès wrote on 3 May 2019 13:52
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)(address . 35541@debbugs.gnu.org)
87zho3dabj.fsf@gnu.org
"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:

Toggle quote (5 lines)
> When and only when the Newt installer creates a packages field in the
> operating-system configuration e.g. for nss-certs, it does not add
> %base-packages to the packages field. (When no packages field is
> created, %base-packages is added by default.)

This is fixed here:


I’m keeping the bug open until we’ve come up with a plan.

Ludo’.
L
L
Ludovic Courtès wrote on 3 May 2019 13:59
(name . Ricardo Wurmus)(address . rekado@elephly.net)
87muk3da0e.fsf@gnu.org
Hello,

I’d like us to better estimate the impact, communicate about
workarounds, and have a bug-fix release plan.

Like I wrote, in a bare-bones installation, Coreutils & co. are missing,
but one can work around it by running, say:

guix install coreutils grep sed findutils

(Programs like ‘sudo’ and ‘passwd’ are available despite the bug because
they are in /run/setuid-programs.)

Has anyone tried on a GNOME, Xfce, or ratpoison install? I wonder if
the problem is visible there (until you open a terminal, that is.)

I think we should email info-guix@gnu.org and possibly write a post on
the blog within at most two days with an explanation of the issue,
workarounds, proper fix (which is to edit the config file and
reconfigure), and an ETA for the bug-fix release.

Thoughts?

Ludo’.
T
T
Timothy Sample wrote on 3 May 2019 18:08
(name . Ludovic Courtès)(address . ludo@gnu.org)
87pnozr05m.fsf@ngyro.com
Hi Ludo,

Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (3 lines)
> Has anyone tried on a GNOME, Xfce, or ratpoison install? I wonder if
> the problem is visible there (until you open a terminal, that is.)

I just tried Xfce and it does not work. Adding “%base-packages” back
into the config from the terminal fixed it, though.


-- Tim
T
T
Timothy Sample wrote on 3 May 2019 20:42
(name . Ludovic Courtès)(address . ludo@gnu.org)
87lfznqt0z.fsf@ngyro.com
Hi,

Timothy Sample <samplet@ngyro.com> writes:

Toggle quote (8 lines)
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Has anyone tried on a GNOME, Xfce, or ratpoison install? I wonder if
>> the problem is visible there (until you open a terminal, that is.)
>
> I just tried Xfce and it does not work. Adding “%base-packages” back
> into the config from the terminal fixed it, though.

Just finished testing GNOME and it works.


-- Tim
L
L
Ludovic Courtès wrote on 3 May 2019 21:19
(name . Timothy Sample)(address . samplet@ngyro.com)
874l6b9wh7.fsf@gnu.org
Hi Tim,

Timothy Sample <samplet@ngyro.com> skribis:

Toggle quote (7 lines)
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Has anyone tried on a GNOME, Xfce, or ratpoison install? I wonder if
>> the problem is visible there (until you open a terminal, that is.)
>
> I just tried Xfce and it does not work.

As in you can’t log in at all?

Toggle quote (2 lines)
> Just finished testing GNOME and it works.

OK.

Thanks for testing,
Ludo’.
T
T
Timothy Sample wrote on 3 May 2019 22:39
(name . Ludovic Courtès)(address . ludo@gnu.org)
87h8abqnlp.fsf@ngyro.com
Hi,

Toggle quote (11 lines)
> Timothy Sample <samplet@ngyro.com> skribis:
>
>> Ludovic Courtès <ludo@gnu.org> writes:
>>
>>> Has anyone tried on a GNOME, Xfce, or ratpoison install? I wonder if
>>> the problem is visible there (until you open a terminal, that is.)
>>
>> I just tried Xfce and it does not work.
>
> As in you can’t log in at all?

Exactly. It kicks me back out to GDM immediately. I assume that
“xfce4-session” tries to find some utility in $PATH and fails when it
can’t find it.


-- Tim
L
L
Ludovic Courtès wrote on 4 May 2019 14:40
(name . Ricardo Wurmus)(address . rekado@elephly.net)
87tvea4cld.fsf@gnu.org
Hello,

Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (5 lines)
> I think we should email info-guix@gnu.org and possibly write a post on
> the blog within at most two days with an explanation of the issue,
> workarounds, proper fix (which is to edit the config file and
> reconfigure), and an ETA for the bug-fix release.

Unless there are objections, I will apply the patch below to the manual
in the ‘version-1.0.0’ branch and update the on-line copies of the
manual. That way the issue and workaround should be immediately visible
to someone who follows the “Installation instructions” link on the
download page. (This text won’t be translated, but we’ll have to live
with it I guess.)

I’ll also send roughly the same text to info-guix.

Please tell me what you think!

I think we can publish a release in two to four weeks. It should be an
easier one anyway. We should take advantage of that time to gather
installation bug reports and to address them, and also to see how we can
automate the release process further.

Thoughts?

Thanks,
Ludo’.
Toggle diff (73 lines)
diff --git a/doc/guix.texi b/doc/guix.texi
index 3b0517c5e3..2f1caf4659 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1774,6 +1774,11 @@ on a machine. Guix, as a package manager, can
also be installed on top of a running GNU/Linux system,
@pxref{Installation}.
+@quotation Important Note
+@xref{Guided Graphical Installation}, on how to work around a bug that affects
+the graphical installer in version 1.0.0.
+@end quotation
+
@ifinfo
@quotation Note
@c This paragraph is for people reading this from tty2 of the
@@ -1992,6 +1997,56 @@ dependencies of your system configuration can be downloaded. See the
The graphical installer is a text-based user interface. It will guide you,
with dialog boxes, through the steps needed to install GNU@tie{}Guix System.
+@quotation Important Note
+Due to a @uref{https://issues.guix.info/issue/35541, bug}, the graphical
+installer of Guix 1.0.0 may produce a system configuration where essential
+commands such as @command{ls} or @command{grep} are missing. A new release
+will be published in the coming weeks. Here is how you can work around it in
+the meantime on your freshly installed system:
+
+@itemize
+@item
+Install packages that provide those commands, along with the text editor of
+your choice (for example, @code{emacs} or @code{vim}):
+
+@example
+guix install coreutils findutils grep procps sed emacs vim
+@end example
+
+At this point, the essential commands you would expect are available.
+
+@item
+Open your configuration file with your editor of choice, for example
+@command{emacs}, running as root:
+
+@example
+sudo emacs /etc/config.scm
+@end example
+
+@item
+Change the @code{packages} field to add the ``base packages'' to the list of
+globally-installed packages, such that your configuration looks like this:
+
+@lisp
+(operating-system
+ ;; ... snip ...
+ (packages (append (list (specification->package "nss-certs"))
+ %base-packages))
+ ;; ... snip ...
+ )
+@end lisp
+
+@item
+Reconfigure the system so that your new configuration is in effect:
+
+@example
+sudo guix system reconfigure /etc/config.scm
+@end example
+@end itemize
+
+We apologize for this embarrassing mistake that we made.
+@end quotation
+
The first dialog boxes allow you to set up the system as you use it during the
installation: you can choose the language, keyboard layout, and set up
networking, which will be used during the installation. The image below shows
P
P
pelzflorian (Florian Pelz) wrote on 4 May 2019 15:32
(name . Ludovic Courtès)(address . ludo@gnu.org)
20190504133219.kwwbhx36irce7ohk@pelzflorian.localdomain
On Sat, May 04, 2019 at 02:40:30PM +0200, Ludovic Court�s wrote:
Toggle quote (3 lines)
> Please tell me what you think!
>

It is a good text. However, I find it more tragic that Xfce and MATE
do not work than that these commands are missing until installed, but
it depends on the audience I guess.

Regards,
Florian
L
L
Ludovic Courtès wrote on 4 May 2019 16:54
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)
87imuq2rts.fsf@gnu.org
"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:

Toggle quote (8 lines)
> On Sat, May 04, 2019 at 02:40:30PM +0200, Ludovic Courtès wrote:
>> Please tell me what you think!
>>
>
> It is a good text. However, I find it more tragic that Xfce and MATE
> do not work than that these commands are missing until installed, but
> it depends on the audience I guess.

Yeah, but note that the Xfce failure is due to this bug (confirmed by
running ‘guix system vm desktop.tmpl’ with the attached patch.)

Thanks,
Ludo’.
Toggle diff (25 lines)
diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl
index 3931bad60d..ff6e4e37dd 100644
--- a/gnu/system/examples/desktop.tmpl
+++ b/gnu/system/examples/desktop.tmpl
@@ -45,18 +45,14 @@
(users (cons (user-account
(name "bob")
(comment "Alice's brother")
+ (password (crypt "foo" "$6$abc"))
(group "users")
(supplementary-groups '("wheel" "netdev"
"audio" "video")))
%base-user-accounts))
;; This is where we specify system-wide packages.
- (packages (append (list
- ;; for HTTPS access
- nss-certs
- ;; for user mounts
- gvfs)
- %base-packages))
+ (packages '())
;; Add GNOME and Xfce---we can choose at the log-in screen
;; by clicking the gear. Use the "desktop" services, which
P
P
pelzflorian (Florian Pelz) wrote on 4 May 2019 17:03
(name . Ludovic Courtès)(address . ludo@gnu.org)
20190504150339.66yicn4ufiqm4e2a@pelzflorian.localdomain
On Sat, May 04, 2019 at 04:54:23PM +0200, Ludovic Courtès wrote:
Toggle quote (13 lines)
> "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:
> > On Sat, May 04, 2019 at 02:40:30PM +0200, Ludovic Courtès wrote:
> >> Please tell me what you think!
> >>
> >
> > It is a good text. However, I find it more tragic that Xfce and MATE
> > do not work than that these commands are missing until installed, but
> > it depends on the audience I guess.
>
> Yeah, but note that the Xfce failure is due to this bug (confirmed by
> running ‘guix system vm desktop.tmpl’ with the attached patch.)
>

Hmm. Maybe mention that it fixes Xfce then.

Regards,
Florian
R
R
Ricardo Wurmus wrote on 4 May 2019 18:49
(name . Ludovic Courtès)(address . ludo@gnu.org)
87tveaf9mi.fsf@elephly.net
Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (18 lines)
> Ludovic Courtès <ludo@gnu.org> skribis:
>
>> I think we should email info-guix@gnu.org and possibly write a post on
>> the blog within at most two days with an explanation of the issue,
>> workarounds, proper fix (which is to edit the config file and
>> reconfigure), and an ETA for the bug-fix release.
>
> Unless there are objections, I will apply the patch below to the manual
> in the ‘version-1.0.0’ branch and update the on-line copies of the
> manual. That way the issue and workaround should be immediately visible
> to someone who follows the “Installation instructions” link on the
> download page. (This text won’t be translated, but we’ll have to live
> with it I guess.)
>
> I’ll also send roughly the same text to info-guix.
>
> Please tell me what you think!

This looks good. I just have a tiny nit to pick:

Toggle quote (2 lines)
> +We apologize for this embarrassing mistake that we made.

I’d remove “that we made”.

I’m looking forward to 1.0.1 :)

--
Ricardo
L
L
Ludovic Courtès wrote on 4 May 2019 23:16
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)
874l692a45.fsf@gnu.org
"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:

Toggle quote (16 lines)
> On Sat, May 04, 2019 at 04:54:23PM +0200, Ludovic Courtès wrote:
>> "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:
>> > On Sat, May 04, 2019 at 02:40:30PM +0200, Ludovic Courtès wrote:
>> >> Please tell me what you think!
>> >>
>> >
>> > It is a good text. However, I find it more tragic that Xfce and MATE
>> > do not work than that these commands are missing until installed, but
>> > it depends on the audience I guess.
>>
>> Yeah, but note that the Xfce failure is due to this bug (confirmed by
>> running ‘guix system vm desktop.tmpl’ with the attached patch.)
>>
>
> Hmm. Maybe mention that it fixes Xfce then.

Done, pushed to ‘version-1.0.0’, and published:


Ludo’.
L
L
Ludovic Courtès wrote on 18 May 2019 14:03
control message for bug #35541
(address . control@debbugs.gnu.org)
87woioufys.fsf@gnu.org
tags 35541 fixed
close 35541
?