Get some superpowers with your terminal
2019-12-31Last modified on 2021-05-24
This article is the written version of a small talk I gave in multiple conferences (Devoxx France, Voxxed Days Luxembourg, Jug Summer Camp, Voxxed Days Ticino).
At home I use Linux. I used to play with Ubuntu but I switched to Arch Linux about 5 years ago. It is a rolling-release model (no huge migration to upgrade, always up-to-date). I like to live dangerously :smile:.
It works well and I have never broke my system. I also used the same at work previously.
Arch Linux comes with a default package manager: pacman. I also use yay to reach AUR (the Arch User Repository) with tons of community packages.
I use i3, a tiling window manager.
It is pretty cool to move windows around and organize them in workspaces.
I am using a friend's configuration file.
About the status bar, "it depends". I often use the standard i3 bar, and I also playing with polybar, even if I did not make the switch yet.
I use rofi as an application launcher.
I spent some years with urxvt, but I am now using kitty.
I spent a lot of time with the good old bash, then switched to zsh, and was quite unhappy with it. I needed to add plugins and stuff, and it was slow.
I found happiness with fish, which is not compatible with bash but has tons of default things that just work. If needed, there is a package manager: fisher.
Directories & files
ranger is great! It allows to browse my system, copy/move files around, preview them. I use a lot the shortcut
S, to open a shell in the folder I am currently viewing.
I also use
z a lot to jump around.
feh is what you want!
It is very lightweight and super effective to display static images (no gif!).
I also use feh to setup my wallpaper, with
feh --bg-fill ~/wallpaper.jpg
zathura is a simple and effective document viewer.
You can browse your docs with the holy keys: j, k for scrolling; J, K for page jumps, and h, l for left/right.
The theme can be customized.
ALSA and the
alsamixer tool for sound and volume management.
I use mpd, a daemon to play music, with the ncmpcpp frontend.
Other nice tools: cmus, moc (music on console).
When working with git, I love tig and I also use some extra functions from git-extras.
Other nice tools:
Videos and animated images
mpv is my favorite video player! It can play everything, and has a
--loop to display animated gifs :smile:.
ffmpeg is also a great tool to work with videos.
Mails and contacts
abook is a contact manager app. Its file format is plain text and it would be easy to write tools to generate is to import all your contacts.
I use neomutt and I configured everything with mutt-wizard
I stopped using LastPass when they were bought by another company.
I use pass and the Arch Linux wiki page about it is great.
(neo)vim or emacs?
None! kakoune FTW!
Exception: not in the terminal
My browser is qutebrowser, a browser using QtWebEngine inspired by vim.
The best thing for the end
thefuck, to fix our typos when we type a command.