rust-lang based tools: bat, dust, zellij

Terminal running zellij

Environment: Ubuntu 23.10 on a Raspberry Pi 5 8 GiB with the full Rust toolchain installed.

I’ve been exploring the world of Rust recently. Rust isn’t just a language, it also seems to be an environment for nurturing interesting creativity. I’ve been working with products of that Rust-inspired creativity: zellij, bat, and dust.

zellij ( https://zellij.dev/ ) is an alternative to tmux ( https://github.com/tmux/tmux/wiki ). I’ve begun to use it here, with nvim, as a very lightweight alternative to full blown Visual Studio Code for rust development. I can also use it to quickly cobble together a set of views in one terminal to keep track of multiple tools looking at a wide range of system statuses. Having it all fit in multiple zellij panes is easier on the resources than having multiple independent terminals I have to keep track of on the desktop. I personally find zellij easier to use than tmux. In the first screen capture, I’ve got neofetch, btop, and duf in three individual panes in a single terminal instance. Installation is cargo install zellij.

Zillej with two panes, bat on the left, nvim on the right.

I’m contrasting bat ( https://github.com/sharkdp/bat ) with nvim to show how close, yet how different they are visually. I prefer bat over cat, and have cat aliased to bat in my environment. Sometimes all I want to do is just read a text file, and bat does it so well. Installation is cargo install bat.

Zilleg with bat on the left and dust on the right.

Finally there’s the Rust version of du, dust ( https://github.com/bootandy/dust )With dust I get a much clearer view of disk usage at any point in the filesystem. Regular du only provides byte sizes, while dust gives you a relative size graph to the right and a partial tree along with the space usage in each branch of the tree. And dust is fast. It’s the fastest utility of its type I’ve ever used. I won’t say it’s fast because of Rust, but probably a combination of clever design, coding, and Rust. Installation is cargo install du-dust.

I’m no Rust language expert. But I am growing to appreciate it as a personal tool builder as well as the foundation for excellent command line tools. I am exploring more every day as I grow to trust the current batch I’ve got installed on all my systems, both Linux and macOS.