fish-shell
dust
Our great sponsors
fish-shell | dust | |
---|---|---|
319 | 48 | |
24,331 | 7,636 | |
2.2% | - | |
9.9 | 7.4 | |
8 days ago | 3 days ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
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.
fish-shell
- Oh My Zsh
-
Converting the Kernel to C++
A recent practical example of the former: the fish shell re-wrote incrementally from C++ to Rust, and is almost finished https://github.com/fish-shell/fish-shell/discussions/10123
An example of the latter: c2rust, which is a work in progress but is very impressive https://github.com/immunant/c2rust
It currently translates into unsafe Rust, but the strategy is to separate the "compile C to unsafe Rust" steps and the "compile unsafe Rust to safe Rust" steps. As I see it, as it makes the overall task simpler, allows for more user freedom, and makes the latter potentially useful even for non-transpiled code. https://immunant.com/blog/2023/03/lifting/
-
Fish shell 3.7.0: last release branch before the full Rust rewrite
And this discussion from November has an update on the progress: https://github.com/fish-shell/fish-shell/discussions/10123
-
Day 5 - More or less...
We're using bash as our terminal shell for now (it is standard in many distros) but it is not the only one out there. If you want to test out zsh, fish or oh-my-zsh, you will see that there are a few differences and the features are usually the main differentiator. Try that, poke around.
-
Fish β Update on the Rust Port
> 1. It's amazing that they're doing this as a gradual C++ to Rust rewrite, while keeping it working end-to-end, if I understand correctly.
Seems to me they're not doing it gradually at all.
> Another thing:
> We plan on not doing any partial-rust release.
> That means we would be doing e.g. fish 4.0 as fully rust and zero C++, and I think, contrary to what we usually do that warrants a beta. (Ordinarily we've stopped doing betas and release candidates because they simply don't get any testing).
> We also still want to do a 3.7.0 in-between release that is still purely C++, so we have a better jumping off point for platforms that can't handle the rust version. It would be 3.6.1 with some neat changes backported.
https://github.com/fish-shell/fish-shell/discussions/10123#d...
It has nothing to do with Windows. fish doesn't support Windows. Their use of wchar_t is the glibc wchar_t (wchar_t is not Microsoft-specific) which is a 32-bit type and stores UTF-32-encoded codepoints. The Rust type they're using is also the same ( https://github.com/fish-shell/fish-shell/blob/master/doc_int... ).
More on the motivation behind the rewrite.
https://github.com/fish-shell/fish-shell/pull/9512#issuecomm...
They have a variety of reasons to move to rust, as outlined in their original rust discussion[1]. Mostly around finding other contributors, and adding an async/parallel mode they're comfortable with.
dust
-
Deciding between Rust or Go for desktop applications
Folks open to using gdu might like to try dust (6k stars), or even erdtree (1.4k stars) which is too recent to show up on lists like this and still a bit behind on stars. A lot of people seem to use starship (33k stars) though I'm personally oldschool on prompts. There are many other items on that list I'm not motivated to check.
- Hyprland is now in community
-
Rust vs Go Issue
The first thought I had was to use rayon for this. And looking at some prior art that does pretty much the exact same thing, it does indeed use rayon.
-
erdtree: A modern, multi-threaded, and οΈβπaestheticοΈβπ alternative to tree and du - v1.7.0 release οΈ
How does this compare to dust?
-
Sloth β A Mac app that shows all open files, directories, sockets, etc.
Happened to me this morning, something filled up my drive in minutes. I used dust[1] to look for large files while it was happening but knowing what was doing it would've been a big help.
-
What "nice-to-have" CLI tools do you know?
dust is also really nice.
- FLiP Stack Weekly for 06 February 2023
-
Rust-shell: what features you would you like to see in a shell ?
I don't understand what you mean by Graphics integration or graphical frontend. Do you have an example? Instead of du - I recommend dust. The data features - are basically the features of nushell, are you using it? Regarding the variables - excellent idea, I will implement this. What do you mean by menu creation? What syntax would you use for "skip next line"?
- Ncdu β NCurses Disk Usage
-
Rust Easy! Modern Cross-platform Command Line Tools to Supercharge Your Terminal
# Arch Linux yay -S dust # Fedora/CentOS # Install binary from https://github.com/bootandy/dust/releases # Debian/Ubuntu deb-get install du-dust # macOS Homebrew brew install dust # macOS MacPorts port install dust # Windows Scoop scoop install dust # Cargo cargo install du-dust
What are some alternatives?
powerlevel10k - A Zsh theme
starship - βποΈ The minimal, blazing-fast, and infinitely customizable prompt for any shell!
nushell - A new type of shell
oh-my-fish - The Fish Shell Framework
xonsh - :shell: Python-powered, cross-platform, Unix-gazing shell.
tokyonight.nvim - π A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins. Includes additional themes for Kitty, Alacritty, iTerm and Fish.
oil - Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!
exa - A modern replacement for βlsβ.
oh-my-bash - A delightful community-driven framework for managing your bash configuration, and an auto-update tool so that makes it easy to keep up with the latest updates from the community.
kube-ps1 - Kubernetes prompt info for bash and zsh
fzf - :cherry_blossom: A command-line fuzzy finder
HomeBrew - πΊ The missing package manager for macOS (or Linux)