# Year of the BSD Desktop

For as long as I've been Linux-curious, I've been even more BSD-curious. In fact, if you follow me on the fediverse, you probably even know me as someone who talks a lot about an OS called "NetBSD". However, this post is not about NetBSD, but a different BSD.

I have decided, after arduous research, that I want to use FreeBSD as a desktop operating system.

## Why not Linux?

Let's start with what it isn't. It isn't some anti-GPL crusade. In fact, I prefer copyleft over permissive licenses more often than not, though I don't feel strongly enough on the matterfor that to reject a program. It isn't some anti-GNU thing. I have my long list of criticisms and even outright condemnations of the FSF, but GNU is fine enough. Besides, if that were my issue, I could just use Alpine Linux. That's an excellent distro that I have used and really one of the few Linux distributions I could see myself seriously use.

For the most part, it's personal preference. I prefer BSDs over Linux for one main reason.

Separation between base and packages.

To my knowledge, there is no distribution of Linux that does this, and understandably so. It'd be a maintainability nightmare given how often new kernel updates come out, including patches and so on. The closest would be immuntable Linux distributions like Fedora Silverblue and Bazzite. These are good operating systems, but I found working with them to be chafing. I also heard from a mutual of mine on the fediverse that a minimal Slackware install plus NetBSD's pkgsrc could accomplish something similar and that would be worth looking into for curiousity.

## Why not NetBSD or OpenBSD?

Features and hardware support.

NetBSD is amazing for old hardware. It's truly wonderful what NetBSD can do for old hardware. However, it's not so good on newer hardware. That's perfectly fine, as what I use it for is older hardware that likes nothing else. That's fine. NetBSD's niche is why I love it. If I wanted to, I could just use bhyve and run a NetBSD virtual machine on FreeBSD anyways.

OpenBSD's hardware story is definitely better for new hardware, but it's not perfect. It supports my desktop fine, but I find it more useful as a server. I have some OpenBSD systems at work that proxy webpages we need on the internet and it's incredibly painless. I love OpenBSD as a sysadmin. Again, if I wanted to, I could use bhyve and run an OpenBSD virtual machine on FreeBSD.

## Why FreeBSD?

FreeBSD has features I like:

1. Separation between base and packages - This gives me stability without the limitations of immutable Linux distributions. This to me is the main attraction to BSDs in general.
2. Jails - They are like containers, but they seem more understandable than just using Docker or Podman. I can have a clean development environment for a webapp I want to make. I can configure packages my way and have it be the same across all my computers that run FreeBSD with Poudriere.

It doesn't really do anything terribly unique to other operating systems, but it is the only operating system that gives me both the stablity that the split between base and packages gives me while giving me containers. For that alone, it's worth my money to buy hardware with FreeBSD in mind.

I've had some less than stellar experiences with FreeBSD in the past, but this time, I'm going in with proper hardware as I feel that was where my failures lie. My Thinkpad L15 (Gen 1?) as a stupid Realtek card but it can be replaced with minimal fuss based on what I've seen online. My desktop can have anything I want it to have, so that is also a non-issue.

## The Process

Well, that'll have to wait for later. :)