What do you do when the developers of your operating system make a design choice you hate? If your operating system is a proprietary code base, you have only a few choices, and none of them are very satisfactory.

You could just accept it. You can stick to the old version, at least until official support vanishes and you're left at the mercy of the virtual jackals. Or, you can complain bitterly in the hopes that someone cares. And if none of those approaches work for you, you can switch to another system, although you'll probably have to abandon your applications and data.

In the world of free software, you have more choices. Because your system is made up of free, reusable components, you could cobble together a similar system that meets your needs. And, you can release it so other users can benefit too.

That's exactly what happened in the case of UbuntuBSD. When Canonical decided to adopt systemd in Ubuntu, some users were far from pleased. Jon Boden was one of them. But, thanks to the flexibility of FOSS software, he was able to build his own version of Ubuntu without systemd—and his solution is quite intriguing.

Plenty of Ubuntu derivatives exist in the world, but until now, they all had one thing in common: they're all Linux OSes. With UbuntuBSD, Jon broke the mold by using a FreeBSD base.

FreeBSD has enjoyed a larger following in the server world than on the desktop. One reason for this is that the standard installation doesn't include a desktop environment, although most of the popular Linux environments can be installed on BSD.

The new UbuntuBSD distribution provides a simple text-based installer. It has an option to install the XFCE desktop environment, along with most of the packages you would find in Xubuntu.

Users who are expecting an identical experience to Ubuntu should review their expectations before making the switch. Although the new distro does cover much of the same ground, there are several important differences.

Although BSD and Linux are very similar, they aren't identical. The two projects have a very different history and include different features. They have a common ancestor in UNIX but both have evolved in different directions. These differences mean that BSD isn't a perfect replacement for the Linux kernel.

BSD does include a Linux compatibility layer that allows it to run the majority of Linux native binaries, but there are exceptions. Applications that rely on some low-level Linux system call will crash on BSD. And, then there are high-level applications that depend on systemd itself. This includes the GNOME desktop environment and other popular user apps.

That said, most of the target users for the new distribution are experienced administrators who are well aware of those dependencies. In fact, it's the tangled web of interdependencies that systemd has added to the Linux ecosystem that has motivated this project. For many, that's reason enough to move away from mainstream Ubuntu.

Systemd has enjoyed a rapid uptake since it was released in Red Hat Linux. Its design goal was to provide a unified base for all Linux distributions, and it has been adopted by many of the big players. But although systemd's expansion has been prodigious, it also has been controversial.

Before adopting systemd, Canonical was among its most outspoken critics. Mark Shuttleworth once called it "hugely invasive and hardly justified".

At that time, Ubuntu utilized the Upstart init daemon, which had been developed under Canonical leadership. But, when Debian switched to systemd, Ubuntu followed suit.

Although there are many arguments against systemd, the most common objections are that it violates the basic principles of the UNIX philosophy. The essential concept is that each piece of software should focus on doing one thing well. This leads to simpler programs that can be used to build a wide range of different systems. However, systemd takes a range of responsibilities and packages them into a single process. On one hand, this leads to a system that's easier to configure, but some argue that this is a case of putting too many eggs in one basket.

Regardless of your position on the systemd debate, projects such as the UbuntuBSD distribution offer a wider range of options to the FOSS community at large. And, there are cases where a BSD kernel will provide better performance than Linux.

Load Disqus comments