Why manjaro zsh setting is so complicated?

I wish it was enough easy to perform new setting, I wish Manjaro developers hear this message

1 Like

Since i donā€™t know what setting you are referring to, iā€™ll simply link you some documentation.
https://wiki.archlinux.org/title/Zsh


In regular zsh and ohmhzsh installation we have just a zshrc and do whatever we want in it but in Manjaro we should change zshrc, zsh-p10, manjaro zsh config and prompt and many other folders that are a bit complicated

Manjaro ships with extra settings for applying its customized experience.
But AFAIK you should still be able to make your customization through zshrc alone. You can even reset to actual defaults if you so wish.

Itā€™s ā€œcomplicatedā€ to make it more user-proof. The same reason why thereā€™s an Unstable, Testing and Stable branch.

And, to be honest, you are the first person Iā€™ve seen that complained of this. It works, it works well, and everything makes sense the way it is.

1 Like

To be honest, I am trying to understand zsh configuration too, for two days now :slight_smile:

But Iā€™m comparing it to the bash configuration, where all I did was to change the color of my prompt (PS1) in the .bashrc.

Now I was trying to change the zshā€™s prompt colors too, but I didnā€™t even find where the manjaro icon of the prompt is linked or where itā€™s stored.

So I found the topic interesting.

Well, I donā€™t know anything about powerlevel10k, I donā€™t use it and have been using zsh since before it became the default along with powerlevel10k.

There is ~/.zshrc if you want to customize it.

Otherwise, have a look here:

Or here:

In fact, I think that last one is it.

1 Like

If you want to customize your own same theme for all shells: zsh, bash and fish ā€¦,
I know there is starship in the official repo, it can help you to reduce configuration effort for different shells.

2 Likes

Thank you. I also tried p10k configure But I donā€™t find where the default icons are set, linked or stored. So I agree with the OP, that with this many files, and some of them not too short, it is hard to find out what is doing what.

Maybe in the next days I will figure it out. But if not, I wouldnā€™t say itā€™s really important. The default manjaro zsh prompt just looks very nice. I wouldnā€™t change much :slight_smile:

Until yesterdy I didnā€™t even use zsh. I made bash my default shell right after the installation of manjaro, without knowing I would, by adding a new profile to Konsole with /bin/bash as the default.

And in /etc/passwd bash is still set as the default shell, as I see.

It is actually set per-user. So your user might be set to zsh by default, but root is still set to bash.

The command to change it is chsh. More information:

https://wiki.archlinux.org/title/Command-line_shell#Changing_your_default_shell

man chsh

I let bash be set in /etc/passwd, since I just have to change it in the Konsole profile to experiment with it. Iā€™m not even sure if I like the fact, that more and more distros seem to tend toward zsh. But I want to make myself a little bit familiar with it.
For now I would say it is fine, but bash did its job for a long time and is reliable. And the first contact with zsh was in manjaro, when I did an

echo "PS1='\[\033[01;32m\]\u\[\033[01;33m\]@\[\033[01;36m\]\h\[\033[01;33m\]\w\[\033[01;35m\]\\$ \[\033[00m\]'" >> ~/.bashrc && source ~/.bashrc

that was misinterpreted, and I didnā€™t even know what was going on :slight_smile:

Thatā€™s actually the easiest to customize. Run p10k configure to customize the theme.

See: GitHub - romkatv/powerlevel10k: A Zsh theme

Youā€™re all acting like documentation for powerlevel10k and how things are done is non-existant.
It is here: GitHub - romkatv/powerlevel10k: A Zsh theme

And for other related packages you should learn how to search own system

pacman -Qs zsh
# or
pacman -Qs manjaro zsh

And youā€™ll get an answer that there is manjaro-zsh-config package.
And you can check what files are in this package with:

pacman -Ql manjaro-zsh-config

and youā€™ll get usr/share/zsh/manjaro-zsh-config and usr/share/zsh/manjaro-zsh-prompt among other files.

And you can always remove it and do it from scratch.

Itā€™s not complicated at all, just RTFM. ;p

1 Like

What I was saying is, that there are many many files with much configuration. And that I in the existing wikis yet couldnā€™t find how to replace the manjaro logo in prompt with another. Maybe itā€™s written, but I didnā€™t find it :slight_smile:

And with these commands shown youā€™re confirming exacly what I was saying:

