Stuff I Use/My Workflow

[linkstandalone] Today I'm going to talk about the programs/scripts/whatever I use and have "effectively used my time" customizing. You might notice some common themes here, mostly that almost all of these tools are CLI/TUI based. While I could go into deatail about why I think this is a good idea, thats boring so I'll just put it down to personal preference. In a sentence, my setup is designed so that I can be as lazy as possible, using the fewest number of keystrokes and clicks to get the job done. Oh, and if you want to see some of my customizations and other things feel free to take a peek at my dotfiles.

Void Linux

I've been distro-hopping ever since I started using Linux and Void might be where I settle for good. This is for mostly feel-good reasons, but also because of some of the less common methods/utilities it uses compared to something like Arch or Debian. The most obsessed over is it's use of the runit init system as opposed to systemd. I can't say I have really much contempt for systemd, especially compared to some of the more "hardcore" unix guys but I do appreciate it's simplicity and focus on being solely an init system instead of a horde of hundreds of APIs and functions. It's also easier to use. It relies on the 'sv' command to run and stop processes and symlinking services to a directory to run them on boot. That's it! This is better explained in this blog post from Mike Perham. Something that's more appealing to me, however, is how it offers alternatives to other pieces of GNU software. The most exciting of these, to me at least, is that you can choose to use either a glibc or musl variant. Basically, this is the most minimal and efficient distro I have come across personally that doesnt require you to be a masochist in the way Gentoo or LFS would.

dwm

dwm is a window manager developed by the guys at suckless. I prefer this over most other /r/unixporn staples due to it using stacking, not containers. This means that when you open a window with dwm, it moves around the other stuff to the right side of the screen so you don't have to do that yourself. If that makes you programs look weird, you can also use the floating mode that lets you drag around and resize windows in a, well, Windows-like way. While it's community is tiny compared to that of i3 or desktop environments like KDE or Gnome, there are still a whole bunch of patches, scripts, and tweaks that let you turn dwm into basically whatever you want. Oh, and for a nice statusbar I've heard this script is nice ;)

Fish

Fish is a godsend for lazy people like myself, but is far from perfect. It comes with some very nifty features, such as syntax highlighting and autocompletion built in and enabled by default. This means navigating directories and executing commands is faster and prettier. This is a pretty love-hate relationship though as for whatever reason, Fish is not POSIX compliant at all and means that it cant run the vast majority of scripts it's handed. Luckily, there are alternatives like zsh-autocomplete and zsh-syntax-highlighting that emulate the key selling points of Fish so I'll probably move there in the future.

st

st is a terminal emulator that, out of the box, is a pain to use. It's missing key features like scrolling, Xresources support, and copying text. Don't leave just yet though, as like dwm and other suckless utilities, there is a dedicated community that provides patches to address features found in terminals like xterm and urxvt. This leaves you with a terminal that has only the features you want, and is extremely light. In particular, I'd recommend the clipboard, xresources, and scrollbacl patches as a good starting point.

Neovim

This is a fork of the superior text editor Vim. This fork strips out all the garbage collected over the decades of Vim development and adds some sexy features like a built in terminal emulator (before Vim copied that), sane defaults (syntax highlighting, auto-indenting, etc.), and the support for scripting with Lua. I don't actually care about most of that to be honest but it looks nice and it requires a hell of a lot less setup.

NeoMutt and Friends

For email stuff I use a combination of NeoMutt, isync, and notmuch. This was horrid to setup but in the end means I can check my email, open links, and sync mailboxes efficiently.

nnn

Most of the time, just using cd and ls is enough to get around directories but nnn makes it so much easier if you want to do anything more complex than going to your home directory.

Cmus

Initially I wanted to use MPD for music stuff but it doesn't play nice with external partitions so I was reccomended Cmus. This is a TUI, which makes more sense anyway as it lets you navigate artists, albums, and tracks visually instead of having to memorize all those things.

Firefox

I use Firefox along with (a slightly more leniant) ghacks-user.js for shitposting. I pair this with vim vixen for glorious vi bindings and ublock-origin.

RSS/YouTube

I recently found out about Newsboat, a super simple RSS reader. This is especially handy for me when paired with youtube-dl to list uploads from followed channels without having to deal with Googles nasty UI and ads. This means that I can just press the 'o' key over a video and it will open with MPD. Couldn't be simpler.

So That's It

I'm glossing over some minor stuff that I don't think is really worth talking about but hopefully you've found some cool things you can use to allow yourself to be as lazy as I am.