Change default shell from bash to zsh by default?

If you change the xfce4-terminal colors, it will adapt the prompt also. Not something that should be done by Zsh, but on XFCE theming directly.

1 Like


The character ; will continue to have space removed before it if done after tab completion.


ok do you know how to do it similarly to kali?

ah ok, whats the reason?

ah ok got you.

I downloaded some Kali packages on Debian Unstable at that time and it looked good. See the last link, it is an Xfce colorscheme then you have to edit the terminal > preferences > colorscheme.
I was planning on doing the Xfce adaptation of Kali to Whonix, but got occupied.



Merged and uploaded to Whonix 17 testers repository.

1 Like

The missing space before && seems fixed to me.

1 Like

setup-dist is no longer auto started with zsh. This is important for Whonix CLI.

For bash this is implemented in:

How could we do something similar for zsh?

Probably bad idea to make zsh parse /etc/profile and /etc/profile.d?

Is there an equivalent for /etc/profile.d for zsh?

1 Like

Thanks, merged!

Should the code for parsing /etc/zprofile.d be moved to the very bottom of the script? Why:

  • Allows overwriting the defaults set beforehand.
  • Does not stop execution of defaults in case any scripts residing in /etc/zprofile.d have an issue.

Keeping in mind:

bash /etc/profile.d:

  • Parsed in “CLI” mode, i.e. login, real terminal (tty).
  • Not parsed in terminal emulator / X11.

zsh /etc/zprofile.d:

  • Parsed in “CLI” mode, i.e. login, real terminal (tty).
  • Also parsed in terminal emulator / X11.

For bash, therefore /etc/X11/Xsession.d needed to be used because there’s no /etc/bashrc.d.

1 Like

To run in login shell only so this does not re-run for all terminal emulators tuning in X11 (GUI). Pseudo code:

if ! tty | grep -q /dev/tty ; then
   true "$0: Not running in a login shell, not parsing /etc/zprofile.d folder."
   exit 0

Minor point: Why return and exit? return only works for sourceed. Does not work when executed (for testing purposes).

Now that noexec made a ton of progress…

Can zsh help with the interpreter lock?

Do you think zsh restricted mode is useful for this?

Qubes dom0:

sudo xl console vmname

Looks messed up probably due to colors.

Perhaps based on

echo "$TERM"


don’t use colors?

feature request: support the no color environment variables

Similar to dist-installer-cli.

  if test -n "${NO_COLOR:-}" || test -n "${ANSI_COLORS_DISABLED:-}"; then

No, rzsh ,rbash or any r shell is too restricted, can’t even cd.

1 Like

Some are related to colors, but I tried removing it and it still looks very bad because of some zsh specific escape sequences that I couldn’t figure out how to disable.

Use bash when using vt220.

1 Like