How can I disable and remove powerlevel10k for zsh?

Well, I don’t remember the exact time of the switch anymore either, but it was done in Xfce for consistency with the Plasma and GNOME editions.

That said, the way it is implemented differs between the three official editions. In Plasma, it was implemented via the konsole profile, and as such, it also only applies to terminal windows in the Plasma environment, because in tty sessions, the default shell is still bash. Furthermore, the system initialization scrips are also still using bash, and this in and of itself also remains true for the Xfce and GNOME editions.

I do not know how the GNOME and Xfce editions implement zsh as the default interactive shell, though, and as such, also not whether those two editions have either bash or zsh as the shell in tty sessions.

As for why the decision was made, I believe it was because Arch implemented it first.

The change to make ZSH default in the Xfce & KDE Plasma ISO profile was made at the end of 2024 to be consistent across all official editions since it became very popular with the GNOME edition.

For all editions, the default shell is set in /etc/default/useradd.

# The SHELL variable specifies the default login shell on your
# system.
SHELL=/usr/bin/zsh
4 Likes

Thanks, i see. But i guess it can easily be changed post factum for an account with chsh.

1 Like

I had some unexpected spare time, so I worked on this now, and I figured out how to get zsh to work with manjaro. It turns out that my personal zsh configuration files work fine when I have my user ID’s shell set to /usr/bin/zsh and when I have zsh installed with the manjaro-zsh-config and zsh-theme-powerlevel10k packages deleted.

However, if I reboot with my main user ID set up with /usr/bin/zsh as the shell, then the system never starts a user session and leaves me with a blank screen upon boot up.

My zsh configuration files take up more than 1,400 lines of code, and I didn’t want to try to go through the hugely time-consuming task of trying to figure out what part of this configuration allows normal shell login but prevents manjaro session startup, so I did the following:

I set the login shell to /usr/bin/bash in /etc/passwd, and I altered that user ID’s .bashrc as follows:

#
# ~/.bashrc
#

[[ $- != *i* ]] && return

case "${SHELL}" in
*/bash)
  export SHELL='/usr/bin/zsh'
  exec "${SHELL}" --login
  ;;
*)
  alias ls='/bin/ls -FACs'
  PS1='[\u@\h \W]\$ '
  ;;
esac

In other words, for non-interactive shells, just keep /usr/bin/bash as the shell. This allows session startup at boot-up time. And for interactive shells, do an exec of “zsh --login” upon startup.

It’s not worth my time or effort to try to figure out what within my normal zsh startup configuration files is interfering with manjaro session startup a boot-up time. This .bashrc change is more than sufficient for me, for the time being.

So … I am now finished with this topic.

If in the future I decide to try to revisit this in order to find what within my zsh startup configuration intereres with manjaro session startup, I’ll post a new conversation here with whatever I might find out. But I doubt that I’ll be doing that work any time soon.

UPDATE: OOPS! For some reason, I got “man[J]aro” confused with the incorrect “man[D]aro” spelling, just within this one message, even though I wrote it correctly in my earlier messages. I have corrected all those errors in this message now.

@MeMyselfAndI

For reference, the distribution name is Manjaro. :wink:

Q: How can I disable and remove powerlevel10k for zsh
A: The configuration are provided by the package manjaro-zsh-config

You will of course need to adjust your .zshrc accordingly.

So removing the package should do the trick

sudo pacman -Rns manjaro-zsh-config
3 Likes