summaryrefslogtreecommitdiff
path: root/recipes-core/busybox/ifplugd-disable_1.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/busybox/ifplugd-disable_1.0.bb')
-rw-r--r--recipes-core/busybox/ifplugd-disable_1.0.bb30
1 files changed, 27 insertions, 3 deletions
diff --git a/recipes-core/busybox/ifplugd-disable_1.0.bb b/recipes-core/busybox/ifplugd-disable_1.0.bb
index 3d75d2d..927ce54 100644
--- a/recipes-core/busybox/ifplugd-disable_1.0.bb
+++ b/recipes-core/busybox/ifplugd-disable_1.0.bb
@@ -5,17 +5,41 @@ PACKAGE_ARCH = "all"
RDEPENDS_ifplugd-disable = "busybox-ifplugd"
ALLOW_EMPTY_ifplugd-disable = "1"
-PR = "r1"
+PR = "r2"
+# Mount root rw to disable/enable ifplugd.
+# Mount root ro when we are done.
+# This makes the Yocto Police happy.
pkg_prerm_${PN}() {
-sed -i 's/^ENABLED="no"/ENABLED="yes"/i' $D${sysconfdir}/default/ifplugd
+ro=0
+if [ -z "$D" ] ; then
+ if egrep -q '[[:space:]]/[[:space:]].*[[:space:]]ro,' /proc/mounts ; then
+ ro=1
+ mount -o remount,rw /
+ fi
+fi
+sed -i 's/^ENABLED="no"/ENABLED="yes"/i' $D/etc/default/ifplugd
+if [ $ro -eq 1 ] ; then
+ mount -o remount,ro /
+fi
}
+
pkg_postinst_${PN}() {
-sed -i 's/^ENABLED="yes"/ENABLED="no"/i' $D${sysconfdir}/default/ifplugd
+ro=0
+if [ -z "$D" ] ; then
+ if egrep -q '[[:space:]]/[[:space:]].*[[:space:]]ro,' /proc/mounts ; then
+ ro=1
+ mount -o remount,rw /
+ fi
+fi
+sed -i 's/^ENABLED="yes"/ENABLED="no"/i' $D/etc/default/ifplugd
if [ -f $D/var/config/default/ifplugd ]; then
sed -i 's/^ENABLED="yes"/ENABLED="no"/i' $D/var/config/default/ifplugd
else
cp $D/etc/default/ifplugd $D/var/config/default/ifplugd
fi
+if [ $ro -eq 1 ] ; then
+ mount -o remount,ro /
+fi
}