diff options
author | Chen Qi <Qi.Chen@windriver.com> | 2014-01-24 04:47:37 -0500 |
---|---|---|
committer | Andreas Oberritter <obi@opendreambox.org> | 2015-02-23 17:15:22 +0100 |
commit | 756dbea11678aec2eb7818125bd1ed2b53d12d67 (patch) | |
tree | 1565804d985073a0d5f19fc49aa93b6dad81550c /meta/recipes-devtools/dpkg/dpkg.inc | |
parent | 67ac3e0e236c92703716b40fba34aedba38023fb (diff) | |
download | openembedded-core-contrib-756dbea11678aec2eb7818125bd1ed2b53d12d67.tar.gz |
dpkg: use systemd service for first boot configuration
Use a systemd service file for first boot configuration for dpkg
based images which has 'package-management' in its IMAGE_FEATURES.
[YOCTO #5719]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
(cherry picked from commit 56490921d267b784118df43cbd107925c8b94200)
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Diffstat (limited to 'meta/recipes-devtools/dpkg/dpkg.inc')
-rw-r--r-- | meta/recipes-devtools/dpkg/dpkg.inc | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc index d5dc412cd9..97db855f66 100644 --- a/meta/recipes-devtools/dpkg/dpkg.inc +++ b/meta/recipes-devtools/dpkg/dpkg.inc @@ -14,7 +14,13 @@ S = "${WORKDIR}/${BPN}-${PV}" PARALLEL_MAKE = "" -inherit autotools gettext perlnative pkgconfig +inherit autotools gettext perlnative pkgconfig systemd + +python () { + if not oe.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): + pn = d.getVar('PN', True) + d.setVar('SYSTEMD_SERVICE_%s' % (pn), 'dpkg-configure.service') +} export PERL = "${bindir}/perl" PERL_class-native = "${STAGING_BINDIR_NATIVE}/perl-native/perl" @@ -48,11 +54,22 @@ do_install_append () { mv ${D}${bindir}/update-alternatives ${D}${sbindir} sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-* fi + + if ${@base_contains('DISTRO_FEATURES','sysvinit','false','true',d)};then + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/dpkg-configure.service ${D}${systemd_unitdir}/system/ + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@SYSCONFDIR@,${sysconfdir},g' \ + -e 's,@BINDIR@,${bindir},g' \ + -e 's,@SYSTEMD_UNITDIR@,${systemd_unitdir},g' \ + ${D}${systemd_unitdir}/system/dpkg-configure.service + fi } pkg_postinst_${PN} () { #!/bin/sh -if [ "x$D" != "x" ] && [ -f $D/var/lib/dpkg/status ]; then +if ${@base_contains('DISTRO_FEATURES','sysvinit','true','false',d)} && \ + [ "x$D" != "x" ] && [ -f $D/var/lib/dpkg/status ]; then install -d $D${sysconfdir}/rcS.d # this happens at S98 where our good 'ole packages script used to run |