A List of Terminal-Friendly Tools

This post is a note to myself. There are a few CLI/TUI tools I have grown fond of over the years, but haven’t captured anywhere yet. I intend to expand this as the year goes on.

Nix(OS)

A great way to capture system-wide configuration and make it reproducible. It’s a joy to be able to list all the packages I actually use and be sure only they are installed.

Bonus points on adding tools per-project as needed. I’m not a purist when it comes to this, and don’t do everything the nix way. Yet.

UV

Has improved the way I handle Python dependencies and virtual environments for the better. I was a long-term mostly-happy pipenv user, but the rough edges and weird hangups have been too frequent over the years.

Lucky me, that this tool has come along when I was ready to switch (and looking at combinations of other tools).

Atuin

I am a big-time user of revers-i-search. Hitting ctrl+r and typing part of the command I intend to use saves a lot of time for me day-to-day.

Atuin improves the experience without getting in the way.

It provides you with additional information, is consistent between shell sessions and just works.

Zellij

Like tmux but a better fit for my needs. Think “tiling window manager on demand in your terminal”. I use it for work which requires multiple workspaces, (named) contexts and happens mostly in the terminal. Take a look here.

Imagine having your dev server run in one named tab, on-demand commands live in yet another one and all your git work happens yet in another one while k9s waits patiently in a fourth one. You can switch between tabs at will, or add them as needed. Helpful names included.

Htop

For finding out what happens on the machine right now. Might consider looking into btop one day.

Diskonaut

To investigate where all the SSD/HDD space went.

Zsh + oh-my-zsh

A capable shell, with the option of installing plugins and themes easily when using oh-my-zsh.

I am happy enough not to consider switching. However, I do not miss either when I’m on a bash-only machine.

Ghostty

I am happy with gnome-terminal most of the time. This is the next try after kitty and alacritty. Neither blew me away.

I3

A tiling window manager I like to use on occasion. While a Gnome desktop is great too (especially if stuff like copy paste just works out of the box), it feels good to be keyboard-driven.

Sway is a future interest to explore.

Make

Yeah, makefiles rock. There might be great alternatives, but few make just works for me to automate away a bit of thinking when it comes to frequent tasks.

K9s

A great way to get insight of what’s happening on a k8s cluster.

Honorable Mentions

gitk / git gui

While none are terminal-native, I sure rely on them a lot from the terminal. The first one to look through git commits, the second one to review and hand-pick changes.

There must be another tool I’m missing, which could be a good addition here.

Distributing Files

Syncthing and LocalSend make it a blast to sync data between machines, or send files between devices on the local network. They work like a charm

Curious / Adopting

  • various Rust-powered tooling like eza, fd, ripgrep
  • starship
  • direnv
  • devenv
  • neovim
Subscribe to my newsletter!
You'll get notified via e-mail when new articles are published. I mostly write about Docker, Kubernetes, automation and building stuff on the web. Sometimes other topics sneak in as well.

Your e-mail address will be used to send out summary emails about new articles, at most weekly. You can unsubscribe from the newsletter at any time.

Für den Versand unserer Newsletter nutzen wir rapidmail. Mit Ihrer Anmeldung stimmen Sie zu, dass die eingegebenen Daten an rapidmail übermittelt werden. Beachten Sie bitte auch die AGB und Datenschutzbestimmungen .

vsupalov.com

© 2024 vsupalov.com. All rights reserved.