FreeBSD on the Beaglebone Black
An American-made Open Source Hardware computer deserves some good old American-made freedom in its operating system. Steve swaps Linux out for Berkeley Unix.
I have wanted to put BSD on the Beaglebone for some time. Since I retired my OwnCloud instance on Beaglebone, that freed one of my boards to become the new FreeBSD box.
I’ve taken a couple of stabs at it along the way, but the daunting part of the task was getting the boot image onto the internal eMMC to make it the default boot method. Presumably the eMMC should be a little faster, but I don’t think there is much difference. I tested it a while back and I didn’t see much of a change. Primarily I’d like not to have to keep the removable media around. My thinking on that has changed since I started using Raspberry Pi, where I really don’t miss the eMMC and actually like the flexibility of switching the hardware out from under the boot media.
The Debian distros for Beaglebone (I’ve used Wheezy, Jessie, and now Stretch) all have a simple change that can be made to a text file on the boot partition which runs a script that copies the disk image from SD to the internal eMMC. The BSD distro doesn’t come with the same script.
However, it’s not that difficult. It’s no different really than the method I use to write the disk images to the SD cards for Beaglebone or Raspberry Pi on the Mac, using DD at the shell. This comment on the FreeBSD forum made the process drop-dead simple. Compare it to the suggestions made earlier in the thread and you’ll understand why I had trouble with it in the past.
The Beaglebone is now booting to BSD by default. Since I’d like to use it even when not connected to the network, I’m going to have to build a real-time clock for it. I've got a couple of DS1337 chips kicking around here so building one won’t be a huge problem. For the moment however, NTP works well enough.
One cool thing about BSD: the distribution comes with vi. I mean plain vi, not Vim. I don’t have anything against Vim, mind you. It just seems a shame that most Linux distros don't ship with the original.
PS: don’t ask why I use vi instead of emacs. I have no strident opinions on the topic. I didn’t switch overnight and I didn’t make a conscious decision at any point. So I’m the wrong person to pick a vi vs emacs fight with.