As I mentioned back in January I was targeting Linux again, but I gave FreeBSD 14.0 and 14.1 a solid attempt, and although it’s great as a server operating system* I just can’t justify having to constantly hack with it as a desktop operating system. Once set up and if you’ve got the right hardware, it’s rock solid, but no moreso than most Linux builds.
* As a server FreeBSD provided me with everything I needed with a little self-ingenuity. Some things were a little more work than I feel I have spent with Linux, some things less. It's different, but the same in many ways.
My Background
For the last two decades I’ve been an Ubnutu user on both my desktop and the server, but the decision to force snaps is one I firmly stand against.
I swore by Ubuntu Server because LXD is what I considered its “killer app”. The ability to easily manage, snapshot, move, and copy both containers and virtual machines on a small-server setup kept me on that platform.
That is until Ubuntu moved it to snap. The upgrade process from a .deb to a snap was a nightmare as the auto-upgrade for the containers failed miserably. It also moved all of the LXD development in-house. Although it is still an open source project, it’s no longer a project I could contribute to easily.
I still like Ubuntu for what it is, and there are many guides to remove snaps from the desktop and server, but I’d rather not hack the system into something unrecognizable to an admin working behind me.
My Choice
After many weeks of part time research and experimentation I settled and chose Debian as my Linux distro of choice. I considered a Red Hat distro, but I’m not happy with how that company is handling open source. I understand why they chose to close up the source behind a paywall, but it hurt the trust of the “freeloaders” like me…although I rarely used CentOS.
I chose Debian because it’s the “father” distribution of Ubuntu and many, many others. Since it’s very close to Ubuntu in many ways. The only piece of the puzzle left was a replacement for my workhorse LXD. It turned out that I wasn’t the only person who was unhappy with Ubuntu’s move.
Enter Incus
Incus is a truly open source fork of LXD by the original developers. I had tested it out for a while and found it to be just as snappy and familiar as LXD. My biggest problem was my muscle memory still typing ’lxc’ instead of ‘incus’ as the invocation command.
Migrating from LXD was an amazingly easy process once all the dependencies were there. It even uninstalled the LXD snap on my test Ubuntu servers. Three months ago I migrated my production server. The downtime was only a few minutes as each container and VM was restarted under the new management. The process was far from the nightmare when upgrading from Ubuntu 18.04 to 20.04.
Final Thoughts
If it were not for the Incus project I’m not sure what I’d choose. FreeBSD Jails are great, but the system needs a standardized in-base supported jail manager such as Incus which help create and manage both thick and thin jails. This was still a great possibility for me to handle, as I very nearly got the FreeBSD desktop working as expected. My biggest problem is time.
I no longer have the time or energy to hack a system and fight Cancer. My choice wasn’t a settlement; it was a firm decision. In the untimely event of my passing, there are many more familiar with Linux than FreeBSD despite the excellent documentation of FreeBSD.
A Covenant
Starting this weekend over the next I’ll be writing up my step-by-steps for both Debian as a Desktop and Debian as a Server as I use it - whether it’s “correct” or not. I’m a “hey it works” kind of devop fellow, but I’m still mindful of security.