blob: 8c3ea82ad5ecbbb3827529fdf152f62a244ead4d [file] [log] [blame]
Customizing the generated target filesystem
-------------------------------------------
There are a few ways to customize the resulting target filesystem:
* Customize the target filesystem directly and rebuild the image. The
target filesystem is available under +output/target/+. You can
simply make your changes here and run make afterwards - this will
rebuild the target filesystem image. This method allows you to do
anything to the target filesystem, but if you decide to completely
rebuild your toolchain and tools, these changes will be lost.
* Create your own 'target skeleton'. You can start with the default
skeleton available under +fs/skeleton+ and then customize it to suit
your needs. The +BR2_ROOTFS_SKELETON_CUSTOM+ and
+BR2_ROOTFS_SKELETON_CUSTOM_PATH+ will allow you to specify the
location of your custom skeleton. At build time, the contents of the
skeleton are copied to output/target before any package
installation.
* In the Buildroot configuration, you can specify the path to a
post-build script, that gets called 'after' Buildroot builds all the
selected software, but 'before' the rootfs packages are
assembled. The destination root filesystem folder is given as the
first argument to this script, and this script can then be used to
copy programs, static data or any other needed file to your target
filesystem. You should, however, use this feature with care.
Whenever you find that a certain package generates wrong or unneeded
files, you should fix that package rather than work around it with a
post-build cleanup script.
* A special package, 'customize', stored in +package/customize+ can be
used. You can put all the files that you want to see in the final
target root filesystem in +package/customize/source+, and then
enable this special package in the configuration system.