719 lines
32 KiB
Python
719 lines
32 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
"""enums - Enumerates for apt daemon dbus messages"""
|
|
# Copyright (C) 2008-2009 Sebastian Heinlein <devel@glatzor.de>
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License along
|
|
# with this program; if not, write to the Free Software Foundation, Inc.,
|
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
__author__ = "Sebastian Heinlein <devel@glatzor.de>"
|
|
|
|
__all__ = ("PKGS_INSTALL", "PKGS_REINSTALL", "PKGS_REMOVE", "PKGS_PURGE",
|
|
"PKGS_UPGRADE", "PKGS_DOWNGRADE", "PKGS_KEEP",
|
|
"EXIT_SUCCESS", "EXIT_CANCELLED", "EXIT_FAILED", "EXIT_UNFINISHED",
|
|
"ERROR_PACKAGE_DOWNLOAD_FAILED", "ERROR_REPO_DOWNLOAD_FAILED",
|
|
"ERROR_DEP_RESOLUTION_FAILED",
|
|
"ERROR_KEY_NOT_INSTALLED", "ERROR_KEY_NOT_REMOVED", "ERROR_NO_LOCK",
|
|
"ERROR_NO_CACHE", "ERROR_NO_PACKAGE", "ERROR_PACKAGE_UPTODATE",
|
|
"ERROR_PACKAGE_NOT_INSTALLED", "ERROR_PACKAGE_ALREADY_INSTALLED",
|
|
"ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE", "ERROR_DAEMON_DIED",
|
|
"ERROR_PACKAGE_MANAGER_FAILED", "ERROR_CACHE_BROKEN",
|
|
"ERROR_PACKAGE_UNAUTHENTICATED", "ERROR_INCOMPLETE_INSTALL",
|
|
"ERROR_UNREADABLE_PACKAGE_FILE", "ERROR_INVALID_PACKAGE_FILE",
|
|
"ERROR_SYSTEM_ALREADY_UPTODATE", "ERROR_NOT_SUPPORTED",
|
|
"ERROR_LICENSE_KEY_INSTALL_FAILED",
|
|
"ERROR_LICENSE_KEY_DOWNLOAD_FAILED",
|
|
"ERROR_AUTH_FAILED", "ERROR_NOT_AUTHORIZED",
|
|
"ERROR_UNKNOWN",
|
|
"STATUS_SETTING_UP", "STATUS_WAITING", "STATUS_WAITING_MEDIUM",
|
|
"STATUS_WAITING_CONFIG_FILE_PROMPT", "STATUS_WAITING_LOCK",
|
|
"STATUS_RUNNING", "STATUS_LOADING_CACHE", "STATUS_DOWNLOADING",
|
|
"STATUS_COMMITTING", "STATUS_CLEANING_UP", "STATUS_RESOLVING_DEP",
|
|
"STATUS_FINISHED", "STATUS_CANCELLING", "STATUS_QUERY",
|
|
"STATUS_DOWNLOADING_REPO", "STATUS_AUTHENTICATING",
|
|
"ROLE_UNSET", "ROLE_INSTALL_PACKAGES", "ROLE_INSTALL_FILE",
|
|
"ROLE_UPGRADE_PACKAGES", "ROLE_UPGRADE_SYSTEM", "ROLE_UPDATE_CACHE",
|
|
"ROLE_REMOVE_PACKAGES", "ROLE_COMMIT_PACKAGES",
|
|
"ROLE_ADD_VENDOR_KEY_FILE", "ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER",
|
|
"ROLE_REMOVE_VENDOR_KEY", "ROLE_FIX_INCOMPLETE_INSTALL",
|
|
"ROLE_FIX_BROKEN_DEPENDS", "ROLE_ADD_REPOSITORY",
|
|
"ROLE_ENABLE_DISTRO_COMP", "ROLE_CLEAN", "ROLE_RECONFIGURE",
|
|
"ROLE_PK_QUERY", "ROLE_ADD_LICENSE_KEY",
|
|
"DOWNLOAD_DONE", "DOWNLOAD_AUTH_ERROR", "DOWNLOAD_ERROR",
|
|
"DOWNLOAD_FETCHING", "DOWNLOAD_IDLE", "DOWNLOAD_NETWORK_ERROR",
|
|
"PKG_INSTALLING", "PKG_CONFIGURING", "PKG_REMOVING",
|
|
"PKG_PURGING", "PKG_UPGRADING", "PKG_RUNNING_TRIGGER",
|
|
"PKG_DISAPPEARING", "PKG_PREPARING_REMOVE", "PKG_PREPARING_INSTALL",
|
|
"PKG_PREPARING_PURGE", "PKG_PREPARING_PURGE", "PKG_INSTALLED",
|
|
"PKG_REMOVED", "PKG_PURGED", "PKG_UNPACKING", "PKG_UNKNOWN",
|
|
"get_status_icon_name_from_enum", "get_role_icon_name_from_enum",
|
|
"get_status_animation_name_from_enum",
|
|
"get_package_status_from_enum",
|
|
"get_role_localised_past_from_enum", "get_exit_string_from_enum",
|
|
"get_role_localised_present_from_enum", "get_role_error_from_enum",
|
|
"get_error_description_from_enum", "get_error_string_from_enum",
|
|
"get_status_string_from_enum", "get_download_status_from_enum")
|
|
|
|
import gettext
|
|
|
|
|
|
def _(msg):
|
|
return gettext.dgettext("aptdaemon", msg)
|
|
|
|
# PACKAGE GROUP INDEXES
|
|
#: Index of the list of to be installed packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_INSTALL = 0
|
|
#: Index of the list of to be re-installed packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_REINSTALL = 1
|
|
#: Index of the list of to be removed packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_REMOVE = 2
|
|
#: Index of the list of to be purged packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_PURGE = 3
|
|
#: Index of the list of to be upgraded packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_UPGRADE = 4
|
|
#: Index of the list of to be downgraded packages in the :attr:`dependencies`
|
|
#: and :attr:`packages` property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_DOWNGRADE = 5
|
|
#: Index of the list of to be keept packages in the :attr:`dependencies`
|
|
#: property of :class:`~aptdaemon.client.AptTransaction`.
|
|
PKGS_KEEP = 6
|
|
|
|
# FINISH STATES
|
|
#: The transaction was successful.
|
|
EXIT_SUCCESS = "exit-success"
|
|
#: The transaction has been cancelled by the user.
|
|
EXIT_CANCELLED = "exit-cancelled"
|
|
#: The transaction has failed.
|
|
EXIT_FAILED = "exit-failed"
|
|
#: The transaction failed since a previous one in a chain failed.
|
|
EXIT_PREVIOUS_FAILED = "exit-previous-failed"
|
|
#: The transaction is still being queued or processed.
|
|
EXIT_UNFINISHED = "exit-unfinished"
|
|
|
|
# ERROR CODES
|
|
#: Failed to download package files which should be installed.
|
|
ERROR_PACKAGE_DOWNLOAD_FAILED = "error-package-download-failed"
|
|
#: Failed to download package information (index files) from the repositories
|
|
ERROR_REPO_DOWNLOAD_FAILED = "error-repo-download-failed"
|
|
#: Failed to satisfy the dependencies or conflicts of packages.
|
|
ERROR_DEP_RESOLUTION_FAILED = "error-dep-resolution-failed"
|
|
#: The requested vendor key is not installed.
|
|
ERROR_KEY_NOT_INSTALLED = "error-key-not-installed"
|
|
#: The requested vendor could not be removed.
|
|
ERROR_KEY_NOT_REMOVED = "error-key-not-removed"
|
|
#: The package management system could not be locked. Eventually another
|
|
#: package manager is running.
|
|
ERROR_NO_LOCK = "error-no-lock"
|
|
#: The package cache could not be opened. This indicates a serious problem
|
|
#: on the system.
|
|
ERROR_NO_CACHE = "error-no-cache"
|
|
#: The requested package is not available.
|
|
ERROR_NO_PACKAGE = "error-no-package"
|
|
#: The package could not be upgraded since it is already up-to-date.
|
|
ERROR_PACKAGE_UPTODATE = "error-package-uptodate"
|
|
#: The package which was requested to install is already installed.
|
|
ERROR_PACKAGE_ALREADY_INSTALLED = "error-package-already-installed"
|
|
#: The package could not be removed since it is not installed.
|
|
ERROR_PACKAGE_NOT_INSTALLED = "error-package-not-installed"
|
|
#: It is not allowed to remove an essential system package.
|
|
ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE = "error-not-remove-essential"
|
|
#: The aptdaemon crashed or could not be connected to on the D-Bus.
|
|
ERROR_DAEMON_DIED = "error-daemon-died"
|
|
#: On of the maintainer scripts during the dpkg call failed.
|
|
ERROR_PACKAGE_MANAGER_FAILED = "error-package-manager-failed"
|
|
#: There are packages with broken dependencies installed on the system.
|
|
#: This has to fixed before performing another transaction.
|
|
ERROR_CACHE_BROKEN = "error-cache-broken"
|
|
#: It is not allowed to install an unauthenticated packages. Packages are
|
|
#: authenticated by installing the vendor key.
|
|
ERROR_PACKAGE_UNAUTHENTICATED = "error-package-unauthenticated"
|
|
#: A previous installation has been aborted and is now incomplete.
|
|
#: Should be fixed by `dpkg --configure -a` or the :func:`FixIncomplete()`
|
|
#: transaction.
|
|
ERROR_INCOMPLETE_INSTALL = "error-incomplete-install"
|
|
#: Failed to open and read the package file
|
|
ERROR_UNREADABLE_PACKAGE_FILE = "error-unreadable-package-file"
|
|
#: The package file violates the Debian/Ubuntu policy
|
|
ERROR_INVALID_PACKAGE_FILE = "error-invalid-package-file"
|
|
#: The requested feature is not supported yet (mainly used by PackageKit
|
|
ERROR_NOT_SUPPORTED = "error-not-supported"
|
|
#: The license key download failed
|
|
ERROR_LICENSE_KEY_DOWNLOAD_FAILED = "error-license-key-download-failed"
|
|
#: The license key is invalid
|
|
ERROR_LICENSE_KEY_INSTALL_FAILED = "error-license-key-install-failed"
|
|
#: The system is already up-to-date and don't needs any upgrades
|
|
ERROR_SYSTEM_ALREADY_UPTODATE = "error-system-already-uptodate"
|
|
#: The user isn't allowed to perform the action at all
|
|
ERROR_NOT_AUTHORIZED = "error-not-authorized"
|
|
#: The user could not be authorized (e.g. wrong password)
|
|
ERROR_AUTH_FAILED = "error-auth-failed"
|
|
#: An unknown error occured. In most cases these are programming ones.
|
|
ERROR_UNKNOWN = "error-unknown"
|
|
|
|
# TRANSACTION STATES
|
|
#: The transaction was created, but hasn't been queued.
|
|
STATUS_SETTING_UP = "status-setting-up"
|
|
#: The transaction performs a query
|
|
STATUS_QUERY = "status-query"
|
|
#: The transaction is waiting in the queue.
|
|
STATUS_WAITING = "status-waiting"
|
|
#: The transaction is paused and waits until a required medium is inserted.
|
|
#: See :func:`ProvideMedium()`.
|
|
STATUS_WAITING_MEDIUM = "status-waiting-medium"
|
|
#: The transaction is paused and waits for the user to resolve a configuration
|
|
#: file conflict. See :func:`ResolveConfigFileConflict()`.
|
|
STATUS_WAITING_CONFIG_FILE_PROMPT = "status-waiting-config-file-prompt"
|
|
#: Wait until the package management system can be locked. Most likely
|
|
#: another package manager is running currently.
|
|
STATUS_WAITING_LOCK = "status-waiting-lock"
|
|
#: The processing of the transaction has started.
|
|
STATUS_RUNNING = "status-running"
|
|
#: The package cache is opened.
|
|
STATUS_LOADING_CACHE = "status-loading-cache"
|
|
#: The information about available packages is downloaded
|
|
STATUS_DOWNLOADING_REPO = "status-downloading-repo"
|
|
#: The required package files to install are getting downloaded.
|
|
STATUS_DOWNLOADING = "status-downloading"
|
|
#: The actual installation/removal takes place.
|
|
STATUS_COMMITTING = "status-committing"
|
|
#: The package management system is cleaned up.
|
|
STATUS_CLEANING_UP = "status-cleaning-up"
|
|
#: The dependecies and conflicts are now getting resolved.
|
|
STATUS_RESOLVING_DEP = "status-resolving-dep"
|
|
#: The transaction has been completed.
|
|
STATUS_FINISHED = "status-finished"
|
|
#: The transaction has been cancelled.
|
|
STATUS_CANCELLING = "status-cancelling"
|
|
#: The transaction waits for authentication
|
|
STATUS_AUTHENTICATING = "status-authenticating"
|
|
|
|
# PACKAGE STATES
|
|
#: The package gets unpacked
|
|
PKG_UNPACKING = "pkg-unpacking"
|
|
#: The installation of the package gets prepared
|
|
PKG_PREPARING_INSTALL = "pkg-preparing-install"
|
|
#: The package is installed
|
|
PKG_INSTALLED = "pkg-installed"
|
|
#: The package gets installed
|
|
PKG_INSTALLING = "pkg-installing"
|
|
#: The configuration of the package gets prepared
|
|
PKG_PREPARING_CONFIGURE = "pkg-preparing-configure"
|
|
#: The package gets configured
|
|
PKG_CONFIGURING = "pkg-configuring"
|
|
#: The removal of the package gets prepared
|
|
PKG_PREPARING_REMOVE = "pkg-preparing-removal"
|
|
#: The package gets removed
|
|
PKG_REMOVING = "pkg-removing"
|
|
#: The package is removed
|
|
PKG_REMOVED = "pkg-removed"
|
|
#: The purging of the package gets prepared
|
|
PKG_PREPARING_PURGE = "pkg-preparing-purge"
|
|
#: The package gets purged
|
|
PKG_PURGING = "pkg-purging"
|
|
#: The package was completely removed
|
|
PKG_PURGED = "pkg-purged"
|
|
#: The post installation trigger of the package is processed
|
|
PKG_RUNNING_TRIGGER = "pkg-running-trigger"
|
|
#: The package disappered - very rare
|
|
PKG_DISAPPEARING = "pkg-disappearing"
|
|
#: The package gets upgraded
|
|
PKG_UPGRADING = "pkg-upgrading"
|
|
#: Failed to get a current status of the package
|
|
PKG_UNKNOWN = "pkg-unknown"
|
|
|
|
# TRANSACTION ROLES
|
|
#: The role of the transaction has not been specified yet.
|
|
ROLE_UNSET = "role-unset"
|
|
#: The transaction performs a query compatible to the PackageKit interface
|
|
ROLE_PK_QUERY = "role-pk-query"
|
|
#: The transaction will install one or more packages.
|
|
ROLE_INSTALL_PACKAGES = "role-install-packages"
|
|
#: The transaction will install a local package file.
|
|
ROLE_INSTALL_FILE = "role-install-file"
|
|
#: The transaction will upgrade one or more packages.
|
|
ROLE_UPGRADE_PACKAGES = "role-upgrade-packages"
|
|
#: The transaction will perform a system upgrade.
|
|
ROLE_UPGRADE_SYSTEM = "role-upgrade-system"
|
|
#: The transaction will update the package cache.
|
|
ROLE_UPDATE_CACHE = "role-update-cache"
|
|
#: The transaction will remove one or more packages.
|
|
ROLE_REMOVE_PACKAGES = "role-remove-packages"
|
|
#: The transaction will perform a combined install, remove, upgrade or
|
|
#: downgrade action.
|
|
ROLE_COMMIT_PACKAGES = "role-commit-packages"
|
|
#: The transaction will add a local vendor key file to authenticate packages.
|
|
ROLE_ADD_VENDOR_KEY_FILE = "role-add-vendor-key-file"
|
|
#: The transaction will download vendor key to authenticate packages from
|
|
#: a keyserver.
|
|
ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER = "role-add-vendor-key-from-keyserver"
|
|
#: The transaction will remove a vendor key which was used to authenticate
|
|
#: packages.
|
|
ROLE_REMOVE_VENDOR_KEY = "role-remove-vendor-key"
|
|
#: The transaction will try to finish a previous aborted installation.
|
|
ROLE_FIX_INCOMPLETE_INSTALL = "role-fix-incomplete-install"
|
|
#: The transaction will to resolve broken dependencies of already installed
|
|
#: packages.
|
|
ROLE_FIX_BROKEN_DEPENDS = "role-fix-broken-depends"
|
|
#: The transaction will enable a repository to download software from.
|
|
ROLE_ADD_REPOSITORY = "role-add-repository"
|
|
#: The transaction will enable a component in the distro repositories,
|
|
#: e.g main or universe
|
|
ROLE_ENABLE_DISTRO_COMP = "role-enable-distro-comp"
|
|
#: The transaction will reconfigure the given already installed packages
|
|
ROLE_RECONFIGURE = "role-reconfigure"
|
|
#: The transaction will remove all downloaded package files.
|
|
ROLE_CLEAN = "role-clean"
|
|
#: The transaction will add a license key to the system
|
|
ROLE_ADD_LICENSE_KEY = "role-add-license-key"
|
|
|
|
# DOWNLOAD STATES
|
|
#: The download has been completed.
|
|
DOWNLOAD_DONE = "download-done"
|
|
#: The file could not be downloaded since the authentication for the repository
|
|
#: failed.
|
|
DOWNLOAD_AUTH_ERROR = "download-auth-error"
|
|
#: There file could not be downloaded, e.g. because it is not available (404).
|
|
DOWNLOAD_ERROR = "download-error"
|
|
#: The file is currently being downloaded.
|
|
DOWNLOAD_FETCHING = "download-fetching"
|
|
#: The download is currently idling.
|
|
DOWNLOAD_IDLE = "download-idle"
|
|
#: The download failed since there seem to be a networking problem.
|
|
DOWNLOAD_NETWORK_ERROR = "download-network-error"
|
|
|
|
_ICONS_STATUS = {
|
|
STATUS_CANCELLING: 'aptdaemon-cleanup',
|
|
STATUS_CLEANING_UP: 'aptdaemon-cleanup',
|
|
STATUS_RESOLVING_DEP: 'aptdaemon-resolve',
|
|
STATUS_COMMITTING: 'aptdaemon-working',
|
|
STATUS_DOWNLOADING: 'aptdaemon-download',
|
|
STATUS_DOWNLOADING_REPO: 'aptdaemon-download',
|
|
STATUS_FINISHED: 'aptdaemon-cleanup',
|
|
STATUS_LOADING_CACHE: 'aptdaemon-update-cache',
|
|
STATUS_RUNNING: 'aptdaemon-working',
|
|
STATUS_SETTING_UP: 'aptdaemon-working',
|
|
STATUS_WAITING: 'aptdaemon-wait',
|
|
STATUS_WAITING_LOCK: 'aptdaemon-wait',
|
|
STATUS_WAITING_MEDIUM: 'aptdaemon-wait',
|
|
STATUS_WAITING_CONFIG_FILE_PROMPT: 'aptdaemon-wait'}
|
|
|
|
_ICONS_ROLE = {
|
|
ROLE_INSTALL_FILE: 'aptdaemon-add',
|
|
ROLE_INSTALL_PACKAGES: 'aptdaemon-add',
|
|
ROLE_UPDATE_CACHE: 'aptdaemon-update-cache',
|
|
ROLE_REMOVE_PACKAGES: 'aptdaemon-delete',
|
|
ROLE_UPGRADE_PACKAGES: 'aptdaemon-upgrade',
|
|
ROLE_UPGRADE_SYSTEM: 'system-software-update'}
|
|
|
|
_ANIMATIONS_STATUS = {
|
|
STATUS_CANCELLING: 'aptdaemon-action-cleaning-up',
|
|
STATUS_CLEANING_UP: 'aptdaemon-action-cleaning-up',
|
|
STATUS_RESOLVING_DEP: 'aptdaemon-action-resolving',
|
|
STATUS_DOWNLOADING: 'aptdaemon-action-downloading',
|
|
STATUS_DOWNLOADING_REPO: 'aptdaemon-action-downloading',
|
|
STATUS_LOADING_CACHE: 'aptdaemon-action-updating-cache',
|
|
STATUS_WAITING: 'aptdaemon-action-waiting',
|
|
STATUS_WAITING_LOCK: 'aptdaemon-action-waiting',
|
|
STATUS_WAITING_MEDIUM: 'aptdaemon-action-waiting',
|
|
STATUS_WAITING_CONFIG_FILE_PROMPT: 'aptdaemon-action-waiting'}
|
|
|
|
_PAST_ROLE = {
|
|
ROLE_INSTALL_FILE: _("Installed file"),
|
|
ROLE_INSTALL_PACKAGES: _("Installed packages"),
|
|
ROLE_ADD_VENDOR_KEY_FILE: _("Added key from file"),
|
|
ROLE_UPDATE_CACHE: _("Updated cache"),
|
|
ROLE_PK_QUERY: _("Search done"),
|
|
ROLE_REMOVE_VENDOR_KEY: _("Removed trusted key"),
|
|
ROLE_REMOVE_PACKAGES: _("Removed packages"),
|
|
ROLE_UPGRADE_PACKAGES: _("Updated packages"),
|
|
ROLE_UPGRADE_SYSTEM: _("Upgraded system"),
|
|
ROLE_COMMIT_PACKAGES: _("Applied changes"),
|
|
ROLE_FIX_INCOMPLETE_INSTALL: _("Repaired incomplete installation"),
|
|
ROLE_FIX_BROKEN_DEPENDS: _("Repaired broken dependencies"),
|
|
ROLE_ADD_REPOSITORY: _("Added software source"),
|
|
ROLE_ENABLE_DISTRO_COMP: _("Enabled component of the distribution"),
|
|
ROLE_CLEAN: _("Removed downloaded package files"),
|
|
ROLE_RECONFIGURE: _("Reconfigured installed packages"),
|
|
ROLE_UNSET: ""}
|
|
|
|
_STRING_EXIT = {
|
|
EXIT_SUCCESS: _("Successful"),
|
|
EXIT_CANCELLED: _("Canceled"),
|
|
EXIT_FAILED: _("Failed")}
|
|
|
|
_PRESENT_ROLE = {
|
|
ROLE_INSTALL_FILE: _("Installing file"),
|
|
ROLE_INSTALL_PACKAGES: _("Installing packages"),
|
|
ROLE_ADD_VENDOR_KEY_FILE: _("Adding key from file"),
|
|
ROLE_UPDATE_CACHE: _("Updating cache"),
|
|
ROLE_REMOVE_VENDOR_KEY: _("Removing trusted key"),
|
|
ROLE_REMOVE_PACKAGES: _("Removing packages"),
|
|
ROLE_UPGRADE_PACKAGES: _("Updating packages"),
|
|
ROLE_UPGRADE_SYSTEM: _("Upgrading system"),
|
|
ROLE_COMMIT_PACKAGES: _("Applying changes"),
|
|
ROLE_FIX_INCOMPLETE_INSTALL: _("Repairing incomplete installation"),
|
|
ROLE_FIX_BROKEN_DEPENDS: _("Repairing installed software"),
|
|
ROLE_ADD_REPOSITORY: _("Adding software source"),
|
|
ROLE_ENABLE_DISTRO_COMP: _("Enabling component of the distribution"),
|
|
ROLE_CLEAN: _("Removing downloaded package files"),
|
|
ROLE_RECONFIGURE: _("Reconfiguring installed packages"),
|
|
ROLE_PK_QUERY: _("Searching"),
|
|
ROLE_UNSET: ""}
|
|
|
|
_ERROR_ROLE = {
|
|
ROLE_INSTALL_FILE: _("Installation of the package file failed"),
|
|
ROLE_INSTALL_PACKAGES: _("Installation of software failed"),
|
|
ROLE_ADD_VENDOR_KEY_FILE: _("Adding the key to the list of trusted "
|
|
"software vendors failed"),
|
|
ROLE_UPDATE_CACHE: _("Refreshing the software list failed"),
|
|
ROLE_REMOVE_VENDOR_KEY: _("Removing the vendor from the list of trusted "
|
|
"ones failed"),
|
|
ROLE_REMOVE_PACKAGES: _("Removing software failed"),
|
|
ROLE_UPGRADE_PACKAGES: _("Updating software failed"),
|
|
ROLE_UPGRADE_SYSTEM: _("Upgrading the system failed"),
|
|
ROLE_COMMIT_PACKAGES: _("Applying software changes failed"),
|
|
ROLE_FIX_INCOMPLETE_INSTALL: _("Repairing incomplete installation "
|
|
"failed"),
|
|
ROLE_FIX_BROKEN_DEPENDS: _("Repairing broken dependencies failed"),
|
|
ROLE_ADD_REPOSITORY: _("Adding software source failed"),
|
|
ROLE_ENABLE_DISTRO_COMP: _("Enabling component of the distribution "
|
|
"failed"),
|
|
ROLE_CLEAN: _("Removing downloaded package files failed"),
|
|
ROLE_RECONFIGURE: _("Removing downloaded package files failed"),
|
|
ROLE_PK_QUERY: _("Search failed"),
|
|
ROLE_ADD_LICENSE_KEY: _("Adding license key"),
|
|
ROLE_UNSET: ""}
|
|
|
|
_DESCS_ERROR = {
|
|
ERROR_PACKAGE_DOWNLOAD_FAILED: _("Check your Internet connection."),
|
|
ERROR_REPO_DOWNLOAD_FAILED: _("Check your Internet connection."),
|
|
ERROR_CACHE_BROKEN: _("Check if you are using third party "
|
|
"repositories. If so disable them, since "
|
|
"they are a common source of problems.\n"
|
|
"Furthermore run the following command in a "
|
|
"Terminal: apt-get install -f"),
|
|
ERROR_KEY_NOT_INSTALLED: _("The selected file may not be a GPG key file "
|
|
"or it might be corrupt."),
|
|
ERROR_KEY_NOT_REMOVED: _("The selected key couldn't be removed. "
|
|
"Check that you provided a valid fingerprint."),
|
|
ERROR_NO_LOCK: _("Check if you are currently running another "
|
|
"software management tool, e.g. Synaptic or aptitude. "
|
|
"Only one tool is allowed to make changes at a time."),
|
|
ERROR_NO_CACHE: _("This is a serious problem. Try again later. If this "
|
|
"problem appears again, please report an error to the "
|
|
"developers."),
|
|
ERROR_NO_PACKAGE: _("Check the spelling of the package name, and "
|
|
"that the appropriate repository is enabled."),
|
|
ERROR_PACKAGE_UPTODATE: _("There isn't any need for an update."),
|
|
ERROR_PACKAGE_ALREADY_INSTALLED: _("There isn't any need for an "
|
|
"installation"),
|
|
ERROR_PACKAGE_NOT_INSTALLED: _("There isn't any need for a removal."),
|
|
ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE: _("You requested to remove a "
|
|
"package which is an essential "
|
|
"part of your system."),
|
|
ERROR_DAEMON_DIED: _("The connection to the daemon was lost. Most likely "
|
|
"the background daemon crashed."),
|
|
ERROR_PACKAGE_MANAGER_FAILED: _("The installation or removal of a "
|
|
"software package failed."),
|
|
ERROR_NOT_SUPPORTED: _("The requested feature is not supported."),
|
|
ERROR_UNKNOWN: _("There seems to be a programming error in aptdaemon, "
|
|
"the software that allows you to install/remove "
|
|
"software and to perform other package management "
|
|
"related tasks."),
|
|
ERROR_DEP_RESOLUTION_FAILED: _("This error could be caused by required "
|
|
"additional software packages which are "
|
|
"missing or not installable. Furthermore "
|
|
"there could be a conflict between "
|
|
"software packages which are not allowed "
|
|
"to be installed at the same time."),
|
|
ERROR_PACKAGE_UNAUTHENTICATED: _("This requires installing packages "
|
|
"from unauthenticated sources."),
|
|
ERROR_INCOMPLETE_INSTALL: _("The installation could have failed because "
|
|
"of an error in the corresponding software "
|
|
"package or it was cancelled in an unfriendly "
|
|
"way. "
|
|
"You have to repair this before you can "
|
|
"install or remove any further software."),
|
|
ERROR_UNREADABLE_PACKAGE_FILE: _("Please copy the file to your local "
|
|
"computer and check the file "
|
|
"permissions."),
|
|
ERROR_INVALID_PACKAGE_FILE: _("The installation of a package which "
|
|
"violates the quality standards isn't "
|
|
"allowed. This could cause serious "
|
|
"problems on your computer. Please contact "
|
|
"the person or organisation who provided "
|
|
"this package file and include the details "
|
|
"beneath."),
|
|
ERROR_LICENSE_KEY_INSTALL_FAILED: _("The downloaded license key which is "
|
|
"required to run this piece of "
|
|
"software is not valid or could not "
|
|
"be installed correctly.\n"
|
|
"See the details for more "
|
|
"information."),
|
|
ERROR_SYSTEM_ALREADY_UPTODATE: _("All available upgrades have already "
|
|
"been installed."),
|
|
ERROR_LICENSE_KEY_DOWNLOAD_FAILED: _("The license key which allows you to "
|
|
"use this piece of software could "
|
|
"not be downloaded. Please check "
|
|
"your network connection."),
|
|
ERROR_NOT_AUTHORIZED: _("You don't have the required privileges to "
|
|
"perform this action."),
|
|
ERROR_AUTH_FAILED: _("You either provided a wrong password or "
|
|
"cancelled the authorization.\n"
|
|
"Furthermore there could also be a technical reason "
|
|
"for this error if you haven't seen a password "
|
|
"dialog: your desktop environment doesn't provide a "
|
|
"PolicyKit session agent.")}
|
|
|
|
_STRINGS_ERROR = {
|
|
ERROR_PACKAGE_DOWNLOAD_FAILED: _("Failed to download package files"),
|
|
ERROR_REPO_DOWNLOAD_FAILED: _("Failed to download repository "
|
|
"information"),
|
|
ERROR_DEP_RESOLUTION_FAILED: _("Package dependencies cannot be resolved"),
|
|
ERROR_CACHE_BROKEN: _("The package system is broken"),
|
|
ERROR_KEY_NOT_INSTALLED: _("Key was not installed"),
|
|
ERROR_KEY_NOT_REMOVED: _("Key was not removed"),
|
|
ERROR_NO_LOCK: _("Failed to lock the package manager"),
|
|
ERROR_NO_CACHE: _("Failed to load the package list"),
|
|
ERROR_NO_PACKAGE: _("Package does not exist"),
|
|
ERROR_PACKAGE_UPTODATE: _("Package is already up to date"),
|
|
ERROR_PACKAGE_ALREADY_INSTALLED: _("Package is already installed"),
|
|
ERROR_PACKAGE_NOT_INSTALLED: _("Package isn't installed"),
|
|
ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE: _("Failed to remove essential "
|
|
"system package"),
|
|
ERROR_DAEMON_DIED: _("Task cannot be monitored or controlled"),
|
|
ERROR_PACKAGE_MANAGER_FAILED: _("Package operation failed"),
|
|
ERROR_PACKAGE_UNAUTHENTICATED: _("Requires installation of untrusted "
|
|
"packages"),
|
|
ERROR_INCOMPLETE_INSTALL: _("Previous installation hasn't been completed"),
|
|
ERROR_INVALID_PACKAGE_FILE: _("The package is of bad quality"),
|
|
ERROR_UNREADABLE_PACKAGE_FILE: _("Package file could not be opened"),
|
|
ERROR_NOT_SUPPORTED: _("Not supported feature"),
|
|
ERROR_LICENSE_KEY_DOWNLOAD_FAILED: _("Failed to download the license key"),
|
|
ERROR_LICENSE_KEY_INSTALL_FAILED: _("Failed to install the license key"),
|
|
ERROR_SYSTEM_ALREADY_UPTODATE: _("The system is already up to date"),
|
|
ERROR_AUTH_FAILED: _("You could not be authorized"),
|
|
ERROR_NOT_AUTHORIZED: _("You are not allowed to perform this action"),
|
|
ERROR_UNKNOWN: _("An unhandlable error occured")}
|
|
|
|
_STRINGS_STATUS = {
|
|
STATUS_SETTING_UP: _("Waiting for service to start"),
|
|
STATUS_QUERY: _("Searching"),
|
|
STATUS_WAITING: _("Waiting"),
|
|
STATUS_WAITING_MEDIUM: _("Waiting for required medium"),
|
|
STATUS_WAITING_LOCK: _("Waiting for other software managers to quit"),
|
|
STATUS_WAITING_CONFIG_FILE_PROMPT: _("Waiting for configuration file "
|
|
"prompt"),
|
|
STATUS_RUNNING: _("Running task"),
|
|
STATUS_DOWNLOADING: _("Downloading"),
|
|
STATUS_DOWNLOADING_REPO: _("Querying software sources"),
|
|
STATUS_CLEANING_UP: _("Cleaning up"),
|
|
STATUS_RESOLVING_DEP: _("Resolving dependencies"),
|
|
STATUS_COMMITTING: _("Applying changes"),
|
|
STATUS_FINISHED: _("Finished"),
|
|
STATUS_CANCELLING: _("Cancelling"),
|
|
STATUS_LOADING_CACHE: _("Loading software list"),
|
|
STATUS_AUTHENTICATING: _("Waiting for authentication")}
|
|
|
|
STRINGS_PKG_STATUS = {
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_INSTALLING: _("Installing %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_CONFIGURING: _("Configuring %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_REMOVING: _("Removing %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PURGING: _("Completely removing %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PURGING: _("Noting disappearance of %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_RUNNING_TRIGGER: _("Running post-installation trigger %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_UPGRADING: _("Upgrading %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_UNPACKING: _("Unpacking %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PREPARING_INSTALL: _("Preparing installation of %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PREPARING_CONFIGURE: _("Preparing configuration of %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PREPARING_REMOVE: _("Preparing removal of %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PREPARING_PURGE: _("Preparing complete removal of %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_INSTALLED: _("Installed %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_PURGED: _("Completely removed %s"),
|
|
# TRANSLATORS: %s is the name of a package
|
|
PKG_REMOVED: _("Removed %s")}
|
|
|
|
STRINGS_DOWNLOAD = {
|
|
DOWNLOAD_DONE: _("Done"),
|
|
DOWNLOAD_AUTH_ERROR: _("Authentication failed"),
|
|
DOWNLOAD_ERROR: _("Failed"),
|
|
DOWNLOAD_FETCHING: _("Fetching"),
|
|
DOWNLOAD_IDLE: _("Idle"),
|
|
DOWNLOAD_NETWORK_ERROR: _("Network isn't available")}
|
|
|
|
|
|
def get_status_icon_name_from_enum(enum):
|
|
"""Get the icon name for a transaction status.
|
|
|
|
:param enum: The transaction status enum, e.g. :data:`STATUS_WAITING`.
|
|
:returns: The icon name string.
|
|
"""
|
|
try:
|
|
return _ICONS_STATUS[enum]
|
|
except KeyError:
|
|
return "aptdaemon-working"
|
|
|
|
|
|
def get_role_icon_name_from_enum(enum):
|
|
"""Get an icon to represent the role of a transaction.
|
|
|
|
:param enum: The transaction role enum, e.g. :data:`ROLE_UPDATE_CACHE`.
|
|
:returns: The icon name string.
|
|
"""
|
|
try:
|
|
return _ICONS_ROLE[enum]
|
|
except KeyError:
|
|
return "aptdaemon-working"
|
|
|
|
|
|
def get_status_animation_name_from_enum(enum):
|
|
"""Get an animation to represent a transaction status.
|
|
|
|
:param enum: The transaction status enum, e.g. :data:`STATUS_WAITING`.
|
|
:returns: The animation name string.
|
|
"""
|
|
try:
|
|
return _ANIMATIONS_STATUS[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_role_localised_past_from_enum(enum):
|
|
"""Get the description of a completed transaction action.
|
|
|
|
:param enum: The transaction role enum, e.g. :data:`ROLE_UPDATE_CACHE`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _PAST_ROLE[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_exit_string_from_enum(enum):
|
|
"""Get the description of a transaction exit status.
|
|
|
|
:param enum: The transaction exit status enum, e.g. :data:`EXIT_FAILED`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _STRING_EXIT[enum]
|
|
except:
|
|
return None
|
|
|
|
|
|
def get_role_localised_present_from_enum(enum):
|
|
"""Get the description of a present transaction action.
|
|
|
|
:param enum: The transaction role enum, e.g. :data:`ROLE_UPDATE_CACHE`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _PRESENT_ROLE[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_role_error_from_enum(enum):
|
|
"""Get the description of a failed transaction action.
|
|
|
|
:param enum: The transaction role enum, e.g. :data:`ROLE_UPDATE_CACHE`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _ERROR_ROLE[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_error_description_from_enum(enum):
|
|
"""Get a long description of an error.
|
|
|
|
:param enum: The transaction error enum, e.g. :data:`ERROR_NO_LOCK`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _DESCS_ERROR[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_error_string_from_enum(enum):
|
|
"""Get a short description of an error.
|
|
|
|
:param enum: The transaction error enum, e.g. :data:`ERROR_NO_LOCK`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _STRINGS_ERROR[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_status_string_from_enum(enum):
|
|
"""Get the description of a transaction status.
|
|
|
|
:param enum: The transaction status enum, e.g. :data:`STATUS_WAITING`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return _STRINGS_STATUS[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
|
|
def get_package_status_from_enum(enum):
|
|
"""Get the description of a package status.
|
|
|
|
:param enum: The download status enum, e.g. :data:`PKG_INSTALLING`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return STRINGS_PKG_STATUS[enum]
|
|
except KeyError:
|
|
return _("Processing %s")
|
|
|
|
|
|
def get_download_status_from_enum(enum):
|
|
"""Get the description of a download status.
|
|
|
|
:param enum: The download status enum, e.g. :data:`DOWNLOAD_DONE`.
|
|
:returns: The description string.
|
|
"""
|
|
try:
|
|
return STRINGS_DOWNLOAD[enum]
|
|
except KeyError:
|
|
return None
|
|
|
|
# vim:ts=4:sw=4:et
|