diff --git a/Makefile b/Makefile index c06c9ab..9f76dcc 100644 --- a/Makefile +++ b/Makefile @@ -53,7 +53,10 @@ deb-control: deb-scripts: @. lib/zaf.lib.sh; \ . lib/ctrl.lib.sh; \ - cat files/postinst.template | zaf_far '{PLUGINS}' "$(PLUGINS)" | zaf_far "{IPLUGINS}" "$(IPLUGINS)" | zaf_far '{ZAF_LIB_DIR}' "/usr/lib/zaf" >$(DEBIAN_CTRL)/postinst + cat files/postinst.template | \ + zaf_far '{PLUGINS}' "$$(for p in $(PLUGINS); do echo $$(basename $$p); done)" | \ + zaf_far '{IPLUGINS}' "$$(for p in $(IPLUGINS); do echo $$(basename $$p); done)" | \ + zaf_far '{ZAF_LIB_DIR}' "/usr/lib/zaf" >$(DEBIAN_CTRL)/postinst @chmod +x $(DEBIAN_CTRL)/postinst @cp files/preinst.template $(DEBIAN_CTRL)/preinst @chmod +x $(DEBIAN_CTRL)/preinst diff --git a/files/postinst.template b/files/postinst.template index 6c95d4b..6e2f66b 100644 --- a/files/postinst.template +++ b/files/postinst.template @@ -8,7 +8,12 @@ configure) . /usr/lib/zaf/os.lib.sh . /usr/lib/zaf/ctrl.lib.sh cd /usr/lib/zaf && /usr/lib/zaf/install.sh reconf - [ -n "{PLUGINS}" ] && zaf reinstall {PLUGINS} {IPLUGINS} + [ -n "{PLUGINS}" ] && for p in {PLUGINS}; do + if ! is_plugin $p;then + zaf install $ZAF_PREPACKAGED_DIR/$p; + fi + done + [ -n "{IPLUGINS}" ] && zaf reinstall {IPLUGINS} fi ;; esac diff --git a/lib/os.lib.sh b/lib/os.lib.sh index 48ea6a5..a8ba2f8 100644 --- a/lib/os.lib.sh +++ b/lib/os.lib.sh @@ -130,7 +130,7 @@ zaf_install_agent_opkg() { # $* - packages zaf_check_deps_dpkg() { for i in $*; do - dpkg-query -f '${Status},${Package}\n' -W $* 2>/dev/null | grep -q "^install ok" + dpkg-query -f '${Status},${Package}\n' -W $* 2>/dev/null | grep -q "^install ok installed" done }