Subject: bug#29706: GuixSD: Please add the ability to change shells for root

From: [email-masked] (Ludovic Courtès)
Date: Mon, 18 Dec 2017 23:18:47 +0100

Hi,

BJH2017 <[email-masked]> skribis:

> Using the configuration file /etc/config.scm it is fairly straight forward
> to change shells for a given user account on GuixSD 0.14.0, such as using:
>
> (operating system
>    (users (cons (user-account
>                          (name "user")
>                          ....
>                          (shell "/run/current-system/profile/bin/zsh")))))
>
> , but for root this is impossible. Is it possible this feature could be
> added?

I just realized it’s actually possible: if you add an account with
UID 0, then that account is the root account.

So you can write:

  (operating-system
    ;; …
    (users (cons (user-account
                   (name "this-can-be-root-or-something-else")
                   (uid 0)
                   ;; …
                   (shell (file-append zsh "/bin/zsh")))
                 …)))

… and you get a root account with the chosen name and shell.

Does it work for you?

I’ve clarified the situation:

  https://git.savannah.gnu.org/cgit/guix.git/commit/?id=45f6211730157c50ade4dbf770e60871f1067ad6

Thanks,
Ludo’.