this post was submitted on 24 May 2024
13 points (93.3% liked)

Linux

4804 readers
284 users here now

A community for everything relating to the linux operating system

Also check out [email protected]

Original icon base courtesy of [email protected] and The GIMP

founded 1 year ago
MODERATORS
 

So I'm currently using zsh + oh my zsh, and have been using it for some years now. It's good, it has amazing features (via plugins) and overall I'm happy with it. But lately it has become laggy for me (probably because of plugins) and I want to see if there's any other shell with features like ZSH but faster and lighter?

I've tried Fish, and usually install it on my servers, but it's not POSIX compliant so learning what commands actually do what in Fish seems like a hassle.

I've heard of Oilshell, Yash, Nushell but haven't tried any of them.

What is your setup for your interactive shell?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 3 months ago (6 children)

Bash. I used ZSH for a while too, but without Oh My Zsh, installing only a handful of plugins manually (or I used a simple plugin manager, honestly forgot if). It was nice, but I had ton of stuff that was not really necessary. And with the next OS install I decided to try a Bash only system. And you know what, it feels so much better and I appreciate simplicity a bit more than before.

But I think you won't go back. Fish is nice first, but it's too different from Bash and Zsh. I had constantly think about the differences and most of my scripts are Bash anyway. So I did not want to have a scripting language that is different from interactive shell. A language like Fish is too similar, while being different. This messes with my brain, the language itself seems to be fine.

What's left? PowerShell... nah, just joking. The problem is, most are different languages and not like Zsh and Bash at all. You listed Nushell, there is also a Python like shell language Xonsh. There is also a C like one Csh But to be honest, if you want a POSIX compliant one, then you don't have much to choose from. Either start your ZSH setup from scratch, with the knowledge you have now, or go back to Bash. That's what I did and kept using it since.

[–] [email protected] 2 points 3 months ago* (last edited 3 months ago) (5 children)

Bash has a very strange sequence of sourcing scripts like .bash_profile and others, and the type of shell (interactive or not) adds fuel to the fire. There is no chance to sort through this bunch of init files in order to correctly and conveniently set up environment variables. In zsh, only 3 files are needed for proper configuration; it couldn’t be easier.

[–] [email protected] 1 points 2 months ago

Environment variables are easy to setup in bash? It's never been anything other than straightforward in my experience

load more comments (4 replies)
load more comments (4 replies)