Dotfiles and diminishing returns

At what point is too much customization detrimental?


My interest in configuring my dotfiles and desktop has decreased tenfold after I started using macOS again last year. Though it’s not without its faults and flaws, macOS generally “just works” - a stark contrast to my Linux laptop. Setting up my window manager and terminal programs took enough time, but fixing hibernation issues, lid close functionality, networking and general program errors made my Artix-based ThinkPad one of the most counterproductive tools I have ever used to date.

There’s always the user to blame. If I correctly configured each of my programs and services, my old laptop would have functioned correctly. But so much rides on those configuration files, each equally as crucial to the system’s stability and functionality. Compared to macOS or even stock Ubuntu, a minimal install of a rolling-release distro offers the freedom to tailor the user experience from the ground up at the cost of convenience and (at least initial) ease of use. Yet over the past two-and-a-half-ish years I’ve been using a minimal distro I still haven’t created a configuration that works better for me than all-in-one options.

What confuses me further are some of the contents of my dotfiles. Many config files have lines ripped from others’ dotfile repos to which I do not understand the function. The most egregious contender was my neovim configuration; even after removing plugins and lines I did not notice a significant functional difference (it still needs some work though). I also removed many shell aliases despite the small convenience they provided; I want to learn and memorize the correct command syntax instead of relying on an alias file that will not be present on many remote machines.

This all begs the question as to why I even bother contributing so much time and energy into such a time suck. I hadn’t thought about it for myself until recently when my (Linux) desktop began to give me a headache and a half, due in part to game crashes, audio dropout and random cursor snapping. I would have no trouble creating a 101-entry list of why I dislike Windows 10, but at the end of the day it worked where Linux did not.

“Linux is free if you don’t value your time” is a popular talking point I primarily disagree with, but its criticism towards significant dotfile configuration and interface customization is plenty vaild in my eyes. For some, configuring (and compiling) a Linux system from scratch is a great fit for workflow, function and even hobby. For me, the point of diminishing returns rests somewhere in the middle of minimal and maximal configuration.

I will continue to use some of my configuration files going forward, albeit with some cleaning and modification. I’m not writing off tiling window managers, meticulous custom installs and other Linux fun, but their time and place is not on my primary machine when I want a computer that just works.


Tagged: linux configuration dotfiles