Flash NomadBSD from a Chromebook howto

Here’s my how-to on how to flash the NomadBSD image directly from a bog-standard Chromebook (or box or base) without having to be in developer mode!

This reads like a lot, and I guess it is, but once you do it, it’s no sweat to do it again. :slight_smile:

Why? Perhaps you are in a ChromeOS-only environment, and like me desire to put NomadBSD on some other devices you may have around, like earlier model Chrome devices that have gone EOL. You can also flash the NomadBSD image to put on a PC as well if you like - say it has no OS, or network connectivity and you can’t follow the standard method of using a PC to burn the NomadBSD image in the first place! Whatever your deal is.

Objective:
We are going to gather two tools from the Chrome Web store, and with one of them, trick it into thinking the NomadBSD image is a Chrome recovery image, when in fact it is a NomadBSD bootable image in disguise!

Tools to gather from the OFFICIAL web-store:
1) Wicket Good Unarchiver (Aka “WGU”) files-app add-on.
2) Chromebook Recovery Utility (If you don’t already have it installed)

ChromeOS doesn’t make unzipping easy, nevermind the LZMA format that the NomadBSD images are in. That’s why we need to install the WGU extension. NOTE: this is an add-on to the ChromeOS files-app, and is not a stand-alone de-archiver. In addition, the web-store will show a notification if it is “compatible” with your machine.

The Chromebook recovery utility can be tricked into creating a recovery-image from a local image onto a usb stick. The TRICK is that once you download the NomadBSD lzma image, und have unarchived it into the big .img file, you have to RENAME the image in the files app so that the extension is .bin Now the utility can actually recognize the image which I believe internally just does a dd method.

STEPS:

(Note: be sure you have a lot of space on your internal drive if you have a small or cramped disk. The hamburger-icon (3 vertical dots) in the files app will guide you. I didn’t have much space so I had to do a juggling act with the downloaded file, and the unarchived one between spare stick storage and the internal drive.)

A) Once you have the WGU extension installed, and the Chromebook Recovery Utility, and you have downloaded the NomadBSD image, right-click on the lzma file to unarchive it.

B) Have patience!! WGU took about 5 minutes to “scan” the archive before the files app returned showing the unarchived NomadBSD file with the .img extension. Grab a coffee, mow the lawn, whatever since it will appear like nothing is happening, but eventually it will open.

C) If you have space on your internal drive, copy the newly unarchived .img file to the Downloads directory for instance.

D) Rename the unarchived .img file to have a .bin extension instead of .img For example, I renamed my NomadBSD-1.4.img to NomadBSD-1.4.bin

E) Open the Chromebook Recovery Utility. Click on the “cog” icon and choose “Use Local Image”. Select the NomadBSDxxx.bin file you just renamed.

F) If you don’t already have a spare blank usb stick handy, insert it now. The recovery utility will warn you if you haven’t inserted it. If it isn’t detected, close the utility, insert stick, and start the recovery utility again.

G) Let the recovery utility flash your new usb drive. Be NICE to your stick when it is done, and properly unmount it.

Tada! Now without having to use a PC to create the NomadBSD bootable usb stick, you can run it on say an earlier Chromebook/box/base. (Provided those have been put into developer mode - see my earlier hint threads). Or of course you can stick it in a PC.

Ate my own dog-food:
Just to prove a point, I used an older stock Acer ChromeBase, which uses an ARM processor to do all the downloading and burning. Then I popped it into my older Intel ChromeBox and another PC and had no issues bringing up NomadBSD on them.