diff --git a/locales/en.json b/locales/en.json index c2d29af37..567b6a460 100644 --- a/locales/en.json +++ b/locales/en.json @@ -31,10 +31,8 @@ "app_not_correctly_installed": "{app:s} seems to be incorrectly installed", "app_not_installed": "Could not find the app '{app:s}' in the list of installed apps: {all_apps}", "app_not_properly_removed": "{app:s} has not been properly removed", - "app_package_need_update": "The app {app} package needs to be updated to follow YunoHost changes", "app_removed": "{app:s} removed", "app_requirements_checking": "Checking required packages for {app}…", - "app_requirements_failed": "Some requirements are not met for {app}: {error}", "app_requirements_unmeet": "Requirements are not met for {app}, the package {pkgname} ({version}) must be {spec}", "app_remove_after_failed_install": "Removing the app following the installation failure…", "app_sources_fetch_failed": "Could not fetch sources files, is the URL correct?", @@ -51,14 +49,11 @@ "app_upgrade_some_app_failed": "Some apps could not be upgraded", "app_upgraded": "{app:s} upgraded", "apps_already_up_to_date": "All apps are already up-to-date", - "apps_permission_not_found": "No permission found for the installed apps", - "apps_permission_restoration_failed": "Permission '{permission:s}' for app {app:s} restoration has failed", "apps_catalog_init_success": "App catalog system initialized!", - "apps_catalog_updating": "Updating application catalog...", + "apps_catalog_updating": "Updating application catalog…", "apps_catalog_failed_to_download": "Unable to download the {apps_catalog} app catalog: {error}", "apps_catalog_obsolete_cache": "The app catalog cache is empty or obsolete.", "apps_catalog_update_success": "The application catalog has been updated!", - "ask_current_admin_password": "Current administration password", "ask_email": "E-mail address", "ask_firstname": "First name", "ask_lastname": "Last name", @@ -67,7 +62,6 @@ "ask_new_domain": "New domain", "ask_new_path": "New path", "ask_password": "Password", - "ask_path": "Path", "backup_abstract_method": "This backup method has yet to be implemented", "backup_actually_backuping": "Creating a backup archive from the collected files…", "backup_app_failed": "Could not back up the app '{app:s}'", @@ -196,7 +190,6 @@ "diagnosis_regenconf_manually_modified_details": "This is probably OK as long as you know what you're doing ;) !", "diagnosis_regenconf_manually_modified_debian": "Configuration file {file} was manually modified compared to Debian's default.", "diagnosis_regenconf_manually_modified_debian_details": "This may probably be OK, but gotta keep an eye on it...", - "diagnosis_regenconf_nginx_conf_broken": "The nginx configuration appears to be broken!", "diagnosis_security_all_good": "No critical security vulnerability was found.", "diagnosis_security_vulnerable_to_meltdown": "You appear vulnerable to the Meltdown criticial security vulnerability", "diagnosis_security_vulnerable_to_meltdown_details": "To fix this, you should upgrade your system and reboot to load the new linux kernel (or contact your server provider if this doesn't work). See https://meltdownattack.com/ for more infos.", @@ -298,7 +291,6 @@ "group_cannot_edit_all_users": "The group 'all_users' cannot be edited manually. It is a special group meant to contain all users registered in YunoHost", "group_cannot_edit_visitors": "The group 'visitors' cannot be edited manually. It is a special group representing anonymous visitors", "group_cannot_edit_primary_group": "The group '{group}' cannot be edited manually. It is the primary group meant to contain only one specific user.", - "group_cannot_be_edited": "The group {group} cannot be edited manually.", "group_cannot_be_deleted": "The group {group} cannot be deleted manually.", "group_deleted": "Group '{group}' deleted", "group_deletion_failed": "Could not delete the group '{group}': {error}", @@ -364,7 +356,6 @@ "log_tools_reboot": "Reboot your server", "ldap_init_failed_to_create_admin": "LDAP initialization could not create admin user", "ldap_initialized": "LDAP initialized", - "license_undefined": "undefined", "mail_alias_remove_failed": "Could not remove e-mail alias '{mail:s}'", "mail_domain_unknown": "Invalid e-mail address for domain '{domain:s}'. Please, use a domain administrated by this server.", "mail_forward_remove_failed": "Could not remove e-mail forwarding '{mail:s}'", @@ -465,10 +456,8 @@ "pattern_email": "Must be a valid e-mail address (e.g. someone@example.com)", "pattern_firstname": "Must be a valid first name", "pattern_lastname": "Must be a valid last name", - "pattern_listname": "Must be alphanumeric and underscore characters only", "pattern_mailbox_quota": "Must be a size with b/k/M/G/T suffix or 0 to not have a quota", "pattern_password": "Must be at least 3 characters long", - "pattern_port": "Must be a valid port number (i.e. 0-65535)", "pattern_port_or_range": "Must be a valid port number (i.e. 0-65535) or range of ports (e.g. 100:200)", "pattern_positive_number": "Must be a positive number", "pattern_username": "Must be lower-case alphanumeric and underscore characters only", @@ -542,7 +531,6 @@ "service_description_php7.0-fpm": "Runs apps written in PHP with NGINX", "service_description_postfix": "Used to send and receive e-mails", "service_description_redis-server": "A specialized database used for rapid data access, task queue, and communication between programs", - "service_description_rmilter": "Checks various parameters in e-mails", "service_description_rspamd": "Filters spam, and other e-mail related features", "service_description_slapd": "Stores users, domains and related info", "service_description_ssh": "Allows you to connect remotely to your server via a terminal (SSH protocol)", @@ -571,7 +559,6 @@ "system_upgraded": "System upgraded", "system_username_exists": "Username already exists in the list of system users", "this_action_broke_dpkg": "This action broke dpkg/APT (the system package managers)… You can try to solve this issue by connecting through SSH and running `sudo dpkg --configure -a`.", - "tools_update_failed_to_app_fetchlist": "Could not update YunoHost's app lists because: {error}", "tools_upgrade_at_least_one": "Please specify '--apps', or '--system'", "tools_upgrade_cant_both": "Cannot upgrade both system and apps at the same time", "tools_upgrade_cant_hold_critical_packages": "Could not hold critical packages…", @@ -588,7 +575,6 @@ "update_apt_cache_failed": "Could not to update the cache of APT (Debian's package manager). Here is a dump of the sources.list lines, which might help identify problematic lines: \n{sourceslist}", "update_apt_cache_warning": "Something went wrong while updating the cache of APT (Debian's package manager). Here is a dump of the sources.list lines, which might help identify problematic lines: \n{sourceslist}", "updating_apt_cache": "Fetching available upgrades for system packages…", - "updating_app_lists": "Fetching available upgrades for apps…", "upgrade_complete": "Upgrade complete", "upgrading_packages": "Upgrading packages…", "upnp_dev_not_found": "No UPnP device found", @@ -601,7 +587,6 @@ "user_deleted": "User deleted", "user_deletion_failed": "Could not delete user {user}: {error}", "user_home_creation_failed": "Could not create 'home' folder for user", - "user_info_failed": "Could not retrieve user info", "user_unknown": "Unknown user: {user:s}", "user_update_failed": "Could not update user {user}: {error}", "user_updated": "User info changed", diff --git a/src/yunohost/backup.py b/src/yunohost/backup.py index c254c2ab5..8408e7fa3 100644 --- a/src/yunohost/backup.py +++ b/src/yunohost/backup.py @@ -1148,21 +1148,18 @@ class RestoreManager(): if not os.path.isfile(backup_csv): return - try: - contains_php5 = False - with open(backup_csv) as csvfile: - reader = csv.DictReader(csvfile, fieldnames=['source', 'dest']) - newlines = [] - for row in reader: - if 'php5' in row['source']: - contains_php5 = True - row['source'] = row['source'].replace('/etc/php5', '/etc/php/7.0') \ - .replace('/var/run/php5-fpm', '/var/run/php/php7.0-fpm') \ - .replace('php5', 'php7') + contains_php5 = False + with open(backup_csv) as csvfile: + reader = csv.DictReader(csvfile, fieldnames=['source', 'dest']) + newlines = [] + for row in reader: + if 'php5' in row['source']: + contains_php5 = True + row['source'] = row['source'].replace('/etc/php5', '/etc/php/7.0') \ + .replace('/var/run/php5-fpm', '/var/run/php/php7.0-fpm') \ + .replace('php5', 'php7') - newlines.append(row) - except (IOError, OSError, csv.Error) as e: - raise YunohostError('error_reading_file', file=backup_csv, error=str(e)) + newlines.append(row) if not contains_php5: return @@ -1834,11 +1831,12 @@ class CopyBackupMethod(BackupMethod): self.work_dir]) if ret == 0: return - else: - logger.warning(m18n.n("bind_mouting_disable")) - subprocess.call(["mountpoint", "-q", self.work_dir, - "&&", "umount", "-R", self.work_dir]) - raise YunohostError('backup_cant_mount_uncompress_archive') + + logger.warning("Could not mount the backup in readonly mode with --rbind ... Unmounting") + # FIXME : Does this stuff really works ? '&&' is going to be interpreted as an argument for mounpoint here ... Not as a classical '&&' ... + subprocess.call(["mountpoint", "-q", self.work_dir, + "&&", "umount", "-R", self.work_dir]) + raise YunohostError('backup_cant_mount_uncompress_archive') class TarBackupMethod(BackupMethod): diff --git a/src/yunohost/data_migrations/0003_migrate_to_stretch.py b/src/yunohost/data_migrations/0003_migrate_to_stretch.py index 19793bbec..60b26169a 100644 --- a/src/yunohost/data_migrations/0003_migrate_to_stretch.py +++ b/src/yunohost/data_migrations/0003_migrate_to_stretch.py @@ -108,7 +108,7 @@ class MyMigration(Migration): # Have > 1 Go free space on /var/ ? if free_space_in_directory("/var/") / (1024**3) < 1.0: - raise YunohostError("migration_0003_not_enough_free_space") + raise YunohostError("There is not enough free space in /var/ to run the migration. You need at least 1GB free space") # Check system is up to date # (but we don't if 'stretch' is already in the sources.list ... diff --git a/src/yunohost/regenconf.py b/src/yunohost/regenconf.py index 665b906d6..ad84c8164 100644 --- a/src/yunohost/regenconf.py +++ b/src/yunohost/regenconf.py @@ -164,10 +164,10 @@ def regen_conf(operation_logger, names=[], with_diff=False, force=False, dry_run if not dry_run: operation_logger.related_to.append(('configuration', category)) - logger.debug(m18n.n( - 'regenconf_pending_applying' if not dry_run else - 'regenconf_dry_pending_applying', - category=category)) + if dry_run: + logger.debug(m18n.n('regenconf_pending_applying', category=category)) + else: + logger.debug(m18n.n('regenconf_dry_pending_applying', category=category)) conf_hashes = _get_conf_hashes(category) succeed_regen = {} @@ -281,10 +281,10 @@ def regen_conf(operation_logger, names=[], with_diff=False, force=False, dry_run logger.debug(m18n.n('regenconf_up_to_date', category=category)) continue elif not failed_regen: - logger.success(m18n.n( - 'regenconf_updated' if not dry_run else - 'regenconf_would_be_updated', - category=category)) + if not dry_run: + logger.success(m18n.n('regenconf_updated', category=category)) + else: + logger.success(m18n.n('regenconf_would_be_updated', category=category)) if succeed_regen and not dry_run: _update_conf_hashes(category, conf_hashes)