I’m switching back to running FreeBSD rather than TrueOS, after running TrueOS for about 1.5 years. The reasons I’m doing this might be helpful to the TrueOS developers so I thought I’d post it here.
I originally started using TrueOS because I wanted to be more bleeding edge in order to support my laptop. A few changes have made this less necessary:
- I feel more comfortable running and managing 12-CURRENT myself. Although I was motivated to become more comfortable after becoming dissatisfied with TrueOS.
- The graphics stack becoming stable and a package made it less annoying to run bleeding edge myself.
The primary reason I’m moving back to vanilla FreeBSD is because I feel that TrueOS has growing beyond its development resources and the quality is suffering.
Note, however, that I have been running UNSTABLE TrueOS, however I believe my points apply even regardless of that but someone may disagree.
So here is the list of things that, when combined, pushed me to switch back:
- While openrc is faster for boot times, I found it less convenient for almost every other use case. For example, I wanted to use pf rather than ipfw, however TrueOS wants ipfw by default. I couldn’t turn it off via
rc.conf, I had to hunt around until finally figuring out how to turn it off in openrc (tangentially, that TrueOS used ipfw and it was on by default was not even documented which made this even more challenging). Similarly, one argument for openrc was that networking could be separated out to the different interfaces rather than one service to cover all of them, allowing for more control. But even after over a year with openrc, restarting
network.wlan0sometimes worked, sometimes it didn’t. I often had to just resort to restarting all of networking anyways.
- Over the last six months, updating the OS has been a significant pain point. Even in UNSTABLE, I would expect the update path to be rock solid. Instead, I multiple times had to revert to a previous BE in order to update to the latest OS version. This was usually annoying as I lost packages I had installed in that time. This happened multiple times.
- The transition to ipfs for upgrades didn’t seem to solve any problem I was experiencing and it left me with an
ipfs-godaemon running in the background consuming a non-trivial amount of CPU. Since I was running TrueOS on my laptop, this reduced my battery life. Even switching to traditional upgrade path didn’t stop running
- The GUI interfaces can be convenient but they are not polished and they haven’t really been getting better. It doesn’t feel to me that the TrueOS team has the resources to make polished, high-quality, GUI configuration tools.
- In general, I believe TrueOS is growing too different from FreeBSD. Knowledge doesn’t transfer well, anything with an init script needs to have it modified for openrc. These things build up and take up time and resources. I cannot name one feature that I would consider done and rock-solid in the last year (but maybe I just missed it). Instead we grow features, lumina, openrc, syadm, updates via ipfs. I just don’t feel confident the team can sustain these things in the long run.
- Less strongly, the one time I did try to contribute to TrueOS, my github issue (which boiled doing to “I want to make small change X, but I’m not sure where I should put Y, I’m willing to do all the coding”) went untouched for months. That’s only one example but so I don’t know if a pattern can be extrapolated, but first impressions do count. The slow feedback put me off from trying to contribute.
Take what one will from this, they are just my experiences and opinions, so I’m sure others have had different.
On the positive side, I would like to thank TrueOS. The state graphics was in when I decided to move to FreeBSD on my laptop was not user-friendly and I would probably have given up if TrueOS hadn’t just given me an OS with the graphics stack setup. Because of TrueOS, I am a happy FreeBSD user.