/posts
28 Dec 2024

System Nomadism

This is first of all not a term I'd like to coin, it seems a bit unwieldy and really I just needed some way to name this post.

Many years ago my computing setup was very much based on the notion of settling in permanently on a given system (installation). This had many reasons, like at some point the fact that I was still using Windows and didn't really know how to (re-)install the system myself, or that it was tedious to do so because first of all Windows, and then also all the drivers ... or that I was using proprietary applications that each needed their own annoying installation routine, some of them even involving DRM systems based on serial key input, online activations, USB dongles (yikes!), cracks and so on and so forth. Also post-installation I was very eager to adjust system settings, customize interface themes, install plugins, etc.

Fast forward to today: I've abandoned proprietary systems and software about 99% - which took many years and sacrifices like throwing away a bunch of work stored in propietary formats and losing workflows I had built over the years (gaining others elsewhere though, it was worth it!). Which is by the way not meant to signal "Why are you still using proprietary stuff?" - these things are damn hard to change and to some degree it's more a matter of privilege to be able to make these changes - I'm just stating this as matter of fact because it really is a prerequisite to what follows. So being on a (mostly) free software based setup now, bootstrapping my system has become a relatively trivial procedure. I can effortlessly set up a working system for my day to day practice from scratch in a single session of around 1-2 hours (significant part of it being me staring at my linux installer filling the SSD with zeroes before full disk encryption). And from system level down to application level I've adopted a stance of not swimming against the current if I do not absolutely have to: Graphics program switches from left click to right click select? I'll see if I can live with and embrace the new default, and save myself customization. X looks nicer with user customizations, but Y looks good enough out of the box? Y it is! This all boils down to keeping the list of things that need manual customization short and sweet. This also entails me not trying to (or not establishing a need for me to) carry system or application settings from system to system, some basics aside.

Declarative systems interlude: This is where some of you will probably have a voice in your head grow louder, mumbling "nixOS" or "Guix" (I didn't mention it but I'm running Debian 12 everywhere at the time of writing). And I agree, ultimately this is where it's probably going. I can't know it, or rather, don't consider it worth measuring, but right now (and I tried nixOS at least) I'm content with deterministic repetitiveness in doing a few manual steps when setting up a fresh system, vs. indeterministic research of how to get things automated with a declarative operating system.

What is the point of all this? I guess it's me reporting that it's possible to keep a system so light on setup overhead that you can at any time "tear down your tents" and start anew on a different piece of silicone. And that this is even fun and fulfilling.

And I guess you could call that System nomadism then.