[oe] [meta-networking][PATCH] vsftpd: install volatiles file based on init system

Joe MacDonald joe at deserted.net
Fri Dec 13 14:34:36 UTC 2013


[Re: [oe] [meta-networking][PATCH] vsftpd: install volatiles file based on init system] On 13.12.13 (Fri 10:33) Paul Eggleton wrote:

> Hi Joe,
> 
> On Thursday 12 December 2013 14:00:57 Joe MacDonald wrote:
> > The sysvinit populate-volatile.sh scans for volatiles in
> > /etc/default/volatiles.  systemd expects the same format files to live in
> > /etc/tmpfiles.d.  Depedning on the DISTRO_FEATURE list, install vsftpd's
> > volatiles file to the expected location.  While we're here, drop the
> > creation of the empty ${localstatedir}/run/ hierarchy since they should be
> > created by the volatiles processing.
> > 
> > Signed-off-by: Joe MacDonald <joe at deserted.net>
> > ---
> >  meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.0.bb |   10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> > 
> > diff --git a/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.0.bb
> > b/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.0.bb index
> > 0698a63..9d82fd7 100644
> > --- a/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.0.bb
> > +++ b/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.0.bb
> > @@ -59,8 +59,13 @@ do_install() {
> >      install -m 600 ${WORKDIR}/vsftpd.conf ${D}${sysconfdir}/vsftpd.conf
> >      install -d ${D}${sysconfdir}/init.d/
> >      install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/vsftpd
> > -    install -d ${D}/${sysconfdir}/default/volatiles
> > -    install -m 644 ${WORKDIR}/volatiles.99_vsftpd
> > ${D}/${sysconfdir}/default/volatiles/99_vsftpd +    if
> > ${@base_contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then +
> >        install -d ${D}/${sysconfdir}/tmpfiles.d
> > +        install -m 644 ${WORKDIR}/volatiles.99_vsftpd
> > ${D}/${sysconfdir}/tmpfiles.d/99_vsftpd +    else
> > +        install -d ${D}/${sysconfdir}/default/volatiles
> > +        install -m 644 ${WORKDIR}/volatiles.99_vsftpd
> > ${D}/${sysconfdir}/default/volatiles/99_vsftpd +    fi
> > 
> >      install -m 600 ${WORKDIR}/vsftpd.ftpusers ${D}${sysconfdir}/
> >      install -m 600 ${WORKDIR}/vsftpd.user_list ${D}${sysconfdir}/
> > @@ -70,7 +75,6 @@ do_install() {
> >          sed -i "s:/lib/security:${base_libdir}/security:"
> > ${D}${sysconfdir}/pam.d/vsftpd sed -i "s:ftpusers:vsftpd.ftpusers:"
> > ${D}${sysconfdir}/pam.d/vsftpd fi
> > -    install -d ${D}${localstatedir}/run/vsftpd/empty
> >  }
> > 
> >  INITSCRIPT_PACKAGES = "${PN}"
> 
> I think there might be a problem with this: the DISTRO_FEATURES options aren't 
> mutually exclusive - both can be enabled at the same time (usually where you 
> want sysvinit for some rescue/initramfs image and systemd for the main image).

Hey Paul,

That's a good point and I probably should've at least made mention of it
in my email.  I'd thought about it (thought I try to only have either
sysvinit or systemd enabled in a configuration at a time, multiple init
systems running concurrently make my teeth itch) but I had thought that
in this case vsftpd would only be relying on one of them (preferring
systemd if available) to create the volatiles.  Since I try very hard
not to be in the scenario where I include both, though, I could be
overlooking a case here.  Do you think I should be doing something more
like this:

 62    if ${@base_contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
 63        install -d ${D}/${sysconfdir}/tmpfiles.d
 64        install -m 644 ${WORKDIR}/volatiles.99_vsftpd ${D}/${sysconfdir}/tmpfiles.d/99_vsftpd
 65    fi
 66    if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
 67        install -d ${D}/${sysconfdir}/default/volatiles
 68        install -m 644 ${WORKDIR}/volatiles.99_vsftpd ${D}/${sysconfdir}/default/volatiles/99_vsftpd
 69    fi

-- 
-Joe MacDonald.
:wq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20131213/f12f2743/attachment-0002.sig>


More information about the Openembedded-devel mailing list