gsh
oursh
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gsh
-
A Better Shell
This has already been done in ADA. It was designed for better performance than the Cygwin shell.
https://archive.fosdem.org/2019/schedule/event/ada_shell/
https://github.com/AdaCore/gsh
You could also use the busybox port of the Almquist shell, if you can refrain from most bashisms.
https://frippery.org/busybox/
oursh
-
Nsh: A fish/bash-like Posix shell in Rust
There is also https://github.com/nixpulvis/oursh which wants to be POSIX compatible with its own extensions. Actually I would prefer if a new shell focuses on bash compatibility.
If features are integrated, then I would probably want to have something about error handling because it is difficult to get right in bash even with shellcheck¹ and gets just worse when things run in parallel.
¹ https://www.shellcheck.net/
-
A Better Shell
A lot of this has to do with the integration between the Terminal and the Shell. A project that came up recently that seems to take on a few of the issues is https://blog.warp.dev/how-warp-works. I've been meaning to write up a proper critique of this project at some point, but I keep getting side-tracked.
I also want a replacement for `fish`, however it's a pretty tall order to implement what I have in mind, and I got a bit stuck trying to find the right abstractions for background job management in Rust (there's a lot going on). But I genuinely believe a multi-language shell with POSIX support will finally allow us to move forward in the terminal environment. UI/UX issues like ctrl-c, window management, and everything else can be implemented as derivations from POSIX, or additions.
While somewhat tangential to the main thread of this post, I'll still leave my (incomplete) shell here for anyone who's interested. https://github.com/nixpulvis/oursh. The README has a decent description of features I want off the bat, and there's a bunch of design level issues in the tracker.
I'll never accept the death of the Terminal environment.
What are some alternatives?
homebrew-emacs-plus - Emacs Plus formulae for the Homebrew package manager
busybox-w32 - WIN32 native port of BusyBox.