diff options
Diffstat (limited to 'meta/recipes-devtools/run-postinsts')
3 files changed, 18 insertions, 9 deletions
diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts index 95dccb9cae..1f3e692029 100755 --- a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts +++ b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts @@ -81,11 +81,18 @@ remove_rcsd_link=1 if $pm_installed; then case $pm in "ipk") - eval opkg configure $append_log + if ! `fcntl-lock --wait 30 /run/opkg.lock true`; then + eval echo "Unable to obtain the opkg lock, deadlock?" $append_log + fi + if ! eval "opkg configure $append_log"; then + exit 1 + fi ;; "deb") - eval dpkg --configure -a $append_log + if ! eval "eval dpkg --configure -a $append_log"; then + exit 1 + fi ;; esac else diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service index 7f72f3388a..1ce19abcaf 100644 --- a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service +++ b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service @@ -1,13 +1,13 @@ [Unit] Description=Run pending postinsts DefaultDependencies=no -After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount +After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount ldconfig.service Before=sysinit.target [Service] Type=oneshot ExecStart=#SBINDIR#/run-postinsts -ExecStartPost=#BASE_BINDIR#/systemctl --no-reload disable run-postinsts.service +ExecStartPost=#BASE_BINDIR#/systemctl disable run-postinsts.service RemainAfterExit=yes TimeoutSec=0 diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb b/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb index db353d607b..f571e61921 100644 --- a/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb +++ b/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb @@ -1,7 +1,6 @@ SUMMARY = "Runs postinstall scripts on first boot of the target device" DESCRIPTION = "${SUMMARY}" SECTION = "devel" -PR = "r10" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" @@ -9,10 +8,13 @@ SRC_URI = "file://run-postinsts \ file://run-postinsts.init \ file://run-postinsts.service" -S = "${WORKDIR}" +S = "${WORKDIR}/sources" +UNPACKDIR = "${S}" inherit allarch systemd update-rc.d +RDEPENDS:${PN} = "util-linux-fcntl-lock" + INITSCRIPT_NAME = "run-postinsts" INITSCRIPT_PARAMS = "start 99 S ." @@ -28,13 +30,13 @@ do_compile () { do_install() { install -d ${D}${sbindir} - install -m 0755 ${WORKDIR}/run-postinsts ${D}${sbindir}/ + install -m 0755 ${S}/run-postinsts ${D}${sbindir}/ install -d ${D}${sysconfdir}/init.d/ - install -m 0755 ${WORKDIR}/run-postinsts.init ${D}${sysconfdir}/init.d/run-postinsts + install -m 0755 ${S}/run-postinsts.init ${D}${sysconfdir}/init.d/run-postinsts install -d ${D}${systemd_system_unitdir}/ - install -m 0644 ${WORKDIR}/run-postinsts.service ${D}${systemd_system_unitdir}/ + install -m 0644 ${S}/run-postinsts.service ${D}${systemd_system_unitdir}/ sed -i -e 's:#SYSCONFDIR#:${sysconfdir}:g' \ -e 's:#SBINDIR#:${sbindir}:g' \ |