[OE-core] [meta-poky][PATCH v4 1/3] poky.conf: make systemd as default init manager

richard.purdie at linuxfoundation.org richard.purdie at linuxfoundation.org
Fri May 31 09:00:06 UTC 2019


On Fri, 2019-05-31 at 10:07 +0800, Kang Kai wrote:
> On 2019/5/30 下午7:44, richard.purdie at linuxfoundation.org wrote:
> > On Thu, 2019-05-30 at 05:22 -0400, kai.kang at windriver.com wrote:
> > > From: Kai Kang <kai.kang at windriver.com>
> > > 
> > > Move configurations from local.conf.sample.extended to poky.conf
> > > to
> > > make
> > > systemd as default init manager for poky. Introduce a new
> > > variable
> > > 'POKY_INIT_MANAGER' whose value should be either 'systemd' or
> > > 'sysvinit'
> > > to configure the init manager setting.
> > > 
> > > For users who still want to use sysvinit, set in local.conf or
> > > any
> > > other
> > > configure file with:
> > > 
> > >    POKY_INIT_MANAGER = "sysvinit"
> > > 
> > > [YOCTO #13031]
> > > 
> > > Signed-off-by: Kai Kang <kai.kang at windriver.com>
> > > ---
> > >   meta-poky/conf/distro/poky.conf           | 10 ++++++++++
> > >   meta-poky/conf/local.conf.sample.extended |  9 ---------
> > >   2 files changed, 10 insertions(+), 9 deletions(-)
> > Thanks for working on this patchset, I think its nearly there. I'm
> > wondering if we should set
> > 
> > POKY_INIT_MANAGER_libc-musl = "sysvinit"
> > 
> > since I am worried about what I read about musl and systemd from a
> > security perspective.
> 
> OK. I'll add it.
> 
> 
> > I'm also wondering what we need to do with the autobuilder init
> > system
> > tests, I think those may need rewriting to add some sysvinit tests.
> 
> Something likes meta/lib/oeqa/runtime/cases/systemd.py? I think it
> is better to do in next milestone and create a defect to address it.
> If it is ok, I'll create one.

No, I mean:

http://git.yoctoproject.org/cgit.cgi/yocto-autobuilder-helper/tree/config.json#n813

which corresponds to steps 5-7 of 'qa-extras2' on the autobuilder.

We're going to need to update the test configuration on master to cover
the things we no longer test and remove the duplication.

> > Does POKY_INIT_MANAGER = "sysvinit systemd" work for the mode where
> > we allow old sysvinit scripts for compatibility?
> 
> I am afraid only one value could be set for POKY_INIT_MANAGER. And I 
> believe that most packages have been supporting systemd. If there is,
> we can add a systemd service file for it.

This isn't the point, we support 3 different configurations of this and
the variable needs to reflect that.

How about a slightly different approach. We define POKY_INIT_MANAGER to
take three different values, sysvinit, systemd and systemd-compat.

We do something like:

require conf/distro/include/init-template-${POKY_INIT_MANAGER}.inc

and then put the appropriate configuration in each .inc file?

> BTW, POKY_INIT_MANAGER doesn't consider the case of mdev/busybox. If 
> want to use mdev/busybox for init, just set DISTRO with poky-tiny and
> everything have been set properly in poky-tiny.conf.

This might be an opportunity to have another setting for
POKY_INIT_MANAGER which covers this too through an additional .inc?

Cheers,

Richard




More information about the Openembedded-core mailing list