[Buildroot] How to provide one default skeleton per init system?
Eric Le Bihan
eric.le.bihan.dev at free.fr
Mon Jun 9 21:13:43 UTC 2014
To properly use systemd as init system, some modifications should be performed
on the default skeleton. This can be done via an overlay and a post-build
script, as done in . However, it would be best for Buildroot users to have
it done automatically, as noted per ThomasP and MaximeH . This brings forth
the idea of having one target skeleton per init system.
IHMO, there are two solutions for implementing it:
a) Move system/skeleton to system/skeleton/busybox, then add
system/skeleton/systemd, and maybe system/skeleton/sysv. The menu in
system/Config.in will be updated to select BR2_ROOTFS_SKELETON_BUSYBOX,
b) Add a new virtual package: target-skeleton, with some providers:
target-skeleton-busybox, target-skeleton-systemd and
target-skeleton-custom (path to the custom skeleton would be handled in the
Solution A is the quickest and less intrusive to implement, but it can only
copy the files of the skeleton, not perform the additional operations from the
post-build script. So solution B seems the best.
But if a new package target-skeleton is added, what would be the dependency
chain? Would `make target-skeleton-rebuild` rebuild... the whole rootfs?
Comments and ideas welcomed!
More information about the buildroot