[oe-commits] [meta-openembedded] 10/11: Fix gpsd Yocto pyro build for read only rootfs

git at git.openembedded.org git at git.openembedded.org
Mon Oct 9 06:28:27 UTC 2017


This is an automated email from the git hooks/post-receive script.

martin_jansa pushed a commit to branch master-next
in repository meta-openembedded.

commit 0b9fb68218537ff6f69aa8e7bc0b688a3ef21ae7
Author: Dan Walkes <danwalkes at trellis-logic.com>
AuthorDate: Sun Oct 8 13:05:23 2017 -0600

    Fix gpsd Yocto pyro build for read only rootfs
    
    Attempting to include gpsd on Yocto pyro with IMAGE_FEATURES including
    read-only-rootfs results in an error:
    "The following packages could not be configured offline and rootfs is
    read-only"
    
    This stems from a failure during the do_rootfs steps where the /etc/init.d/gpsd
    file is missing during the call to update-rc.d.
    
    This happens because the /etc/init.d/gpsd file is installed during
    package install for gpsd-conf instead of gpsd, and the default value for
    INITSCRIPT_PACKAGES is PN.  To resolve, specify INITSCRIPT_PACKAGES as
    gpsd-conf instead.
    
    Also, as suggested on the Yocto mailing list, refactor to inherit
    update-alternatives and use this to replace the postinst and postrm
    steps.
    
    Signed-off-by: Dan Walkes <danwalkes at trellis-logic.com>
    Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
 meta-oe/recipes-navigation/gpsd/gpsd_3.16.bb | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.16.bb b/meta-oe/recipes-navigation/gpsd/gpsd_3.16.bb
index 27a600f..f8e6a2b 100644
--- a/meta-oe/recipes-navigation/gpsd/gpsd_3.16.bb
+++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.16.bb
@@ -19,8 +19,9 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
 SRC_URI[md5sum] = "68691b5de4c94f82ec4062b042b5eb63"
 SRC_URI[sha256sum] = "03579af13a4d3fe0c5b79fa44b5f75c9f3cac6749357f1d99ce5d38c09bc2029"
 
-inherit scons update-rc.d python-dir pythonnative systemd bluetooth
+inherit scons update-rc.d python-dir pythonnative systemd bluetooth update-alternatives
 
+INITSCRIPT_PACKAGES = "gpsd-conf"
 INITSCRIPT_NAME = "gpsd"
 INITSCRIPT_PARAMS = "defaults 35"
 
@@ -86,14 +87,6 @@ do_install_append() {
     install -m 0644 ${S}/systemd/${BPN}.socket ${D}${systemd_unitdir}/system/${BPN}.socket
 }
 
-pkg_postinst_${PN}-conf() {
-    update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults ${sysconfdir}/default/gpsd.default 10
-}
-
-pkg_postrm_${PN}-conf() {
-    update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default
-}
-
 PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils"
 
 FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc \
@@ -133,3 +126,9 @@ RPROVIDES_${PN} += "${PN}-systemd"
 RREPLACES_${PN} += "${PN}-systemd"
 RCONFLICTS_${PN} += "${PN}-systemd"
 SYSTEMD_SERVICE_${PN} = "${PN}.socket"
+
+
+ALTERNATIVE_${PN} = "gpsd-defaults"
+ALTERNATIVE_PATH = "${sysconfdir}/default/gpsd.default"
+ALTERNATIVE_LINK = "${sysconfdir}/default/gpsd"
+ALTERNATIVE_TARGET = "${sysconfdir}/default/gpsd.default"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list