Assert that dpkg is not broken when trying to install an app

This commit is contained in:
Alexandre Aubin 2019-02-18 15:58:24 +01:00
parent 1d8d3c2828
commit 19bd4da104
2 changed files with 4 additions and 0 deletions

View file

@ -146,6 +146,7 @@
"diagnosis_monitor_network_error": "Can't monitor network: {error}",
"diagnosis_monitor_system_error": "Can't monitor system: {error}",
"diagnosis_no_apps": "No installed application",
"dpkg_is_broken": "You cannot do this right now because dpkg/apt (the system package managers) seems to be in a broken state... You can try to solve this issue by connecting through SSH and running `sudo dpkg --configure -a`.",
"dnsmasq_isnt_installed": "dnsmasq does not seem to be installed, please run 'apt-get remove bind9 && apt-get install dnsmasq'",
"domain_cannot_remove_main": "Cannot remove main domain. Set a new main domain first",
"domain_cert_gen_failed": "Unable to generate certificate",

View file

@ -722,6 +722,9 @@ def app_install(operation_logger, auth, app, label=None, args=None, no_remove_on
},
}
if packages.dpkg_is_broken():
raise YunohostError(m18n.n("dpkg_is_broken"))
def confirm_install(confirm):
# Ignore if there's nothing for confirm (good quality app), if --force is used