OpenBSD: Installing WiFi Firmware for a MacBook Pro

2023-01-14

After coming into a possession of an Early 2015 MacBook Pro, it turned out to be a perfect opportunity to install OpenBSD. This crystallized as a result of having some older, but still perfectly performant hardware, along with my recent run-ins with principles related to permacomputing. The latter deserves a future post all on its own, but in short the ideas center around resilience, sustainability, and our relationships with hardware and software.

This particular device has an Intel i5-5257U CPU, 8GB RAM, a 120GB SSD, and a Retina display. Installing OpenBSD 7.2 was rather uneventful and less involved than my experience with FreeBSD. Due to licensing, not all firmware is able to be shipped with the base install so I took the route of post-install configuration.

Not knowing exactly what I needed, save for the wireless device, I downloaded all files located at firmware.openbsd.org for 7.2. Download firmware specific to your release.

$ wget -r --no-parent https://firmware.openbsd.org/firmware/7.2/

I moved these files to a USB flash drive, mounted the device on the MacBook, and ran the fw_update utility.

# doas mkdir /mnt/usb_drive
# doas mount /dev/sd2i /mnt/usb_drive
# cd /mnt/usb_drive
# doas fw_update -p .

You should see output similar to that listed below:

fw_update: added bwfm,intel,inteldrm,vmm; updated none; kept none

And that's really all there is to it. Be sure to follow up with an appropriately configured /etc/hostname.xxx file for the device, in this case bwfm0, and reboot.