[OE-core] [PATCH 3/4] systemd: split modules into packages

Bottazzini, Bruno bruno.bottazzini at intel.com
Thu Mar 26 13:40:20 UTC 2015


On Qui, 2015-03-26 at 08:56 -0300, Otavio Salvador wrote:
> On Thu, Mar 26, 2015 at 5:29 AM, Anders Darander <anders at chargestorm.se> wrote:
> > * Bruno Bottazzini <bruno.bottazzini at intel.com> [150325 22:50]:
> >
> >> if one wants to launch a simple deamon, most modules are not
> >> required.
> >> He will be able to save space and exclude unwanted packages
> >> from the final image.
> >
> > I like this, though I've got a few questions that I just noticed.
> >
> >> -PACKAGECONFIG ??= "xz ldconfig \
> >> +PACKAGECONFIG ??= " \
> >> +                   gcrypt \
> >> +                   kmod \
> >> +                   ldconfig \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'blkid', 'blkid', '', d)} \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'efi', 'efi', '', d)} \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'lz4', 'lz4', '', d)} \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'xz', 'xz', '', d)} \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'libidn', 'libidn', '', d)} \
> >> +                   ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
> >>                     ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \
> >>                     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)}"
> >
> > It might be worth noting that xz has gone from being explicitly enabled,
> > to depend on a DISTRO_FEATURES.
> 
> Agreed and we shouldn't explode the number of possible dsitro
> features. I'd also prefer if xz were kept enable by default so we
> don't make a behavior change under the hood.
> 
> ...
> >>  PACKAGECONFIG[resolved] = "--enable-resolved,--disable-resolved"
> >> -PACKAGECONFIG[networkd] = "--enable-networkd,--disable-networkd"
> >
> > Why do you remove networkd as a PACKAGECONFIG?
> 
> If there is a real reason for this, it must be recorded in commit log as well.

Firstly, 

Thank you a lot for reviewing this Patch. I'd like to ask you guys to
review the others patches too.
I know this on will be the more complicated but there others will be
faster to review.


Now:

Guys, if you continue this patch you will see that networkd will always
be enabled. Systemd will always configure/make it however, the package
will not be installed if the user wants to.

With PACKAGECONFIG, we may not get everything "for free" as some data
files will be installed regardless as well as some components from
systemd cannot be disabled by their build system but we can run without
them, for instance we can run without journald.

The problem is understanding that although systemd is a single
repository it contains multiple services and daemons in it that can run
even without the core PID1, udev or the many helpers used to configure
the system such as resolved, 
timedated, localed... 

All of these components are runtime independent, we can install or
remove them and they should not create problems.

> 





More information about the Openembedded-core mailing list