Shell Perl Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
This is a set of scripts and configuration files that can build a bootable FreeBSD image for some popular ARM-based development boards. ============================================================ How to Build a Disk Image ------------------------- The beaglebsd.sh script can build a complete bootable FreeBSD image ready to be copied to a MicroSDHC card. The script runs on FreeBSD-CURRENT (March 2012 or later). Using the script to build an image consists of a few steps: 1. READ board/<board-name>/README The board-specific directories each have a README with various details about running FreeBSD on a particular system. 2. EDIT config.sh Start by copying config.sh.sample. The first line specifies the board configuration you want to use. The name here should exactly match a directory under "board/". 3. RUN beaglebsd.sh as root $ sudo /bin/sh beaglebsd.sh The script will first check that you have any needed sources. If you don't, the script will tell you exactly how to obtain the missing pieces. Follow the instructions and re-run the script until you have everything. As soon as it finds all the required pieces, the script will then compile everything and build the disk image. This part of the process can take several hours. 4. COPY the image to a MicroSDHC card. The script will suggest a 'dd' command to do this. 5. BOOT the image on your board. Again, read board/<board-name>/README for details. ============================================================ PROJECTS ------------ There are still plenty of ways this script could be improved: * More boards. Currently, it supports Beaglebone, RaspberryPi, and PandaBoard. There are a lot of other boards with similar concerns that could easily be supported. * Package Installation. I would like to be able to put a bunch of packages into board/NAME/packages and have them installed onto the image. The chroot technique used by nanobsd won't work when cross-compiling, so we need a different approach. Maybe the new pkgng tool will help? * Swap. The script should allow you to specify a swap size and automatically adjust the disk layout accordingly.