diff --git a/api b/api index 11542c5f58..59cc428edf 100755 --- a/api +++ b/api @@ -733,10 +733,17 @@ purge_packages() { #Allow dependencies of the $app app to be autoremoved. echo "These packages were: $(package_dependencies "$package_name")" status "Purging the $package_name package..." - - apt_lock_wait - local output="$(sudo -E apt purge -y "$package_name" --autoremove 2>&1 | less_apt | tee /dev/stderr)" - status "Apt finished." + + if [[ "$script_input" == "update" ]]; then + # skip --autoremove for faster updates. this prevents dummy deb dependencies from needing to be uninstalled and reinstalled on updates + apt_lock_wait + local output="$(sudo -E apt purge -y "$package_name" 2>&1 | less_apt | tee /dev/stderr)" + status "Apt finished." + else + apt_lock_wait + local output="$(sudo -E apt purge -y "$package_name" --autoremove 2>&1 | less_apt | tee /dev/stderr)" + status "Apt finished." + fi errors="$(echo "$output" | grep '^[(E)|(Err]:')" if [ ! -z "$errors" ];then diff --git a/manage b/manage index 19c59888fe..7d76da7a7c 100755 --- a/manage +++ b/manage @@ -700,9 +700,9 @@ elif [ "$1" == 'install' ] || [ "$1" == 'uninstall' ];then echo cd $HOME if [ "$3" == "update" ]; then - script_input="update" + export script_input="update" else - script_input="" + export script_input="" fi #always overwrite DEBIAN_FRONTEND with gnome #dialog and readline are not functional due to the logfile pipe