Contents
- initramfs template
- rootfs template template
- build script
Things you will not find here
- Kernels
- Bootloaders
- Specific boot-time scripts or configuration (e.g. script.bin, boot.cmd, etc)
Details
build_fatdogarm.sh
will make fd-arm.sfs for you assuming you have all the
right tools.
You can run it like this:
./build_fatdogarm.sh
to let it automatically download, create the rootfs and then squash it to fd-arm.sfs (you'd better have 2GB or more in your /tmp).
Or you can run it like this:
./build_fatdogarm.sh download
to have it only download the needed packages but don't do more than that.
Or you can run it like this:
./build_fatdogarm.sh install
to have it download and create the rootfs (=install the packages into the rootfs directory).
Environment variables you can set to modify build_fatdogarm.sh
, with their
default values. Their meanings should be self-evident.
- PKG_EXT (tbz)
- PKG_URL (http://distro.ibiblio.org/fatdog/arm/packages/alpha)
- PKG_CACHE (/tmp/pkgcache)
- PKG_LIST (base-packages)
- GEN_EXCLUSION_LIST (./gen-exclusion-list)
- ROOTFS_TEMPLATE (rootfs-template)
- OUTPUT_DIR (/tmp/output)
- ROOTFS_DIR (/tmp/rootfs.$$)
- BUILD_CONFIG ($HOME/build.conf)
You can persistently change this settings by creating $HOME/build.conf which will be sourced during build - the location of this file can also by set by passing the 2nd parameter to the script or by setting BUILD_CONFIG environment.
PKG_LIST variable contains the list of packages to be installed;
by default it will use base-packages
which comes with this repository.
You can tweak this (or use your own custom package list) to define which
packages to be installed in the rootfs.
GEN_EXCLUSION_LIST variable defines the program that will generate list of
files (on std output) to exclude from the sfs when the sfs is created.
By default it uses gen-exclusion-list
which comes with this repository.
You can tweak it to include or exclude files from the final squashfs build;
for example the default excludes /usr/share/locale (cutting down about 60MB
from the final sfs size), but it includes the full documentation in
/usr/share/doc. If you exclude the documentation (/usr/share/doc) it will cut
down another 60MB. There are other files which can be trimmed too.
prep-fossil
is a script to prepare for checking-in to the fossil repository
(it creates empty files on empty directories to make sure they are checked-in),
so it is generally to be ignored unless you have commit access right.
The initramfs template is an uncompressed cpio archive. Just extract it and put kernel-modules.sfs as needed, and re-compressed. For more details, look here but please note that everything has been done - except the kernel-modules.sfs which has to come from a kernel that you build yourself.
Build environments tested: Fatdog64 and native (FatdogArm) build. Building in other environments are possible, but success is not guaranteed.