Change default shell of dom0

I am trying to change the default shell of dom0 to zsh. homectl update --shell=/usr/bin/zsh is giving this error: Failed to acquire user home record: No home for user vxc known. Is this possible?

zsh is not installed by default.
You can list installed shell with cat /etc/shells

Usually, you change your shell with chsh, but its not installed.
You can make the change manually in /etc/passwd

But, you do not want to install anything in dom0.
Neither zsh, neovim or other programs.

Make a work/dev templates, install zsh, neovim, whatever.
Then make as many work/dev qubes as you need ?

Some users are fine with the fact of installing ‘must have’ apps in dom0.
Like redshift (blue eyes filter) by example.
Ideally, you want to review the code of what you install in dom0,
and probably disable the update for this package.

For homectl issue:

[user@dom0 ~]$ homectl
No home areas.

use homectl -h, man homectl and search engines for more infos.
https://wiki.archlinux.org/title/Systemd-homed

While I understand the idea behind this, this could be risky not to update too… Because update usually means fixing some bug, so reviewing bug and update code would be desirable. But, who ever does that…

Thanks @szz9pza. I was hoping to have my shell and text editor be the same everywhere. I understand the risk of installing in dom0, however you are correct. I probably won’t be doing much work in dom0 once everything is setup, and therefore it’s probably not worth potentially compromising dom0, which defeats the purpose of installing qubes in the first place. I will focus on the templates instead.

2 Likes

But, you do not want to install anything in dom0.
Neither zsh , neovim or other programs.

Some users are fine with the fact of installing ‘must have’ apps in dom0.

To underscore this the only things I’ve installed in dom0 are 1) a bit of code I wrote myself, compiled, and 2) corrected icons (some of the qube icons are wrong; black and gray qubes both look black at certain sizes including the sizes used by the manager and menus, at least on my system). Since these are both things I generated I figured they would be safe.

The only rule is: Do not touch dom0 (except for update provided by Qubes OS).

Installing something in dom0 is ‘risky’, unless you review everything.
And you do not want to do it every update.
So you disable update!

There is a reason why EOL dom0 is not a security risk, and even an advantage.
https://www.qubes-os.org/doc/supported-releases/#note-on-dom0-and-eol

If you require an hypothetical mandatory software in dom0:
find an another way who doesn’t invole dom0.

note: there is no extra mandatory software needed in dom0…

It’s safe because dom0 is completely isolated, the advantage is that a new version doesn’t constantly need to be tested for security and stability issues.

Reading, reading it all and constant re-reading

I know you know.
My answer say the same thing than yours.

Let me be more specific:
Its just the first part that is misleading.

this could be risky not to update too

It could be buggy, but not risky.

Because update usually means fixing some bug, so reviewing bug and update code would be desirable. But, who ever does that…

Exactly, no one does, and no one want to do it every update.
That why you disable update.
That why you let dom0 alone in the first place. :slight_smile: