Table of Contents
This page goes through the different utilities and programs I use on my computer everyday.
ArchLinux tends to be bleeding edge and very configurable, which makes it very nice for desktops. Alpine on the other hand, is very lightweight and leaves me with very little overhead on server environments.
An overview of my favorite server components and tools belongs on another page that has yet to be written.
For those unaware, a desktop environment is the collection of software that the user interacts with while using a computer. It handles power management, icons, fonts, toolbars, widgets (if you use those), and of course your windows.
My desktop environment was configured from the ground up using a window manager1 and other assorted programs. My window manager of choice is i3 because of it’s easy configurability and powerful tiling system.
In addition to i3 for managing my windows, I also use:
- dunst as my notification daemon
- rofi as my application launcher and switcher
- polybar as my desktop panels
- xscreensaver to lock my screen
- feh to set my desktop background
In theming my system, I set most configuration values using my
.Xresources2 file. The key things set here are colors and fonts.
Currently, I’m using the Dracula color theme for my
system, and using Recursive Mono for my monospace
My terminal is probably the most used application I have on my system. I currently use st because it’s fast, simple, and it has all the features I need out of a terminal emulator.
St (Simple Terminal) lives up to it’s name and is exactly what it claims:
simple. It comes without bloated features or fancy buttons. This means that a
lot of people ‘patch’3 specific features into
st when they build it. I
however, like to keep my
st build pretty small and only use a couple patches:
- boxdraw, which enables proper box characters in TUI4 applications.
- copyurl, which lets me easily
copy a link on screen by pressing
- xresources, which allows
stto change some configuration options on runtime using values from Xresources (such as the color scheme).
In replacement of some seemingly core terminal features (like a scrollback buffer), I use tmux. Tmux handles scrolling, multiplexing, and I have it configured to share the system’s clipboard.
The browser is probably the second most used application on my computer. I use qutebrowser because of it’s tight vi inspired, keyboard focused, interface. Under some circumstances, I will launch Firefox if qutebrowser doesn’t have a feature I need to use.
A good text editor is a crucial part of any system, and I can’t say many would beat vim. I use vim just about any time I edit text, including writing this webpage. My vim configuration is also kept to a minimum. Most the changes are purely quality of life improvements such as: small theme changes, indention settings, and line/column highlighting.
My email setup revolves around neomutt but uses a few helper programs to complete the setup:
- msmtp to send emails
- offlineimap to synchronize emails locally
- khard for contact completion when sending emails
Vim is also used as the text editor when composing emails.
I currently use newsboat as my RSS newsreader. It’s lightweight, fairly configurable, and easy to use.
A window manager is the part of a desktop environment that handles displaying and laying out the windows you use on your computer. ↩︎
.Xresourcesfile is used to set a centralized collection of values for other programs to use. ↩︎
St is designed to be built from source and any extra features can be added by applying a patch to the source code before compiling. Suckless (the developers of st) keep a listing of patches on their website: https://st.suckless.org/patches/ ↩︎
TUI stands for Terminal User Interface and is commonly used to refer to applications that are run inside a terminal emulator. ↩︎