Please make sure to read until the end to get the full picture.
They really are. I've set up a jail for development work with a couple directories holding my projects, and with some custom scripts I was able to run commands inside jails from outside them seamlessly. No development tools ended up on my main system, which made it very tidy. Sort of docker-like experience, not true virtualization of course, but also without eating up all of your RAM, or hardly any RAM at all. Jails are probably the best things so far about the system that I've discovered. Sadly, some other things were not that great after all...
I am not a very picky person. In addition to that, I am willing to spend some time making things work if they don't.
I wasn't complaining about some minor stuff. Two finger scroll was laggy - I just used side scroll instead. Brightness up / brightness down multimedia keys were not recognized by the system - I used different keys. Brightness was reset to 100% everytime the system was resumed - I adjusted by hand, everytime. A single kernel panic was not pleasant, but I thought that I'd deal with it next time it happens (it never did).
Unfortunately, there are some things that I cannot overlook. Wifi breaks sometimes, the Internet connection is lost even though ifconfig says it is still connected. Standard up/down action usually fixes it, except for when it doesn't. It is extremely annoying since I can't even search the Internet for a solution, except for my smartphone which I don't enjoy using. And the problem always comes back, sooner or later.
While the ifconfig utility is very clean, desktop based network management tools are not as good. There is a network manager that shows up in tray and is quite similar to nm-applet on Linux, but it is not that great and need to be ran as root to even connect to a network. Using ifconfig to connect to a password-protected wifi network is beyond my ability (especially because you don't have the Internet available to help you when it needs to be done).
Probably the biggest problem I had was the inability to use the microphone. Was trying to set it up for an hour or two without much success. Actually, it seemed like it was working for a second, but then it stopped. I'm really not sure what was the part I was missing and in the end, gave up.
That's really a shame, because I liked the system. I wanted to use it more and make it my new home. Everything in the commandline was great, but some stuff outside of it - the exact opposite.
In the meantime I discovered many great open source ports of awesome games: Doom (gzdoom), Red Alert / Dune2000 (openra), Dune2 (dunelegacy) and Rollercoaster Tycoon 2 (openrct2). I also enjoyed some old games in DOSBox. All of these worked great, except for maybe openra, which crashed infrequently. It will likely be my best memory from using the system - it hasn't even been half a year and I'm already nostalgic about it!
I'm back on OpenSUSE Linux, which is installed on the same machine. Looking into LXC to replace Jails in my newfound way of running a system, I feel sad. I invested six months into learning FreeBSD, having a lot of fun in the process. Too bad it couldn't deliver everything I wanted it to. I consider it time well spent, even though I'm not sure if and when I'll run its installer again. Kudos to everyone who spend their time developing the system - for something that mainly runs on servers it's truly impressive what this small community of enthusiasts have achieved. Let me remind you that all the BSDs combined have well below 1% operating system market share - and the worst thing about it in half a year of usage was inability to get the microphone to work, which was very likely my fault anyway. Thank you!
I was perhaps a bit too quick with my judgement. It is true I had some issues with the system but in reality I was using it for long enough non stop to forget that Linux has its own set of issues. My FreeBSD journey sometimes feels more like a test of faith, but this time it was Linux that has failed me miserably by refusing to let me use my scanner after a distro upgrade. It got me upset enough to try it with the BSD.
And guess what - it worked! Compiling the drivers from ports tree was required, as precompiled stuff only handled printing. The point is that a fresh Xubuntu install with apt repositories drivers couldn't scan as well. That's a point for FreeBSD.
Additionally, I fixed my microphone (missing kernel module, duh) and wifi (had multiple configurations). Some of the tools I mentioned earlier as clunky have FreeBSD-specific counterparts which are actually not clunky.
There's a deep life lesson to be learned from this. You might think you have enough proficiency with something (a language, a tool, an operating system) to tell if it is good or bad, if it meets your needs or not. But then the night is darkest right before the dawn. That one final push may be something that will change your entire view. It certainly changed mine.
Published on 2021-01-08