I recently switched my laptop from Ubuntu to OpenBSD, and t…
I recently switched my laptop from Ubuntu to OpenBSD, and then to FreeBSD. I was sick of feeling like my system had a lot of redundant components and needless bloat. I decided to switch to *BSD because I like the idea of having a complete, cohesive system.
Replies
The main difference between GNU/Linux and BSD lies in the way the systems are put together. In GNU land, systems are put together from independent programs written by different developers. *BSD is different, as the entire OS is designed as a single system.
The Linux way of doing things sounds great, as you can use whatever combination of tools you like. However, developers don't always share the same goals when designing their programs. This can lead to tools needlessly increasing in scope, like systemd.
What you can and often do end up having with GNU/Linux is a system filled with tools that overlap in features, causing redundancy and therefore bloat. A complete departure from the Unix philosophy of designing programs that "do one thing and do it well."
BSD systems are different however, as the kernel and userland/core utilities are developed and maintained in-house by the same team. This means the goals of the developers are aligned, allowing for the system to be kept as small and simple as possible.
As for the actual systems themselves, I tried OpenBSD first. The installation was a breeze, however post-install setup was more difficult than I'm used to. I had some driver issues and no 3D acceleration, so videos and web browsing were unbearably slow.
Frustrated with the performance and lack of support, I tried FreeBSD instead. The installation went even smoother than OpenBSD. WiFi worked out of the box, and the OS was using 8mb of RAM at idle with no GUI. For me, this was like something out of a dream.
With a minimal i3wm GUI set up, my memory usage SKYROCKETED to a whopping 70mb! In this state, the system had about 200 packages installed, compared to Ubuntu's ~1800 packages or so for a default installation. At this point the benefits were obvious to me.
This simplicity makes for an incredibly light system with very low overhead. It also makes it easier for me to learn how the different individual pieces of the system work together to form the system as a whole, without any unnecessary or redundant parts.
The key takeaway from this is that there are non-placebo benefits to applying the KISS philosophy to your system(s). https://en.wikipedia.org/wiki/KISS_principle
That doesn't have to mean installing a new OS, just keep your toolset as simple as possible.