pacman -Ql manjaro-zsh-config                                                   ī‚² āœ” 
manjaro-zsh-config /etc/
manjaro-zsh-config /etc/skel/
manjaro-zsh-config /etc/skel/.zshrc
manjaro-zsh-config /root/
manjaro-zsh-config /root/.zshrc
manjaro-zsh-config /usr/
manjaro-zsh-config /usr/share/
manjaro-zsh-config /usr/share/zsh/
manjaro-zsh-config /usr/share/zsh/functions/
manjaro-zsh-config /usr/share/zsh/functions/command-not-found.zsh
manjaro-zsh-config /usr/share/zsh/manjaro-zsh-config
manjaro-zsh-config /usr/share/zsh/manjaro-zsh-prompt
manjaro-zsh-config /usr/share/zsh/p10k-portable.zsh
manjaro-zsh-config /usr/share/zsh/p10k.zsh
manjaro-zsh-config /usr/share/zsh/scripts/
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/README.md
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-3024.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-3024.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-apathy.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-apathy.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-ashes.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-ashes.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierdune.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierdune.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierforest.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierforest.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierheath.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierheath.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierlakeside.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierlakeside.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierseaside.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-atelierseaside.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-bespin.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-bespin.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-brewer.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-brewer.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-bright.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-bright.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-chalk.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-chalk.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-codeschool.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-codeschool.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-colors.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-colors.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-default.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-default.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-eighties.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-eighties.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-embers.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-embers.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-flat.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-flat.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-google.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-google.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-grayscale.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-grayscale.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-greenscreen.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-greenscreen.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-harmonic16.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-harmonic16.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-isotope.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-isotope.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-londontube.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-londontube.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-marrakesh.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-marrakesh.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-mocha.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-mocha.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-monokai.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-monokai.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-ocean.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-ocean.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-paraiso.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-paraiso.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-pop.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-railscasts.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-railscasts.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-shapeshifter.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-shapeshifter.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-solarized.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-solarized.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-summerfruit.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-summerfruit.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-tomorrow.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-tomorrow.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-twilight.dark.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/base16-twilight.light.sh
manjaro-zsh-config /usr/share/zsh/scripts/base16-shell/colortest
manjaro-zsh-config /usr/share/zsh/zsh-maia-prompt

Donā€™t get me wrong. If it would or will be of great importance to me, maybe I will find out what Iā€™m searching for. But it is overwhelming anyway. Remember the slogan enjoy the simplicity :slight_smile:

But thank you for pointing out to these two files. I looked into it yesterday but still canā€™t see how to change the prompt logo, for letā€™s say a green manjaro logo to a blue one.

I do not comply to this, but still have to agree, especially when compared to a bash configuration, it seems to be very complicated to customize zsh.

But again, thank you.

Thatā€™s actually a character. But the earlier suggestion is a good first step for changing it.


AFAIK Bash customization is actually rather limitedā€¦

1 Like

It is easy to ignore the manjaro zsh settings - just move the .zshrc file to .zshrc.bak and relaunch the shell - or comment the content - the latter will not trigger the prompt to create the .zshrc file.

The you will be prompted for a default rc file and you can go from there.

3 Likes

I will take another look into it tomorrow. Thank you too.

Agreed.

I know. The thing is, that the default theme just is very well. I just was interested in make very little changes. More to understand where and how to make it. But as I said, not of great importance. Just using it since yesterday. Maybe I will put a little more time in it. Thank you.

You can also press ctrl+f in your browser and type in word ā€œlogoā€ when you are on a page I gave you.

Seriously, how would some people survive 20 years ago when you had to go to actual library to find something?

Wait, didnā€™t you just say that itā€™s too complicated and that itā€™s easier to do it ā€œfrom zeroā€?

Also it was not too long ago when someone asked how to modify this or that and I gave him the answer how to edit .zshrc. Itā€™s in this forum somewhere.

Yes, and I will find os_icon. And in the configuration files you suggested it isnā€™t. And in other configuration files I looked in yesterday it was outcommented #. When I uncommented them it didnā€™t change anything. Seems, that I have to do further research on that, I guess.

Yeah, the good old survival marches to the library 20 years ago. I remember. I donā€™t know where you grew up, but for us it never was such a hard thing and still isnā€™t.

You understood, that I just was taking a quick look on it yesterday?

No.

I searched the forum yesterday for zsh shell editing, but did not find the point where to change the logo. And I know how to edit the .zshrc. I said I even did a configuration with p10k configure. And to be honest, that changed the logo, into no logo. So I reverted this configuration.

One question: Did you ever changed the logo/icon of the zsh-prompt?

Again, I will take a closer look into that matter when needed. And to this point zsh probably will remain more complicated to me to configure than I did know from (even if limited) bash. You can deny it if you want, but I will stay with this.
And maybe for you it was all that easy from the first day you saw it. Congratulation!

I did not open this topic. Just gave my experience to it. So thank you all for the links, commands and files. But this is enough stuff I have to look into. Please donā€™t try to help me anymore on this, otherwise I have to spend more time in explaining why I find zsh more complicated to configure than just learning or configuring it :slight_smile:

As I said earlier, maybe tomorrow I can take another look on all this links again. And if I just would be half so smart than someone here, I will wake up in the morning, with the solution just in my head :slight_smile: And if not maybe I could take a walk to the library tomorrow. I think I will survive this too :slight_smile:

Good night.

Well - they already did. They have included a pretty complicated ZSH setup file from which you can learn.

Itā€™s also possible to copy it, edit it - and delete anything you donā€™t understand.

Rather than generally complain that your brain is too small for a large task, you should focus on some detailā€¦ which is often the start of learning how to overcome a task which - at first - appears too big.

Baby steps.

1 Like