[Buildroot] RFC: systemd and service files cleanup

Steven Noonan steven at uplinklabs.net
Thu Mar 19 19:31:11 UTC 2015


On Thu, Mar 19, 2015 at 10:56 AM, Mike Williams <mike at mikebwilliams.com> wrote:
> All,
>
> Currently, package service files for systemd are installed by buildroot in a variety of locations: /etc, /lib, and /usr/lib. For systemd, split /lib is deprecated and only checked if a split /lib and /usr/lib is enabled. /etc is meant for local customizations to the default service files. It is my opinion that buildroot should install all upstream package and buildroot-provided service files in /usr/lib, and this series cleans up our packages to do exactly that. Enabling them by default by linking them to /etc/systemd/system/multi-user.target.wants has been preserved.
>
> Upstream systemd's standard installation directory for its binaries is /usr/lib. It appears that historically, buildroot's systemd installation location has been switched between /lib and /usr/lib multiple times. I couldn't find any particular reason for this, so I've moved it back to /usr/lib along with its service files.
>
> Anyway, please send comments :).
>

Nice. Basically any systemd units installed by Buildroot should be in
/usr/lib/systemd/system and nothing from Buildroot should be installed
to /etc/systemd/system, so I agree with this series as a whole in
terms of direction.

Also, I have a related patch set, but it has only had very light
testing on my end:

http://git.uplinklabs.net/snoonan/projects/buildroot.git/log/?h=unified-bin

I come from the Arch Linux world, so I made a new skeleton that
matches the Arch base filesystem layout: with /bin, /sbin, /usr/bin,
and /usr/sbin all unified (likewise with /lib and /usr/lib). I haven't
convinced myself to post the series because I can't think of a
particularly good justification for it in the Buildroot context.



More information about the buildroot mailing list