regarding softcam prerm script, it looks like you hit a bug that's been around for ages...
I played a bit with older softcams from the feed last night and it turned out that you are not able to remove mgcamd/cccam softcam package when it is not running;
turns out that our softcam stop script is missing necessary option for start-stop-daemon: -o | --oknodo
Removing enigma2-plugin-softcams-mgcamd135a (1.35a) from root...
no /usr/bin/mgcamd found; none killed
Collected errors:
* pkg_run_script: package "enigma2-plugin-softcams-mgcamd135a" prerm script returned status 1.
* opkg_remove_pkg: not removing package "enigma2-plugin-softcams-mgcamd135a", prerm script failed
You can force removal of packages with failed prerm scripts with the option:
--force-remove
prerm script:
/etc/init.d/softcam.mgcamd stop
OLDLINK="`readlink -f /etc/init.d/softcam`"
...
softcam stop script:
CAMSTOP ?= "exec start-stop-daemon -K -R 2 -x /usr/bin/${CAMNAME}"
and here start-stop-daemon manual:
start-stop-daemon
-K, --stop
Checks for the existence of a specified process. If such
a process exists, start-stop-daemon sends it the signal
specified by --signal, and exits with error status 0. If
such a process does not exist, start-stop-daemon exits
with error status 1 (0 if --oknodo is specified). If
--retry is specified, then start-stop-daemon will check
that the process(es) have terminated.
-o, --oknodo
Return exit status 0 instead of 1 if no actions are (would
be) taken.
EXIT STATUS
0 The requested action was performed. If --oknodo was
specified, it's also possible that nothing had to be done.
This can happen when --start was specified and a matching
process was already running, or when --stop was specified
and there were no matching processes.
1 If --oknodo was not specified and nothing was done.
...
that's a (simple) fix:
diff --git a/meta-openpli/recipes-openpli/enigma2-softcams/softcam.inc b/meta-openpli/recipes-openpli/enigma2-softcams/softcam.inc
index a2dda94f..6889f089 100644
--- a/meta-openpli/recipes-openpli/enigma2-softcams/softcam.inc
+++ b/meta-openpli/recipes-openpli/enigma2-softcams/softcam.inc
@@ -19,7 +19,7 @@ CAMLINK = "/etc/init.d/softcam"
CAMPATH = "/etc/init.d/softcam.${CAMNAME}"
CAMSTART ?= "exec start-stop-daemon -S -x /usr/bin/${CAMNAME}"
-CAMSTOP ?= "exec start-stop-daemon -K -R 2 -x /usr/bin/${CAMNAME}"
+CAMSTOP ?= "exec start-stop-daemon -K -o -R 2 -x /usr/bin/${CAMNAME}"
# Generate a simplistic standard init script
# (sorry for the sleep 1, but start-stop-daemon -R does not work as advertised)