aboutsummaryrefslogtreecommitdiff
path: root/metadot
diff options
context:
space:
mode:
Diffstat (limited to 'metadot')
-rwxr-xr-xmetadot11
1 files changed, 10 insertions, 1 deletions
diff --git a/metadot b/metadot
index bc929f3..0b449a7 100755
--- a/metadot
+++ b/metadot
@@ -107,13 +107,22 @@ function metadot_deps {
local module="$1"
local destname
local dirname
+ local deps_to_install
if [ -d "$MODULES/$module" ]; then
echo "Resolving dependencies for $module.."
if [ -e "/etc/debian_version" ] && [ -e "$MODULES/$module/dependencies/debian" ]; then
deps="`grep -v '^#' $MODULES/$module/dependencies/debian | xargs`"
- LC_ALL=C DEBIAN_FRONTEND=noninteractive sudo apt-get install -y $deps
+
+ # Remove installed packages from list
+ for dep in $deps; do
+ if ! dpkg-query -W -f='${Status}' $dep | grep -q '^install ok'; then
+ deps_to_install="$deps_to_install $dep"
+ fi
+ done
+
+ LC_ALL=C DEBIAN_FRONTEND=noninteractive sudo apt-get install -y $deps_to_install
fi
else