I love Linux and one thing I love about it is that you can set it up just right for yourself to make yourself super productive and make working in Linux very pleasant.
What are your favorite tools to setup and use?
EDIT: I was writing out a list of my own tools and that ended up turning into a blog post about my favorite linux tools. :)
Top comments (37)
I ♥️ ohmyz.sh
I use command line a lot and zsh helps me to write less to do more.
I just set it up yesterday. I'm loving the command line highlighting!
how about powerline... ?? im a newbie...
Love it too, but it just gets so slow…
✂️ CopyQ Clipboard Manager - cannot live without a clipboard manager anymore 😄
⚙️ Enhanced file path completion in bash - ZSH-style partial file path completion for Bash
✒️ Typora for writing my personal programming knowledge base in Markdown
🔄 And my terminal with my two most favorite Bash aliases:
Mac OS X Style
open
Usage
Opens the file in default browser
Opens current directory in default file browser app (e.g. Dolphin)
Copy to Clipboard
Usage
I didn't know about the mac-style open! I immediately added that to my
.bashrc
. AWESOME! :)Just installed
bat
. It's amazing! Should be provided by standard package repos by default!Since you've stated a few replacements for standard software rewritten in rust, I'd like to throw
rg
in the ring as well: RipGrep. A grep replacement written in Rust. Seems to be much faster.Check out exa as well - replacement for
ls
written in Rust. Faster, better syntax highlighting, expanded options. Aliased ls='exa' on almost all of my systemsI use Kitty on Solus (perfectly stable, never had an issue) and on NixOS a while ago (actually unstable). I guess is more a question of environment that strictly Kitty fault...
lsd is a good find :)
I've used
bat
which is great but I've never heard oflsd
. Installed it, and I'm loving it!Fish Shell or prezto for zsh. Fnm instead of nvm. But yeah pretty much you just described standard setup.
I use bad and fzf everyday. I love the UX that fzf provides, and how hackable it is to create new new commands/aliases from it.
First two are already addressed by Ivo Limmen comment:
Then:
The Silver Searcher/ag - A code-searching tool similar to ack(, but faster)
Neovim/nvim - Vim-fork focused on extensibility and usability
nnn - The missing terminal file manager for X
Ruby Version Manager (RVM)
z - jump around, it will track your most used directories, based on 'frecency'.
My own nautilus.actions that use a few custom scripts to clone repos from URL in memory, copy paths, open repo page in browser, etc
fzf - big time!!
Honestly, the single biggest thing for me has been Powerline on top of ZSH. It's wonderful being able to tell at a glance without reading anything whether it's a local or remote shell, root or not, what editing mode the prompt is in (I use vi-style line editing), and if in a git repo whether the working directory is clean or not.
Others for me include:
top
even before finding htop. I now use htop in deference to almost anything else unless I need very specific info that could be found faster by querying/proc
.tar
command on steroids.I rarely open a terminal without tmux (a terminal multiplexer like 'screen'). From there I run htop, vimwiki (for documentation), and various other utilities as needed.
copyq (already mentioned) helps a lot with terminal/app copy paste as well.
tmux is fantastic. I've slowly stopped using it as I utilize i3 and VIM more heavily.
But I'd like to get back into it. It's sooooo good.
I just discovered broot last night. Its a really cool tree like command that allows you to do things with files and directory with a very nice fuzzy matching interface. It is quite different than fzf.
Fish shell, tmux, nvim, links2, awk, htop, bat, fzf, fd, nano, the clipboard tool from gnome which I fail to remember the name, gpaste maybe? Btw, if you like command line highlight, you should try fish shell 😜.
I've tried fish and I liked it! It's got fantastic autocomplete suggestions based on history. That's been like the biggest feature for me with Fish.
Nice! take a look at this: github.com/edc/bass (for bash scripts).
it's the only caveat I can find about fish, it's not POSIX compliant.
Here's my must-haves:
By the way, I use Ubuntu MATE.
Not necessarily a "productivity" tool, but I see nobody's mentioned mtr, which is a shinier version of
traceroute
in the same way thatncdu
is todu
.