While desktop Linux has a dedicated following, most people think of the BSD family as better for servers, if they think of BSD at all. MidnightBSD is a spin on FreeBSD, attempting to create a BSD system for the desktop.

Let's take a look at MidnightBSD and its features, and discuss whether or not it is a suitable alternative to the Linux desktop.

What Is MidnightBSD?

MidnightBSD website

MidnightBSD is an operating system based on FreeBSD with modifications to make it more suitable as a desktop system. It was founded by Lucas Holt and named in memory of his cat, a black Turkish Angora named Midnight.

As many cat owners have discovered to their delight or consternation, Midnight had a habit of sitting on Holt's computers, and Midnight constantly shut one of them down. The project logo features a black cat sitting on the Moon.

"The FreeBSD project has developed a reliable server operating environment, but often usability and performance on the desktop are overlooked. Scheduling, allocation of resources, security settings, and available application support should be tailored to desktop users," Holt writes on the project's About page.

Features of MidnightBSD

MidnightBSD uses the Xfce desktop but had previously used Window Maker coupled with GNUstep, similar to the NeXTSTEP environment that is the basis for the modern macOS.

MidnightBSD has its own package manager, mports, which we will discuss below.

It also offers the doas command for administrative use from the OpenBSD project. It's similar to sudo but its syntax file is easier to understand.

Installing MidnightBSD

MidnightBSD installation program

Installing MidnightBSD is similar to installing a standard FreeBSD system, or any other Linux distribution. The installation system is text-based, without any graphical options. You just answer questions about your system.

If you don't have any other operating systems installed, you can just use the guided partitioning option over the entire disk.

The system will also walk through setting up network interfaces, time zones, and user accounts, including the root password. When setting up users on BSD systems, remember to add any administrative users to the "wheel" group, or they won't be able to use the su command.

Once the installation completes, you can reboot and find yourself in the main system. The initial setup is also text-based. You'll see a prompt asking if you want your system counted in official usage statistics, but this is optional. The system will also ask if you want to install the desktop environment.

The MidnightBSD Desktop

midnightbsd desktop

When you launch MidnightBSD, you end up with the standard Xfce desktop environment you may have seen in other Linux distributions.

You also don't get much else out of the box. You have the Midori browser, the Orage calendar, and the Orage Globaltime clock application.

The system has been under active development for more than a decade but still seems rough around the edges. This may be due to the transition to a new desktop environment.

Package Management

midnightbsd package manager

As with other BSD-based systems, MidnightBSD uses a ports system to manage packages, dubbed mports. It's derived from the FreeBSD port system, which compiles programs from source code. MidnightBSD installs the Clang compiler, which many FreeBSD systems already use because it uses a more permissive license than GCC.

To install a port, you navigate to the /usr/mports directory, organized under the type of program, such as "www" for web browsers, and "games" for, well, games. You go to the directory of the name of the program you want to install and type "make clean install" as root to install it.

This will compile and install the package and its dependencies, and then clean up the directory so that any directories are clean of any files that were compiled.

In theory, this should go smoothly, but there were some errors when attempting to compile other applications, including the standard Vim and the Firefox web browser. There are also binary packages available, but any attempt to update the system gave a database error.

What About GhostBSD?

GhostBSD is another attempt to create a desktop version of BSD that’s more attractive to people without any Unix experience. Its first impression is that it’s a more polished system than MidnightBSD. It has a graphical installer that runs from a live CD. It also uses the Firefox browser by default instead of Midori.

Related: Free Operating Systems You Maybe Never Realized Existed

Is MidnightBSD for You?

MidnightBSD attempts to be a user-friendly BSD-based operating system, but it’s still not quite ready for prime time.

The text-based installation will likely put off non-technical users. The project's website says that it’s not intended for newcomers. People who have experience with other BSD systems or more technical distros will likely find installation easy.

The bugs in the system will also be dealbreakers even for seasoned Unix/Linux users. Even expert users expect to be able to surf the web or install new software. A lot of the documentation is still incomplete or outdated, which is also frustrating when attempting to navigate a new system.

It will take a lot more work to make it truly suitable for technical users, let alone novice ones. Still, it might be fun to test out in a VM. MidnightBSD can’t be recommended as a daily driver operating system just yet.

More technical users will be better off with other BSD-based systems like the standard FreeBSD, as well as OpenBSD, DragonflyBSD, or NetBSD.

For users who want a slick BSD-based desktop and don’t want to pay the “Apple tax” for macOS, GhostBSD with its more polished experience might be a better bet.

These attempts at a user-friendly BSD still have the problem of limited hardware support, meaning you have to be very careful if you’re in the market for a new computer. Standard Linux distributions run on a wider variety of hardware, including graphics and Wi-Fi adapters, the latter of which is a common sticking point in the BSD world.

A BSD-Based Alternative to the Linux Desktop

Despite MidnightBSD’s faults, it’s nice to see the BSD community making an effort at a desktop system. Maybe someday it will attract a critical mass to make it a contender.

You may be wondering whether you should choose a BSD or Linux-based system if you want to run a Unix-like operating system on your computer.