Last year I took an old Dell Inspiron I bought second-hand in 2017 and tried some new Linux installations on it in order to build myself a “just focus” laptop.

My goal:

  1. a laptop that I could use with no graphical systems (just terminal) to do work in.
  2. …but which optionally supported graphic use case (browser, PDF reader, middle-age-eye-friendly font size in a terminal application)

I wound up writing about and greatly favoring AntiX before returning home to Debian. I was happy enough.

But then my colleague Ray clued me into a really great interview with FreeBSD maintainer/collaborator Allan Jude and Jude seemed really great.

Without ego (which he has some right to), Jude explained the design of BSD and a few features really interested me.

  • On GNU/Linux systems, the kernel and the operating system are separate, major buckets. They work to align of course, but there’s no necessary question. GNU/Linux offers a Linux kernel and a GNU userland. FreeBSD does not – the kernel and the applications are build against the same libraries and leverage each other without
  • Snapshots of the disk state are built-in (handy for backup/restore)
  • The boot environment can be saved so that a change can be tested
  • Together, snapshots and boot environments mean that the OS can be upgraded and reverted easily – and those concerns live entirely separate from your home directory data. I really never want to have to slot a USB key or download data from a networked repository again to get my “focus machine” workspace initialized
  • I found out I could get the Solaris graphical environment I loved from my Sun days, “CDE,” running on FreeBSD. I loved the pastel calm of that environment. If there’s any graphical environment I’d break from Wayland+Sway for, it’s that one. And only that one.

So, I made the jump. Coming in with 10 year old hardware meant that it was going to be a little bit risky. And yeah, some things just didn’t work out of the box. But I documented my path and will share those items down below.

Final Analysis

Screenshot on a curved monitor of FreeBSD 15.0 running Wayland+Sway as graphical system to host an instance of Medley Interlisp exploratory programming environment.
Screenshot on a curved monitor of FreeBSD 15.0 running Wayland+Sway as graphical system to host an instance of Medley Interlisp exploratory programming environment
  • Ultimately I have a from-source build FreeBSD 15.0 laptop working with sound, graphic environment (Wayland+Sway) and Wifi
  • I even found some nits in the startup experience and did some kernel hacking to change it. It was a really fun experience. While my changes will probably never land in the kernel, FreeBSD’s lucid source code and stellar documentation helped me to make a few cool alterations in C to have an even more custom experience
  • Reading this source code is an education in C and writing an OS kernel. I don’t have a CS degree, but I have learned so much about how to implement a multi-user, multi-program OS from this source. It’s truly an educational gift
  • I was able to install the Medley Lisp programming environment on FreeBSD with no major pains. That’s a credit to the Medley team and the FreeBSD team
  • Because it’s build on FreeBSD, as was Solaris, the OS I used while sysadminning, I feel so very much at home. I just know where things are. The OS is run by system scripts versus the somewhat opaque systemd. Paired with outstanding documentation, maintaining and grooming the system has been a simple research effort. Oh, and thank to boot environments and snapshots, once you figure out a configuration that works, it’s likely to stay working, even across upgrades
  • I’ve found the forums and mailing list community to be professional and thoughtful

All told, I find it a wonderfully clean, minimalist, thoughtful, and elegant operating system. On top of that, it’s free of some of the weirder Kool-Aid qualities associated with GNU that I’m not a fan of.