aptdaemon-1.1.1+bzr982/AUTHORS0000644000000000000000000000027311217600411013707 0ustar 00000000000000Maintainer: Sebastian Heinlein Developers: Michael Vogt Icon Artits: Mike Langlie Richard Hughes aptdaemon-1.1.1+bzr982/COPYRIGHT0000644000000000000000000004310311130100765014132 0ustar 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 (at your option) 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. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. aptdaemon-1.1.1+bzr982/NEWS0000644000000000000000000006422412202062724013350 0ustar 00000000000000VERSION 1.1.1 - released on Mon Aug 12 06:33:46 2013 * Bug Fixes: - Export aptdaemon.progress.Daemon(Fork|Lintian)Progress correctly - Make sure to not remove transactions from the D-Bus more than once - Fix release script to not add a white space when releasing a new version - Fix white space in release version - Fix supported PackageKit roles (add remove_packages and install_files) VERSION 1.1 - released on Tue Jul 16 06:57:38 2013 * Enhancements: - Migrate to the PackageKit 0.8 D-Bus interface including several bug and behavior fixes. Futhermore add support for more transaction roles, see API Changes. - Run the daemon in the tests always with debugging information - Use a colored log output on the console - Add a test to check if installing from a CDrom works after the transaction has failed - Configuration file conflict prompts now default to replace old configuration * API Changes: - Update to the PackageKit 0.8 system D-Bus interface - Add support for the PackageKit RepairSystem and InstallFiles transaction - Add support for CanAuthorize by mapping PackageKit privileges to the coresponding aptdaemon ones - Make us of the ItemProgress singal to report package download progress - Add the ARCH and NOT_ARCH filter - Report the correct package id for download/install progress reports by caching the ids * Bug Fixes: - Fix backwards compatibility for GLib.io_add_watch() - Ensure that the default filesystem encoding is always set by defaulting to C.UTF-8. Thanks Michael (LP: #1058038) - Catch a random exception while resizing GTK3 dialogs (LP: #898851) VERSION 1.0 - released on Sun Mar 10 14:37:49 2013 * Enhancements: - Python3 support and run the daemon with Python3 by default - Make use of apt.auth instead of softwareproperties.AptAuth - Support installing trusted packages from whitelisted repositories with a separate PolicyKit privilege. Ubuntu installs those packages without any confirmation - Support more PackageKit transactions (InstallSignature, RepoEnable) - Use lintian profiles instead of tag files (separat profiles for Debian and Ubuntu are available). Thanks to Niels Thykier. - The client prefers the GOBject introspectable GLib instead of the Python gobject module - Allow to update saved credentials if a repository is re-added - Comply to the PEP8 coding standards - Port to latest PyGObject API (>3.7.2) * API changes: - aptdaemon.test.TestCase has now a start_keyserver() method to fake a GnuPG key server - aptdaemon.errors has got two new transaction error enums ERROR_AUTH_FAILED and ERROR_NOT_AUTHORIZED - If the authorization to run a transaction fails the transaction itself will fail instead of only the run() call - gtk(3)widgtes: Remove the AptMessageDialog since we don't support non fatal messages at all * Bug fixes: - Report blocked updates if the dependency system is broken (LP: #932581) - Fix transaction status message if the package status is unknown (LP: #900982) - Restore compatibility with Python2, which doesn't have urllib.parse - Several fixes for the test suite (LP: #1050799) - Fix package file list handling in PK GetFiles() - Fix parsing process cmdlines with special characters (LP: #1044900) - Fix translations if running in a non-C locale (LP: #1034806) - Fix unicode-hanlding in error messages (LP: LP: #846044) - Fix handling of multiline comments in the APT configuration system - Don't change the automatically installed flag of packages during upgrade (LP: #1078544) - Thanks Daniel Hartwig - Fix installing of local packages that have conflicts (LP: #750958) - Don't fail if we want to remove a package without any candidate when simulating a transaction - Fix formating of config file diffs (LP: #1120322) - Thanks Barry Warsaw - Fix setting the AllowCancel instead of the Speed PackageKit transaction property - Set default values of PK transaction property with a defined type - Report a failed authorization correctly to PK client - Allow repositories to have a dot in the release name - Set a sensible default size for the details in GTK2 error dialogs - Set the GTK dialog details section insensitive if there aren't any details to show - Fix some typos and formattings in the man page (LP: #1112492) Thanks to Ansgar Burchardt CHANGES (0.45): * Enhancements: - Support multiarch package names like apt-get, e.g. xterm:amd64 - Store the transaction role and sender in apt's history log - Freeze (copy) the dpkg status file during a dpkg call to allow simulating other transactions with the frozen dpkg status - Share WhatProvides plugins with the Python APT PackageKit backend - Allow to install global license keys, see below - Add compatibility for py-gobject 3.0 to the client module by switching to gobject from introspection repository - Add an apport package hook which collects information on every unhandled crash to make solving bugs easier - Avoid creating an apport crash report for valid DBusExceptions that are send to the client (subclasses of AptDaemonError) - Only create an apport crash report if it is enabled and aptdaemon was started as a system service - Improve error reporting in the case of DBus type conversions - Unset the apt-listbugs frontend in non-interactive mode - Replace the backported unittest2 framework by the native one of Python 2.7 and Nose to collect the tests - Speedup transaction start time by not marking changes in the cache twice (at simulate and install time) * API changes: - what-provides plugin: Share this plugin with the Python APT backend of PackageKit to allow other packages to specify providers for mod aliases, GStreamer codecs or language support - get-license-key plugin: Add this new plugin which gets the uid, the package name, a json oauth token identifieng the customer and a server name to retrieve a license key and the path to store it to - org.debian.apt D-Bus interface: o Add new AddLicenseKey method which allows to place a license key file at the loaction specified in the record/control field LicenseKeyPath of the corresponding package. o Add the RebootRequired property. Should be quite self-explanatory - org.debian.apt.transaction D-Bus interface: o The Download and Space properties are now of type Int64 (signed 64-bit integer) o The elapsed time, total and done bytes in the ProgressDetails property are now of type Int64 (signed 64-bit integer). Furthermore the speed is a now Double. - org.freedesktop.PackageKit D-Bus interface: Initial implmentation - org.freedesktop.PackageKit.transaction D-Bus interface: Initial implementaion - aptdaemon.client: o New AptClient.add_license_key method o Rename Transaction.disconnect() to Transaction._disconnect_from_dbus() - aptdaemon.enums: o Add enums for package states (e.g. PKG_INSTALLING or PKG_CONFIGURING) and a corresponding description mapping function get_package_status_from_enum() o Add ERROR_NOT_SUPPORTED to indicate that a feature isn't yet implemented * Add ERROR_SYSTEM_ALREADY_UPTODATE to indicate that there isn't any need to upgrade the system o Add STATUS_DOWNLOADING_REPO to indicate that the information of available packages is downloaded from the repositories - aptdaemon.errors: o Add a new TransactionAlreadySimulating() error which gets emitted if a transaction should be simulated but a simulation is already performed currently - aptdaemon.gtk3widgets.AptProgressDialog.run() is now deferable, LP #819328 - aptdaemon.test.Chroot now has got new methods to handle faked cdrom repositories: add_cdrom_repository(), mount_cdrom() and unmount_cdrom() * Bug fixes: - Fix untranslated status messages during installation, LP #641262 - Fix an error in the string decoding helper method - Fix detection of a failed lintian check by convert the exit status correctly - Fix remaining watch_lock refactoring issues, LP #759023 and LP#764422 Thanks to Robert Roth! - Catch a broken cache in the simulate method, LP #694505 - Queued transaction should show as waiting and not as running, LP #702442 - Catch broken and really large install sizes specified in third party packages which result in an overflow error, LP #758837 - Fix argument handling in wait_for_lock call, LP #763642 - Map the dpkg disappear status, LP #762210 - Don't fail if the master_fd was already closed and the io callback is still in the loop, LP #753928 - Convert messages of AptDaemonErrors to unicode, LP #761386 - Don't leak file descriptors during locking, LP #742935 - Handle interrupt signals correctly in the forked child - Make sure to quit the forked child correctly on errors - Fix cdrom test case - Avoid apport crash reports for dpkg failures, LP# 799982 - Use apt_pkg.version_compare to detect already upt-to-date packages instead of simple string comparison - Fix --downgrade option of aptdcon - Fix not supported errors in pkcompat - Fix cancelling transactions - Sync all properties of a transaction in the client before emitting the finished signal (LP#747172) - Fixes to piping the terminal (LP #733090) CHANGES (0.43) * Enhancements: - If there are unsatisiefied dependencies show more details like apt-get does - Allow distributions to ship different lintian tag files (fatal and non-fatal ones) - adds a depedency on lsb_release - No longer take queued transactions into account to simulate transactions (future status). The multi arch support adds to much complexity. - Automatically switch to non-interactive mode if the controlling terminal of the client isn't available anymore - Verify package names specified in aptdaemon DBus calls * API changes: - aptdaemon.gtkwidgets.AptProgressDialog.run() is now deferable, LP #626798 * Bug fixes: - Wait for the lock after dpkg has been executed instead of failing LP #698170, #665572 - Don't overwrite DBusException.args in TransactionFailed leading to empty error messages - Fix policykit translations by dropping the gettext domain field from the policy definitions, LP #690270 - Fix installing local packages which are not yet known to the cache - Fix use of required_version in the gt3widgets, thanks pitti - Fix the client add_repository call, thanks mvo - Stop processing a transaction in the client if there has been an error - Adapt gtkwidgets.AptProgressDialog.run() to latest API using the sync() method of the transaction - Call waitpid after reading the output from lintian, LP# 724859 - Allow package names containing an architecture separated by ":", LP #750941 - gtkwidgets.AptProgressDialog.run() should call Transaction.sync() if attach is True. Missing adoption to API changes. - Don't segfault if we cannot read the status of the process holding a lock - fixes LP #745517 - Fix UnicodeDecodeErrors, LP #724735, #745261, #742051, #749505, #707490, #707490, #708964, #747037 and #706572 - Fix logging of Finished signals CHANGES (0.42): - IMPORTANT SECURTIY FIX, see CVE-2011-0725 http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2011-0725 https://bugs.launchpad.net/ubuntu/+source/aptdaemon/+bug/722228 The UpdateCachePartially method allows to specify an alternative sources.list snippet to only update the repositories specified in the corresponding configuration file. Aptdaemon did not restrict the path to the sources.list.d directory and allowed to inject packages from malicious sources specified in a custom sources.list and even to read every file on the system. CHANGES (0.41): - Greatly enhanced test suite by moving to unittest2, allowing to perform package operations in a chroot and running tests on a local session dbus: "dbus-launch unit2 discover" - Improved error reporting - Improved open progress. Thanks to mvo! - Use sudo to run linitian as the user of the transaction - Several bug fixes * General API changes: - Fix: Emit the properties and signals with the documentated static types. * gtk3widgets Python module: - There is now a gtk3widgets module which uses GTK 3.0 and pygobject (with introspection). gtk3-demo.py is a corresponding port of gtk-demo.py. * org.debian.apt.transaction D-Bus interface - The sizes in the ProgressDownload are now of type long - following the API changes in APT. Therefor the signature of the ProgressDownload struct changed to "ssxxs". API CHANGES 0.40: * General: - Checks .deb files with lintian before installing - Apport integration provides additional information on exceptions - Uses gettext domains in policy files * org.debian.aptdaemon D-Bus interface: - Allow to specify the to be installed/removed version of package. The package name and version are separated by "=", e.g. "xterm=258-1". - API BREAK: The CommitPackage method has got a new argument to downgrade packages. You have to specify the version of the to be downgraded packages. - API BREAK: The InstallFile method now takes an additional argument force to allow installing package files which violate the Debian/Ubuntu policy. - Authentication for actions has been moved to the org.debian.aptdaemon.transaction.Run(). This allows to simulate actions without having to authenticate for it. - Add a new transaction based action Clean() which allows to remove cached downloaded package files. - Add a new transaction based action Reconfigure() which allows to reconfigure already installed packages using debconf. - Add writable property PopConParticipation to control the participation in the package popularity contest. - Add writable properties AutoUpdateInterval, AutoDownload, AutoCleanInterval and UnattendedUpgrade to control the behavior of the APT cron job. * console client: - Add a --details option to show the version number of to be changed packages - Add --clean, --reconfigure and --priority option * defer modules: - Moved to a separate project python-defer * enums module: - Add ERROR_UNREADABLE_PACKAGE_FILE and ERROR_INVALID_PACKAGE_FILE to provide finer error messages * client module: - The return value of wait=True in an async call is now the exit state of the transaction instead of the Transaction instance. It behaves now as documented and in the same way as sync calls. - Add AptClient.clean(), see changes in the D-Bus interface - Add AptClient.reconfigure(), see changes in the D-Bus interface * PolicyKit privileges: - Add a new org.debian.apt.clean privilege for removing downloaded package files. It is granted by default to all active sessions. - Add org.debian.apt.change-config privilege for changing the APT configuration. API CHANGES 0.33 * org.debian.apt D-Bus interface - Make AddRepository() and EnableDistroComponent() transaction based. - Add a new UpdateCachePartially() method which allows to only update the repositories from a given sources.list snippet. * org.debian.apt.transaction D-Bus interface - Add a RunAfter() method to chain transactions. - Add an Unauthenticated property to the transaction. * client Python module - Adapt to changes in the D-Bus interfaces. * enums Python module - Add new role enums ROLE_ADD_REPOSITORY and ROLE_ENABLE_DISTOR_COMP. * policykit1 Python module - Raise an AuthorizationFailed exception in a non-interactive check if the user could obtain the privilege in interactive-mode (is_challenged) * errors Python module - Make the AuthorizationFailed error an inheritance of NotAuthorizedError * PolicyKit1: - Allow every active user to update the cache - Merge install-packages, remove-packages and fix privilege into a new install-or-remove-packages one - Merge add- and remove-vendor-key privileges into change-repository one - Remove upgrade-system in favour of upgrade-packages - Allow set-proxy and cancel-foreign only by auth_admin API CHANGES 0.32 * PolicyKit1: - Add a new privilege org.debian.apt.set-proxy which allows to set an http proxy server for a transaction. Currently every active user is allowed to set a proxy for his or her transactions. * entry points: - Add modify_cache_before and modify_cache_after entry point which make it possible for plugins to modify the to be installed or removed packages of a transaction. See README.Plugins for further details. * client Python module: - Allow to convert all methods into Deferreds by using the deferable_function decorator, see below for more details. - Add a downloads attribute to AptTransaction. It contains a dictionary of all processed downloads. The key is the uri of the download. The value is a tuple of status enum, short description, full size, downloaded size and a status/error message - Add a progress-download-changed signal to AptTransaction which is emitted when a download progress information changed, see above. - Implement the wait arguement in the AptClient methods which are transaction based. If True the transaction will be started immediately and the method call will return when the transaction is finished. - Add add_vendor_key_from_keyserver method, see AddVendorKeyFromKeyserver * enums Python module: - Add a set of DOWNLOAD_* status enumerations. - Fix value of STATUS_DOWNLOADING: from status-downloadgin to status-downloading * defer Python module: - Add inline_callbacks and return_value functions which allow to write async code in a sync way. Works like the inlineCallbacks decorator from the Twisted framework. - Add deferable decorator which adds a defer attribute to the decorated function and returns a Deferred instance. The callback of the Deferred will be passed as reply_handler argument and the errback as the error_handler argument to the decorated function. * gtkwidgets Python module: - Add to the AptConfirmDialog two methods which allow to override the rendered objects and icons: map_package and render_package_icon - Add AptDownloadsView class, which allows to show the sub progress of each download - Rename AptTerminalExpander to AptDetailsExpander and add a terminal attribute to the __init__ call, since the expander now also shows the download sub-progresses. - AptProgressWindow now sets the proxy and debconf frontend during the run call instead of during the set_transaction call. * org.debian.aptdaemon.transaction D-Bus interface: - Add a ProgressDownload property. It contains the last download progress information that was recieved from APT. It is an array of uri, status enum, short description, full size, downloaded size and an error/status message. - Add AddVendorKeyFromKeyserver method to download and use a GnuPG which is used for authenticating packages. API CHANGES 0.31 * client Python module: - Add AptClient.enable_distro_component method, see EnableDistroComponent * org.debian.aptdaemon D-Bus interface: - Add EnableDistroComponent method which enables a component for all distro repositories, e.g. main or universe API CHANGES 0.30 * client Python module: - Change order of error_handler and reply_handler in the AptTransaction.run method to be in sync with the other methods - Add the dependencies, download and space attribute and the corresponding *-changed signal to AptTransaction, see interface changes below - Add a new AptTransaction.simulate() method, see interface changes below - The AptDaemonError stored in client.AptTransaction.error was replaced by a errors.TransactionFailed error. The APtDaemonError has been removed from the client module. - The DBus exception will be converted to native ones which are shared with the daemon. E.g. The DBusException with the error name "org.debian.apt.TransactionRoleAlreadySet" will be a TransactionRoleAlreadySet instance instead. This makes error handling easier since you can use try/except without having to compare the _dbus_error_name attributes. * errors Python modules: - Rename APTDError to AptDaemonError because of readabilty - Add convert_dbus_exception decorator which converts DBus exception raised in a function to native ones. Also takes asynchrous calls into account. - Move NotAuthorizedError from policykit1 to the errors module * enums Python module: - Use strings instead of integers for STATUS_*, EXIT_*, ROLE_* and ERROR_* enum. See interface changes for additional information - Add new enum EXIT_UNFINISHED * org.debian.aptdaemon.transaction D-Bus interface: - The Exit, Status, Role and Error property and the Finished signal now use strings for the enums. This helps to make debugging a lot easier. - Add Simulate method which calculates the dependencies, the download size and the to be used disk space of the transaction. Furthermore it raises a "org.debian.aptdaemon.errors.TransactionFailed" if the transaction could not be performed. The Simulate call also takes all previously queued or currently running transactions into account. So you can simulate the removal a package if the installation of it is still in the queue. - Add new properties Dependencies, Download and Space, see above. API CHANGES 0.20 You don't have to request a transaction, set it up and call the whished action on it aynmore. Instead you call the action, e.g. UpdateCache, on the daemon interface which will return the id of a newly created transaction. After settingit up you have to call its Run method. * org.debian.aptdaemon D-Bus interface: - Add InstallPackages, InstallFile, RemovePackages, CommitPackages, UpgradePackages, UpgradeSystem, AddVendorKey, RemoveVendorKey, UpdateCache method. Each method creates a new transaction and returns its tid. - Remove RequestTransaction method - Add new FixIncompleteInstall method which basically runs dpkg --configure -a - Add a new FixBrokenDepends method wich tries to correct dependencies * org.debian.aptdaemon.transaction D-Bus interface: - Remove InstallPackages, InstallFile, RemovePackages, CommitPackages, UpgradePackages, UpgradeSystem, AddVendorKey, RemoveVendorKey, UpdateCache method. They are now part of the org.debian.aptdaemon interface. - Add a Run method which queues the transaction. - Add PropertyChanged signal - should be used instead of the deprecated signals. Signal matchers are quite limited on the system bus by default. - Add ProgressDetails, RequiredMedium, ConfigFilePrompt, ExitState, Error, Locale, AllowUnauthenticated, Terminal, DebconfSocket, Packages, MetaData and RemoveObsoletedDepends properties. The Packages property keeps a lists of packages which should be installed, reinstalled, removed, purged or upgraded. Currently this doesn't work for UpgradeSystem. The MetaData property allows clients to store additional meta data in the transaction. See man page org.debian.apt.transaction(7) for the format. - Rename the AllowCancel property to Cancellable and the AllowTerminal one to TerminalAttached - helps to make a difference between allowing from the client and daemon side e.g. AllowUnauthenticated. - Remove Message signal and the concept of having non-critical fail states on the daemon side. The decision is up to the client e.g. if a system could not be fully updated. - Remove the Role, Status, AllowCancel, AllowTerminal, StatusDetails, Progress, ProgressDetails signal - PropertyChanged signal should be used instead. - Remove the Attach method - GetAll on the properties interface should be used instead. - Rename property ConfigFilePrompt to ConfigFileConflict and the method AnswerConfigFilePrompt to ResolveConfigFileConflict * client Python module: - The exit_handler was removed from the AptDaemonClient methods, instead it now supports (reply|error)_handlers to call the method asynchronously and furthermore a wait statement to return after the method is complete. - Add public attributes to the Transaction class and remove get_* helpers: role, error (stores an AptDaemonError instance), error_code, error_message, exit_state, cancellable, term_attached, required_medium, config_file_prompt, status, status_details, progress, progress_details, paused, remove_obsoleted_depends The properties are automatically updated by the PropertyChanged signal matcher. - Rename GObject signals of the Transaction class: - role -> role-changed - status -> status-changed - allow-cancel -> cancellable-changed - allow-terminal -> terminal-attached-changed - status -> status-changed - status-details -> status-details-changed - progress -> progress-changed - progress-details -> progress-details-changed - config-file-prompt -> config-file-conflict - Rename method config_file_prompt_answer to resolve_config_file_conflict - Add GObject signals to the Transaction class: - meta-data-changed - paused - resumed - locale-changed - allow-unauthenticated-changed - remove-obsoleted-depends-changed - debconf-socket-changed - The methods Transaction.set_(locale|allow_unauthenticated|data| debconf_socket|remove_obsoleted_depends) reply with the transaction instance if called async. This makes queing much easier. - Remove messages attribute from the Transaction class, see above - Remove Transaction.attach method in favour of a new sync method which uses the GetAll method on the D-Bus properties interface. - Add set_meta_data method which accepts pairs of key=value * PyGTK widgtes: - On the one hand the run method of AptProgressDialog doesn't provide a way to wait until the transaction is done anymore (by iterating on pending gtk events), but on the other hand it now allows to show an error dialog if required (show_error argument) or to close the progress window automatically when the transaction is finished (close_on_finished arguement). - Rename AptConfigFilePromptDialog to AptConfigFileConflictDialog aptdaemon-1.1.1+bzr982/README0000644000000000000000000000045311130100765013520 0ustar 00000000000000Aptdaemon allows to perform package management tasks in a background process controlled by DBus. It is greatly inspired by PackageKit, which doesn't support essential features of apt by policy. The project homepage is at https://launchpad.net/aptdaemon You can report errors and suggestion there. aptdaemon-1.1.1+bzr982/README.PackageKit0000644000000000000000000000442712167365171015546 0ustar 00000000000000AptDaemon optionally is capable of providing the PackageKit system D-Bus interface (see http://www.packagekit.org/gtk-doc/api-reference.html). The goal is to provide the complete PackageKit API to run client applications smoothly. There won't be any additions or changes to the original PackageKit API. Unsupported or not fully covered methods: * org.freedesktop.PackageKit: - GetTimeSinceAction - could make use of the apt history - GetDaemonState - only reports that all is fine (used for debugging only) - SetProxy (should we change the apt config?) * org.freedesktop.PackageKit.Transaction: - GetOldTransaction - SetHints (cache_age doens't make any sense with APT, interactive and background/idle not yet implemented, locale and frontend_socket working) Issues and shortcomings: - Messages are not used (possible candidates could be UNTRUSTED_PACKAGES, NEWER_PACKAGE_EXISTS, CONFIG_FILES_CHANGED, OTHER_UPDATES_HELD_BACK) - The post update hook (/etc/apt/apt.conf.d/20packagekit) cannot call StateHasChanged since caller and callee are the same process (aptd) and the call is blocking. So you see a time out warning in the apt logs. - Translations of package description don't work - RepoListChanged signal doesn't get emitted Supported roles: - Get(Packages|Depends|Requires|Details) - (Download|Install|Remove|Update)Packages - InstallFiles (only one file at a time is supported) - GetUpdates - GetUpdateDetail - GetDistroUpgrades - WhatProvides (no builtin handling, only plugins) - RepoEnable (only enabling, not disabling) - InstallSignature - RepairSystem Unsupported roles: - GetCategories: Curently groups are used, would be nice to reuse the categories from software-center or the Debian ones - GetRepoList: not implemented - RepoSetData: not implemented Roles we won't support at all because of missing infrastructure in APT: - AcceptEula: there isn't any equivalent mechanism in Debian/Ubuntu. Most packages mis-use debconf for this. Supported filters: - (not)installed - (not)free - (not)gui - (not)devel - (not)collections - (not)supported - newest - (not)arch Not yet supported filters: - (not)basename - (not)application - (not)source - (not)downloaded (0.8.9+) Thanks to Richard Hughsie for his work on PackageKit! aptdaemon-1.1.1+bzr982/README.tests0000644000000000000000000000043212114153047014662 0ustar 00000000000000Tests are supported via nosetests3 from the python3-nose package. To run the tests you can either use the "python3 setup.py test" or the "nosetests3" command. Since Python 2 is still supported, you should also run the tests with "python setup.py test" or the "nosetests" command. aptdaemon-1.1.1+bzr982/TODO0000644000000000000000000000142311305776714013347 0ustar 00000000000000HIGH * merge mvo's proxy patch NORMAL * client, gtkwidgets.AptProgressDialog: Implement the wait argument on run * client: Review documentation and add reply|error_handler notes * client/core/worker: Allow to install a list of local package files * client: Set the http proxy automattically * core: Allow to call AddVendorKey and RemoveVendorKey directly on the daemon interface instead of inside a transaction * core/worker: Reduce number of transaction roles handled internally. CommitPackages, UpgradeSystem and UpdateCache should be sufficient * core: Add packages attribute to the transaction interface which provides an array of all modified packages of the transaction * console: Add dependency calculation and confirmation aptdaemon-1.1.1+bzr982/apport/0000755000000000000000000000000011625542360014155 5ustar 00000000000000aptdaemon-1.1.1+bzr982/aptd0000755000000000000000000000256212166447724013544 0ustar 00000000000000#!/usr/bin/python3 # -*- coding: utf-8 -*- """ aptd - apt daemon """ # Copyright (C) 2008 Sebastian Heinlein # # 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 " __state__ = "experimental" import os import sys if __name__ == "__main__": # Ensure that the default encoding is set since Python's setlocale doesn't # allow to change it. This can be the case if D-Bus activation is used, # see LP: #1058038 and http://bugs.python.org/issue16162 if sys.getfilesystemencoding() == "ascii" and not "LANG" in os.environ: os.environ["LANG"] = "C.UTF-8" os.execv(sys.argv[0], sys.argv) import aptdaemon.core aptdaemon.core.main() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/0000755000000000000000000000000011126403616014614 5ustar 00000000000000aptdaemon-1.1.1+bzr982/aptdcon0000755000000000000000000000201711753236174014233 0ustar 00000000000000#!/usr/bin/python3 # -*- coding: utf-8 -*- """ aptdcon - command line interface client to aptdaemon """ # Copyright (C) 2008 Sebastian Heinlein # # 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 " __state__ = "experimental" import aptdaemon.console if __name__ == "__main__": aptdaemon.console.main() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/data/0000755000000000000000000000000011126403616013555 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/0000755000000000000000000000000011306517633013416 5ustar 00000000000000aptdaemon-1.1.1+bzr982/gtk3-demo.py0000755000000000000000000001447712054642213015027 0ustar 00000000000000#!/usr/bin/python3 # -*- coding: utf-8 -*- """ Provides a graphical demo application for aptdaemon """ # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " from optparse import OptionParser import logging # uncomment to use GTK 2.0 #import gi #gi.require_version('Gtk', '2.0') #gi.require_version('Vte', '0.0') from gi.repository import GLib, Gtk import aptdaemon.client from aptdaemon.enums import * from aptdaemon.gtk3widgets import AptErrorDialog, \ AptConfirmDialog, \ AptProgressDialog import aptdaemon.errors class AptDaemonDemo(object): """Provides a graphical test application.""" def _run_transaction(self, transaction): dia = AptProgressDialog(transaction, parent=self.win) dia.run(close_on_finished=True, show_error=True, reply_handler=lambda: True, error_handler=self._on_error) def _simulate_trans(self, trans): trans.simulate(reply_handler=lambda: self._confirm_deps(trans), error_handler=self._on_error) def _confirm_deps(self, trans): if [pkgs for pkgs in trans.dependencies if pkgs]: dia = AptConfirmDialog(trans, parent=self.win) res = dia.run() dia.hide() if res != Gtk.ResponseType.OK: return self._run_transaction(trans) def _on_error(self, error): if isinstance(error, aptdaemon.errors.NotAuthorizedError): # Silently ignore auth failures return elif not isinstance(error, aptdaemon.errors.TransactionFailed): # Catch internal errors of the client error = aptdaemon.errors.TransactionFailed(ERROR_UNKNOWN, str(error)) dia = AptErrorDialog(error) dia.run() dia.hide() def _on_upgrade_clicked(self, *args): self.ac.upgrade_system(safe_mode=False, reply_handler=self._simulate_trans, error_handler=self._on_error) def _on_update_clicked(self, *args): self.ac.update_cache(reply_handler=self._run_transaction, error_handler=self._on_error) def _on_install_clicked(self, *args): self.ac.install_packages([self.package], reply_handler=self._simulate_trans, error_handler=self._on_error) def _on_install_file_clicked(self, *args): chooser = Gtk.FileChooserDialog(parent=self.win, action=Gtk.FileChooserAction.OPEN, buttons=(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) chooser.set_local_only(True) chooser.run() chooser.hide() path = chooser.get_filename() self.ac.install_file(path, reply_handler=self._simulate_trans, error_handler=self._on_error) def _on_remove_clicked(self, *args): self.ac.remove_packages([self.package], reply_handler=self._simulate_trans, error_handler=self._on_error) def __init__(self, package): self.win = Gtk.Window() self.package = package self.win.set_resizable(False) self.win.set_title("Aptdaemon Demo") icon_theme = Gtk.IconTheme.get_default() try: Gtk.window_set_default_icon(icon_theme.load_icon("aptdaemon-setup", 32, 0)) except (GLib.GError, AttributeError): pass button_update = Gtk.Button.new_with_mnemonic("_Update") button_install = Gtk.Button.new_with_mnemonic("_Install %s" % self.package) button_install_file = Gtk.Button.new_with_mnemonic("Install _file...") button_remove = Gtk.Button.new_with_mnemonic("_Remove %s" % self.package) button_upgrade = Gtk.Button.new_with_mnemonic("Upgrade _System") button_update.connect("clicked", self._on_update_clicked) button_install.connect("clicked", self._on_install_clicked) button_install_file.connect("clicked", self._on_install_file_clicked) button_remove.connect("clicked", self._on_remove_clicked) button_upgrade.connect("clicked", self._on_upgrade_clicked) vbox = Gtk.VBox() vbox.add(button_update) vbox.add(button_install) vbox.add(button_install_file) vbox.add(button_remove) vbox.add(button_upgrade) self.win.add(vbox) self.loop = GLib.MainLoop() self.win.connect("delete-event", lambda w, e: self.loop.quit()) self.win.show_all() self.ac = aptdaemon.client.AptClient() def run(self): self.loop.run() def main(): parser = OptionParser() parser.add_option("-p", "--package", default="cw", action="store", dest="package", help="Use this package for installation and removal") parser.add_option("-d", "--debug", default=False, action="store_true", help="Verbose debugging") options, args = parser.parse_args() if options.debug: logging.basicConfig(level=logging.DEBUG) demo = AptDaemonDemo(options.package) demo.run() if __name__ == "__main__": main() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/po/0000755000000000000000000000000011131130215013246 5ustar 00000000000000aptdaemon-1.1.1+bzr982/pylintrc0000644000000000000000000000023711457577711014454 0ustar 00000000000000[BASIC] # Allow CamelCase method names (DBus convention) #method-rgx=[a-zA-Z_][a-zA-Z0-9_]{2,30}$ [DESIGN] max-args=10 max-attributes=20 min-public-methods=0 aptdaemon-1.1.1+bzr982/release.sh0000755000000000000000000000274712173215443014637 0ustar 00000000000000#!/bin/bash # release.sh - Prepare a release and upload it set -e USAGE="USAGE: release.sh VERSION" VERSION=$1 VERSION_TAG=$(echo "$VERSION" | perl -pi -e "s/\./_/g") TARBALL=dist/aptdaemon-$VERSION.tar.gz DATE=$(LC_TIME=C date +%c) if [ -z "$(bzr status | grep -v shelve)" ]; then echo "ERROR: Uncommitted changes, aborting" >&2 exit 1 fi if [ ! $(echo $VERSION | egrep "^[0-9\.]+$") ]; then echo "ERROR: Specify a vaild version number as argument" >&2 echo $USAGE exit 1 fi if [ -e $TARBALL.gz ]; then echo "ERROR: Tarball already exists!" >&2 echo $USAGE exit 1 fi echo "Preparing $VERSION release..." # Run the test suite # python3 setup.py test # python setup.py test bzr clean-tree --ignored # Set the version number sed -i "1s/.*/VERSION $VERSION - released on $DATE/" NEWS sed -i "s/^\(__version__ = \).*/\1'$VERSION'/" aptdaemon/__init__.py # Create the tarball bzr inventory --kind file | sed "s/^/include /" > MANIFEST.in bzr log --gnu-changelog -n0 > ChangeLog echo "include ChangeLog" >> MANIFEST.in read -p "Do you want to publish the release? (y/N) " PUBLISH echo "" if [ "$PUBLISH" != "y" ]; then echo "Cancelling..." exit 1 fi echo "Uploading to Python Package Index..." python3 setup.py sdist upload gpg --armor --sign --detach-sig $TARBALL echo "Commiting to VCS repository..." bzr commit NEWS aptdaemon/__init__.py -m "Release version $VERSION" bzr tag APTDAEMON_$VERSION_TAG echo "Uploading to Launchpad..." lp-project-upload aptdaemon $VERSION $TARBALL aptdaemon-1.1.1+bzr982/setup.cfg0000644000000000000000000000032711737245605014501 0ustar 00000000000000[nosetests] verbose=2 detailed-errors=1 #pdb=1 #pdb-failures=1 nologcapture=1 [build] i18n=True icons=True [build_i18n] domain=aptdaemon xml_files=[("share/polkit-1/actions/", ("data/org.debian.apt.policy.in",))] aptdaemon-1.1.1+bzr982/setup.py0000755000000000000000000000476512375366203014404 0ustar 00000000000000#!/usr/bin/env python # Work around "TypeError: 'NoneType' object is not callable" # during `python setup.py test` # http://www.eby-sarna.com/pipermail/peak/2010-May/003357.html import multiprocessing multiprocessing # pyflakes import glob import os import sys from setuptools import * import aptdaemon readme = open(os.path.join(os.path.dirname(__file__), "README")).read() # The transaction class has got it's own gettext translation # Don't set bug-contact in setup.cfg since p-d-u-e will overwrite # XGETTEXT_ARGS otherwise. os.environ["XGETTEXT_ARGS"] = "--keyword=self.trans.gettext" setup(name="aptdaemon", version=aptdaemon.__version__, description="DBus driven daemon for APT", long_description=readme, author="Sebastian Heinlein", author_email="devel@glatzor.de", packages=["aptdaemon", "aptdaemon.worker"], scripts=["aptd", "aptdcon"], test_suite="nose.collector", license="GNU LGPL", keywords="apt package manager deb dbus d-bus debian ubuntu dpkg", classifiers=["Development Status :: 5 - Production/Stable", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU Library or Lesser General " \ "Public License (LGPL)", "Programming Language :: Python :: 2.6", "Topic :: System :: Systems Administration", "Topic :: System :: Software Distribution"], url="http://launchpad.net/sessioninstaller", data_files=[("../etc/dbus-1/system.d/", ["data/org.debian.apt.conf", "data/org.freedesktop.PackageKit-aptd.conf"]), ("../etc/apt/apt.conf.d/", ["data/20dbus"]), ("share/apport/package-hooks", ["apport/aptdaemon.py"]), ("share/dbus-1/system-services/", ["data/org.debian.apt.service", "data/org.freedesktop.PackageKit.service"]), ("share/lintian/profiles/ubuntu/", ["data/lintian/ubuntu/aptdaemon.profile"]), ("share/lintian/profiles/debian/", ["data/lintian/debian/aptdaemon.profile"]), ("share/man/man1", ["doc/aptd.1", "doc/aptdcon.1"]), ("share/man/man7", ["doc/org.debian.apt.7", "doc/org.debian.apt.transaction.7"]), ], platforms="posix", ) aptdaemon-1.1.1+bzr982/tests/0000755000000000000000000000000011511655731014013 5ustar 00000000000000aptdaemon-1.1.1+bzr982/apport/aptdaemon.py0000644000000000000000000000547011737245605016513 0ustar 00000000000000"""Apport integration to provide better problem reports.""" # Copyright (C) 2010-2011 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " import os import re import apport import apport.hookutils import apt_pkg apt_pkg.init() def add_info(report): """Collect and append additional information about a crash. Note: Please consider that aptdaemon also manually creates apport reports for failed transaction which don't result in a crash of aptdaemon, see aptdaemon.crash :param report: The apport report of an aptdaemon crash """ # Attach apt configuration report["AptConfig"] = apt_pkg.config.dump() # Attach the sources list sources_list = "" etc_main = os.path.join(apt_pkg.config.find_dir("Dir::Etc"), apt_pkg.config.find_file("Dir::Etc::sourcelist")) try: with open(etc_main) as fd_main: sources_list += fd_main.read() except: pass dir_parts = os.path.join(apt_pkg.config.find_dir("Dir::Etc"), apt_pkg.config.find_dir("Dir::Etc::Sourceparts")) for filename in os.listdir(dir_parts): if not filename.endswith(".list"): continue try: with open(os.path.join(dir_parts, filename)) as fd_part: sources_list += fd_part.read() except: continue # Remove passwords from the sources list report["SourcesList"] = re.sub("://\w+?:\w+?@", "://USER:SECRET@", sources_list) # Add some logging data apport.hookutils.attach_file_if_exists(report, "/var/log/apt/history.log" "AptHistoryLog") apport.hookutils.attach_file_if_exists(report, "/var/log/apt/term.log", "AptTermLog") apport.hookutils.attach_file_if_exists(report, "/var/log/dpkg.log", "DpkgLog") report["SysLog"] = apport.hookutils.recent_syslog(re.compile("AptDaemon")) # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/__init__.py0000644000000000000000000000222412375366203016734 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Transaction based daemon and clients for package management tasks.""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __state__ = "development" __version__ = '1.1.1' __all__ = ("client", "console", "core", "debconf", "defer", "enums", "errors", "gtk3widgets", "loop", "policykit1", "progress", "test", "utils", "worker") # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/client.py0000644000000000000000000022111212375366453016461 0ustar 00000000000000#!/usr/bin/python """ The module provides a client to the PackageKit DBus interface. It allows to perform basic package manipulation tasks in a cross distribution way, e.g. to search for packages, install packages or codecs. """ # Copyright (C) 2008 Canonical Ltd. # Copyright (C) 2008 Aidan Skinner # Copyright (C) 2008 Martin Pitt # Copyright (C) 2008 Tim Lauridsen # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. import locale import os.path import shutil import weakref import sys import dbus import dbus.mainloop.glib dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) from gi.repository import GObject, GLib from . import enums from . import debconf import defer from defer.utils import deferable from .errors import convert_dbus_exception, TransactionFailed __all__ = ("AptTransaction", "AptClient", "get_transaction", "get_aptdaemon") class AptTransaction(GObject.Object): """Represents an aptdaemon transaction. .. note:: This class cannot be inherited since it makes use of a metaclass. .. signal:: allow-unauthenticated -> allow The signal is emitted when :attr:`allow_unauthenticated` changed. :param allow: If unauthenticated packages are allowed to be installed. .. signal:: cancellable-changed -> cancellable The signal is emitted when :attr:`cancellable` changed. :param cancellable: If the transaction can be cancelled now. .. signal:: config-file-conflict -> cur, new The signal is emitted when :attr:`config_file_conflict` changed. :param cur: The path to the current configuration file. :param new: The path to the new configuration file. .. signal:: debconf-socket-changed -> path The signal is emitted when :attr:`debconf_socket` changed. :param path: The path to the socket which will be used to forward debconf communication to the user session. .. signal:: dependencies-changed -> installs, re-installs, removals, \ purges, upgrades, downgrades, kepts The signal is emitted when :attr:`dependencies` changed. Most likely after :meth:`simulate()` was called. :param installs: List of package which will be installed. :param reinstalls: List of package which will be re-installed. :param removals: List of package which will be removed, :param purges: List of package which will be removed including configuration files. :param upgrades: List of package which will be upgraded. :param downgrades: List of package which will be downgraded to an older version. :param kepts: List of package which will be skipped from upgrading. .. signal:: download-changed -> download The signal is emitted when :attr:`download` changed. :param download: Download size integer in Bytes. .. signal:: error -> error_code, error_details The signal is emitted when an error occured. :param error_code: The error code enumeration, e.g. :data:`aptdaemon.enums.ERROR_NO_CACHE`. :param error_details: The error description string. .. signal:: finished -> exit_state The signal is emitted when the transaction is completed or has failed. :param exit_state: The exit status enumeration string. .. signal:: http-proxy-changed -> uri The signal is emitted when :attr:`http_proxy` changed. :param uri: The URI of the proxy server, e.g. "http://proxy:8080". .. signal:: locale-changed -> locale The signal is emitted when :attr:`locale` changed. :param locale: The language which should be used for messages, eg. "de_DE". .. signal:: meta-data-changed -> meta_data The signal is emitted when :attr:`meta_data` changed. :param meta_data: The latest meta data dictionary. .. signal:: medium-required -> name, device The signal is emitted when :attr:`required_medium` changed. :param name: The name of the volume. :param device: The path of the device in which the volume should be inserted. .. signal:: remove-obsoleted-depends-changed -> remove The signal is emitted when :attr:`remove_obsoleted_depends` changed. :param remove: If obsolete dependencies should also be removed. .. signal:: role-changed -> role The signal is emitted when :attr:`role` changed. :param role: The new role enum, e.g. :data:`~aptdaemon.enums.ROLE_UPDATE_CACHE`. .. signal:: space-changed -> space The signal is emitted when :attr:`space` changed. Most likely after :meth:`simulate()` was called. :param space: Required disk space integer in Bytes. Can be negative if disk space will be freed. .. signal:: packages-changed -> installs, re-installs, removals, \ purges, upgrades, downgrades The signal is emitted when :attr:`packages` changed. :param installs: List of package which will be installed. :param reinstalls: List of package which will be re-installed. :param removals: List of package which will be removed, :param purges: List of package which will be removed including configuration files. :param upgrades: List of package which will be upgraded. :param downgrades: List of package which will be downgraded to an older version. .. signal:: paused The signal is emitted when the transaction was paused. See :attr:`paused` and :sig:`resumed`. .. signal:: progress-changed -> progress The signal is emitted when :attr:`progress` changed. :param progress: The progress integer. .. signal:: progress-details-changed -> current_items, total_items, \ currenty_bytes, total_bytes, \ current_cps, eta The signal is emitted when detailed information of the progress is available. :param current_items: The number of already processed items. :param total_items: The number of all items. :param current_bytes: The number of already downloaded byte. :param total_bytes: The number of bytes which have to be downloaded totally. :param current_cps: The current download speed in bytes per second. :param eta: The elapsed time in seconds to accomplish the task. .. signal:: progress-download-changed -> uri, short_desc, total_size, \ current_size, msg The signal is emitted when progress information about a single download is available. :param uri: The URI of the file which is downloaded. :param status: The status of the downloade, e.g. :data:`~aptdaemon.enums.DOWNLOAD_AUTH_FAILED`. :param short_desc: A short description of the file. :param total_size: The size of the file in Bytes. :param current_size: How much of the file in Bytes has already be downloaded. :param msg: The status or error description. .. signal:: resumed The signal is emitted when a paused transaction was resumed. See :attr:`paused` and :sig:`paused`. .. signal:: terminal-changed -> path The signal is emitted when :attr:`terminal` changed. :param path: The path to the slave end of the controlling terminal for the underlying dpkg call. .. signal:: terminal-attached-changed -> attached The signal is emitted when :attr:`term_attached` changed. :param attached: If the controlling terminal can be used. .. signal:: unauthenticated-changed -> unauthenticated The signal is emitted when :attr:`unauthenticated` changed. :param unauthenticated: List of unauthenticated packages. .. attribute:: cancellable If the transaction can be currently cancelled. .. attribute:: config_file_conflict If there is a conflict in the configuration file handling during an installation this attribute contains a tuple of the path to the current and the new temporary configuration file. The :meth:`resolve_config_file_conflict()` can be used to resolve the conflict and continue the processing of the transaction. .. attribute:: dependencies List of dependencies lists in the following order: packages to install, to re-install, to remove, to purge, to upgrade, to downgrade and to keep. You have to call :meth:`simulate()` to calculate the dependencies before the transaction will be executed. .. attribute:: download The number of Bytes which have to be downloaed. You have to call :meth:`simulate()` to calculate the download size before the transaction will be executed. .. attribute:: error In the case of a failed transaction this attribute holds the corresponding :exc:`errors.TransactionFailed` instance. .. attribute:: error_code In the case of a failed transaction this attribute is set to the underlying error code, e.g. :data:`enums.ERROR_PACKAGE_DOWNLOAD_FAILED`. .. attribute:: error_details In the case of a failed transaction this attribute contains a detailed error message in the language of the transaction. .. attribute:: exit Contains the exit status enum if the transaction has been completed, e.g. :data:`enums.EXIT_SUCCESS` or :data:`enums.EXIT_FAILED`. .. attribute:: http_proxy The URI to the http proxy server which should be used only for this transaction, e.g. "http://proxy:8080". It is recommended to set the system wide proxy server instead of setting this attribute for every transaction. See :meth:`set_http_proxy()`. .. attribute:: meta_data Dictionary of optional meta data which can be set by client applications. See :meth:`set_meta_data()`. .. attribute:: packages List of package lists which will be explicitly changed in the following order: packages to install, to re-install, to remove, to purge, to upgrade, to downgrade. .. attribute:: paused If the transaction is currently paused, e.g. it is required to insert a medium to install from. .. attribute:: progress An integer ranging from 0 to 101 to describe the progress of the transaction. .. note:: A value of 101 indicates that there cannot be made any assumptions on the progress of the transaction. .. attribute:: remove_obsoleted_depends If dependencies which have been required by a removed package only should be removed, too. .. attribute:: required_medium If a medium should be inserted to continue the fetch phase of a transaction, this attribute contains a tuple of the device path of of the drive which should be used and secondly of the name of the medium. The :func:`provide_medium()` method should be used to notify aptdaemon about an inserted medium and to continue processing the transaction. .. attribute:: role The kind of action which is performed by the transaction, e.g. :data:`enums.ROLE_UPGRADE_SYSTEM`. .. attribute:: space The required disk space in Bytes. Will be negative if space is freed. You have to call :meth:`simulate()` to calculate the download size before the transaction will be executed. .. attribute:: status The enum of the current status, e.g. :data:`enums.STATUS_DOWNLOADING`. .. attribute:: status_details A string describing the current status of the transaction. .. attribute:: tid The unique identifier of the transaction. It is also the D-Bus path of the corresponding transaction object. .. attribute:: term_attached If the the package manager can be controlled using the controlling terminal specified by :func:`set_terminal()`. .. attribute:: unauthenticated List of packages which are going to be installed but are not downloaded from an authenticated repository. You have to call :meth:`simulate()` to calculate the dependencies before the transaction will be executed. """ __gsignals__ = {"finished": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "dependencies-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT)), "download-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT64,)), "space-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT64,)), "error": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING, GObject.TYPE_STRING)), "role-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "terminal-attached-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_BOOLEAN,)), "cancellable-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_BOOLEAN,)), "meta-data-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)), "status-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "status-details-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "progress-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT,)), "progress-details-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT, GObject.TYPE_INT, GObject.TYPE_INT64, GObject.TYPE_INT64, GObject.TYPE_INT, GObject.TYPE_INT64)), "progress-download-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING, GObject.TYPE_STRING, GObject.TYPE_STRING, GObject.TYPE_INT64, GObject.TYPE_INT64, GObject.TYPE_STRING)), "packages-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT, GObject.TYPE_PYOBJECT)), "unauthenticated-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)), "paused": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, ()), "resumed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, ()), "allow-unauthenticated-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_BOOLEAN,)), "remove-obsoleted-depends-changed": ( GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_BOOLEAN,)), "locale-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "terminal-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "debconf-socket-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "http-proxy-changed": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), "medium-required": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING, GObject.TYPE_STRING)), "config-file-conflict": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_STRING, GObject.TYPE_STRING)), } _tid_cache = weakref.WeakValueDictionary() def __new__(cls, tid, *args, **kwargs): """Cache transactions with identical tid.""" try: return AptTransaction._tid_cache[tid] except KeyError: value = GObject.Object.__new__(cls, tid, *args, **kwargs) AptTransaction._tid_cache[tid] = value return value def __init__(self, tid, bus=None): GObject.GObject.__init__(self) self.tid = tid self.role = enums.ROLE_UNSET self.error = None self.error_code = None self.error_details = None self.exit = enums.EXIT_UNFINISHED self.cancellable = False self.term_attached = False self.required_medium = None self.config_file_conflict = None self.status = None self.status_details = "" self.progress = 0 self.paused = False self.http_proxy = None self.dependencies = [[], [], [], [], [], [], []] self.packages = [[], [], [], [], []] self.unauthenticated = [] self.meta_data = {} self.remove_obsoleted_depends = False self.download = 0 self.downloads = {} self.space = 0 self.locale = "" self._method = None self._args = [] self._debconf_helper = None # Connect the signal handlers to the DBus iface if not bus: bus = dbus.SystemBus() self._proxy = bus.get_object("org.debian.apt", tid) self._iface = dbus.Interface(self._proxy, "org.debian.apt.transaction") # Watch for a crashed daemon which orphaned the dbus object self._owner_watcher = bus.watch_name_owner("org.debian.apt", self._on_name_owner_changed) # main signals self._signal_matcher = \ self._iface.connect_to_signal("PropertyChanged", self._on_property_changed) def _on_name_owner_changed(self, connection): """Fail the transaction if the daemon died.""" if connection == "" and self.exit == enums.EXIT_UNFINISHED: self._on_property_changed("Error", (enums.ERROR_DAEMON_DIED, "It seems that the daemon " "died.")) self._on_property_changed("Cancellable", False) self._on_property_changed("TerminalAttached", False) self._on_property_changed("ExitState", enums.EXIT_FAILED) def _on_property_changed(self, property_name, value): """Callback for the PropertyChanged signal.""" if property_name == "TerminalAttached": self.term_attached = value self.emit("terminal-attached-changed", value) elif property_name == "Cancellable": self.cancellable = value self.emit("cancellable-changed", value) elif property_name == "DebconfSocket": self.emit("debconf-socket-changed", value) elif property_name == "RemoveObsoletedDepends": self.emit("remove-obsoleted-depends-changed", value) self.remove_obsoleted_depends = value elif property_name == "AllowUnauthenticated": self.emit("allow-unauthenticated-changed", value) elif property_name == "Terminal": self.emit("terminal-changed", value) elif property_name == "Dependencies": self.dependencies = value self.emit("dependencies-changed", *value) elif property_name == "Packages": self.packages = value self.emit("packages-changed", *value) elif property_name == "Unauthenticated": self.unauthenticated = value self.emit("unauthenticated-changed", value) elif property_name == "Locale": self.locale = value self.emit("locale-changed", value) elif property_name == "Role": self.role = value self.emit("role-changed", value) elif property_name == "Status": self.status = value self.emit("status-changed", value) elif property_name == "StatusDetails": self.status_details = value self.emit("status-details-changed", value) elif property_name == "ProgressDownload": uri, status, desc, size, download, msg = value if uri: self.downloads[uri] = (status, desc, size, download, msg) self.emit("progress-download-changed", *value) elif property_name == "Progress": self.progress = value self.emit("progress-changed", value) elif property_name == "ConfigFileConflict": self.config_file_conflict = value if value != ("", ""): self.emit("config-file-conflict", *value) elif property_name == "MetaData": self.meta_data = value self.emit("meta-data-changed", value) elif property_name == "Paused": self.paused = value if value: self.emit("paused") else: self.emit("resumed") elif property_name == "RequiredMedium": self.required_medium = value if value != ("", ""): self.emit("medium-required", *value) elif property_name == "ProgressDetails": self.emit("progress-details-changed", *value) elif property_name == "Download": self.download = value self.emit("download-changed", value) elif property_name == "Space": self.space = value self.emit("space-changed", value) elif property_name == "HttpProxy": self.http_proxy = value self.emit("http-proxy-changed", value) elif property_name == "Error": self.error_code, self.error_details = value if self.error_code != "": self.error = TransactionFailed(self.error_code, self.error_details) self.emit("error", *value) elif property_name == "ExitState": if value != enums.EXIT_UNFINISHED and value != self.exit: self.exit = value if self._debconf_helper: self._debconf_helper.stop() self._disconnect_from_dbus() # Finally sync all properties a last time. We cannot ensure # that the ExitState signal is the last one, so some # other PropertyChanged signals could be lost, see LP#747172 self.sync(reply_handler=self._on_final_sync_done, error_handler=self._on_final_sync_done) def _on_final_sync_done(self, data): self._owner_watcher.cancel() self.emit("finished", self.exit) @deferable @convert_dbus_exception def sync(self, reply_handler=None, error_handler=None): """Sync the properties of the transaction with the daemon. This method is called automatically on the creation of the AptTransaction instance. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException """ def sync_properties(prop_dict): for property_name, value in prop_dict.items(): self._on_property_changed(property_name, value) if reply_handler: reply_handler(self) if reply_handler and error_handler: self._proxy.GetAll("org.debian.apt.transaction", dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=sync_properties, error_handler=error_handler) else: properties = self._proxy.GetAll( "org.debian.apt.transaction", dbus_interface=dbus.PROPERTIES_IFACE) sync_properties(properties) @deferable @convert_dbus_exception def run_after(self, transaction, reply_handler=None, error_handler=None): """Chain this transaction after the given one. The transaction will fail if the previous one fails. To start processing of the chain you have to call :meth:`run()` of the first transaction. The others will be queued after it automatically. :param transaction: An AptTransaction on which this one depends. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException """ try: return self._iface.RunAfter(transaction.tid, error_handler=error_handler, reply_handler=reply_handler) except Exception as error: if error_handler: error_handler(error) else: raise @deferable @convert_dbus_exception def run(self, reply_handler=None, error_handler=None): """Queue the transaction for processing. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.TransactionFailed, dbus.DBusException """ try: return self._iface.Run(error_handler=error_handler, reply_handler=reply_handler) except Exception as error: if error_handler: error_handler(error) else: raise @deferable @convert_dbus_exception def simulate(self, reply_handler=None, error_handler=None): """Simulate the transaction to calculate the dependencies, the required download size and the required disk space. The corresponding properties of the AptTransaction will be updated. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.TransactionFailed, dbus.DBusException """ self._iface.Simulate(reply_handler=reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def cancel(self, reply_handler=None, error_handler=None): """Cancel the running transaction. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.NotAuthorizedError, dbus.DBusException """ self._iface.Cancel(reply_handler=reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def set_http_proxy(self, proxy, reply_handler=None, error_handler=None): """Use the given http proxy for downloading packages in this transaction. :param proxy: The URL of the proxy server, e.g. "http://proxy:8080" :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.NotAuthorizedError, dbus.DBusException aptdaemon.errors.ForeignTransaction, """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._proxy.Set("org.debian.apt.transaction", "HttpProxy", proxy, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def set_remove_obsoleted_depends(self, remove_obsoleted_depends, reply_handler=None, error_handler=None): """Include no longer required dependencies which have been installed automatically when removing packages. :param remove_obsoleted_depends: If obsolete dependencies should be also removed. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._proxy.Set("org.debian.apt.transaction", "RemoveObsoletedDepends", remove_obsoleted_depends, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def set_allow_unauthenticated(self, allow_unauthenticated, reply_handler=None, error_handler=None): """Allow to install unauthenticated packages. Unauthenticated packages are from the repository of a vendor whose key hasn't been installed. By default this is not allowed. :param allow_unauthenticated: If unauthenticated packages can be installed. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._proxy.Set("org.debian.apt.transaction", "AllowUnauthenticated", allow_unauthenticated, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def set_debconf_frontend(self, frontend, reply_handler=None, error_handler=None): """Setup a debconf frontend to answer questions of the maintainer scripts. Debian allows packages to interact with the user during installation, configuration and removal phase via debconf. Aptdaemon forwards the communication to a debconf instance running as the user of the client application. :param frontend: The name of the debconf frontend which should be launched, e.g. gnome or kde. Defaults to gnome. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._debconf_helper = debconf.DebconfProxy(frontend) self._proxy.Set("org.debian.apt.transaction", "DebconfSocket", self._debconf_helper.socket_path, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) self._debconf_helper.start() @deferable @convert_dbus_exception def set_meta_data(self, **kwargs): """Store additional meta information of the transaction in the MetaData property of the transaction. The method accepts key=value pairs. The key has to be prefixed with an underscore separated identifier of the client application. In the following example Software-Center sets an application name and icon: >>> Transaction.set_meta_data(sc_icon="shiny", sc_app="xterm") :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ reply_handler = kwargs.pop("reply_handler", None) error_handler = kwargs.pop("error_handler", None) if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None meta_data = dbus.Dictionary(kwargs, signature="sv") self._proxy.Set("org.debian.apt.transaction", "MetaData", meta_data, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def set_terminal(self, ttyname, reply_handler=None, error_handler=None): """Allow to set a controlling terminal for the underlying dpkg call. See the source code of gtk3widgets.AptTerminal or console.ConsoleClient as example. >>> master, slave = pty.openpty() >>> transaction.set_terminal(os.ttyname(slave)) :param terminal: The slave end of a tty. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._proxy.Set("org.debian.apt.transaction", "Terminal", ttyname, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) def _disconnect_from_dbus(self): """Stop monitoring the progress of the transaction.""" if hasattr(self, "_signal_matcher"): self._signal_matcher.remove() del self._signal_matcher @deferable @convert_dbus_exception def set_locale(self, locale_name, reply_handler=None, error_handler=None): """Set the language for status and error messages. :param locale: The locale name, e.g. de_DE@UTF-8. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ if reply_handler: _reply_handler = lambda: reply_handler(self) else: _reply_handler = None self._proxy.Set("org.debian.apt.transaction", "Locale", locale_name, dbus_interface=dbus.PROPERTIES_IFACE, reply_handler=_reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def provide_medium(self, medium, reply_handler=None, error_handler=None): """Continue a paused transaction which waits for a medium to install from. :param medium: The name of the provided medium. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ self._iface.ProvideMedium(medium, reply_handler=reply_handler, error_handler=error_handler) @deferable @convert_dbus_exception def resolve_config_file_conflict(self, config, answer, reply_handler=None, error_handler=None): """Continue a paused transaction which waits for the resolution of a configuration file conflict. :param config: The path to the current version of the configuration file. :param answer: Can be either "keep" or "replace". :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: aptdaemon.errors.ForeignTransaction, dbus.DBusException """ self._iface.ResolveConfigFileConflict(config, answer, reply_handler=reply_handler, error_handler=error_handler) class AptClient(object): """Provides a complete client for aptdaemon.""" def __init__(self, bus=None): """Return a new AptClient instance.""" if bus: self.bus = bus else: self.bus = dbus.SystemBus() # Catch an invalid locale try: self._locale = "%s.%s" % locale.getdefaultlocale() except ValueError: self._locale = None self.terminal = None @convert_dbus_exception def get_trusted_vendor_keys(self, reply_handler=None, error_handler=None): """Get the list of the installed vendor keys which are used to authenticate packages. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: Fingerprints of all installed vendor keys. """ daemon = get_aptdaemon(self.bus) keys = daemon.GetTrustedVendorKeys(reply_handler=reply_handler, error_handler=error_handler) return keys @deferable @convert_dbus_exception def upgrade_system(self, safe_mode=True, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to apply all avaibale upgrades. :param safe_mode: If True only already installed packages will be updated. Updates which require to remove installed packages or to install additional packages will be skipped. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("UpgradeSystem", [safe_mode], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def install_packages(self, package_names, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to install the given packages from the reporitories. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. :param package_names: List of names of the packages which should be installed. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("InstallPackages", [package_names], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def add_repository(self, src_type, uri, dist, comps=None, comment="", sourcesfile="", wait=False, reply_handler=None, error_handler=None): """Create a new transaction to enable a repository. :param src_type: The type of the repository (deb, deb-src). :param uri: The main repository URI (e.g. http://archive.ubuntu.com/ubuntu) :param dist: The distribution to use (e.g. stable or lenny-backports). :param comps: List of components (e.g. main, restricted). :param comment: A comment which should be added to the sources.list. :param sourcesfile: (Optoinal) filename in sources.list.d. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ # dbus can not deal with empty lists and will error if not comps: comps = [""] return self._run_transaction("AddRepository", [src_type, uri, dist, comps, comment, sourcesfile], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def add_vendor_key_from_keyserver(self, keyid, keyserver, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to download and install the key of a software vendor. The key is used to authenticate packages of the vendor. :param keyid: The id of the GnuPG key (e.g. 0x0EB12F05) :param keyserver: The server to get the key from (e.g. keyserver.ubuntu.com) :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("AddVendorKeyFromKeyserver", [keyid, keyserver], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def add_vendor_key_from_file(self, path, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to install the key file of a software vendor. The key is used to authenticate packages of the vendor. :param path: The absolute path to the key file. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("AddVendorKeyFromFile", [path], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def remove_vendor_key(self, fingerprint, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to remove the key of a software vendor from the list of trusted ones. The key is used to authenticate the origin of packages. :param fingerprint: The fingerprint of the key. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("RemoveVendorKey", [fingerprint], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def install_file(self, path, force=False, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to install a local package file. :param path: The absolute path to the .deb-file. :param force: Force the installation of a .deb-file even if it violates the quality standard defined in the packaging policy. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ # Root is not allowed to access FUSE file systems. So copy files # to the local system. # FIXME: the locally cached one should be removed afterwards home = os.getenv("HOME", None) if home and path.startswith(os.path.join(home, ".gvfs")): shutil.copy(path, "/tmp") path = os.path.join("/tmp", os.path.basename(path)) return self._run_transaction("InstallFile", [path, force], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def upgrade_packages(self, package_names, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to upgrade installed packages. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. :param package_names: The list of package which should be upgraded. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("UpgradePackages", [package_names], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def remove_packages(self, package_names, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to remove installed packages. :param package_names: The list of packages which should be removed. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("RemovePackages", [package_names], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def commit_packages(self, install, reinstall, remove, purge, upgrade, downgrade, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to perform a complex package management task which allows to install, remove, upgrade or downgrade several packages at the same time. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. :param install: List of packages to install. :param reinstall: List of packages to re-install. :param remove: List of packages to remove. :param purge: List of packages to purge. :param upgrade: List of packages to upgrade. :param downgrade: List of packages to downgrade. The version of the package has to be appended to the name separated by a "=", e.g. "xterm=272-1". :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ def check_empty_list(lst): if not lst: return [""] else: return lst pkgs = [check_empty_list(lst) for lst in [install, reinstall, remove, purge, upgrade, downgrade]] return self._run_transaction("CommitPackages", pkgs, wait, reply_handler, error_handler) @deferable @convert_dbus_exception def fix_broken_depends(self, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to fix unsatisfied dependencies of already installed packages. Corresponds to the ``apt-get -f install`` call. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("FixBrokenDepends", [], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def reconfigure(self, packages, priority="default", wait=False, reply_handler=None, error_handler=None): """Create a new transaction to reconfigure already installed packages. Corresponds to the ``dpkg-reconfigure`` call. :param packages: List of package names which should be reconfigured. :param priority: The minimum priority of question that will be displayed. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("Reconfigure", [packages, priority], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def fix_incomplete_install(self, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to complete a previous interrupted installation. Corresponds to the ``dpkg --confgiure -a`` call. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("FixIncompleteInstall", [], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def update_cache(self, sources_list=None, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to update the package cache. The repositories will be queried for installable packages. :param sources_list: Path to a sources.list which contains repositories that should be updated only. The other repositories will be ignored in this case. Can be either the file name of a snippet in /etc/apt/sources.list.d or an absolute path. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ if sources_list: return self._run_transaction("UpdateCachePartially", [sources_list], wait, reply_handler, error_handler) else: return self._run_transaction("UpdateCache", [], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def enable_distro_component(self, component, wait=False, reply_handler=None, error_handler=None): """Create a new transaction to enable the component of the distribution repository. :param component: The name of the component, e.g. main or universe. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("EnableDistroComponent", [component], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def clean(self, wait=False, reply_handler=None, error_handler=None): """Remove all downloaded files. :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("Clean", [], wait, reply_handler, error_handler) @deferable @convert_dbus_exception def add_license_key(self, pkg_name, json_token, server_name, wait=False, reply_handler=None, error_handler=None): """Install a license key to use a piece of proprietary software. :param pkg_name: The package which requires the license :param json_token: The oauth token in json format :param server_name: The server name (ubuntu-procduction, ubuntu-staging) :param wait: if True run the transaction immediately and return its exit state instead of the transaction itself. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ return self._run_transaction("AddLicenseKey", [pkg_name, json_token, server_name], wait, reply_handler, error_handler) def _run_transaction(self, method_name, args, wait, reply_handler, error_handler): async = reply_handler and error_handler try: deferred = self._run_transaction_helper(method_name, args, wait, async) except Exception as error: if async: error_handler(error) return else: raise if async: def on_error(error): """Convert the DeferredException to a normal exception.""" try: error.raise_exception() except Exception as error: error_handler(error) deferred.add_callbacks(reply_handler) deferred.add_errback(on_error) return deferred else: # Iterate on the main loop - we cannot use a sub loop here, # since the D-Bus python bindings only work on the main loop context = GLib.main_context_default() while not hasattr(deferred, "result"): context.iteration(True) # If there has been an error in the helper raise it if isinstance(deferred.result, defer.DeferredException): deferred.result.raise_exception() trans = deferred.result if trans.error: raise trans.error if wait: # Wait until the transaction is complete and the properties # of the transaction have been updated while trans.exit == enums.EXIT_UNFINISHED: context.iteration(True) return trans.exit else: return trans @defer.inline_callbacks def _run_transaction_helper(self, method_name, args, wait, async): daemon = get_aptdaemon(self.bus) dbus_method = daemon.get_dbus_method(method_name) if async: deferred = defer.Deferred() dbus_method(reply_handler=deferred.callback, error_handler=deferred.errback, *args, timeout=86400) tid = yield deferred else: tid = dbus_method(*args, timeout=86400) trans = AptTransaction(tid, self.bus) if self._locale: yield trans.set_locale(self._locale) if self.terminal: yield trans.set_terminal(self.terminal) yield trans.sync() if wait and async: deferred_wait = defer.Deferred() sig = trans.connect("finished", lambda trans, exit: (exit != enums.EXIT_UNFINISHED and deferred_wait.callback(exit))) yield trans.run() yield deferred_wait GLib.source_remove(sig) defer.return_value(trans.exit) elif wait: yield trans.run() defer.return_value(trans) @deferable @convert_dbus_exception def get_transaction(tid, bus=None, reply_handler=None, error_handler=None): """Get an existing transaction by its identifier. :param tid: The identifer and D-Bus path of the transaction e.g. /org/debian/apt/transaction/78904e5f9fa34098879e768032789109 :param bus: Optionally the D-Bus on which aptdaemon listens. Defaults to the system bus. :param reply_handler: Callback function. If specified in combination with error_handler the method will be called asynchrounsouly. :param error_handler: Errback function. In case of an error the given callback gets the corresponding exception instance. :param defer: Run the method asynchrounsly and return a defer.Deferred. This options is only available as a keyword. :raises: dbus.DBusException :returns: An AptTransaction instance. """ if not bus: bus = dbus.SystemBus() trans = AptTransaction(tid, bus) if error_handler and reply_handler: trans.sync(reply_handler=reply_handler, error_handler=error_handler) else: trans.sync() return trans def get_size_string(bytes): """Returns a human friendly string for a given byte size. Note: The bytes are skipped from the returned unit: 1024 returns 1K """ for unit in ["", "K", "M", "G"]: if bytes < 1024.0: return "%3.1f%s" % (bytes, unit) bytes /= 1024.0 return "%3.1f%s" % (bytes, "T") def get_aptdaemon(bus=None): """Get the daemon D-Bus interface. :param bus: Optionally the D-Bus on which aptdaemon listens. Defaults to the system bus. :raises: dbus.DBusException :returns: An dbus.Interface instance. """ if not bus: bus = dbus.SystemBus() return dbus.Interface(bus.get_object("org.debian.apt", "/org/debian/apt", False), "org.debian.apt") # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/config.py0000644000000000000000000002200312375367700016442 0ustar 00000000000000"""Handling configuration files.""" # Copyright (C) 2010 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " __all__ = ("ConfigWriter",) import logging import os import apt_pkg log = logging.getLogger("AptDaemon.ConfigWriter") class Value(object): """Represents a value with position information. .. attribute:: string The value string. .. attribute:: line The line number of the configuration file in which the value is set. .. attribute:: start The position in the line at which the value starts. .. attribute:: end The position in the line at which the value ends. .. attribute:: quotes The outer qoutes of the value: ' or " """ def __init__(self, line, start, quotes): self.string = "" self.start = start self.end = None self.line = line self.quotes = quotes def __cmp__(self, other): return self.string == other def __repr__(self): return "Value: '%s' (line %s: %s to %s)" % (self.string, self.line, self.start, self.end) class ConfigWriter(object): """Modifies apt configuration files.""" def parse(self, lines): """Parse an ISC based apt configuration. :param lines: The list of lines of a configuration file. :returns: Dictionary of key, values found in the parsed configuration. """ options = {} in_comment = False in_value = False prev_char = None option = [] value = None option_name = "" value_list = [] in_brackets = True level = 0 for line_no, line in enumerate(lines): for char_no, char in enumerate(line): if not in_comment and char == "*" and prev_char == "/": in_comment = True prev_char = "" continue elif in_comment and char == "/" and prev_char == "*": # A multiline comment was closed in_comment = False prev_char = "" option_name = option_name[:-1] continue elif in_comment: # We ignore the content of multiline comments pass elif not in_value and ((char == "/" and prev_char == "/") or char == "#"): # In the case of a line comment continue processing # the next line prev_char = "" option_name = option_name[:-1] break elif char in "'\"": if in_value and value.quotes == char: value.end = char_no in_value = not in_value elif not value: value = Value(line_no, char_no, char) in_value = not in_value else: value.string += char elif in_value: value.string += char elif option_name and char == ":" and prev_char == ":": option.append(option_name[:-1]) option_name = "" elif char.isalpha() or char in "/-:._+": option_name += char.lower() elif char == ";": if in_brackets: value_list.append(value) value = None continue if value_list: log.debug("Found %s \"%s\"", "::".join(option), value_list) options["::".join(option)] = value_list value_list = [] elif value: log.debug("Found %s \"%s\"", "::".join(option), value) options["::".join(option)] = value else: log.debug("Skipping empty key %s", "::".join(option)) value = None if level > 0: option.pop() else: option = [] elif char == "}": level -= 1 in_brackets = False elif char == "{": level += 1 if option_name: option.append(option_name) option_name = "" in_brackets = True elif char in "\t\n ": if option_name: option.append(option_name) option_name = "" in_brackets = False else: raise ValueError("Unknown char '%s' in line: '%s'" % (char, line)) prev_char = char return options def set_value(self, option, value, defaultfile): """Change the value of an option in the configuration. :param option: The name of the option, e.g. 'apt::periodic::AutoCleanInterval'. :param value: The value of the option. Will be converted to string. :param defaultfile: The filename of the ``/etc/apt/apt.conf.d`` configuration snippet in which the option should be set. If the value is overriden by a later configuration file snippet it will be disabled in the corresponding configuration file. """ # FIXME: Support value lists # Convert the value to string if value is True: value = "true" elif value is False: value = "false" else: value = str(value) # Check all configuration file snippets etc_parts = os.path.join(apt_pkg.config.find_dir("Dir::Etc"), apt_pkg.config.find_dir("Dir::Etc::Parts")) for filename in os.listdir(etc_parts): if filename < defaultfile: continue with open(os.path.join(etc_parts, filename)) as fd: lines = fd.readlines() config = self.parse(lines) try: val = config[option.lower()] except KeyError: if filename == defaultfile: lines.append("%s '%s';\n" % (option, value)) else: continue else: # Check if the value needs to be changed at all if ((value == "true" and val.string.lower() in ["yes", "with", "on", "enable"]) or (value == "false" and val.string.lower() in ["no", "without", "off", "disable"]) or (str(value) == val.string)): continue if filename == defaultfile: line = lines[val.line] new_line = line[:val.start + 1] new_line += value new_line += line[val.end:] lines[val.line] = new_line else: # Comment out existing values instead in non default # configuration files # FIXME Quite dangerous for brackets lines[val.line] = "// %s" % lines[val.line] with open(os.path.join(etc_parts, filename), "w") as fd: log.debug("Writting %s", filename) fd.writelines(lines) if not os.path.exists(os.path.join(etc_parts, defaultfile)): with open(os.path.join(etc_parts, defaultfile), "w") as fd: log.debug("Writting %s", filename) line = "%s '%s';\n" % (option, value) fd.write(line) def main(): apt_pkg.init_config() cw = ConfigWriter() for filename in sorted(os.listdir("/etc/apt/apt.conf.d/")): lines = open("/etc/apt/apt.conf.d/%s" % filename).readlines() cw.parse(lines) print((cw.set_value("huhu::abc", "lumpi", "10glatzor"))) if __name__ == "__main__": main() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/console.py0000644000000000000000000007361612507333252016647 0ustar 00000000000000""" This module provides a command line client for the aptdaemon """ # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " __all__ = ("ConsoleClient", "main") import array import fcntl from gettext import gettext as _ from gettext import ngettext import locale from optparse import OptionParser import os import pty import re import termios import time import tty import signal import sys from aptsources.sourceslist import SourceEntry from gi.repository import GLib import dbus.mainloop.glib dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) import aptdaemon from . import client from . import enums from . import errors ANSI_BOLD = chr(27) + "[1m" ANSI_RESET = chr(27) + "[0m" PY3K = sys.version_info.major > 2 class ConsoleClient: """ Command line interface client to aptdaemon """ def __init__(self, show_terminal=True, allow_unauthenticated=False, details=False): self._client = client.AptClient() self.master_fd, self.slave_fd = pty.openpty() self._signals = [] signal.signal(signal.SIGINT, self._on_cancel_signal) signal.signal(signal.SIGQUIT, self._on_cancel_signal) signal.signal(signal.SIGWINCH, self._on_terminal_resize) self._terminal_width = self._get_terminal_width() self._watchers = [] self._old_tty_mode = None self._show_status = True self._status = "" self._percent = 0 self._show_terminal = show_terminal self._details = details self._allow_unauthenticated = allow_unauthenticated self._show_progress = True self._status_details = "" self._progress_details = "" # Used for a spinning line to indicate a still working transaction self._spin_elements = "|/-\\" self._spin_cur = -1 self._spin_stamp = time.time() self._transaction = None self._loop = GLib.MainLoop() def add_repository(self, line="", sourcesfile=""): """Add repository to the sources list.""" entry = SourceEntry(line) self._client.add_repository(entry.type, entry.uri, entry.dist, entry.comps, entry.comment, sourcesfile, reply_handler=self._run_transaction, error_handler=self._on_exception) def add_vendor_key_from_file(self, path): """Install repository key file.""" self._client.add_vendor_key_from_file( path, reply_handler=self._run_transaction, error_handler=self._on_exception) def add_vendor_key_from_keyserver(self, keyid, keyserver): """Install repository key file.""" self._client.add_vendor_key_from_keyserver( keyid, keyserver, reply_handler=self._run_transaction, error_handler=self._on_exception) def remove_vendor_key(self, fingerprint): """Remove repository key.""" self._client.remove_vendor_key(fingerprint, reply_handler=self._run_transaction, error_handler=self._on_exception) def install_file(self, path): """Install package file.""" self._client.install_file(path, reply_handler=self._run_transaction, error_handler=self._on_exception) def list_trusted_vendor_keys(self): """List the keys of the trusted vendors.""" def on_done(keys): for key in keys: print(key) self._loop.quit() self._client.get_trusted_vendor_keys(reply_handler=on_done, error_handler=self._on_exception) def commit_packages(self, install, reinstall, remove, purge, upgrade, downgrade): """Commit changes""" self._client.commit_packages(install, reinstall, remove, purge, upgrade, downgrade, reply_handler=self._run_transaction, error_handler=self._on_exception) def fix_incomplete_install(self): """Fix incomplete installs""" self._client.fix_incomplete_install( reply_handler=self._run_transaction, error_handler=self._on_exception) def fix_broken_depends(self): """Repair broken dependencies.""" self._client.fix_broken_depends(reply_handler=self._run_transaction, error_handler=self._on_exception) def update_cache(self): """Update cache""" self._client.update_cache(reply_handler=self._run_transaction, error_handler=self._on_exception) def upgrade_system(self, safe_mode): """Upgrade system""" self._client.upgrade_system(safe_mode, reply_handler=self._run_transaction, error_handler=self._on_exception) def reconfigure(self, packages, priority): """Reconfigure packages.""" self._client.reconfigure(packages, priority, reply_handler=self._run_transaction, error_handler=self._on_exception) def clean(self): """Clean archives.""" self._client.clean(reply_handler=self._run_transaction, error_handler=self._on_exception) def run(self): """Start the console client application.""" try: self._loop.run() except KeyboardInterrupt: pass def _set_transaction(self, transaction): """Monitor the given transaction""" for handler in self._signals: GLib.source_remove(handler) self._transaction = transaction self._signals = [] self._signals.append(transaction.connect("terminal-attached-changed", self._on_terminal_attached)) self._signals.append(transaction.connect("status-changed", self._on_status)) self._signals.append(transaction.connect("status-details-changed", self._on_status_details)) self._signals.append(transaction.connect("progress-changed", self._on_progress)) self._signals.append(transaction.connect("progress-details-changed", self._on_progress_details)) self._signals.append(transaction.connect("finished", self._on_exit)) if self._show_terminal: transaction.set_terminal(os.ttyname(self.slave_fd)) transaction.set_allow_unauthenticated(self._allow_unauthenticated) def _on_exit(self, trans, enum): """Callback for the exit state of the transaction""" # Make sure to dettach the terminal self._detach() if self._show_progress: output = "[+] 100%% %s %-*.*s%s\n" % ( ANSI_BOLD, self._terminal_width - 9, self._terminal_width - 9, enums.get_exit_string_from_enum(enum), ANSI_RESET) sys.stderr.write(output) if enum == enums.EXIT_FAILED: msg = "%s: %s\n%s\n\n%s" % ( _("ERROR"), enums.get_error_string_from_enum(trans.error_code), enums.get_error_description_from_enum(trans.error_code), trans.error_details) print(msg) self._loop.quit() def _on_terminal_attached(self, transaction, attached): """Callback for the terminal-attachabed-changed signal of the transaction. """ if self._show_terminal and attached and not self._watchers: self._clear_progress() self._show_progress = False self._attach() elif not attached: self._show_progress = True self._detach() def _on_status(self, transaction, status): """Callback for the Status signal of the transaction""" self._status = enums.get_status_string_from_enum(status) self._update_progress() def _on_status_details(self, transaction, text): """Callback for the StatusDetails signal of the transaction.""" self._status_details = text self._update_progress() def _on_progress_details(self, transaction, items_done, items_total, bytes_done, bytes_total, speed, eta): """Callback for the ProgressDetails signal of the transaction.""" if bytes_total and speed: self._progress_details = ( _("Downloaded %(cur)sB of %(total)sB at %(rate)sB/s") % {'cur': client.get_size_string(bytes_done), 'total': client.get_size_string(bytes_total), 'rate': client.get_size_string(speed)}) elif bytes_total: self._progress_details = ( _("Downloaded %(cur)sB of %(total)sB") % {'cur': client.get_size_string(bytes_done), 'total': client.get_size_string(bytes_total)}) else: self._progress_details = "" self._update_progress() def _on_progress(self, transaction, percent): """Callback for the Progress signal of the transaction""" self._percent = percent self._update_progress() def _update_progress(self): """Update the progress bar.""" if not self._show_progress: return text = ANSI_BOLD + self._status + ANSI_RESET if self._status_details: text += " " + self._status_details if self._progress_details: text += " (%s)" % self._progress_details text_width = self._terminal_width - 9 # Spin the progress line (maximum 5 times a second) if self._spin_stamp + 0.2 < time.time(): self._spin_cur = (self._spin_cur + 1) % len(self._spin_elements) self._spin_stamp = time.time() spinner = self._spin_elements[self._spin_cur] # Show progress information if available if self._percent > 100: percent = "---" else: percent = self._percent sys.stderr.write("[%s] " % spinner + "%3.3s%% " % percent + "%-*.*s" % (text_width, text_width, text) + "\r") def _update_custom_progress(self, msg, percent=None, spin=True): """Update the progress bar with a custom status message.""" text = ANSI_BOLD + msg + ANSI_RESET text_width = self._terminal_width - 9 # Spin the progress line (maximum 5 times a second) if spin: self._spin_cur = (self._spin_cur + 1) % len(self._spin_elements) self._spin_stamp = time.time() spinner = self._spin_elements[self._spin_cur] else: spinner = "+" # Show progress information if available if percent is None: percent = "---" sys.stderr.write("[%s] " % spinner + "%3.3s%% " % percent + "%-*.*s" % (text_width, text_width, text) + "\r") return True def _stop_custom_progress(self): """Stop the spinner which shows non trans status messages.""" if self._progress_id is not None: GLib.source_remove(self._progress_id) def _clear_progress(self): """Clear progress information on stderr.""" sys.stderr.write("%-*.*s\r" % (self._terminal_width, self._terminal_width, " ")) def _on_cancel_signal(self, signum, frame): """Callback for a cancel signal.""" if (self._transaction and self._transaction.status != enums.STATUS_SETTING_UP): self._transaction.cancel() else: self._loop.quit() def _on_terminal_resize(self, signum, frame): """Callback for a changed terminal size.""" self._terminal_width = self._get_terminal_width() self._update_progress() def _detach(self): """Dettach the controlling terminal to aptdaemon.""" for wid in self._watchers: GLib.source_remove(wid) if self._old_tty_mode: tty.tcsetattr(pty.STDIN_FILENO, tty.TCSAFLUSH, self._old_tty_mode) def _attach(self): """Attach the controlling terminal to aptdaemon. Based on pty.spwan() """ try: self._old_tty_mode = tty.tcgetattr(pty.STDIN_FILENO) tty.setraw(pty.STDIN_FILENO) except tty.error: # This is the same as termios.error self._old_tty_mode = None flags = GLib.IO_IN | GLib.IO_ERR | GLib.IO_HUP self._watchers.append( GLib.io_add_watch(pty.STDIN_FILENO, GLib.PRIORITY_HIGH_IDLE, flags, self._copy_io, self.master_fd)) self._watchers.append( GLib.io_add_watch(self.master_fd, GLib.PRIORITY_HIGH_IDLE, flags, self._copy_io, pty.STDOUT_FILENO)) def _copy_io(self, source, condition, target): """Callback to copy data between terminals.""" if condition == GLib.IO_IN: data = os.read(source, 1024) if target: os.write(target, data) return True os.close(source) return False def _get_terminal_width(self): """Return the witdh in characters of the current terminal.""" try: return array.array("h", fcntl.ioctl(sys.stderr, termios.TIOCGWINSZ, "\0" * 8))[1] except IOError: # Fallback to the "default" size return 80 def _on_exception(self, error): """Error callback.""" self._detach() try: raise error except errors.PolicyKitError: msg = "%s %s\n\n%s" % (_("ERROR:"), _("You are not allowed to perform " "this action."), error.get_dbus_message()) except dbus.DBusException: msg = "%s %s - %s" % (_("ERROR:"), error.get_dbus_name(), error.get_dbus_message()) except: msg = str(error) self._loop.quit() sys.exit(msg) def _run_transaction(self, trans): """Callback which runs a requested transaction.""" self._set_transaction(trans) self._stop_custom_progress() if self._transaction.role in [enums.ROLE_UPDATE_CACHE, enums.ROLE_ADD_VENDOR_KEY_FILE, enums.ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER, enums.ROLE_REMOVE_VENDOR_KEY, enums.ROLE_FIX_INCOMPLETE_INSTALL]: # TRANSLATORS: status message self._progress_id = GLib.timeout_add(250, self._update_custom_progress, _("Queuing")) self._transaction.run( error_handler=self._on_exception, reply_handler=lambda: self._stop_custom_progress()) else: # TRANSLATORS: status message self._progress_id = GLib.timeout_add(250, self._update_custom_progress, _("Resolving dependencies")) self._transaction.simulate(reply_handler=self._show_changes, error_handler=self._on_exception) def _show_changes(self): def show_packages(pkgs): """Format the pkgs in a nice way.""" line = " " pkgs.sort() for pkg in pkgs: try: name, version = pkg.split("=", 1)[0:2] except ValueError: name = pkg version = None if self._details and version: output = "%s=%s" % (name, version) else: output = name if (len(line) + 1 + len(output) > self._terminal_width and line != " "): print(line) line = " " line += " %s" % output if line != " ": print(line) self._stop_custom_progress() self._clear_progress() (installs, reinstalls, removals, purges, upgrades, downgrades) = self._transaction.packages (dep_installs, dep_reinstalls, dep_removals, dep_purges, dep_upgrades, dep_downgrades, dep_kepts) = self._transaction.dependencies installs.extend(dep_installs) upgrades.extend(dep_upgrades) removals.extend(purges) removals.extend(dep_removals) removals.extend(dep_purges) reinstalls.extend(dep_reinstalls) downgrades.extend(dep_downgrades) kepts = dep_kepts if installs: # TRANSLATORS: %s is the number of packages print((ngettext("The following NEW package will be installed " "(%(count)s):", "The following NEW packages will be installed " "(%(count)s):", len(installs)) % {"count": len(installs)})) show_packages(installs) if upgrades: # TRANSLATORS: %s is the number of packages print((ngettext("The following package will be upgraded " "(%(count)s):", "The following packages will be upgraded " "(%(count)s):", len(upgrades)) % {"count": len(upgrades)})) show_packages(upgrades) if removals: # TRANSLATORS: %s is the number of packages print((ngettext("The following package will be REMOVED " "(%(count)s):", "The following packages will be REMOVED " "(%(count)s):", len(removals)) % {"count": len(removals)})) # FIXME: mark purges show_packages(removals) if downgrades: # TRANSLATORS: %s is the number of packages print((ngettext("The following package will be DOWNGRADED " "(%(count)s):", "The following packages will be DOWNGRADED " "(%(count)s):", len(downgrades)) % {"count": len(downgrades)})) show_packages(downgrades) if reinstalls: # TRANSLATORS: %s is the number of packages print((ngettext("The following package will be reinstalled " "(%(count)s):", "The following packages will be reinstalled " "(%(count)s):", len(reinstalls)) % {"count": len(reinstalls)})) show_packages(reinstalls) if kepts: print((ngettext("The following package has been kept back " "(%(count)s):", "The following packages have been kept back " "(%(count)s):", len(kepts)) % {"count": len(kepts)})) show_packages(kepts) if self._transaction.download: print(_("Need to get %sB of archives.") % client.get_size_string(self._transaction.download)) if self._transaction.space > 0: print(_("After this operation, %sB of additional disk space " "will be used.") % client.get_size_string(self._transaction.space)) elif self._transaction.space < 0: print(_("After this operation, %sB of additional disk space " "will be freed.") % client.get_size_string(self._transaction.space)) if (self._transaction.space or self._transaction.download or installs or upgrades or downgrades or removals or kepts or reinstalls): try: if PY3K: cont = input(_("Do you want to continue [Y/n]?")) else: cont = raw_input(_("Do you want to continue [Y/n]?")) except EOFError: cont = "n" # FIXME: Listen to changed dependencies! if (not re.match(locale.nl_langinfo(locale.YESEXPR), cont) and cont != ""): msg = enums.get_exit_string_from_enum(enums.EXIT_CANCELLED) self._update_custom_progress(msg, None, False) self._loop.quit() sys.exit(1) # TRANSLATORS: status message self._progress_id = GLib.timeout_add(250, self._update_custom_progress, _("Queuing")) self._transaction.run( error_handler=self._on_exception, reply_handler=lambda: self._stop_custom_progress()) def main(): """Run a command line client for aptdaemon""" epilog = _("To operate on more than one package put the package " "names in quotation marks:\naptdcon --install " "\"foo bar\"") parser = OptionParser(version=aptdaemon.__version__, epilog=epilog) parser.add_option("-c", "--refresh", default="", action="store_true", dest="refresh", help=_("Refresh the cache")) parser.add_option("", "--fix-depends", default="", action="store_true", dest="fix_depends", help=_("Try to resolve broken dependencies. " "Potentially dangerous operation since it could " "try to remove many packages.")) parser.add_option("", "--fix-install", default="", action="store_true", dest="fix_install", help=_("Try to finish a previous incompleted " "installation")) parser.add_option("-i", "--install", default="", action="store", type="string", dest="install", help=_("Install the given packages")) parser.add_option("", "--reinstall", default="", action="store", type="string", dest="reinstall", help=_("Reinstall the given packages")) parser.add_option("-r", "--remove", default="", action="store", type="string", dest="remove", help=_("Remove the given packages")) parser.add_option("-p", "--purge", default="", action="store", type="string", dest="purge", help=_("Remove the given packages including " "configuration files")) parser.add_option("-u", "--upgrade", default="", action="store", type="string", dest="upgrade", help=_("Install the given packages")) parser.add_option("", "--downgrade", default="", action="store", type="string", dest="downgrade", help=_("Downgrade the given packages")) parser.add_option("", "--upgrade-system", action="store_true", dest="safe_upgrade", help=_("Deprecated: Please use " "--safe-upgrade")) parser.add_option("", "--safe-upgrade", action="store_true", dest="safe_upgrade", help=_("Upgrade the system in a safe way")) parser.add_option("", "--full-upgrade", action="store_true", dest="full_upgrade", help=_("Upgrade the system, possibly installing and " "removing packages")) parser.add_option("", "--add-vendor-key", default="", action="store", type="string", dest="add_vendor_key", help=_("Add the vendor to the trusted ones")) parser.add_option("", "--add-vendor-key-from-keyserver", default="", action="store", type="string", help=_("Add the vendor keyid (also needs " "--keyserver)")) parser.add_option("", "--keyserver", default="", action="store", type="string", help=_("Use the given keyserver for looking up " "keys")) parser.add_option("", "--add-repository", default="", action="store", type="string", dest="add_repository", help=_("Add new repository from the given " "deb-line")) parser.add_option("", "--sources-file", action="store", default="", type="string", dest="sources_file", help=_("Specify an alternative sources.list.d file to " "which repositories should be added.")) parser.add_option("", "--list-trusted-vendors", default="", action="store_true", dest="list_trusted_vendor_keys", help=_("List trusted vendor keys")) parser.add_option("", "--remove-vendor-key", default="", action="store", type="string", dest="remove_vendor_key", help=_("Remove the trusted key of the given " "fingerprint")) parser.add_option("", "--clean", action="store_true", dest="clean", help=_("Remove downloaded package files")) parser.add_option("", "--reconfigure", default="", action="store", type="string", dest="reconfigure", help=_("Reconfigure installed packages. Optionally the " "minimum priority of questions can be " "specified")) parser.add_option("", "--priority", default="default", action="store", type="string", dest="priority", help=_("The minimum debconf priority of question to " "be displayed")) parser.add_option("", "--hide-terminal", action="store_true", dest="hide_terminal", help=_("Do not attach to the apt terminal")) parser.add_option("", "--allow-unauthenticated", action="store_true", dest="allow_unauthenticated", default=False, help=_("Allow packages from unauthenticated " "sources")) parser.add_option("-d", "--show-details", action="store_true", dest="details", help=_("Show additional information about the packages. " "Currently only the version number")) (options, args) = parser.parse_args() con = ConsoleClient(show_terminal=not options.hide_terminal, allow_unauthenticated=options.allow_unauthenticated, details=options.details) # TRANSLATORS: status message con._progress_id = GLib.timeout_add(250, con._update_custom_progress, _("Waiting for authentication")) if options.safe_upgrade: con.upgrade_system(True) elif options.full_upgrade: con.upgrade_system(False) elif options.refresh: con.update_cache() elif options.reconfigure: con.reconfigure(options.reconfigure.split(), options.priority) elif options.clean: con.clean() elif options.fix_install: con.fix_incomplete_install() elif options.fix_depends: con.fix_broken_depends() elif options.install and options.install.endswith(".deb"): con.install_file(options.install) elif (options.install or options.reinstall or options.remove or options.purge or options.upgrade or options.downgrade): con.commit_packages(options.install.split(), options.reinstall.split(), options.remove.split(), options.purge.split(), options.upgrade.split(), options.downgrade.split()) elif options.add_repository: con.add_repository(options.add_repository, options.sources_file) elif options.add_vendor_key: # FIXME: Should detect if from stdin or file con.add_vendor_key_from_file(options.add_vendor_key) elif options.add_vendor_key_from_keyserver and options.keyserver: con.add_vendor_key_from_keyserver( options.add_vendor_key_from_keyserver, options.keyserver) elif options.remove_vendor_key: con.remove_vendor_key(options.remove_vendor_key) elif options.list_trusted_vendor_keys: con.list_trusted_vendor_keys() else: parser.print_help() sys.exit(1) con.run() if __name__ == "__main__": main() aptdaemon-1.1.1+bzr982/aptdaemon/core.py0000644000000000000000000026445412375366453016153 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """ Core components of aptdaemon. This module provides the following core classes of the aptdaemon: AptDaemon - complete daemon for managing software via DBus interface Transaction - represents a software management operation TransactionQueue - queue for aptdaemon transactions The main function allows to run the daemon as a command. """ # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("Transaction", "TransactionQueue", "AptDaemon", "APTDAEMON_TRANSACTION_DBUS_INTERFACE", "APTDAEMON_DBUS_INTERFACE" "APTDAEMON_DBUS_PATH", "APTDAEMON_DBUS_SERVICE", "APTDAEMON_IDLE_CHECK_INTERVAL", "APTDAEMON_IDLE_TIMEOUT", "TRANSACTION_IDLE_TIMEOUT", "TRANSACTION_DEL_TIMEOUT") import collections from xml.etree import ElementTree import gettext from hashlib import md5 import locale import logging import logging.handlers from optparse import OptionParser import os import re import signal import sys import time import uuid from gi.repository import GObject, GLib import dbus.exceptions import dbus.service import dbus.mainloop.glib from .config import ConfigWriter from . import errors from . import enums from defer import inline_callbacks, return_value, Deferred from defer.utils import dbus_deferred_method from . import policykit1 from .utils import split_package_id from .worker import DummyWorker from .worker.aptworker import (AptWorker, trans_only_installs_pkgs_from_high_trust_repos) from .loop import mainloop from .logger import ColoredFormatter # Setup i18n _ = lambda msg: gettext.dgettext("aptdaemon", msg) if sys.version >= '3': _gettext_method = "gettext" _ngettext_method = "ngettext" else: _gettext_method = "ugettext" _ngettext_method = "ungettext" APTDAEMON_DBUS_INTERFACE = 'org.debian.apt' APTDAEMON_DBUS_PATH = '/org/debian/apt' APTDAEMON_DBUS_SERVICE = 'org.debian.apt' APTDAEMON_TRANSACTION_DBUS_INTERFACE = 'org.debian.apt.transaction' APTDAEMON_IDLE_CHECK_INTERVAL = 60 APTDAEMON_IDLE_TIMEOUT = 5 * 60 # Maximum allowed time between the creation of a transaction and its queuing TRANSACTION_IDLE_TIMEOUT = 300 # Keep the transaction for the given time alive on the bus after it has # finished TRANSACTION_DEL_TIMEOUT = 30 # regexp for the pkgname and optional arch, for details see # http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Source REGEX_VALID_PACKAGENAME = "^[a-z0-9][a-z0-9\-+.]+(:[a-z0-9]+)?$" # regexp for the version number, for details see: # http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Version REGEX_VALID_VERSION = "^[0-9][0-9.+\-A-Za-z:~]*$" # regexp for the archive (Suite) as found in the Release file REGEX_VALID_RELEASE = "^[a-zA-Z0-9_\-\.]+$" # Setup the DBus main loop dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) # Required for daemon mode os.putenv("PATH", "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin") # Setup logging to syslog and the console log = logging.getLogger("AptDaemon") try: _syslog_handler = logging.handlers.SysLogHandler( address="/dev/log", facility=logging.handlers.SysLogHandler.LOG_DAEMON) _syslog_handler.setLevel(logging.INFO) _syslog_formatter = logging.Formatter("%(name)s: %(levelname)s: " "%(message)s") _syslog_handler.setFormatter(_syslog_formatter) except: pass else: log.addHandler(_syslog_handler) _console_handler = logging.StreamHandler() _console_formatter = ColoredFormatter("%(asctime)s %(name)s [%(levelname)s]: " "%(message)s", "%T") _console_handler.setFormatter(_console_formatter) log.addHandler(_console_handler) # FIXME: Use LoggerAdapter (requires Python 2.6) log_trans = logging.getLogger("AptDaemon.Trans") # Required for translations from APT try: locale.setlocale(locale.LC_ALL, "") except locale.Error: log.warning("Failed to unset LC_ALL. Translations are not available.") def _excepthook(exc_type, exc_obj, exc_tb, apport_excepthook): """Handle exceptions of aptdaemon and avoid tiggering apport crash reports for valid DBusExceptions that are sent to the client. """ # apport registers it's own excepthook as sys.excepthook. So we have to # send exceptions that we don't want to be tracked to Python's # internal excepthook directly if issubclass(exc_type, errors.AptDaemonError): sys.__excepthook__(exc_type, exc_obj, exc_tb) else: apport_excepthook(exc_type, exc_obj, exc_tb) if sys.excepthook.__name__ == "apport_excepthook": apport_excepthook = sys.excepthook sys.excepthook = lambda etype, eobj, etb: _excepthook(etype, eobj, etb, apport_excepthook) class DBusObject(dbus.service.Object): """Enhanced D-Bus object class which supports properties.""" WRITABLE_PROPERTIES = () # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=dbus.PROPERTIES_IFACE, signature="sa{sv}as") def PropertiesChanged(self, interface, changed_properties, invalidated_properties): """The signal gets emitted if a property of the object's interfaces changed. :param property: The name of the interface. :param changed_properties: A dictrionary of changed property/value pairs :param invalidated_properties: An array of property names which changed but the value isn't conveyed. :type interface: s :type changed_properties: a{sv} :type invalidated_properties: as """ log.debug("Emitting PropertiesChanged: %s, %s, %s" % (interface, changed_properties, invalidated_properties)) # pylint: disable-msg=C0103,C0322 @dbus.service.method(dbus.INTROSPECTABLE_IFACE, in_signature='', out_signature='s', path_keyword='object_path', connection_keyword='connection') def Introspect(self, object_path, connection): # Inject the properties into the introspection xml data data = dbus.service.Object.Introspect(self, object_path, connection) xml = ElementTree.fromstring(data) for iface in xml.findall("interface"): props = self._get_properties(iface.attrib["name"]) for key, value in props.items(): attrib = {"name": key} if key in self.WRITABLE_PROPERTIES: attrib["access"] = "readwrite" else: attrib["access"] = "read" if isinstance(value, dbus.String): attrib["type"] = "s" elif isinstance(value, dbus.UInt32): attrib["type"] = "u" elif isinstance(value, dbus.Int32): attrib["type"] = "i" elif isinstance(value, dbus.UInt64): attrib["type"] = "t" elif isinstance(value, dbus.Int64): attrib["type"] = "x" elif isinstance(value, dbus.Boolean): attrib["type"] = "b" elif isinstance(value, dbus.Struct): attrib["type"] = "(%s)" % value.signature elif isinstance(value, dbus.Dictionary): attrib["type"] = "a{%s}" % value.signature elif isinstance(value, dbus.Array): attrib["type"] = "a%s" % value.signature else: raise Exception("Type %s of property %s isn't " "convertable" % (type(value), key)) iface.append(ElementTree.Element("property", attrib)) new_data = ElementTree.tostring(xml, encoding="UTF-8") return new_data # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(dbus.PROPERTIES_IFACE, in_signature="ssv", out_signature="", sender_keyword="sender") def Set(self, iface, name, value, sender): """Set a property. Only the user who intiaited the transaction is allowed to modify it. :param iface: The interface which provides the property. :param name: The name of the property which should be modified. :param value: The new value of the property. :type iface: s :type name: s :type value: v """ log.debug("Set() was called: %s, %s" % (name, value)) return self._set_property(iface, name, value, sender) # pylint: disable-msg=C0103,C0322 @dbus.service.method(dbus.PROPERTIES_IFACE, in_signature="s", out_signature="a{sv}") def GetAll(self, iface): """Get all available properties of the given interface.""" log.debug("GetAll() was called: %s" % iface) return self._get_properties(iface) # pylint: disable-msg=C0103,C0322 @dbus.service.method(dbus.PROPERTIES_IFACE, in_signature="ss", out_signature="v") def Get(self, iface, property): """Return the value of the given property provided by the given interface. """ log.debug("Get() was called: %s, %s" % (iface, property)) return self._get_properties(iface)[property] def _set_property(self, iface, name, value, sender): """Helper to set a property on the properties D-Bus interface.""" raise dbus.exceptions.DBusException("Unknown or read only " "property: %s" % name) def _get_properties(self, iface): """Helper to get the properties of a D-Bus interface.""" return {} class Transaction(DBusObject): """Represents a transaction on the D-Bus. A transaction represents a single package management task, e.g. installation or removal of packages. This class allows to expose information and to controll the transaction via DBus using PolicyKit for managing privileges. """ ROLE_ACTION_MAP = { enums.ROLE_PK_QUERY: None, enums.ROLE_INSTALL_PACKAGES: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_REMOVE_PACKAGES: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_INSTALL_FILE: ( policykit1.PK_ACTION_INSTALL_FILE), enums.ROLE_UPGRADE_PACKAGES: ( policykit1.PK_ACTION_UPGRADE_PACKAGES), enums.ROLE_UPGRADE_SYSTEM: ( policykit1.PK_ACTION_UPGRADE_PACKAGES), enums.ROLE_UPDATE_CACHE: ( policykit1.PK_ACTION_UPDATE_CACHE), enums.ROLE_COMMIT_PACKAGES: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_ADD_VENDOR_KEY_FILE: ( policykit1.PK_ACTION_CHANGE_REPOSITORY), enums.ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER: ( policykit1.PK_ACTION_CHANGE_REPOSITORY), enums.ROLE_REMOVE_VENDOR_KEY: ( policykit1.PK_ACTION_CHANGE_REPOSITORY), enums.ROLE_FIX_INCOMPLETE_INSTALL: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_FIX_BROKEN_DEPENDS: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_ADD_REPOSITORY: ( policykit1.PK_ACTION_CHANGE_REPOSITORY), enums.ROLE_RECONFIGURE: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), enums.ROLE_CLEAN: ( policykit1.PK_ACTION_CLEAN), enums.ROLE_ENABLE_DISTRO_COMP: ( policykit1.PK_ACTION_CHANGE_REPOSITORY), enums.ROLE_ADD_LICENSE_KEY: ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES)} WRITABLE_PROPERTIES = ("HttpProxy", "Terminal", "AllowUnauthenticated", "DebconfSocket", "MetaData", "Locale", "RemoveObsoleteDepends") def __init__(self, tid, role, queue, pid, uid, cmdline, sender, connect=True, bus=None, packages=None, kwargs=None): """Initialize a new Transaction instance. Keyword arguments: tid -- The unique identifier role -- The role enum of the transaction queue -- TransactionQueue instance of the daemon pid -- the id of the process which created the transaction uid -- the uid of the user who created the transaction cmdline -- the cmdline of the calling process sender -- the DBus name of the sender who created the transaction connect -- if the Transaction should connect to DBus (default is True) bus -- the DBus connection which should be used (defaults to system bus) """ if tid is None: tid = uuid.uuid4().hex self.tid = "/org/debian/apt/transaction/%s" % tid if connect is True: self.bus = bus if bus is None: self.bus = dbus.SystemBus() bus_name = dbus.service.BusName(APTDAEMON_DBUS_SERVICE, self.bus) dbus_path = self.tid else: bus = None bus_name = None dbus_path = None DBusObject.__init__(self, bus_name, dbus_path) if not packages: packages = ([], [], [], [], [], []) if not kwargs: kwargs = {} self.queue = queue self.uid = uid self.locale = dbus.String("") self.allow_unauthenticated = dbus.Boolean(False) self.remove_obsoleted_depends = dbus.Boolean(False) self.cmdline = cmdline self.pid = pid self.http_proxy = dbus.String("") self.terminal = dbus.String("") self.debconf = dbus.String("") self.kwargs = kwargs self._translation = None # The transaction which should be executed after this one self.after = None self._role = dbus.String(role) self._progress = dbus.Int32(0) # items_done, total_items, bytes_done, total_bytes, speed, time self._progress_details = dbus.Struct((0, 0, 0, 0, 0.0, 0), signature="iixxdx") self._progress_download = dbus.Struct(("", "", "", 0, 0, ""), signature="sssxxs") self._progress_package = dbus.Struct(("", ""), signature="ss") self._exit = dbus.String(enums.EXIT_UNFINISHED) self._status = dbus.String(enums.STATUS_SETTING_UP) self._status_details = dbus.String("") self._error = None self._error_property = dbus.Struct(("", ""), signature="ss") self._cancellable = dbus.Boolean(True) self._term_attached = dbus.Boolean(False) self._required_medium = dbus.Struct(("", ""), signature="ss") self._config_file_conflict = dbus.Struct(("", ""), signature="ss") self._config_file_conflict_resolution = "" self.cancelled = dbus.Boolean(False) self.paused = dbus.Boolean(False) self._meta_data = dbus.Dictionary(signature="sv") self._download = dbus.Int64(0) self._space = dbus.Int64(0) self._depends = dbus.Struct([dbus.Array([], signature='s') for i in range(7)], signature="asasasasasasas") self._packages = dbus.Struct([dbus.Array(pkgs, signature="s") for pkgs in packages], signature="asasasasasas") self._unauthenticated = dbus.Array([], signature=dbus.Signature('s')) self._high_trust_packages = dbus.Array([], signature=dbus.Signature('s')) # Add a timeout which removes the transaction from the bus if it # hasn't been setup and run for the TRANSACTION_IDLE_TIMEOUT period self._idle_watch = GLib.timeout_add_seconds( TRANSACTION_IDLE_TIMEOUT, self._remove_from_connection_no_raise) # Handle a disconnect of the client application self.sender_alive = True if bus: self._sender_watch = bus.watch_name_owner( sender, self._sender_owner_changed) else: self._sender_watch = None self.sender = sender self.output = "" self.simulated = None self._simulated_cb = None def _sender_owner_changed(self, connection): """Callback if the owner of the original sender changed, e.g. disconnected.""" if not connection: self.sender_alive = False def _remove_from_connection_no_raise(self): """Version of remove_from_connection that does not raise if the object isn't exported. """ log_trans.debug("Removing transaction") try: self.remove_from_connection() except LookupError as error: log_trans.debug("remove_from_connection() raised LookupError: " "'%s'" % error) # Forget a not yet queued transaction try: self.queue.limbo.pop(self.tid) except KeyError: pass return False def _convert_struct(self, lst, signature): """Convert a list to a DBus struct with the given signature. Currently integer, long, unsigned long, double, string and boolean are supported (ixtdsb). """ struct = [] for num, item in enumerate(lst): try: if signature[num] == "i": struct.append(dbus.Int32(item)) elif signature[num] == "x": struct.append(dbus.Int64(item)) elif signature[num] == "t": struct.append(dbus.UInt64(item)) elif signature[num] == "d": struct.append(dbus.Double(item)) elif signature[num] == "b": struct.append(dbus.Boolean(item)) elif signature[num] == "s": struct.append(get_dbus_string(item)) else: raise Exception("Value %s with unknown signature %s" % (item, signature[num])) except Exception as error: raise error.__class__("Failed to convert item %s of %s with " "signature %s: %s" % (num, lst, signature, str(error))) return dbus.Struct(struct, signature=dbus.Signature(signature)) def _set_meta_data(self, data): # Perform some checks if self.status != enums.STATUS_SETTING_UP: raise errors.TransactionAlreadyRunning() if not isinstance(data, dbus.Dictionary): raise errors.InvalidMetaDataError("The data value has to be a " "dictionary: %s" % data) if not data.signature.startswith("s"): raise errors.InvalidMetaDataError("Only strings are accepted " "as keys.") for key, value in data.items(): if key in self._meta_data: raise errors.InvalidMetaDataError("The key %s already " "exists. It is not allowed " "to overwrite existing " "data." % key) if not len(key.split("_")) > 1: raise errors.InvalidMetaDataError("The key %s has to be of " "the format " "IDENTIFIER-KEYNAME") if not isinstance(value, dbus.String): raise errors.InvalidMetaDataError("The value has to be a " "string: %s" % value) # Merge new data into existing one: self._meta_data.update(data) self.PropertyChanged("MetaData", self._meta_data) def _get_meta_data(self): return self._meta_data meta_data = property(_get_meta_data, _set_meta_data, doc="Allows client applications to store meta data " "for the transaction in a dictionary.") def _set_role(self, enum): if self._role != enums.ROLE_UNSET: raise errors.TransactionRoleAlreadySet() self._role = dbus.String(enum) self.PropertyChanged("Role", self._role) def _get_role(self): return self._role role = property(_get_role, _set_role, doc="Operation type of transaction.") def _set_progress_details(self, details): # items_done, total_items, bytes_done, total_bytes, speed, time self._progress_details = self._convert_struct(details, "iixxdx") self.PropertyChanged("ProgressDetails", self._progress_details) def _get_progress_details(self): return self._progress_details progress_details = property(_get_progress_details, _set_progress_details, doc="Tuple containing detailed progress " "information: items done, total items, " "bytes done, total bytes, speed and " "remaining time") def _set_error(self, excep): self._error = excep msg = self.gettext(excep.details) % excep.details_args self._error_property = self._convert_struct((excep.code, msg), "ss") self.PropertyChanged("Error", self._error_property) def _get_error(self): return self._error error = property(_get_error, _set_error, doc="Raised exception.") def _set_exit(self, enum): self.status = enums.STATUS_FINISHED self._exit = dbus.String(enum) self.PropertyChanged("ExitState", self._exit) self.Finished(self._exit) if self._sender_watch: self._sender_watch.cancel() # Remove the transaction from the Bus after it is complete. A short # timeout helps lazy clients GLib.timeout_add_seconds(TRANSACTION_DEL_TIMEOUT, self._remove_from_connection_no_raise) def _get_exit(self): return self._exit exit = property(_get_exit, _set_exit, doc="The exit state of the transaction.") def _get_download(self): return self._download def _set_download(self, size): self._download = dbus.Int64(size) self.PropertyChanged("Download", self._download) download = property(_get_download, _set_download, doc="The download size of the transaction.") def _get_space(self): return self._space def _set_space(self, size): self._space = dbus.Int64(size) self.PropertyChanged("Space", self._space) space = property(_get_space, _set_space, doc="The required disk space of the transaction.") def _set_packages(self, packages): self._packages = dbus.Struct([dbus.Array(pkgs, signature="s") for pkgs in packages], signature="as") self.PropertyChanged("Packages", self._packages) def _get_packages(self): return self._packages packages = property(_get_packages, _set_packages, doc="Packages which will be explictly installed, " "reinstalled, removed, purged, upgraded or " "downgraded.") def _get_unauthenticated(self): return self._unauthenticated def _set_unauthenticated(self, unauthenticated): self._unauthenticated = dbus.Array(unauthenticated, signature="s") self.PropertyChanged("Unauthenticated", self._unauthenticated) unauthenticated = property(_get_unauthenticated, _set_unauthenticated, doc="Unauthenticated packages in this " "transaction") # package that can have a different auth schema, useful for e.g. # lightweight packages like unity-webapps or packages comming from # a high trust repository (e.g. a internal company repo) def _get_high_trust_packages(self): return self._high_trust_packages def _set_high_trust_packages(self, whitelisted_packages): self._high_trust_packages = dbus.Array(whitelisted_packages, signature="s") self.PropertyChanged("HighTrustWhitelistedPackages", self._high_trust_packages) high_trust_packages = property(_get_high_trust_packages, _set_high_trust_packages, doc="High trust packages in this " "transaction") def _get_depends(self): return self._depends def _set_depends(self, depends): self._depends = dbus.Struct([dbus.Array(deps, signature="s") for deps in depends], signature="as") self.PropertyChanged("Dependencies", self._depends) depends = property(_get_depends, _set_depends, doc="The additional dependencies: installs, removals, " "upgrades and downgrades.") def _get_status(self): return self._status def _set_status(self, enum): self._status = dbus.String(enum) self.PropertyChanged("Status", self._status) status = property(_get_status, _set_status, doc="The status of the transaction.") def _get_status_details(self): return self._status_details def _set_status_details(self, text): self._status_details = get_dbus_string(text) self.PropertyChanged("StatusDetails", self._status_details) status_details = property(_get_status_details, _set_status_details, doc="The status message from apt.") def _get_progress(self): return self._progress def _set_progress(self, percent): self._progress = dbus.Int32(percent) self.PropertyChanged("Progress", self._progress) progress = property(_get_progress, _set_progress, "The progress of the transaction in percent.") def _get_progress_package(self): return self._progress_package def _set_progress_package(self, progress_package): self._progress_package = self._convert_struct(progress_package, "ss") progress_package = property(_get_progress_package, _set_progress_package, doc="The last progress update of a currently" "processed package. A tuple of package " "name and status enum.") def _get_progress_download(self): return self._progress_download def _set_progress_download(self, progress_download): self._progress_download = self._convert_struct(progress_download, "sssxxs") self.PropertyChanged("ProgressDownload", self._progress_download) progress_download = property(_get_progress_download, _set_progress_download, doc="The last progress update of a currently" "running download. A tuple of URI, " "status, short description, full size, " "partially downloaded size and a status " "message.") def _get_cancellable(self): return self._cancellable def _set_cancellable(self, cancellable): self._cancellable = dbus.Boolean(cancellable) self.PropertyChanged("Cancellable", self._cancellable) cancellable = property(_get_cancellable, _set_cancellable, doc="If it's currently allowed to cancel the " "transaction.") def _get_term_attached(self): return self._term_attached def _set_term_attached(self, attached): self._term_attached = dbus.Boolean(attached) self.PropertyChanged("TerminalAttached", self._term_attached) term_attached = property(_get_term_attached, _set_term_attached, doc="If the controlling terminal is currently " "attached to the dpkg call of the " "transaction.") def _get_required_medium(self): return self._required_medium def _set_required_medium(self, medium): self._required_medium = self._convert_struct(medium, "ss") self.PropertyChanged("RequiredMedium", self._required_medium) self.MediumRequired(*self._required_medium) required_medium = property(_get_required_medium, _set_required_medium, doc="Tuple containing the label and the drive " "of a required CD/DVD to install packages " "from.") def _get_config_file_conflict(self): return self._config_file_conflict def _set_config_file_conflict(self, prompt): if prompt is None: self._config_file_conflict = dbus.Struct(("", ""), signature="ss") return self._config_file_conflict = self._convert_struct(prompt, "ss") self.PropertyChanged("ConfigFileConflict", self._config_file_conflict) self.ConfigFileConflict(*self._config_file_conflict) config_file_conflict = property(_get_config_file_conflict, _set_config_file_conflict, doc="Tuple containing the old and the new " "path of the configuration file") # Signals # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_TRANSACTION_DBUS_INTERFACE, signature="sv") def PropertyChanged(self, property, value): """The signal gets emitted if a property of the transaction changed. :param property: The name of the property. :param value: The new value of the property. :type property: s :type value: v """ log_trans.debug("Emitting PropertyChanged: %s, %s" % (property, value)) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_TRANSACTION_DBUS_INTERFACE, signature="s") def Finished(self, exit_state): """The signal gets emitted if the transaction has been finished. :param exit_state: The exit state of the transaction, e.g. ``exit-failed``. :type exit_state: s """ log_trans.debug("Emitting Finished: %s" % enums.get_exit_string_from_enum(exit_state)) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_TRANSACTION_DBUS_INTERFACE, signature="ss") def MediumRequired(self, medium, drive): """Set and emit the required medium change. This method/signal should be used to inform the user to insert the installation CD/DVD: Keyword arguments: medium -- the CD/DVD label drive -- mount point of the drive """ log_trans.debug("Emitting MediumRequired: %s, %s" % (medium, drive)) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_TRANSACTION_DBUS_INTERFACE, signature="ss") def ConfigFileConflict(self, old, new): """Set and emit the ConfigFileConflict signal. This method/signal should be used to inform the user to answer a config file prompt. Keyword arguments: old -- current version of the configuration prompt new -- new version of the configuration prompt """ log_trans.debug("Emitting ConfigFileConflict: %s, %s" % (old, new)) # Methods def _set_locale(self, locale_str): """Set the language and encoding. Keyword arguments: locale -- specifies language, territory and encoding according to RFC 1766, e.g. "de_DE.UTF-8" """ if self.status != enums.STATUS_SETTING_UP: raise errors.TransactionAlreadyRunning() try: # ensure locale string is str() and not dbus.String() (lang, encoding) = locale._parse_localename(str(locale_str)) except ValueError: raise else: if lang is None: lang = "C" self.locale = dbus.String(lang) else: self.locale = dbus.String("%s.%s" % (lang, encoding)) self._translation = gettext.translation("aptdaemon", fallback=True, languages=[lang]) self.PropertyChanged("locale", self.locale) @inline_callbacks def _set_http_proxy(self, url, sender): """Set an http network proxy. Keyword arguments: url -- the URL of the proxy server, e.g. http://proxy:8080 """ if url != "" and (not url.startswith("http://") or ":" not in url): raise errors.InvalidProxyError(url) action = policykit1.PK_ACTION_SET_PROXY yield policykit1.check_authorization_by_name(sender, action, bus=self.bus) self.http_proxy = dbus.String(url) self.PropertyChanged("HttpProxy", self.http_proxy) def _set_remove_obsoleted_depends(self, remove_obsoleted_depends): """Set the handling of the removal of automatically installed dependencies which are now obsoleted. Keyword arguments: remove_obsoleted_depends -- If True also remove automatically installed dependencies of to removed packages """ self.remove_obsoleted_depends = dbus.Boolean(remove_obsoleted_depends) self.PropertyChanged("RemoveObsoletedDepends", self.remove_obsoleted_depends) def _set_allow_unauthenticated(self, allow_unauthenticated): """Set the handling of unauthenticated packages Keyword arguments: allow_unauthenticated -- True to allow packages that come from a repository without a valid authentication signature """ self.allow_unauthenticated = dbus.Boolean(allow_unauthenticated) self.PropertyChanged("AllowUnauthenticated", self.allow_unauthenticated) # pylint: disable-msg=C0103,C0322 @dbus.service.method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="s", out_signature="", sender_keyword="sender") def RunAfter(self, tid, sender): """Queue the transaction for processing after the given transaction. The transaction will also fail if the previous one failed. Several transactions can be chained up. :param tid: The id of the transaction which should be executed before. :type tid: s """ log_trans.info("Queuing transaction %s", self.tid) try: trans_before = self.queue.limbo[tid] except KeyError: raise Exception("The given transaction doesn't exist or is " "already queued!") if trans_before.after: raise Exception("There is already an after transaction!") trans_before.after = self # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def Run(self, sender): """Check the authentication, simulate and queue the transaction for processing.""" log_trans.info("Queuing transaction %s", self.tid) return self._run(sender) @inline_callbacks def _run(self, sender): yield self._check_foreign_user(sender) yield self._check_simulated() yield self._check_auth() self.queue.put(self.tid) self.status = enums.STATUS_WAITING next_trans = self.after while next_trans: yield self._check_simulated() yield next_trans._check_auth() self.queue.put(next_trans.tid) next_trans.status = enums.STATUS_WAITING next_trans = next_trans.after @inline_callbacks def _check_simulated(self): # Simulate the new transaction if this has not been done before: # FIXME: Compare the simulated timestamp with the time stamp of # the status and re-simulate the transaction if self.simulated is None: # If there isn't any transaction on the queue we send an early # progress information. Otherwise it juse seems that aptdaemon # hangs since it doesn't send any progress information after the # the transaction has been started if not self.queue.worker.trans: self.progress = 9 yield self._simulate_real() else: raise StopIteration @inline_callbacks def _check_auth(self): """Check silently if one of the high level privileges has been granted before to reduce clicks to install packages from third party epositories: AddRepository -> UpdateCache -> InstallPackages """ self.status = enums.STATUS_AUTHENTICATING action = self.ROLE_ACTION_MAP[self.role] if action is None: raise StopIteration # Special case if InstallPackages only touches stuff from the # high trust whitelist if (self.role in (enums.ROLE_INSTALL_PACKAGES, enums.ROLE_COMMIT_PACKAGES) and trans_only_installs_pkgs_from_high_trust_repos(self)): action = policykit1.PK_ACTION_INSTALL_PACKAGES_FROM_HIGH_TRUST_REPO # Special case if CommitPackages only upgrades if (self.role == enums.ROLE_COMMIT_PACKAGES and not self.packages[enums.PKGS_INSTALL] and not self.packages[enums.PKGS_REINSTALL] and not self.packages[enums.PKGS_REMOVE] and not self.packages[enums.PKGS_PURGE] and not self.packages[enums.PKGS_DOWNGRADE]): action = policykit1.PK_ACTION_UPGRADE_PACKAGES try: authorized = yield self._check_alternative_auth() if not authorized: yield policykit1.check_authorization_by_name(self.sender, action, bus=self.bus) except errors.NotAuthorizedError as error: self.error = errors.TransactionFailed(enums.ERROR_NOT_AUTHORIZED, str(error)) self.exit = enums.EXIT_FAILED raise(error) except errors.AuthorizationFailed as error: self.error = errors.TransactionFailed(enums.ERROR_AUTH_FAILED, str(error)) self.exit = enums.EXIT_FAILED raise(error) @inline_callbacks def _check_alternative_auth(self): """Check non-interactively if one of the high level privileges has been granted. """ if self.role not in [enums.ROLE_ADD_REPOSITORY, enums.ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER, enums.ROLE_UPDATE_CACHE, enums.ROLE_INSTALL_PACKAGES, enums.ROLE_ADD_LICENSE_KEY]: return_value(False) flags = policykit1.CHECK_AUTH_NONE for action in [policykit1.PK_ACTION_INSTALL_PACKAGES_FROM_NEW_REPO, policykit1.PK_ACTION_INSTALL_PURCHASED_PACKAGES]: try: yield policykit1.check_authorization_by_name(self.sender, action, bus=self.bus, flags=flags) except errors.NotAuthorizedError: continue else: return_value(True) return_value(False) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def Cancel(self, sender): """Cancel the transaction.""" log_trans.info("Cancelling transaction %s", self.tid) return self._cancel(sender) @inline_callbacks def _cancel(self, sender): try: yield self._check_foreign_user(sender) except errors.ForeignTransaction: action = policykit1.PK_ACTION_CANCEL_FOREIGN yield policykit1.check_authorization_by_name(sender, action, bus=self.bus) try: self.queue.remove(self) log_trans.debug("Removed transaction from queue") except ValueError: pass else: self.status = enums.STATUS_CANCELLING self.exit = enums.EXIT_CANCELLED raise StopIteration if self.tid in self.queue.limbo: self.exit = enums.EXIT_CANCELLED raise StopIteration elif self.cancellable: log_trans.debug("Setting cancel event") self.cancelled = True self.status = enums.STATUS_CANCELLING self.paused = False raise StopIteration raise errors.AptDaemonError("Could not cancel transaction") # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def Simulate(self, sender): """Simulate a transaction to update its dependencies, download size and required disk space. Call this method if you want to show changes before queuing the transaction. """ log_trans.info("Simulate was called") return self._simulate(sender) @inline_callbacks def _simulate(self, sender): if self._simulated_cb: raise errors.TransactionAlreadySimulating() if self.status != enums.STATUS_SETTING_UP: raise errors.TransactionAlreadyRunning() yield self._check_foreign_user(sender) yield self._simulate_real() @inline_callbacks def _simulate_real(self): if self._simulated_cb: raise errors.TransactionAlreadySimulating() self.queue.worker.simulate(self) deferred = Deferred() if self._idle_watch is not None: GLib.source_remove(self._idle_watch) self._idle_watch = None self._simulated_cb = self.queue.worker.connect( "transaction-simulated", self._on_transaction_simulated, deferred) yield deferred def _on_transaction_simulated(self, worker, trans, deferred): if trans is not self: return self.queue.worker.disconnect(self._simulated_cb) self._simualted_cb = None if trans.error: deferred.errback(trans.error) else: deferred.callback() def _set_terminal(self, ttyname): """Set the controlling terminal. The worker will be attached to the specified slave end of a pty master/slave pair. This allows to interact with the Can only be changed before the transaction is started. Keyword arguments: ttyname -- file path to the slave file descriptor """ if self.status != enums.STATUS_SETTING_UP: raise errors.TransactionAlreadyRunning() if not os.access(ttyname, os.W_OK): raise errors.AptDaemonError("Pty device does not exist: " "%s" % ttyname) if not os.stat(ttyname)[4] == self.uid: raise errors.AptDaemonError("Pty device '%s' has to be owned by" "the owner of the transaction " "(uid %s) " % (ttyname, self.uid)) if os.path.dirname(ttyname) != "/dev/pts": raise errors.AptDaemonError("%s isn't a tty" % ttyname) try: slave_fd = os.open(ttyname, os.O_RDWR | os.O_NOCTTY) if os.isatty(slave_fd): self.terminal = dbus.String(ttyname) self.PropertyChanged("Terminal", self.terminal) else: raise errors.AptDaemonError("%s isn't a tty" % ttyname) finally: os.close(slave_fd) def _set_debconf(self, debconf_socket): """Set the socket of the debconf proxy. The worker process forwards all debconf commands through this socket by using the passthrough frontend. On the client side debconf-communicate should be connected to the socket. Can only be changed before the transaction is started. Keyword arguments: debconf_socket: absolute path to the socket """ if self.status != enums.STATUS_SETTING_UP: raise errors.TransactionAlreadyRunning() if not os.access(debconf_socket, os.W_OK): raise errors.AptDaemonError("socket does not exist: " "%s" % debconf_socket) if not os.stat(debconf_socket)[4] == self.uid: raise errors.AptDaemonError("socket '%s' has to be owned by the " "owner of the " "transaction" % debconf_socket) self.debconf = dbus.String(debconf_socket) self.PropertyChanged("DebconfSocket", self.debconf) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="s", out_signature="", sender_keyword="sender") def ProvideMedium(self, medium, sender): """Continue paused transaction with the inserted medium. If a media change is required to install packages from CD/DVD the transaction will be paused and could be resumed with this method. :param medium: The label of the CD/DVD. :type medium: s """ log_trans.info("Medium %s was provided", medium) return self._provide_medium(medium, sender) @inline_callbacks def _provide_medium(self, medium, sender): yield self._check_foreign_user(sender) if not self.required_medium: raise errors.AptDaemonError("There isn't any required medium.") if not self.required_medium[0] == medium: raise errors.AptDaemonError("The medium '%s' isn't " "requested." % medium) self.paused = False # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_TRANSACTION_DBUS_INTERFACE, in_signature="ss", out_signature="", sender_keyword="sender") def ResolveConfigFileConflict(self, config, answer, sender): """Resolve a configuration file conflict and continue the transaction. If a config file prompt is detected the transaction will be paused and could be resumed with this method. :param config: The path to the original config file. :param answer: The answer to the configuration file question, can be "keep" or "replace" :type config: s :type answer: s """ log_trans.info("Resolved conflict of %s with %s", config, answer) return self._resolve_config_file_conflict(config, answer, sender) @inline_callbacks def _resolve_config_file_conflict(self, config, answer, sender): yield self._check_foreign_user(sender) if not self.config_file_conflict: raise errors.AptDaemonError("There isn't any config file prompt " "required") if answer not in ["keep", "replace"]: # FIXME: should we re-send the config file prompt # message or assume the client is buggy and # just use a safe default (like keep)? raise errors.AptDaemonError("Invalid value: %s" % answer) if not self.config_file_conflict[0] == config: raise errors.AptDaemonError("Invalid config file: %s" % config) self.config_file_conflict_resolution = answer self.paused = False @inline_callbacks def _set_property(self, iface, name, value, sender): """Helper to set a name on the properties D-Bus interface.""" yield self._check_foreign_user(sender) if iface == APTDAEMON_TRANSACTION_DBUS_INTERFACE: if name == "MetaData": self._set_meta_data(value) elif name == "Terminal": self._set_terminal(value) elif name == "DebconfSocket": self._set_debconf(value) elif name == "Locale": self._set_locale(value) elif name == "RemoveObsoletedDepends": self._set_remove_obsoleted_depends(value) elif name == "AllowUnauthenticated": self._set_allow_unauthenticated(value) elif name == "HttpProxy": self._set_http_proxy(value, sender) else: raise dbus.exceptions.DBusException("Unknown or read only " "property: %s" % name) else: raise dbus.exceptions.DBusException("Unknown interface: %s" % iface) def _get_properties(self, iface): """Helper to get the properties of a D-Bus interface.""" if iface == APTDAEMON_TRANSACTION_DBUS_INTERFACE: return {"Role": self.role, "Progress": self.progress, "ProgressDetails": self.progress_details, "ProgressDownload": self.progress_download, "Status": self.status, "StatusDetails": self.status_details, "Cancellable": self.cancellable, "TerminalAttached": self.term_attached, "RequiredMedium": self.required_medium, "ConfigFileConflict": self.config_file_conflict, "ExitState": self.exit, "Error": self._error_property, "Locale": self.locale, "Terminal": self.terminal, "DebconfSocket": self.debconf, "Paused": dbus.Boolean(self.paused), "AllowUnauthenticated": self.allow_unauthenticated, "RemoveObsoletedDepends": self.remove_obsoleted_depends, "HttpProxy": self.http_proxy, "Packages": self.packages, "MetaData": self.meta_data, "Dependencies": self.depends, "Download": self.download, "Space": self.space, "Unauthenticated": self.unauthenticated, } else: return {} @inline_callbacks def _check_foreign_user(self, dbus_name): """Check if the transaction is owned by the given caller.""" uid = yield policykit1.get_uid_from_dbus_name(dbus_name, self.bus) if self.uid != uid: raise errors.ForeignTransaction() def _set_kwargs(self, kwargs): """Set the kwargs which will be send to the AptWorker.""" self.kwargs = kwargs def _get_translations(self): """Get a usable translations object, no matter what.""" if self._translation: return self._translation else: domain = "aptdaemon" return gettext.translation(domain, gettext.bindtextdomain(domain), gettext.bind_textdomain_codeset(domain), fallback=True) def gettext(self, msg): """Translate the given message to the language of the transaction. Fallback to the system default. """ # Avoid showing the header of the mo file for an empty string if not msg: return "" translation = self._get_translations() return getattr(translation, _gettext_method)(msg) def ngettext(self, singular, plural, count): """Translate the given plural message to the language of the transaction. Fallback to the system default. """ translation = self._get_translations() return getattr(translation, _ngettext_method)(singular, plural, count) class TransactionQueue(GObject.GObject): """Queue for transactions.""" __gsignals__ = {"queue-changed": (GObject.SignalFlags.RUN_FIRST, None, ())} def __init__(self, worker): """Intialize a new TransactionQueue instance.""" GObject.GObject.__init__(self) self._queue = collections.deque() self._proc_count = 0 self.worker = worker # Used to keep track of not yet queued transactions self.limbo = {} self.worker.connect("transaction-done", self._on_transaction_done) def __len__(self): return len(self._queue) def _emit_queue_changed(self): """Emit the queued-changed signal.""" log.debug("emitting queue changed") self.emit("queue-changed") def put(self, tid): """Add an item to the queue.""" trans = self.limbo.pop(tid) if trans._idle_watch is not None: GLib.source_remove(trans._idle_watch) if self.worker.trans: trans.status = enums.STATUS_WAITING self._queue.append(trans) else: self.worker.run(trans) self._emit_queue_changed() def _on_transaction_done(self, worker, trans): """Mark the last item as done and request a new item.""" # FIXME: Check if the transaction failed because of a broken system or # if dpkg journal is dirty. If so allready queued transactions # except the repair transactions should be removed from the queue if trans.exit in [enums.EXIT_FAILED, enums.EXIT_CANCELLED]: if trans.exit == enums.EXIT_FAILED: exit = enums.EXIT_PREVIOUS_FAILED else: exit = enums.EXIT_CANCELLED _trans = trans.after while _trans: self.remove(_trans) _trans.exit = exit msg = enums.get_role_error_from_enum(trans.role) _trans.status_details = msg _trans = _trans.after try: next_trans = self._queue.popleft() except IndexError: log.debug("There isn't any queued transaction") else: self.worker.run(next_trans) self._emit_queue_changed() def remove(self, transaction): """Remove the specified item from the queue.""" self._queue.remove(transaction) self._emit_queue_changed() def clear(self): """Remove all items from the queue.""" for transaction in self._queue: transaction._remove_from_connection_no_raise() self._queue.clear() @property def items(self): """Return a list containing all queued items.""" return list(self._queue) class AptDaemon(DBusObject): """Provides a system daemon to process package management tasks. The daemon is transaction based. Each package management tasks runs in a separate transaction. The transactions can be created, monitored and managed via the D-Bus interface. """ def __init__(self, options, connect=True, bus=None): """Initialize a new AptDaemon instance. Keyword arguments: options -- command line options of the type optparse.Values connect -- if the daemon should connect to the D-Bus (default is True) bus -- the D-Bus to connect to (defaults to the system bus) """ log.info("Initializing daemon") # glib does not support SIGQUIT # GLib.unix_signal_add_full( # GLib.PRIORITY_HIGH, signal.SIGQUIT, self._sigquit, None) GLib.unix_signal_add(GLib.PRIORITY_HIGH, signal.SIGTERM, self._sigquit, None) # Decrease the priority of the daemon to avoid blocking UI os.nice(5) self.options = options self.packagekit = None if connect is True: if bus is None: bus = dbus.SystemBus() self.bus = bus bus_path = APTDAEMON_DBUS_PATH # Check if another object has already registered the name on # the bus. Quit the other daemon if replace would be set try: bus_name = dbus.service.BusName(APTDAEMON_DBUS_SERVICE, bus, do_not_queue=True) except dbus.exceptions.NameExistsException: if self.options.replace is False: log.critical("Another daemon is already running") sys.exit(1) log.warning("Replacing already running daemon") the_other_guy = bus.get_object(APTDAEMON_DBUS_SERVICE, APTDAEMON_DBUS_PATH) the_other_guy.Quit(dbus_interface=APTDAEMON_DBUS_INTERFACE, timeout=300) time.sleep(1) bus_name = dbus.service.BusName(APTDAEMON_DBUS_SERVICE, bus, do_not_queue=True) else: bus_name = None bus_path = None DBusObject.__init__(self, bus_name, bus_path) if options.dummy: self.worker = DummyWorker() else: load_plugins = not options.disable_plugins try: from .worker.pkworker import AptPackageKitWorker from . import pkcompat except ImportError: self.worker = AptWorker(options.chroot, load_plugins) else: self.worker = AptPackageKitWorker(options.chroot, load_plugins) self.queue = TransactionQueue(self.worker) self.queue.connect("queue-changed", self._on_queue_changed) # keep state of the last information about reboot required self._reboot_required = self.worker.is_reboot_required() try: self.packagekit = pkcompat.PackageKit(self.queue, connect, bus) except dbus.exceptions.NameExistsException: log.warning("PackageKit is already running") except NameError: pass log.debug("Daemon was initialized") def _on_queue_changed(self, queue): """Callback for a changed transaction queue.""" # check for reboot required if self.worker.is_reboot_required() != self._reboot_required: self._reboot_required = self.worker.is_reboot_required() self.PropertyChanged("RebootRequired", self._reboot_required) # check for the queue if self.queue.worker.trans: current = self.queue.worker.trans.tid else: current = "" queued = [trans.tid for trans in self.queue.items] self.ActiveTransactionsChanged(current, queued) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_DBUS_INTERFACE, signature="sv") def PropertyChanged(self, property, value): """The signal gets emitted if a property of the transaction changed. :param property: The name of the property. :param value: The new value of the property. :type property: s :type value: v """ log.debug("Emitting PropertyChanged: %s, %s" % (property, value)) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=APTDAEMON_DBUS_INTERFACE, signature="sas") def ActiveTransactionsChanged(self, current, queued): """The currently processed or the queued transactions changed. :param current: The path of the currently running transaction or an empty string. :param queued: List of the ids of the queued transactions. :type current: s :type queued: as """ log.debug("Emitting ActiveTransactionsChanged signal: %s, %s", current, queued) def run(self): """Start the daemon and listen for calls.""" if self.options.disable_timeout is False: log.debug("Using inactivity check") GLib.timeout_add_seconds(APTDAEMON_IDLE_CHECK_INTERVAL, self._check_for_inactivity) log.debug("Waiting for calls") try: mainloop.run() except KeyboardInterrupt: self.Quit(None) @inline_callbacks def _create_trans(self, role, sender, packages=None, kwargs=None): """Helper method which returns the tid of a new transaction.""" pid, uid, cmdline = ( yield policykit1.get_proc_info_from_dbus_name(sender, self.bus)) tid = uuid.uuid4().hex trans = Transaction(tid, role, self.queue, pid, uid, cmdline, sender, packages=packages, kwargs=kwargs, bus=self.bus) self.queue.limbo[trans.tid] = trans return_value(trans.tid) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="s", sender_keyword="sender") def FixIncompleteInstall(self, sender): """Try to complete cancelled installations. This is equivalent to a call of ``dpkg --configure -a``. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("FixIncompleteInstall() called") return self._create_trans(enums.ROLE_FIX_INCOMPLETE_INSTALL, sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="s", sender_keyword="sender") def FixBrokenDepends(self, sender): """Try to resolve unsatisfied dependencies of installed packages. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("FixBrokenDepends() called") return self._create_trans(enums.ROLE_FIX_BROKEN_DEPENDS, sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="s", sender_keyword="sender") def UpdateCache(self, sender): """Download the latest information about available packages from the repositories and rebuild the package cache. Requires the ``org.debian.apt.update-cache`` :ref:`PolicyKit privilege `. :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("UpdateCache() was called") kwargs = {"sources_list": None} return self._create_trans(enums.ROLE_UPDATE_CACHE, sender, kwargs=kwargs) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="s", out_signature="s", sender_keyword="sender") def UpdateCachePartially(self, sources_list, sender): """Update the cache from the repositories defined in the given sources.list only. Requires the ``org.debian.apt.update-cache`` :ref:`PolicyKit privilege `. :param sources_list: The absolute path to a sources.list, e.g. :file:`/etc/apt/sources.list.d/ppa-aptdaemon.list` or the name of the snippet in :file:`/etc/apt/sources.list.d/`, e.g. :file:`ppa-aptdaemon.list`. :type sources_list: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("UpdateCachePartially() was called") kwargs = {"sources_list": sources_list} return self._create_trans(enums.ROLE_UPDATE_CACHE, sender, kwargs=kwargs) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="as", out_signature="s", sender_keyword="sender") def RemovePackages(self, package_names, sender): """Remove the given packages from the system. The configuration files will be kept by default. Use :func:`CommitPackages()` to also purge the configuration files. Requires the ``org.debian.apt.install-or-packages`` :ref:`PolicyKit privilege `. :param package_names: packages to be removed :type package_names: as :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("RemovePackages() was called: '%s'", package_names) self._check_package_names(package_names) return self._create_trans(enums.ROLE_REMOVE_PACKAGES, sender, packages=([], [], package_names, [], [], [])) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="b", out_signature="s", sender_keyword="sender") def UpgradeSystem(self, safe_mode, sender): """Apply all available upgrades and try to resolve conflicts. Requires the ``org.debian.apt.upgrade-packages`` :ref:`PolicyKit privilege `. :param safe_mode: If True only already installed packages will be updated. Updates which require to remove installed packages or to install additional packages will be skipped. :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("UpgradeSystem() was called with safe mode: " "%s" % safe_mode) return self._create_trans(enums.ROLE_UPGRADE_SYSTEM, sender, kwargs={"safe_mode": safe_mode}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="asasasasasas", out_signature="s", sender_keyword="sender") def CommitPackages(self, install, reinstall, remove, purge, upgrade, downgrade, sender): """Perform several package changes at the same time. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :param install: Packages to be installed. :param reinstall: Packages to be re-installed :param remove: Packages to be removed :param purge: Package to be removed including theirs configuration files. :param upgrade: Packages to be upgraded. :param downgrade: Packages to be downgraded. You have to append the target version to the package name separated by "=" :type install: as :type reinstall: as :type remove: as :type purge: as :type upgrade: as :type downgrade: as :returns: The D-Bus path of the new transaction object which performs this action. """ # FIXME: take sha1 or md5 cash into accout to allow selecting a version # or an origin different from the candidate log.info("CommitPackages() was called: %s, %s, %s, %s, %s, %s", install, reinstall, remove, purge, upgrade, downgrade) def check_empty_list(lst): if lst == [""]: return [] else: return lst packages_lst = [check_empty_list(lst) for lst in [install, reinstall, remove, purge, upgrade, downgrade]] for packages in packages_lst: self._check_package_names(packages) return self._create_trans(enums.ROLE_COMMIT_PACKAGES, sender, packages=packages_lst) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="as", out_signature="s", sender_keyword="sender") def InstallPackages(self, package_names, sender): """Fetch and install the given packages from the repositories. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :param package_names: Packages to be upgraded :type package_names: as :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("InstallPackages() was called: %s" % package_names) self._check_package_names(package_names) return self._create_trans(enums.ROLE_INSTALL_PACKAGES, sender, packages=(package_names, [], [], [], [], [])) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="as", out_signature="s", sender_keyword="sender") def UpgradePackages(self, package_names, sender): """Upgrade the given packages to their latest version. The version number and target release of the packages can be specified using the traditional apt-get syntax, e.g. "xterm=281.1" to force installing the version 281.1 of xterm or "xterm/experimental" to force installing xterm from the experimental release. Requires the ``org.debian.apt.upgrade-packages`` :ref:`PolicyKit privilege `. :param package_names: Packages to be upgraded :type package_names: as :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("UpgradePackages() was called: %s" % package_names) self._check_package_names(package_names) return self._create_trans(enums.ROLE_UPGRADE_PACKAGES, sender, packages=([], [], [], [], package_names, [])) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="ss", out_signature="s", sender_keyword="sender") def AddVendorKeyFromKeyserver(self, keyid, keyserver, sender): """Download and install the key of a software vendor. The key is used to authenticate packages of the vendor. Requires the ``org.debian.apt.change-repositories`` :ref:`PolicyKit privilege `. :param keyid: The id of the GnuPG key (e.g. 0x0EB12F05) :param keyserver: The server to get the key from (e.g. keyserver.ubuntu.com) :type keyid: s :type keyserver: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("InstallVendorKeyFromKeyserver() was called: %s %s", keyid, keyserver) return self._create_trans(enums.ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER, sender, kwargs={"keyid": keyid, "keyserver": keyserver}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="s", out_signature="s", sender_keyword="sender") def AddVendorKeyFromFile(self, path, sender): """Install the key file of a software vendor. The key is used to authenticate packages of the vendor. Requires the ``org.debian.apt.change-repositories`` :ref:`PolicyKit privilege `. :param path: The absolute path to the key file. :type path: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("InstallVendorKeyFile() was called: %s" % path) return self._create_trans(enums.ROLE_ADD_VENDOR_KEY_FILE, sender, kwargs={"path": path}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="s", out_signature="s", sender_keyword="sender") def RemoveVendorKey(self, fingerprint, sender): """Remove the given key of a software vendor. The key is used to authenticate packages of the vendor. Requires the ``org.debian.apt.change-repositories`` :ref:`PolicyKit privilege `. :param fingerprint: The fingerprint of the key. :type fingerprint: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("RemoveVendorKey() was called: %s" % fingerprint) return self._create_trans(enums.ROLE_REMOVE_VENDOR_KEY, sender, kwargs={"fingerprint": fingerprint}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="sb", out_signature="s", sender_keyword="sender") def InstallFile(self, path, force, sender): """Install the given local package file. Requires the ``org.debian.apt.install-file`` :ref:`PolicyKit privilege `. :param path: The absolute path to the package file. :param force: If the installation of a package which violates the Debian/Ubuntu policy should be forced. :type path: s :type force: b :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("InstallFile() was called: %s" % path) # FIXME: Perform some checks # FIXME: Should we already extract the package name here? return self._create_trans(enums.ROLE_INSTALL_FILE, sender, kwargs={"path": path, "force": force}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="s", sender_keyword="sender") def Clean(self, sender): """Remove downloaded package files. Requires the ``org.debian.apt.clean`` :ref:`PolicyKit privilege `. :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("Clean() was called") return self._create_trans(enums.ROLE_CLEAN, sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="ass", out_signature="s", sender_keyword="sender") def Reconfigure(self, packages, priority, sender): """Reconfigure already installed packages. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :param packages: List of package names which should be reconfigure. :param priority: The minimum debconf priority of question to be displayed. Can be of value "low", "medium", "high", "critical", "default". :type packages: as :type priority: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("Reconfigure() was called: %s" % " ".join(packages)) return self._create_trans(enums.ROLE_RECONFIGURE, sender, packages=[[], packages, [], [], [], []], kwargs={"priority": priority}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="sssasss", out_signature="s", sender_keyword="sender") def AddRepository(self, src_type, uri, dist, comps, comment, sourcesfile, sender): """Add given repository to the sources list. Requires the ``org.debian.apt.change-repositories`` :ref:`PolicyKit privilege `. :param src_type: The type of the repository (deb, deb-src). :param uri: The main repository URI (e.g. http://archive.ubuntu.com/ubuntu) :param dist: The distribution to use (e.g. stable or lenny-backports). :param comps: List of components (e.g. main, restricted). :param comment: A comment which should be added to the sources.list. :param sourcesfile: (Optoinal) filename in sources.list.d. :type src_type: s :type uri: s :type dist: s :type comps: as :type comment: s :type sourcesfile: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("AddRepository() was called: type='%s' uri='%s' " "dist='%s' comps='%s' comment='%s' sourcesfile='%s'", src_type, uri, dist, comps, comment, sourcesfile) return self._create_trans(enums.ROLE_ADD_REPOSITORY, sender, kwargs={"src_type": src_type, "uri": uri, "dist": dist, "comps": comps, "comment": comment, "sourcesfile": sourcesfile}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="s", out_signature="s", sender_keyword="sender") def EnableDistroComponent(self, component, sender): """Enable the component in the distribution repositories. This will not affect third-party repositories. The repositories of a distribution are often separated into different components because of policy reasons. E.g. Debian uses main for DFSG-free software and non-free for re-distributable but not free in the sense of the Debian Free Software Guidelines. Requires the ``org.debian.apt.change-repositories`` :ref:`PolicyKit privilege `. :param component: The component, e,g, main or non-free. :type component: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("EnableComponent() was called: component='%s' ", component) return self._create_trans(enums.ROLE_ENABLE_DISTRO_COMP, sender, kwargs={"component": component}) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="as", sender_keyword="sender") def GetTrustedVendorKeys(self, sender): """Get the list of the installed vendor keys which are used to authenticate packages. Requires the ``org.debian.apt.get-trusted-vendor-keys`` :ref:`PolicyKit privilege `. :returns: Fingerprints of all installed keys. """ log.info("GetTrustedVendorKeys() was called") return self._get_trusted_vendor_keys(sender) @inline_callbacks def _get_trusted_vendor_keys(self, sender): action = policykit1.PK_ACTION_GET_TRUSTED_VENDOR_KEYS yield policykit1.check_authorization_by_name(sender, action, bus=self.bus) fingerprints = self.worker.get_trusted_vendor_keys() return_value(fingerprints) # pylint: disable-msg=C0103,C0322 @dbus.service.method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="sas") def GetActiveTransactions(self): """Return the currently running transaction and the list of queued transactions. """ log.debug("GetActiveTransactions() was called") queued = [trans.tid for trans in self.queue.items] if self.queue.worker.trans: current = self.queue.worker.trans.tid else: current = "" return current, queued # pylint: disable-msg=C0103,C0322 @dbus.service.method(APTDAEMON_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="caller_name") def Quit(self, caller_name): """Request a shutdown of the daemon.""" log.info("Quitting was requested") log.debug("Quitting main loop...") mainloop.quit() log.debug("Exit") # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(APTDAEMON_DBUS_INTERFACE, in_signature="sss", out_signature="s", sender_keyword="sender") def AddLicenseKey(self, pkg_name, json_token, server_name, sender): """Install a license key to use a piece of proprietary software. Requires the ``org.debian.apt.install-or-remove-packages`` :ref:`PolicyKit privilege `. :param pkg_name: The name of the package which requires the license :type pkg_name: s :param json_token: The oauth token to use with the server in json format :type pkg_name: s :param server_name: The name of the server to use (ubuntu-production, ubuntu-staging) :type pkg_name: s :returns: The D-Bus path of the new transaction object which performs this action. """ log.info("AddLicenseKey() was called") return self._create_trans(enums.ROLE_ADD_LICENSE_KEY, sender, kwargs={'pkg_name': pkg_name, 'json_token': json_token, 'server_name': server_name}) @inline_callbacks def _set_property(self, iface, name, value, sender): """Helper to set a property on the properties D-Bus interface.""" action = policykit1.PK_ACTION_CHANGE_CONFIG yield policykit1.check_authorization_by_name(sender, action, bus=self.bus) if iface == APTDAEMON_DBUS_INTERFACE: if name == "PopConParticipation": self.worker.set_config(name, dbus.Boolean(value)) elif name == "AutoUpdateInterval": self.worker.set_config(name, dbus.Int32(value), "10periodic") elif name == "AutoDownload": self.worker.set_config(name, dbus.Boolean(value), "10periodic") elif name == "AutoCleanInterval": self.worker.set_config(name, dbus.Int32(value), "10periodic") elif name == "UnattendedUpgrade": self.worker.set_config(name, dbus.Boolean(value), "10periodic") else: raise dbus.exceptions.DBusException("Unknown or read only " "property: %s" % name) else: raise dbus.exceptions.DBusException("Unknown interface: %s" % iface) def _check_package_names(self, pkg_names): """Check if the package names are valid. Otherwise raise an exception. """ for fullname in pkg_names: name, version, release = split_package_id(fullname) if not re.match(REGEX_VALID_PACKAGENAME, name): raise errors.AptDaemonError("%s isn't a valid package name" % name) if (version is not None and not re.match(REGEX_VALID_VERSION, version)): raise errors.AptDaemonError("%s isn't a valid version" % version) if (release is not None and not re.match(REGEX_VALID_RELEASE, release)): raise errors.AptDaemonError("%s isn't a valid release" % release) def _get_properties(self, iface): """Helper get the properties of a D-Bus interface.""" if iface == APTDAEMON_DBUS_INTERFACE: return { "AutoUpdateInterval": dbus.Int32( self.worker.get_config("AutoUpdateInterval")), "AutoDownload": dbus.Boolean( self.worker.get_config("AutoDownload")), "AutoCleanInterval": dbus.Int32( self.worker.get_config("AutoCleanInterval")), "UnattendedUpgrade": dbus.Int32( self.worker.get_config("UnattendedUpgrade")), "PopConParticipation": dbus.Boolean( self.worker.get_config("PopConParticipation")), "RebootRequired": dbus.Boolean( self.worker.is_reboot_required())} else: return {} def _sigquit(self, data): """Internal callback for the quit signal.""" self.Quit(None) def _check_for_inactivity(self): """Shutdown the daemon if it has been inactive for time specified in APTDAEMON_IDLE_TIMEOUT. """ log.debug("Checking for inactivity") timestamp = self.queue.worker.last_action_timestamp if (not self.queue.worker.trans and not GLib.main_context_default().pending() and time.time() - timestamp > APTDAEMON_IDLE_TIMEOUT and not self.queue): log.info("Quitting due to inactivity") self.Quit(None) return False return True def get_dbus_string(text, encoding="UTF-8"): """Convert the given string or unicode object to a dbus.String.""" try: return dbus.String(text) except UnicodeDecodeError: return dbus.String(text.decode(encoding, "ignore")) def main(): """Allow to run the daemon from the command line.""" parser = OptionParser() parser.add_option("-t", "--disable-timeout", default=False, action="store_true", dest="disable_timeout", help=_("Do not shutdown the daemon because of " "inactivity")) parser.add_option("", "--disable-plugins", default=False, action="store_true", dest="disable_plugins", help=_("Do not load any plugins")) parser.add_option("-d", "--debug", default=False, action="store_true", dest="debug", help=_("Show internal processing " "information")) parser.add_option("-r", "--replace", default=False, action="store_true", dest="replace", help=_("Quit and replace an already running " "daemon")) parser.add_option("", "--session-bus", default=False, action="store_true", dest="session_bus", help=_("Listen on the DBus session bus (Only required " "for testing")) parser.add_option("", "--chroot", default=None, action="store", type="string", dest="chroot", help=_("Perform operations in the given " "chroot")) parser.add_option("-p", "--profile", default=False, action="store", type="string", dest="profile", help=_("Store profile stats in the specified " "file")) parser.add_option("--dummy", default=False, action="store_true", dest="dummy", help=_("Do not make any changes to the system (Only " "of use to developers)")) options, args = parser.parse_args() if options.debug is True: log.setLevel(logging.DEBUG) else: log.setLevel(logging.INFO) _console_handler.setLevel(logging.INFO) if options.session_bus: bus = dbus.SessionBus() else: bus = None daemon = AptDaemon(options, bus=bus) if options.profile: import profile profiler = profile.Profile() profiler.runcall(daemon.run) profiler.dump_stats(options.profile) profiler.print_stats() else: daemon.run() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/crash.py0000644000000000000000000000546612352743243016306 0ustar 00000000000000"""Apport integration to provide better problem reports.""" # Copyright (C) 2010 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " __all__ = ("create_report") import os import apport import apport.fileutils import apt_pkg from . import enums def create_report(error, traceback, trans=None): """Create an apport problem report for a given crash. :param error: The summary of the error. :param traceback: The traceback of the exception. :param trans: The optional transaction in which the crash occured. """ if not apport.packaging.enabled() or os.getcwd() != "/": return uid = 0 report = apport.Report("Crash") report["Title"] = error package = "aptdaemon" try: package_version = apport.packaging.get_version(package) except ValueError as e: if 'does not exist' in e.message: package_version = 'unknown' report['Package'] = '%s %s' % (package, package_version) report["SourcePackage"] = "aptdaemon" report["Traceback"] = traceback report["ExecutablePath"] = "/usr/sbin/aptd" report.add_os_info() # Attach information about the transaction if trans: report["Annotation"] = enums.get_role_error_from_enum(trans.role) report["TransactionRole"] = trans.role report["TransactionPackages"] = str([list(l) for l in trans.packages]) report["TransactionDepends"] = str([list(l) for l in trans.depends]) report["TransactionKwargs"] = str(trans.kwargs) report["TransactionLocale"] = trans.locale report["TransactionOutput"] = trans.output report["TransactionErrorCode"] = trans._error_property[0] report["TransactionErrorDetails"] = trans._error_property[1] uid = os.path.basename(trans.tid) # Write report report_path = apport.fileutils.make_report_path(report, uid) if not os.path.exists(report_path): report.write(open(report_path, 'wb')) if __name__ == "__main__": apt_pkg.init_config() create_report('test', 'testtrace') # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/debconf.py0000644000000000000000000001436612375366203016607 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """ Integration of debconf on the client side Provides the DebconfProxy class which allows to run the debconf frontend as normal user by connecting to the root running debconf through the socket of the passthrough frontend. """ # Copyright (C) 2009 Sebastian Heinlein # Copyright (C) 2009 Michael Vogt # # 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. __all__ = ("DebconfProxy",) import copy import logging import os import os.path import socket import subprocess import tempfile import sys from gi.repository import GLib log = logging.getLogger("AptClient.DebconfProxy") class DebconfProxy(object): """The DebconfProxy class allows to run the debconf frontend as normal user by connecting to the root debconf through the socket of the passthrough frontend. """ def __init__(self, frontend="gnome", socket_path=None): """Initialize a new DebconfProxy instance. Keyword arguments: frontend -- the to be used debconf frontend (defaults to gnome) socket_path -- the path to the socket of the passthrough frontend. Will be created if not specified """ self.socket_path = socket_path self.temp_dir = None if socket_path is None: self.temp_dir = tempfile.mkdtemp(prefix="aptdaemon-") self.socket_path = os.path.join(self.temp_dir, "debconf.socket") log.debug("debconf socket: %s" % self.socket_path) self.socket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) self.socket.bind(self.socket_path) self.frontend = frontend self._listener_id = None self._active_conn = None self._watch_ids = [] def _get_debconf_env(self): """Returns a dictonary of the environment variables required by the debconf frontend. """ env = copy.copy(os.environ) env["DEBCONF_DB_REPLACE"] = "configdb" env["DEBCONF_DB_OVERRIDE"] = "Pipe{infd:none outfd:none}" env["DEBIAN_FRONTEND"] = self.frontend if log.level == logging.DEBUG: env["DEBCONF_DEBUG"] = "." return env def start(self): """Start listening on the socket.""" logging.debug("debconf.start()") self.socket.listen(1) self._listener_id = GLib.io_add_watch( self.socket, GLib.PRIORITY_DEFAULT_IDLE, GLib.IO_IN, self._accept_connection) def stop(self): """Stop listening on the socket.""" logging.debug("debconf.stop()") self.socket.close() if self._listener_id is not None: GLib.source_remove(self._listener_id) self._listener_id = None if self.temp_dir: try: os.remove(self.socket_path) os.rmdir(self.temp_dir) except OSError: pass def _accept_connection(self, socket, condition): if self._active_conn: log.debug("Delaying connection") return True conn, addr = socket.accept() self._active_conn = conn mask = GLib.IO_IN | GLib.IO_ERR | GLib.IO_HUP | GLib.IO_NVAL self.helper = subprocess.Popen(["debconf-communicate"], stdin=subprocess.PIPE, stdout=subprocess.PIPE, env=self._get_debconf_env()) GLib.io_add_watch(conn, GLib.PRIORITY_HIGH_IDLE, mask, self._copy_conn, self.helper.stdin) GLib.io_add_watch(self.helper.stdout, GLib.PRIORITY_HIGH_IDLE, mask, self._copy_stdout, conn) return True def _copy_stdout(self, source, condition, conn): """Callback to copy data from the stdout of debconf-communicate to the passthrough frontend.""" logging.debug("_copy_stdout") try: debconf_data = source.readline() if debconf_data: log.debug("From debconf: %s", debconf_data) conn.send(debconf_data) return True except (socket.error, IOError) as error: log.debug(error) # error, stop listening log.debug("Stop reading from stdout") self.helper.stdout.close() self._active_conn.close() self._active_conn = None return False def _copy_conn(self, source, condition, stdin): """Callback to copy data from the passthrough frontend to stdin of debconf-communicate.""" logging.debug("_copy_conn") try: socket_data = source.recv(1024) if socket_data: log.debug("From socket: %s", socket_data) stdin.write(socket_data) stdin.flush() return True except (socket.error, IOError) as error: log.debug(error) # error, stop listening log.debug("Stop reading from conn") self.helper.stdin.close() return False def _test(): """Run the DebconfProxy from the command line for testing purposes. You have to execute the following commands before in a separate terminal: $ echo "fset debconf/frontend seen false" | debconf-communicate $ export DEBCONF_PIPE=/tmp/debconf.socket $ dpkg-reconfigure debconf -f passthrough """ logging.basicConfig(level=logging.DEBUG) socket_path = "/tmp/debconf.socket" if os.path.exists(socket_path): os.remove(socket_path) proxy = DebconfProxy("gnome", socket_path) proxy.start() loop = GLib.MainLoop() loop.run() if __name__ == "__main__": _test() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/enums.py0000644000000000000000000010053512352743243016326 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """enums - Enumerates for apt daemon dbus messages""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __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 aptdaemon-1.1.1+bzr982/aptdaemon/errors.py0000644000000000000000000001643412067637072016524 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Exception classes""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("AptDaemonError", "ForeignTransaction", "InvalidMetaDataError", "InvalidProxyError", "RepositoryInvalidError", "TransactionAlreadyRunning", "TransactionCancelled", "TransactionAlreadySimulating", "TransactionFailed", "TransactionRoleAlreadySet", "NotAuthorizedError", "convert_dbus_exception", "get_native_exception") import inspect from functools import wraps import sys import dbus import aptdaemon.enums PY3K = sys.version_info.major > 2 class AptDaemonError(dbus.DBusException): """Internal error of the aptdaemon""" _dbus_error_name = "org.debian.apt" def __init__(self, message=""): message = _convert_unicode(message) dbus.DBusException.__init__(self, message) self._message = message def get_dbus_message(self): """Overwrite the DBusException method, since it calls Exception.__str__() internally which doesn't support unicode or or non-ascii encodings.""" if PY3K: return dbus.DBusException.get_dbus_message(self) else: return self._message.encode("UTF-8") class TransactionRoleAlreadySet(AptDaemonError): """Error if a transaction has already been configured.""" _dbus_error_name = "org.debian.apt.TransactionRoleAlreadySet" class TransactionAlreadyRunning(AptDaemonError): """Error if a transaction has already been configured.""" _dbus_error_name = "org.debian.apt.TransactionAlreadyRunning" class TransactionAlreadySimulating(AptDaemonError): """Error if a transaction should be simulated but a simulation is already processed. """ _dbus_error_name = "org.debian.apt.TransactionAlreadySimulating" class ForeignTransaction(AptDaemonError): """Error if a transaction was initialized by a different user.""" _dbus_error_name = "org.debian.apt.TransactionAlreadyRunning" class TransactionFailed(AptDaemonError): """Internal error if a transaction could not be processed successfully.""" _dbus_error_name = "org.debian.apt.TransactionFailed" def __init__(self, code, details="", *args): if not args: # Avoid string replacements if not used details = details.replace("%", "%%") args = tuple([_convert_unicode(arg) for arg in args]) details = _convert_unicode(details) self.code = code self.details = details self.details_args = args AptDaemonError.__init__(self, "%s: %s" % (code, details % args)) def __unicode__(self): return "Transaction failed: %s\n%s" % \ (aptdaemon.enums.get_error_string_from_enum(self.code), self.details) def __str__(self): if PY3K: return self.__unicode__() else: return self.__unicode__().encode("utf-8") class InvalidMetaDataError(AptDaemonError): """Invalid meta data given""" _dbus_error_name = "org.debian.apt.InvalidMetaData" class InvalidProxyError(AptDaemonError): """Invalid proxy given""" _dbus_error_name = "org.debian.apt.InvalidProxy" def __init__(self, proxy): AptDaemonError.__init__(self, "InvalidProxyError: %s" % proxy) class TransactionCancelled(AptDaemonError): """Internal error if a transaction was cancelled.""" _dbus_error_name = "org.debian.apt.TransactionCancelled" class RepositoryInvalidError(AptDaemonError): """The added repository is invalid""" _dbus_error_name = "org.debian.apt.RepositoryInvalid" class PolicyKitError(dbus.DBusException): pass class NotAuthorizedError(PolicyKitError): _dbus_error_name = "org.freedesktop.PolicyKit.Error.NotAuthorized" def __init__(self, subject, action_id): dbus.DBusException.__init__(self, "%s: %s" % (subject, action_id)) self.action_id = action_id self.subject = subject class AuthorizationFailed(NotAuthorizedError): _dbus_error_name = "org.freedesktop.PolicyKit.Error.Failed" def convert_dbus_exception(func): """A decorator which maps a raised DBbus exception to a native one. This decorator requires introspection to the decorated function. So it cannot be used on any already decorated method. """ argnames, varargs, kwargs, defaults = inspect.getargspec(func) @wraps(func) def _convert_dbus_exception(*args, **kwargs): try: error_handler = kwargs["error_handler"] except KeyError: _args = list(args) try: index = argnames.index("error_handler") error_handler = _args[index] except (IndexError, ValueError): pass else: _args[index] = lambda err: error_handler( get_native_exception(err)) args = tuple(_args) else: kwargs["error_handler"] = lambda err: error_handler( get_native_exception(err)) try: return func(*args, **kwargs) except dbus.exceptions.DBusException as error: raise get_native_exception(error) return _convert_dbus_exception def get_native_exception(error): """Map a DBus exception to a native one. This allows to make use of try/except on the client side without having to check for the error name. """ if not isinstance(error, dbus.DBusException): return error dbus_name = error.get_dbus_name() dbus_msg = error.get_dbus_message() if dbus_name == TransactionFailed._dbus_error_name: return TransactionFailed(*dbus_msg.split(":", 1)) elif dbus_name == AuthorizationFailed._dbus_error_name: return AuthorizationFailed(*dbus_msg.split(":", 1)) elif dbus_name == NotAuthorizedError._dbus_error_name: return NotAuthorizedError(*dbus_msg.split(":", 1)) for error_cls in [AptDaemonError, TransactionRoleAlreadySet, TransactionAlreadyRunning, ForeignTransaction, InvalidMetaDataError, InvalidProxyError, TransactionCancelled, RepositoryInvalidError]: if dbus_name == error_cls._dbus_error_name: return error_cls(dbus_msg) return error def _convert_unicode(text, encoding="UTF-8"): """Always return an unicode.""" if PY3K and not isinstance(text, str): text = str(text, encoding, errors="ignore") elif not PY3K and not isinstance(text, unicode): text = unicode(text, encoding, errors="ignore") return text # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/gtk3widgets.py0000644000000000000000000013607712430176750017450 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """ This module provides widgets to use aptdaemon in a GTK application. """ # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " __all__ = ("AptConfigFileConflictDialog", "AptCancelButton", "AptConfirmDialog", "AptProgressDialog", "AptTerminalExpander", "AptStatusIcon", "AptRoleIcon", "AptStatusAnimation", "AptRoleLabel", "AptStatusLabel", "AptMediumRequiredDialog", "AptMessageDialog", "AptErrorDialog", "AptProgressBar", "DiffView", "AptTerminal" ) import difflib import gettext import os import pty import re import gi gi.require_version("Vte", "2.91") import apt_pkg from gi.repository import GObject from gi.repository import GLib from gi.repository import Gdk from gi.repository import Gtk from gi.repository import Pango from gi.repository import Vte from . import client from .enums import * from defer import inline_callbacks from defer.utils import deferable _ = lambda msg: gettext.dgettext("aptdaemon", msg) (COLUMN_ID, COLUMN_PACKAGE) = list(range(2)) class AptStatusIcon(Gtk.Image): """ Provides a Gtk.Image which shows an icon representing the status of a aptdaemon transaction """ def __init__(self, transaction=None, size=Gtk.IconSize.DIALOG): Gtk.Image.__init__(self) # note: icon_size is a property which you can't set with GTK 2, so use # a different name self._icon_size = size self.icon_name = None self._signals = [] self.set_alignment(0, 0) if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect to the given transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append(transaction.connect("status-changed", self._on_status_changed)) def set_icon_size(self, size): """Set the icon size to gtk stock icon size value""" self._icon_size = size def _on_status_changed(self, transaction, status): """Set the status icon according to the changed status""" icon_name = get_status_icon_name_from_enum(status) if icon_name is None: icon_name = Gtk.STOCK_MISSING_IMAGE if icon_name != self.icon_name: self.set_from_icon_name(icon_name, self._icon_size) self.icon_name = icon_name class AptRoleIcon(AptStatusIcon): """ Provides a Gtk.Image which shows an icon representing the role of an aptdaemon transaction """ def set_transaction(self, transaction): for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append(transaction.connect("role-changed", self._on_role_changed)) self._on_role_changed(transaction, transaction.role) def _on_role_changed(self, transaction, role_enum): """Show an icon representing the role""" icon_name = get_role_icon_name_from_enum(role_enum) if icon_name is None: icon_name = Gtk.STOCK_MISSING_IMAGE if icon_name != self.icon_name: self.set_from_icon_name(icon_name, self._icon_size) self.icon_name = icon_name class AptStatusAnimation(AptStatusIcon): """ Provides a Gtk.Image which shows an animation representing the transaction status """ def __init__(self, transaction=None, size=Gtk.IconSize.DIALOG): AptStatusIcon.__init__(self, transaction, size) self.animation = [] self.ticker = 0 self.frame_counter = 0 self.iter = 0 name = get_status_animation_name_from_enum(STATUS_WAITING) fallback = get_status_icon_name_from_enum(STATUS_WAITING) self.set_animation(name, fallback) def set_animation(self, name, fallback=None, size=None): """Show and start the animation of the given name and size""" if name == self.icon_name: return if size is not None: self._icon_size = size self.stop_animation() animation = [] (width, height) = Gtk.icon_size_lookup(self._icon_size) theme = Gtk.IconTheme.get_default() if name is not None and theme.has_icon(name): pixbuf = theme.load_icon(name, width, 0) rows = pixbuf.get_height() / height cols = pixbuf.get_width() / width for r in range(rows): for c in range(cols): animation.append(pixbuf.subpixbuf(c * width, r * height, width, height)) if len(animation) > 0: self.animation = animation self.iter = 0 self.set_from_pixbuf(self.animation[0]) self.start_animation() else: self.set_from_pixbuf(pixbuf) self.icon_name = name elif fallback is not None and theme.has_icon(fallback): self.set_from_icon_name(fallback, self._icon_size) self.icon_name = fallback else: self.set_from_icon_name(Gtk.STOCK_MISSING_IMAGE) def start_animation(self): """Start the animation""" if self.ticker == 0: self.ticker = GLib.timeout_add(200, self._advance) def stop_animation(self): """Stop the animation""" if self.ticker != 0: GLib.source_remove(self.ticker) self.ticker = 0 def _advance(self): """ Show the next frame of the animation and stop the animation if the widget is no longer visible """ if self.get_property("visible") is False: self.ticker = 0 return False self.iter = self.iter + 1 if self.iter >= len(self.animation): self.iter = 0 self.set_from_pixbuf(self.animation[self.iter]) return True def _on_status_changed(self, transaction, status): """ Set the animation according to the changed status """ name = get_status_animation_name_from_enum(status) fallback = get_status_icon_name_from_enum(status) self.set_animation(name, fallback) class AptRoleLabel(Gtk.Label): """ Status label for the running aptdaemon transaction """ def __init__(self, transaction=None): GtkLabel.__init__(self) self.set_alignment(0, 0) self.set_ellipsize(Pango.EllipsizeMode.END) self.set_max_width_chars(15) self._signals = [] if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the status label to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._on_role_changed(transaction, transaction.role) self._signals.append(transaction.connect("role-changed", self._on_role_changed)) def _on_role_changed(self, transaction, role): """Set the role text.""" self.set_markup(get_role_localised_present_from_enum(role)) class AptStatusLabel(Gtk.Label): """ Status label for the running aptdaemon transaction """ def __init__(self, transaction=None): Gtk.Label.__init__(self) self.set_alignment(0, 0) self.set_ellipsize(Pango.EllipsizeMode.END) self.set_max_width_chars(15) self._signals = [] if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the status label to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append( transaction.connect("status-changed", self._on_status_changed)) self._signals.append( transaction.connect("status-details-changed", self._on_status_details_changed)) def _on_status_changed(self, transaction, status): """Set the status text according to the changed status""" self.set_markup(get_status_string_from_enum(status)) def _on_status_details_changed(self, transaction, text): """Set the status text to the one reported by apt""" self.set_markup(text) class AptProgressBar(Gtk.ProgressBar): """ Provides a Gtk.Progress which represents the progress of an aptdaemon transactions """ def __init__(self, transaction=None): Gtk.ProgressBar.__init__(self) self.set_ellipsize(Pango.EllipsizeMode.END) self.set_text(" ") self.set_pulse_step(0.05) self._signals = [] if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the progress bar to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append( transaction.connect("finished", self._on_finished)) self._signals.append( transaction.connect("progress-changed", self._on_progress_changed)) self._signals.append(transaction.connect("progress-details-changed", self._on_progress_details)) def _on_progress_changed(self, transaction, progress): """ Update the progress according to the latest progress information """ if progress > 100: self.pulse() else: self.set_fraction(progress / 100.0) def _on_progress_details(self, transaction, items_done, items_total, bytes_done, bytes_total, speed, eta): """ Update the progress bar text according to the latest progress details """ if items_total == 0 and bytes_total == 0: self.set_text(" ") return if speed != 0: self.set_text(_("Downloaded %sB of %sB at %sB/s") % (client.get_size_string(bytes_done), client.get_size_string(bytes_total), client.get_size_string(speed))) else: self.set_text(_("Downloaded %sB of %sB") % (client.get_size_string(bytes_done), client.get_size_string(bytes_total))) def _on_finished(self, transaction, exit): """Set the progress to 100% when the transaction is complete""" self.set_fraction(1) class AptDetailsExpander(Gtk.Expander): def __init__(self, transaction=None, terminal=True): Gtk.Expander.__init__(self, label=_("Details")) self.show_terminal = terminal self._signals = [] self.set_sensitive(False) self.set_expanded(False) if self.show_terminal: self.terminal = AptTerminal() else: self.terminal = None self.download_view = AptDownloadsView() self.download_scrolled = Gtk.ScrolledWindow() self.download_scrolled.set_shadow_type(Gtk.ShadowType.ETCHED_IN) self.download_scrolled.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC) self.download_scrolled.add(self.download_view) hbox = Gtk.HBox() hbox.pack_start(self.download_scrolled, True, True, 0) if self.terminal: hbox.pack_start(self.terminal, True, True, 0) self.add(hbox) if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the status label to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals.append( transaction.connect("status-changed", self._on_status_changed)) self._signals.append( transaction.connect("terminal-attached-changed", self._on_terminal_attached_changed)) if self.terminal: self.terminal.set_transaction(transaction) self.download_view.set_transaction(transaction) def _on_status_changed(self, trans, status): if status in (STATUS_DOWNLOADING, STATUS_DOWNLOADING_REPO): self.set_sensitive(True) self.download_scrolled.show() if self.terminal: self.terminal.hide() elif status == STATUS_COMMITTING: self.download_scrolled.hide() if self.terminal: self.terminal.show() self.set_sensitive(True) else: self.set_expanded(False) self.set_sensitive(False) else: self.download_scrolled.hide() if self.terminal: self.terminal.hide() self.set_sensitive(False) self.set_expanded(False) def _on_terminal_attached_changed(self, transaction, attached): """Connect the terminal to the pty device""" if attached and self.terminal: self.set_sensitive(True) class AptTerminal(Vte.Terminal): def __init__(self, transaction=None): Vte.Terminal.__init__(self) self._signals = [] self._master, self._slave = pty.openpty() self._ttyname = os.ttyname(self._slave) self.set_size(80, 24) self.set_pty(Vte.Pty.new_foreign_sync(self._master)) if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the status label to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals.append( transaction.connect("terminal-attached-changed", self._on_terminal_attached_changed)) self._transaction = transaction self._transaction.set_terminal(self._ttyname) def _on_terminal_attached_changed(self, transaction, attached): """Show the terminal""" self.set_sensitive(attached) class AptCancelButton(Gtk.Button): """ Provides a Gtk.Button which allows to cancel a running aptdaemon transaction """ def __init__(self, transaction=None): Gtk.Button.__init__(self) self.set_use_stock(True) self.set_label(Gtk.STOCK_CANCEL) self.set_sensitive(True) self._signals = [] if transaction is not None: self.set_transaction(transaction) def set_transaction(self, transaction): """Connect the status label to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append( transaction.connect("finished", self._on_finished)) self._signals.append( transaction.connect("cancellable-changed", self._on_cancellable_changed)) self.connect("clicked", self._on_clicked, transaction) def _on_cancellable_changed(self, transaction, cancellable): """ Enable the button if cancel is allowed and disable it in the other case """ self.set_sensitive(cancellable) def _on_finished(self, transaction, status): self.set_sensitive(False) def _on_clicked(self, button, transaction): transaction.cancel() self.set_sensitive(False) class AptDownloadsView(Gtk.TreeView): """A Gtk.TreeView which displays the progress and status of each dowload of a transaction. """ COL_TEXT, COL_PROGRESS, COL_URI = list(range(3)) def __init__(self, transaction=None): Gtk.TreeView.__init__(self) model = Gtk.ListStore(GObject.TYPE_STRING, GObject.TYPE_INT, GObject.TYPE_STRING) self.set_model(model) self.props.headers_visible = False self.set_rules_hint(True) self._download_map = {} self._signals = [] if transaction is not None: self.set_transaction(transaction) cell_uri = Gtk.CellRendererText() cell_uri.props.ellipsize = Pango.EllipsizeMode.END column_download = Gtk.TreeViewColumn(_("File")) column_download.pack_start(cell_uri, True) column_download.add_attribute(cell_uri, "markup", self.COL_TEXT) cell_progress = Gtk.CellRendererProgress() # TRANSLATORS: header of the progress download column column_progress = Gtk.TreeViewColumn(_("%")) column_progress.pack_start(cell_progress, True) column_progress.set_cell_data_func(cell_progress, self._data_progress, None) self.append_column(column_progress) self.append_column(column_download) self.set_tooltip_column(self.COL_URI) def set_transaction(self, transaction): """Connect the download view to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append(transaction.connect("progress-download-changed", self._on_download_changed)) def _on_download_changed(self, transaction, uri, status, desc, full_size, downloaded, message): """Callback for a changed download progress.""" try: progress = int(downloaded * 100 / full_size) except ZeroDivisionError: progress = -1 if status == DOWNLOAD_DONE: progress = 100 if progress > 100: progress = 100 text = desc[:] text += "\n" # TRANSLATORS: %s is the full size in Bytes, e.g. 198M if status == DOWNLOAD_FETCHING: text += (_("Downloaded %sB of %sB") % (client.get_size_string(downloaded), client.get_size_string(full_size))) elif status == DOWNLOAD_DONE: if full_size != 0: text += (_("Downloaded %sB") % client.get_size_string(full_size)) else: text += _("Downloaded") else: text += get_download_status_from_enum(status) text += "" model = self.get_model() # LP: #1266844 - we don't know how this can happy, model # is never unset. but it does happen if not model: return try: iter = self._download_map[uri] except KeyError: # we we haven't seen the uri yet, add it now iter = model.append((text, progress, uri)) self._download_map[uri] = iter # and update the adj if needed adj = self.get_vadjustment() # this may be None (LP: #1024590) if adj: is_scrolled_down = ( adj.get_value() + adj.get_page_size() == adj.get_upper()) if is_scrolled_down: # If the treeview was scrolled to the end, do this again # after appending a new item self.scroll_to_cell( model.get_path(iter), None, False, False, False) else: model.set_value(iter, self.COL_TEXT, text) model.set_value(iter, self.COL_PROGRESS, progress) def _data_progress(self, column, cell, model, iter, data): progress = model.get_value(iter, self.COL_PROGRESS) if progress == -1: cell.props.pulse = progress else: cell.props.value = progress class AptProgressDialog(Gtk.Dialog): """ Complete progress dialog for long taking aptdaemon transactions, which features a progress bar, cancel button, status icon and label """ __gsignals__ = {"finished": (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, ())} def __init__(self, transaction=None, parent=None, terminal=True, debconf=True): Gtk.Dialog.__init__(self, parent=parent) self._expanded_size = None self.debconf = debconf # Setup the dialog self.set_border_width(6) self.set_resizable(False) self.get_content_area().set_spacing(6) # Setup the cancel button self.button_cancel = AptCancelButton(transaction) self.get_action_area().pack_start(self.button_cancel, False, False, 0) # Setup the status icon, label and progressbar hbox = Gtk.HBox() hbox.set_spacing(12) hbox.set_border_width(6) self.icon = AptRoleIcon() hbox.pack_start(self.icon, False, True, 0) vbox = Gtk.VBox() vbox.set_spacing(12) self.label_role = Gtk.Label() self.label_role.set_alignment(0, 0) vbox.pack_start(self.label_role, False, True, 0) vbox_progress = Gtk.VBox() vbox_progress.set_spacing(6) self.progress = AptProgressBar() vbox_progress.pack_start(self.progress, False, True, 0) self.label = AptStatusLabel() self.label._on_status_changed(None, STATUS_WAITING) vbox_progress.pack_start(self.label, False, True, 0) vbox.pack_start(vbox_progress, False, True, 0) hbox.pack_start(vbox, True, True, 0) self.expander = AptDetailsExpander(terminal=terminal) self.expander.connect("notify::expanded", self._on_expanded) vbox.pack_start(self.expander, True, True, 0) self.get_content_area().pack_start(hbox, True, True, 0) self._transaction = None self._signals = [] self.set_title("") self.realize() self.progress.set_size_request(350, -1) functions = Gdk.WMFunction.MOVE | Gdk.WMFunction.RESIZE try: self.get_window().set_functions(functions) except TypeError: # workaround for older and broken GTK typelibs self.get_window().set_functions(Gdk.WMFunction(functions)) if transaction is not None: self.set_transaction(transaction) # catch ESC and behave as if cancel was clicked self.connect("delete-event", self._on_dialog_delete_event) def _on_dialog_delete_event(self, dialog, event): self.button_cancel.clicked() return True def _on_expanded(self, expander, param): # Make the dialog resizable if the expander is expanded # try to restore a previous size if not expander.get_expanded(): self._expanded_size = (self.expander.terminal.get_visible(), self.get_size()) self.set_resizable(False) elif self._expanded_size: self.set_resizable(True) term_visible, (stored_width, stored_height) = self._expanded_size # Check if the stored size was for the download details or # the terminal widget if term_visible != self.expander.terminal.get_visible(): # The stored size was for the download details, so we need # get a new size for the terminal widget self._resize_to_show_details() else: self.resize(stored_width, stored_height) else: self.set_resizable(True) self._resize_to_show_details() def _resize_to_show_details(self): """Resize the window to show the expanded details. Unfortunately the expander only expands to the preferred size of the child widget (e.g showing all 80x24 chars of the Vte terminal) if the window is rendered the first time and the terminal is also visible. If the expander is expanded afterwards the window won't change its size anymore. So we have to do this manually. See LP#840942 """ win_width, win_height = self.get_size() exp_width = self.expander.get_allocation().width exp_height = self.expander.get_allocation().height if self.expander.terminal.get_visible(): terminal_width = self.expander.terminal.get_char_width() * 80 terminal_height = self.expander.terminal.get_char_height() * 24 self.resize(terminal_width - exp_width + win_width, terminal_height - exp_height + win_height) else: self.resize(win_width + 100, win_height + 200) def _on_status_changed(self, trans, status): # Also resize the window if we switch from download details to # the terminal window if (status == STATUS_COMMITTING and self.expander.terminal.get_visible()): self._resize_to_show_details() @deferable def run(self, attach=False, close_on_finished=True, show_error=True, reply_handler=None, error_handler=None): """Run the transaction and show the progress in the dialog. Keyword arguments: attach -- do not start the transaction but instead only monitor an already running one close_on_finished -- if the dialog should be closed when the transaction is complete show_error -- show a dialog with the error message """ return self._run(attach, close_on_finished, show_error, reply_handler, error_handler) @inline_callbacks def _run(self, attach, close_on_finished, show_error, reply_handler, error_handler): try: sig = self._transaction.connect("finished", self._on_finished, close_on_finished, show_error) self._signals.append(sig) if attach: yield self._transaction.sync() else: if self.debconf: yield self._transaction.set_debconf_frontend("gnome") yield self._transaction.run() self.show_all() except Exception as error: if error_handler: error_handler(error) else: raise else: if reply_handler: reply_handler() def _on_role_changed(self, transaction, role_enum): """Show the role of the transaction in the dialog interface""" role = get_role_localised_present_from_enum(role_enum) self.set_title(role) self.label_role.set_markup("%s" % role) def set_transaction(self, transaction): """Connect the dialog to the given aptdaemon transaction""" for sig in self._signals: GLib.source_remove(sig) self._signals = [] self._signals.append( transaction.connect_after("status-changed", self._on_status_changed)) self._signals.append(transaction.connect("role-changed", self._on_role_changed)) self._signals.append(transaction.connect("medium-required", self._on_medium_required)) self._signals.append(transaction.connect("config-file-conflict", self._on_config_file_conflict)) self._on_role_changed(transaction, transaction.role) self.progress.set_transaction(transaction) self.icon.set_transaction(transaction) self.label.set_transaction(transaction) self.expander.set_transaction(transaction) self._transaction = transaction def _on_medium_required(self, transaction, medium, drive): dialog = AptMediumRequiredDialog(medium, drive, self) res = dialog.run() dialog.hide() if res == Gtk.ResponseType.OK: self._transaction.provide_medium(medium) else: self._transaction.cancel() def _on_config_file_conflict(self, transaction, old, new): dialog = AptConfigFileConflictDialog(old, new, self) res = dialog.run() dialog.hide() if res == Gtk.ResponseType.YES: self._transaction.resolve_config_file_conflict(old, "replace") else: self._transaction.resolve_config_file_conflict(old, "keep") def _on_finished(self, transaction, status, close, show_error): if close: self.hide() if status == EXIT_FAILED and show_error: err_dia = AptErrorDialog(self._transaction.error, self) err_dia.run() err_dia.hide() self.emit("finished") class _ExpandableDialog(Gtk.Dialog): """Dialog with an expander.""" def __init__(self, parent=None, stock_type=None, expanded_child=None, expander_label=None, title=None, message=None, buttons=None): """Return an _AptDaemonDialog instance. Keyword arguments: parent -- set the dialog transient for the given Gtk.Window stock_type -- type of the Dialog, defaults to Gtk.STOCK_DIALOG_QUESTION expanded_child -- Widget which should be expanded expander_label -- label for the expander title -- a news header like title of the dialog message -- the message which should be shown in the dialog buttons -- tuple containing button text/reponse id pairs, defaults to a close button """ if not buttons: buttons = (Gtk.STOCK_CLOSE, Gtk.ResponseType.CLOSE) Gtk.Dialog.__init__(self, parent=parent) self.set_title("") self.add_buttons(*buttons) self.set_resizable(False) self.set_border_width(6) self.get_content_area().set_spacing(12) if not stock_type: stock_type = Gtk.STOCK_DIALOG_QUESTION icon = Gtk.Image.new_from_stock(stock_type, Gtk.IconSize.DIALOG) icon.set_alignment(0, 0) hbox_base = Gtk.HBox() hbox_base.set_spacing(12) hbox_base.set_border_width(6) vbox_left = Gtk.VBox() vbox_left.set_spacing(12) hbox_base.pack_start(icon, False, True, 0) hbox_base.pack_start(vbox_left, True, True, 0) self.label = Gtk.Label() self.label.set_selectable(True) self.label.set_alignment(0, 0) self.label.set_line_wrap(True) vbox_left.pack_start(self.label, False, True, 0) self.get_content_area().pack_start(hbox_base, True, True, 0) # The expander widget self.expander = Gtk.Expander(label=expander_label) self.expander.set_spacing(6) self.expander.set_use_underline(True) self.expander.connect("notify::expanded", self._on_expanded) self._expanded_size = None vbox_left.pack_start(self.expander, True, True, 0) # Set some initial data text = "" if title: text = "%s" % title if message: if text: text += "\n\n" text += message self.label.set_markup(text) if expanded_child: self.expander.add(expanded_child) else: self.expander.set_sensitive(False) def _on_expanded(self, expander, param): if expander.get_expanded(): self.set_resizable(True) if self._expanded_size: # Workaround a random crash during progress dialog expanding # It seems that either the gtk.Window.get_size() method # doesn't always return a tuple or that the # gtk.Window.set_size() method doesn't correctly handle * # arguments correctly, see LP#898851 try: self.resize(self._expanded_size[0], self._expanded_size[1]) except (IndexError, TypeError): pass else: self._expanded_size = self.get_size() self.set_resizable(False) class AptMediumRequiredDialog(Gtk.MessageDialog): """Dialog to ask for medium change.""" def __init__(self, medium, drive, parent=None): Gtk.MessageDialog.__init__(self, parent=parent, type=Gtk.MessageType.INFO) # TRANSLATORS: %s represents the name of a CD or DVD text = _("CD/DVD '%s' is required") % medium # TRANSLATORS: %s is the name of the CD/DVD drive desc = _("Please insert the above CD/DVD into the drive '%s' to " "install software packages from it.") % drive self.set_markup("%s\n\n%s" % (text, desc)) self.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, _("C_ontinue"), Gtk.ResponseType.OK) self.set_default_response(Gtk.ResponseType.OK) class AptConfirmDialog(Gtk.Dialog): """Dialog to confirm the changes that would be required by a transaction. """ def __init__(self, trans, cache=None, parent=None): """Return an AptConfirmDialog instance. Keyword arguments: trans -- the transaction of which the dependencies should be shown cache -- an optional apt.cache.Cache() instance to provide more details about packages parent -- set the dialog transient for the given Gtk.Window """ Gtk.Dialog.__init__(self, parent=parent) self.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL) self.add_button(_("C_ontinue"), Gtk.ResponseType.OK) self.cache = cache self.trans = trans if isinstance(parent, Gdk.Window): self.realize() self.window.set_transient_for(parent) else: self.set_transient_for(parent) self.set_resizable(True) self.set_border_width(6) self.get_content_area().set_spacing(12) icon = Gtk.Image.new_from_stock(Gtk.STOCK_DIALOG_QUESTION, Gtk.IconSize.DIALOG) icon.set_alignment(0, 0) hbox_base = Gtk.HBox() hbox_base.set_spacing(12) hbox_base.set_border_width(6) vbox_left = Gtk.VBox() vbox_left.set_spacing(12) hbox_base.pack_start(icon, False, True, 0) hbox_base.pack_start(vbox_left, True, True, 0) self.label = Gtk.Label() self.label.set_selectable(True) self.label.set_alignment(0, 0) vbox_left.pack_start(self.label, False, True, 0) self.get_content_area().pack_start(hbox_base, True, True, 0) self.treestore = Gtk.TreeStore(GObject.TYPE_STRING) self.treeview = Gtk.TreeView.new_with_model(self.treestore) self.treeview.set_headers_visible(False) self.treeview.set_rules_hint(True) self.column = Gtk.TreeViewColumn() self.treeview.append_column(self.column) cell_icon = Gtk.CellRendererPixbuf() self.column.pack_start(cell_icon, False) self.column.set_cell_data_func(cell_icon, self.render_package_icon, None) cell_desc = Gtk.CellRendererText() self.column.pack_start(cell_desc, True) self.column.set_cell_data_func(cell_desc, self.render_package_desc, None) self.scrolled = Gtk.ScrolledWindow() self.scrolled.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self.scrolled.set_shadow_type(Gtk.ShadowType.ETCHED_IN) self.scrolled.add(self.treeview) vbox_left.pack_start(self.scrolled, True, True, 0) self.set_default_response(Gtk.ResponseType.CANCEL) def _show_changes(self): """Show a message and the dependencies in the dialog.""" self.treestore.clear() for index, msg in enumerate([_("Install"), _("Reinstall"), _("Remove"), _("Purge"), _("Upgrade"), _("Downgrade"), _("Skip upgrade")]): if self.trans.dependencies[index]: piter = self.treestore.append(None, ["%s" % msg]) for pkg in self.trans.dependencies[index]: for object in self.map_package(pkg): self.treestore.append(piter, [str(object)]) # If there is only one type of changes (e.g. only installs) expand the # tree # FIXME: adapt the title and message accordingly # FIXME: Should we have different modes? Only show dependencies, only # initial packages or both? msg = _("Please take a look at the list of changes below.") if len(self.treestore) == 1: filtered_store = self.treestore.filter_new( Gtk.TreePath.new_first()) self.treeview.expand_all() self.treeview.set_model(filtered_store) self.treeview.set_show_expanders(False) if self.trans.dependencies[PKGS_INSTALL]: title = _("Additional software has to be installed") elif self.trans.dependencies[PKGS_REINSTALL]: title = _("Additional software has to be re-installed") elif self.trans.dependencies[PKGS_REMOVE]: title = _("Additional software has to be removed") elif self.trans.dependencies[PKGS_PURGE]: title = _("Additional software has to be purged") elif self.trans.dependencies[PKGS_UPGRADE]: title = _("Additional software has to be upgraded") elif self.trans.dependencies[PKGS_DOWNGRADE]: title = _("Additional software has to be downgraded") elif self.trans.dependencies[PKGS_KEEP]: title = _("Updates will be skipped") if len(filtered_store) < 6: self.set_resizable(False) self.scrolled.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.NEVER) else: self.treeview.set_size_request(350, 200) else: title = _("Additional changes are required") self.treeview.set_size_request(350, 200) self.treeview.collapse_all() if self.trans.download: msg += "\n" msg += (_("%sB will be downloaded in total.") % client.get_size_string(self.trans.download)) if self.trans.space < 0: msg += "\n" msg += (_("%sB of disk space will be freed.") % client.get_size_string(self.trans.space)) elif self.trans.space > 0: msg += "\n" msg += (_("%sB more disk space will be used.") % client.get_size_string(self.trans.space)) self.label.set_markup("%s\n\n%s" % (title, msg)) def map_package(self, pkg): """Map a package to a different object type, e.g. applications and return a list of those. By default return the package itself inside a list. Override this method if you don't want to store package names in the treeview. """ return [pkg] def render_package_icon(self, column, cell, model, iter, data): """Data func for the Gtk.CellRendererPixbuf which shows the package. Override this method if you want to show custom icons for a package or map it to applications. """ path = model.get_path(iter) if path.get_depth() == 0: cell.props.visible = False else: cell.props.visible = True cell.props.icon_name = "applications-other" def render_package_desc(self, column, cell, model, iter, data): """Data func for the Gtk.CellRendererText which shows the package. Override this method if you want to show more information about a package or map it to applications. """ value = model.get_value(iter, 0) if not value: return try: pkg_name, pkg_version = value.split("=")[0:2] except ValueError: pkg_name = value pkg_version = None try: if pkg_version: text = "%s (%s)\n%s" % ( pkg_name, pkg_version, self.cache[pkg_name].summary) else: text = "%s\n%s" % ( pkg_name, self.cache[pkg_name].summary) except (KeyError, TypeError): if pkg_version: text = "%s (%s)" % (pkg_name, pkg_version) else: text = "%s" % pkg_name cell.set_property("markup", text) def run(self): self._show_changes() self.show_all() return Gtk.Dialog.run(self) class AptConfigFileConflictDialog(_ExpandableDialog): """Dialog to resolve conflicts between local and shipped configuration files. """ def __init__(self, from_path, to_path, parent=None): self.from_path = from_path self.to_path = to_path # TRANSLATORS: %s is a file path title = _("Replace your changes in '%s' with a later version of " "the configuration file?") % from_path msg = _("If you don't know why the file is there already, it is " "usually safe to replace it.") scrolled = Gtk.ScrolledWindow() scrolled.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) scrolled.set_shadow_type(Gtk.ShadowType.ETCHED_IN) self.diffview = DiffView() self.diffview.set_size_request(-1, 200) scrolled.add(self.diffview) _ExpandableDialog.__init__(self, parent=parent, expander_label=_("_Changes"), expanded_child=scrolled, title=title, message=msg, buttons=(_("_Keep"), Gtk.ResponseType.NO, _("_Replace"), Gtk.ResponseType.YES)) self.set_default_response(Gtk.ResponseType.YES) def run(self): self.show_all() self.diffview.show_diff(self.from_path, self.to_path) return _ExpandableDialog.run(self) REGEX_RANGE = "^@@ \-(?P[0-9]+)(?:,(?P[0-9]+))? " \ "\+(?P[0-9]+)(?:,(?P[0-9]+))? @@" class DiffView(Gtk.TextView): """Shows the difference between two files.""" ELLIPSIS = "[…]\n" def __init__(self): self.textbuffer = Gtk.TextBuffer() Gtk.TextView.__init__(self, buffer=self.textbuffer) self.set_property("editable", False) self.set_cursor_visible(False) tags = self.textbuffer.get_tag_table() # FIXME: How to get better colors? tag_default = Gtk.TextTag.new("default") tag_default.set_properties(font="Mono") tags.add(tag_default) tag_add = Gtk.TextTag.new("add") tag_add.set_properties(font="Mono", background='#8ae234') tags.add(tag_add) tag_remove = Gtk.TextTag.new("remove") tag_remove.set_properties(font="Mono", background='#ef2929') tags.add(tag_remove) tag_num = Gtk.TextTag.new("number") tag_num.set_properties(font="Mono", background='#eee') tags.add(tag_num) def show_diff(self, from_path, to_path): """Show the difference between two files.""" # FIXME: Use gio try: with open(from_path) as fp: from_lines = fp.readlines() with open(to_path) as fp: to_lines = fp.readlines() except IOError: return # helper function to work around current un-introspectability of # varargs methods like insert_with_tags_by_name() def insert_tagged_text(iter, text, tag): # self.textbuffer.insert_with_tags_by_name(iter, text, tag) offset = iter.get_offset() self.textbuffer.insert(iter, text) self.textbuffer.apply_tag_by_name( tag, self.textbuffer.get_iter_at_offset(offset), iter) line_number = 0 iter = self.textbuffer.get_start_iter() for line in difflib.unified_diff(from_lines, to_lines, lineterm=""): if line.startswith("@@"): match = re.match(REGEX_RANGE, line) if not match: continue line_number = int(match.group("from_start")) if line_number > 1: insert_tagged_text(iter, self.ELLIPSIS, "default") elif line.startswith("---") or line.startswith("+++"): continue elif line.startswith(" "): line_number += 1 insert_tagged_text(iter, str(line_number), "number") insert_tagged_text(iter, line, "default") elif line.startswith("-"): line_number += 1 insert_tagged_text(iter, str(line_number), "number") insert_tagged_text(iter, line, "remove") elif line.startswith("+"): spaces = " " * len(str(line_number)) insert_tagged_text(iter, spaces, "number") insert_tagged_text(iter, line, "add") class _DetailsExpanderMessageDialog(_ExpandableDialog): """ Common base class for Apt*Dialog """ def __init__(self, text, desc, type, details=None, parent=None): scrolled = Gtk.ScrolledWindow() scrolled.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) scrolled.set_shadow_type(Gtk.ShadowType.ETCHED_IN) textview = Gtk.TextView() textview.set_wrap_mode(Gtk.WrapMode.WORD) buffer = textview.get_buffer() scrolled.add(textview) # TRANSLATORS: expander label in the error dialog _ExpandableDialog.__init__(self, parent=parent, expander_label=_("_Details"), expanded_child=scrolled, title=text, message=desc, stock_type=type) self.show_all() if details: buffer.insert_at_cursor(details) else: self.expander.set_visible(False) class AptErrorDialog(_DetailsExpanderMessageDialog): """ Dialog for aptdaemon errors with details in an expandable text view """ def __init__(self, error=None, parent=None): text = get_error_string_from_enum(error.code) desc = get_error_description_from_enum(error.code) _DetailsExpanderMessageDialog.__init__( self, text, desc, Gtk.STOCK_DIALOG_ERROR, error.details, parent) aptdaemon-1.1.1+bzr982/aptdaemon/lock.py0000644000000000000000000001325512352743243016131 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Handles the apt system lock""" # Copyright (C) 2010 Sebastian Heinlein # # 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 " __all__ = ("LockFailedError", "system") import fcntl import os import struct import apt_pkg from gi.repository import GLib from aptdaemon import enums from aptdaemon.errors import TransactionCancelled class LockFailedError(Exception): """The locking of file failed.""" def __init__(self, flock, process=None): """Return a new LockFailedError instance. Keyword arguments: flock -- the path of the file lock process -- the process which holds the lock or None """ msg = "Could not acquire lock on %s." % flock if process: msg += " The lock is hold by %s." % process Exception.__init__(self, msg) self.flock = flock self.process = process class FileLock(object): """Represents a file lock.""" def __init__(self, path): self.path = path self.fd = None @property def locked(self): return self.fd is not None def acquire(self): """Return the file descriptor of the lock file or raise LockFailedError if the lock cannot be obtained. """ if self.fd: return self.fd fd_lock = apt_pkg.get_lock(self.path) if fd_lock < 0: process = get_locking_process_name(self.path) raise LockFailedError(self.path, process) else: self.fd = fd_lock return fd_lock def release(self): """Relase the lock.""" if self.fd: os.close(self.fd) self.fd = None def get_locking_process_name(lock_path): """Return the name of a process which holds a lock. It will be None if the name cannot be retrivied. """ try: fd_lock_read = open(lock_path, "r") except IOError: return None else: # Get the pid of the locking application flk = struct.pack('hhQQi', fcntl.F_WRLCK, os.SEEK_SET, 0, 0, 0) flk_ret = fcntl.fcntl(fd_lock_read, fcntl.F_GETLK, flk) pid = struct.unpack("hhQQi", flk_ret)[4] # Get the command of the pid try: with open("/proc/%s/status" % pid, "r") as fd_status: try: for key, value in (line.split(":") for line in fd_status.readlines()): if key == "Name": return value.strip() except Exception: return None except IOError: return None finally: fd_lock_read.close() return None apt_pkg.init() #: The lock for dpkg status file _status_dir = os.path.dirname(apt_pkg.config.find_file("Dir::State::status")) status_lock = FileLock(os.path.join(_status_dir, "lock")) #: The lock for the package archive _archives_dir = apt_pkg.config.find_dir("Dir::Cache::Archives") archive_lock = FileLock(os.path.join(_archives_dir, "lock")) #: The lock for the repository indexes lists_lock = FileLock(os.path.join( apt_pkg.config.find_dir("Dir::State::lists"), "lock")) def acquire(): """Acquire an exclusive lock for the package management system.""" try: for lock in archive_lock, status_lock, lists_lock: if not lock.locked: lock.acquire() except: release() raise def release(): """Release an exclusive lock for the package management system.""" for lock in archive_lock, status_lock, lists_lock: lock.release() def wait_for_lock(trans, alt_lock=None): """Acquire the system lock or the optionally given one. If the lock cannot be obtained pause the transaction in the meantime. :param trans: the transaction :param lock: optional alternative lock """ def watch_lock(): """Helper to unpause the transaction if the lock can be obtained. Keyword arguments: trans -- the corresponding transaction alt_lock -- alternative lock to the system lock """ try: if alt_lock: alt_lock.acquire() else: acquire() except LockFailedError: return True trans.paused = False return True try: if alt_lock: alt_lock.acquire() else: acquire() except LockFailedError as error: trans.paused = True trans.status = enums.STATUS_WAITING_LOCK if error.process: # TRANSLATORS: %s is the name of a package manager msg = trans.gettext("Waiting for %s to exit") trans.status_details = msg % error.process lock_watch = GLib.timeout_add_seconds(3, watch_lock) while trans.paused and not trans.cancelled: GLib.main_context_default().iteration() GLib.source_remove(lock_watch) if trans.cancelled: raise TransactionCancelled() # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/logger.py0000644000000000000000000000446412163747016016464 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """ Logging facilities for aptdaemon """ # Copyright (C) 2013 Sebastian Heinlein # # 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 " __all__ = ("ColoredFormatter") import logging import os # Define some foreground colors BLACK = 30 RED = 31 GREEN = 32 YELLOW = 33 BLUE = 34 MAGENTA = 35 CYAN = 36 WHITE = 37 # Terminal control sequences to format output RESET_SEQ = "\033[0m" COLOR_SEQ = "\033[1;%dm" BOLD_SEQ = "\033[1m" COLORS = { logging.WARN: YELLOW, logging.INFO: BLUE, logging.DEBUG: CYAN, logging.CRITICAL: RED, logging.ERROR: RED } class ColoredFormatter(logging.Formatter): """Adds some color to the log messages. http://stackoverflow.com/questions/384076/\ how-can-i-color-python-logging-output """ def __init__(self, fmt=None, datefmt=None, use_color=True): logging.Formatter.__init__(self, fmt, datefmt) if os.getenv("TERM") in ["xterm", "xterm-colored", "linux"]: self.use_color = use_color else: self.use_color = False def format(self, record): """Return the formated output string.""" if self.use_color and record.levelno in COLORS: record.levelname = (COLOR_SEQ % COLORS[record.levelno] + record.levelname + RESET_SEQ) record.name = COLOR_SEQ % GREEN + record.name + RESET_SEQ if record.levelno in [logging.CRITICAL, logging.ERROR]: record.msg = COLOR_SEQ % RED + record.msg + RESET_SEQ return logging.Formatter.format(self, record) aptdaemon-1.1.1+bzr982/aptdaemon/loop.py0000644000000000000000000000211412375366203016144 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Main loop for aptdaemon.""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("mainloop", "get_main_loop") from gi.repository import GLib mainloop = GLib.MainLoop() def get_main_loop(): """Return the glib main loop as a singleton.""" return mainloop # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/networking.py0000644000000000000000000002332612352743507017373 0ustar 00000000000000# networking - Monitor the network status # # Copyright (c) 2010 Mohamed Amine IL Idrissi # Copyright (c) 2011 Canonical # Copyright (c) 2011 Sebastian Heinlein # # Author: Alex Chiang # Michael Vogt # Mohamed Amine IL Idrissi # Sebastian Heinlein # # 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 (at your option) 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 # USA from defer import Deferred, inline_callbacks, return_value from gi.repository import GObject from gi.repository import Gio from gi.repository import GLib from gi.repository import PackageKitGlib as pk import dbus from dbus.mainloop.glib import DBusGMainLoop DBusGMainLoop(set_as_default=True) import logging import os log = logging.getLogger("AptDaemon.NetMonitor") class NetworkMonitorBase(GObject.GObject): """Check the network state.""" __gsignals__ = {"network-state-changed": (GObject.SignalFlags.RUN_FIRST, None, (GObject.TYPE_PYOBJECT,))} def __init__(self): log.debug("Initializing network monitor") GObject.GObject.__init__(self) self._state = pk.NetworkEnum.ONLINE def _set_state(self, enum): if self._state != enum: log.debug("Network state changed: %s", enum) self._state = enum self.emit("network-state-changed", enum) def _get_state(self): return self._state state = property(_get_state, _set_state) @inline_callbacks def get_network_state(self): """Update the network state.""" return_value(self._state) class ProcNetworkMonitor(NetworkMonitorBase): """Use the route information of the proc filesystem to detect the network state. """ def __init__(self): log.debug("Initializing proc based network monitor") NetworkMonitorBase.__init__(self) self._state = pk.NetworkEnum.OFFLINE self._file = Gio.File.new_for_path("/proc/net/route") self._monitor = Gio.File.monitor(self._file, Gio.FileMonitorFlags.NONE, None) self._monitor.connect("changed", self._on_route_file_changed) def _on_route_file_changed(self, *args): self.get_network_state() def _parse_route_file(self): """Parse the route file - taken from PackageKit""" with open("/proc/net/route") as route_file: for line in route_file.readlines(): rows = line.split("\t") # The header line? if rows[0] == "Iface": continue # A loopback device? elif rows[0] == "lo": continue # Correct number of rows? elif len(rows) != 11: continue # The route is a default gateway elif rows[1] == "00000000": break # A gateway is set elif rows[2] != "00000000": break else: return pk.NetworkEnum.OFFLINE return pk.NetworkEnum.ONLINE @inline_callbacks def get_network_state(self): """Update the network state.""" self.state = self._parse_route_file() return_value(self.state) class NetworkManagerMonitor(NetworkMonitorBase): """Use NetworkManager to monitor network state.""" NM_DBUS_IFACE = "org.freedesktop.NetworkManager" NM_ACTIVE_CONN_DBUS_IFACE = NM_DBUS_IFACE + ".Connection.Active" NM_DEVICE_DBUS_IFACE = NM_DBUS_IFACE + ".Device" # The device type is unknown NM_DEVICE_TYPE_UNKNOWN = 0 # The device is wired Ethernet device NM_DEVICE_TYPE_ETHERNET = 1 # The device is an 802.11 WiFi device NM_DEVICE_TYPE_WIFI = 2 # The device is a GSM-based cellular WAN device NM_DEVICE_TYPE_GSM = 3 # The device is a CDMA/IS-95-based cellular WAN device NM_DEVICE_TYPE_CDMA = 4 def __init__(self): log.debug("Initializing NetworkManager monitor") NetworkMonitorBase.__init__(self) self.bus = dbus.SystemBus() self.proxy = self.bus.get_object("org.freedesktop.NetworkManager", "/org/freedesktop/NetworkManager") self.proxy.connect_to_signal("PropertiesChanged", self._on_nm_properties_changed, dbus_interface=self.NM_DBUS_IFACE) self.bus.add_signal_receiver( self._on_nm_active_conn_props_changed, signal_name="PropertiesChanged", dbus_interface=self.NM_ACTIVE_CONN_DBUS_IFACE) @staticmethod def get_dbus_property(proxy, interface, property): """Small helper to get the property value of a dbus object.""" props = dbus.Interface(proxy, "org.freedesktop.DBus.Properties") deferred = Deferred() props.Get(interface, property, reply_handler=deferred.callback, error_handler=deferred.errback) return deferred @inline_callbacks def _on_nm_properties_changed(self, props): """Callback if NetworkManager properties changed.""" if "ActiveConnections" in props: if not props["ActiveConnections"]: log.debug("There aren't any active connections") self.state = pk.NetworkEnum.OFFLINE else: yield self.get_network_state() @inline_callbacks def _on_nm_active_conn_props_changed(self, props): """Callback if properties of the active connection changed.""" if "Default" not in props: raise StopIteration yield self.get_network_state() @inline_callbacks def _query_network_manager(self): """Query NetworkManager about the network state.""" state = pk.NetworkEnum.OFFLINE try: active_conns = yield self.get_dbus_property(self.proxy, self.NM_DBUS_IFACE, "ActiveConnections") except dbus.DBusException: log.warning("Failed to determinate network state") return_value(state) for conn in active_conns: conn_obj = self.bus.get_object(self.NM_DBUS_IFACE, conn) try: is_default = yield self.get_dbus_property( conn_obj, self.NM_ACTIVE_CONN_DBUS_IFACE, "Default") if not is_default: continue devs = yield self.get_dbus_property( conn_obj, self.NM_ACTIVE_CONN_DBUS_IFACE, "Devices") except dbus.DBusException: log.warning("Failed to determinate network state") break priority_device_type = -1 for dev in devs: try: dev_obj = self.bus.get_object(self.NM_DBUS_IFACE, dev) dev_type = yield self.get_dbus_property( dev_obj, self.NM_DEVICE_DBUS_IFACE, "DeviceType") except dbus.DBusException: log.warning("Failed to determinate network state") return_value(pk.NetworkEnum.UNKNOWN) # prioterizse device types, since a bridged GSM/CDMA connection # should be returned as a GSM/CDMA one # The NM_DEVICE_TYPE_* enums are luckly ordered in this sense. if dev_type <= priority_device_type: continue priority_device_type = dev_type if dev_type in (self.NM_DEVICE_TYPE_GSM, self.NM_DEVICE_TYPE_CDMA): state = pk.NetworkEnum.MOBILE elif dev_type == self.NM_DEVICE_TYPE_ETHERNET: state = pk.NetworkEnum.WIRED elif dev_type == self.NM_DEVICE_TYPE_WIFI: state = pk.NetworkEnum.WIFI elif dev_type == self.NM_DEVICE_TYPE_UNKNOWN: state = pk.NetworkEnum.OFFLINE else: state = pk.NetworkEnum.ONLINE return_value(state) @inline_callbacks def get_network_state(self): """Update the network state.""" self.state = yield self._query_network_manager() return_value(self.state) def get_network_monitor(fallback=False): """Return a network monitor.""" if fallback: return ProcNetworkMonitor() try: return NetworkManagerMonitor() except dbus.DBusException: pass if os.path.exists("/proc/net/route"): return ProcNetworkMonitor() return NetworkMonitorBase() if __name__ == "__main__": @inline_callbacks def _call_monitor(): state = yield monitor.get_network_state() print(("Initial network state: %s" % state)) log_handler = logging.StreamHandler() log.addHandler(log_handler) log.setLevel(logging.DEBUG) monitor = get_network_monitor(True) _call_monitor() loop = GLib.MainLoop() loop.run() aptdaemon-1.1.1+bzr982/aptdaemon/pkcompat.py0000644000000000000000000024576412352743243017033 0ustar 00000000000000# !/usr/bin/env python # -*- coding: utf-8 -*- """ Provides a limited compatibility layer to PackageKit Copyright (C) 2007 Ali Sabil Copyright (C) 2007 Tom Parker Copyright (C) 2008-2011 Sebastian Heinlein Licensed under the GNU General Public License Version 2 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 (at your option) any later version. """ __author__ = "Sebastian Heinlein " import datetime import glob import gzip import locale import logging import os import platform import re import subprocess import tempfile import time import uuid from defer import inline_callbacks, return_value from defer.utils import dbus_deferred_method import dbus from gi.repository import GObject, GLib from gi.repository import PackageKitGlib as pk # for optional plugin support try: import pkg_resources except ImportError: pkg_resources = None from . import policykit1 from . import core from .core import APTDAEMON_TRANSACTION_DBUS_INTERFACE from . import enums as aptd_enums from .errors import TransactionFailed from . import errors from .progress import DaemonAcquireProgress from . import worker from . import networking from .pkutils import (bitfield_summarize, bitfield_add, bitfield_remove, bitfield_contains) from .utils import split_package_id pklog = logging.getLogger("AptDaemon.PackageKit") # Check if update-manager-core is installed to get aware of the # latest distro releases try: from UpdateManager.Core.MetaRelease import MetaReleaseCore except ImportError: META_RELEASE_SUPPORT = False else: META_RELEASE_SUPPORT = True PACKAGEKIT_DBUS_INTERFACE = "org.freedesktop.PackageKit" PACKAGEKIT_DBUS_SERVICE = "org.freedesktop.PackageKit" PACKAGEKIT_DBUS_PATH = "/org/freedesktop/PackageKit" PACKAGEKIT_TRANS_DBUS_INTERFACE = "org.freedesktop.PackageKit.Transaction" PACKAGEKIT_TRANS_DBUS_SERVICE = "org.freedesktop.PackageKit.Transaction" MAP_EXIT_ENUM = { aptd_enums.EXIT_SUCCESS: pk.ExitEnum.SUCCESS, aptd_enums.EXIT_CANCELLED: pk.ExitEnum.CANCELLED, aptd_enums.EXIT_FAILED: pk.ExitEnum.FAILED, aptd_enums.EXIT_FAILED: pk.ExitEnum.FAILED, aptd_enums.EXIT_PREVIOUS_FAILED: pk.ExitEnum.FAILED} MAP_STATUS_ENUM = { aptd_enums.STATUS_AUTHENTICATING: pk.StatusEnum.WAITING_FOR_AUTH, aptd_enums.STATUS_SETTING_UP: pk.StatusEnum.SETUP, aptd_enums.STATUS_QUERY: pk.StatusEnum.QUERY, aptd_enums.STATUS_WAITING: pk.StatusEnum.WAIT, aptd_enums.STATUS_RUNNING: pk.StatusEnum.RUNNING, aptd_enums.STATUS_CANCELLING: pk.StatusEnum.CANCEL, aptd_enums.STATUS_CLEANING_UP: pk.StatusEnum.CLEANUP, aptd_enums.STATUS_COMMITTING: pk.StatusEnum.COMMIT, aptd_enums.STATUS_DOWNLOADING: pk.StatusEnum.DOWNLOAD, aptd_enums.STATUS_DOWNLOADING_REPO: pk.StatusEnum.DOWNLOAD_REPOSITORY, aptd_enums.STATUS_FINISHED: pk.StatusEnum.FINISHED, aptd_enums.STATUS_LOADING_CACHE: pk.StatusEnum.LOADING_CACHE, aptd_enums.STATUS_RESOLVING_DEP: pk.StatusEnum.DEP_RESOLVE, aptd_enums.STATUS_RUNNING: pk.StatusEnum.RUNNING, aptd_enums.STATUS_WAITING_LOCK: pk.StatusEnum.WAITING_FOR_LOCK, aptd_enums.STATUS_WAITING_MEDIUM: pk.StatusEnum.UNKNOWN, aptd_enums.STATUS_WAITING_CONFIG_FILE_PROMPT: pk.StatusEnum.UNKNOWN} MAP_ERROR_ENUM = { aptd_enums.ERROR_CACHE_BROKEN: pk.ErrorEnum.NO_CACHE, aptd_enums.ERROR_DEP_RESOLUTION_FAILED: ( pk.ErrorEnum.DEP_RESOLUTION_FAILED), aptd_enums.ERROR_INCOMPLETE_INSTALL: pk.ErrorEnum.NO_CACHE, aptd_enums.ERROR_INVALID_PACKAGE_FILE: ( pk.ErrorEnum.PACKAGE_CORRUPT), aptd_enums.ERROR_KEY_NOT_INSTALLED: pk.ErrorEnum.GPG_FAILURE, aptd_enums.ERROR_KEY_NOT_REMOVED: pk.ErrorEnum.GPG_FAILURE, aptd_enums.ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE: ( pk.ErrorEnum.PACKAGE_FAILED_TO_REMOVE), aptd_enums.ERROR_NO_CACHE: pk.ErrorEnum.NO_CACHE, aptd_enums.ERROR_NO_LOCK: pk.ErrorEnum.CANNOT_GET_LOCK, aptd_enums.ERROR_NO_PACKAGE: pk.ErrorEnum.PACKAGE_NOT_FOUND, aptd_enums.ERROR_PACKAGE_ALREADY_INSTALLED: ( pk.ErrorEnum.PACKAGE_ALREADY_INSTALLED), aptd_enums.ERROR_PACKAGE_DOWNLOAD_FAILED: ( pk.ErrorEnum.PACKAGE_DOWNLOAD_FAILED), aptd_enums.ERROR_PACKAGE_MANAGER_FAILED: ( pk.ErrorEnum.TRANSACTION_ERROR), aptd_enums.ERROR_PACKAGE_NOT_INSTALLED: ( pk.ErrorEnum.PACKAGE_NOT_INSTALLED), aptd_enums.ERROR_PACKAGE_UNAUTHENTICATED: ( pk.ErrorEnum.BAD_GPG_SIGNATURE), aptd_enums.ERROR_PACKAGE_UPTODATE: ( pk.ErrorEnum.NO_PACKAGES_TO_UPDATE), aptd_enums.ERROR_REPO_DOWNLOAD_FAILED: ( pk.ErrorEnum.REPO_NOT_AVAILABLE), aptd_enums.ERROR_UNREADABLE_PACKAGE_FILE: ( pk.ErrorEnum.INVALID_PACKAGE_FILE), aptd_enums.ERROR_SYSTEM_ALREADY_UPTODATE: ( pk.ErrorEnum.NO_PACKAGES_TO_UPDATE), aptd_enums.ERROR_NOT_AUTHORIZED: pk.ErrorEnum.NOT_AUTHORIZED, aptd_enums.ERROR_AUTH_FAILED: pk.ErrorEnum.NOT_AUTHORIZED} MAP_PACKAGE_ENUM = { aptd_enums.PKG_CONFIGURING: pk.InfoEnum.INSTALLING, aptd_enums.PKG_DISAPPEARING: pk.InfoEnum.UNKNOWN, aptd_enums.PKG_INSTALLED: pk.InfoEnum.FINISHED, aptd_enums.PKG_INSTALLING: pk.InfoEnum.INSTALLING, aptd_enums.PKG_PREPARING_INSTALL: pk.InfoEnum.PREPARING, aptd_enums.PKG_PREPARING_PURGE: pk.InfoEnum.PREPARING, aptd_enums.PKG_PREPARING_REMOVE: pk.InfoEnum.PREPARING, aptd_enums.PKG_PURGED: pk.InfoEnum.FINISHED, aptd_enums.PKG_PURGING: pk.InfoEnum.REMOVING, aptd_enums.PKG_REMOVED: pk.InfoEnum.FINISHED, aptd_enums.PKG_REMOVING: pk.InfoEnum.REMOVING, aptd_enums.PKG_RUNNING_TRIGGER: pk.InfoEnum.CLEANUP, aptd_enums.PKG_UNKNOWN: pk.InfoEnum.UNKNOWN, aptd_enums.PKG_UNPACKING: pk.InfoEnum.DECOMPRESSING, aptd_enums.PKG_UPGRADING: pk.InfoEnum.UPDATING} MAP_POLICY = { "org.freedesktop.packagekit.cancel-foreign": ( policykit1.PK_ACTION_CANCEL_FOREIGN), "org.freedesktop.packagekit.package-install": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.package-install-untrusted": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.system-trust-signing-key": ( policykit1.PK_ACTION_CHANGE_REPOSITORY), "org.freedesktop.packagekit.package-eula-accept": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.package-remove": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.system-update": ( policykit1.PK_ACTION_UPGRADE_PACKAGES), "org.freedesktop.packagekit.system-sources-configure": ( policykit1.PK_ACTION_CHANGE_REPOSITORY), "org.freedesktop.packagekit.system-sources-refresh": ( policykit1.PK_ACTION_UPDATE_CACHE), "org.freedesktop.packagekit.system-network-proxy-configure": ( policykit1.PK_ACTION_SET_PROXY), "org.freedesktop.packagekit.device-rebind": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.upgrade-system": ( policykit1.PK_ACTION_UPGRADE_PACKAGES), "org.freedesktop.packagekit.repair-system": ( policykit1.PK_ACTION_INSTALL_OR_REMOVE_PACKAGES), "org.freedesktop.packagekit.trigger-offline-update": ( policykit1.PK_ACTION_UPGRADE_PACKAGES), "org.freedesktop.packagekit.clear-offline-update": ( policykit1.PK_ACTION_UPGRADE_PACKAGES)} class PackageKit(core.DBusObject): """Provides a limited set of the PackageKit system D-Bus API.""" def __init__(self, queue, connect=True, bus=None): """Initialize a new PackageKit compatibility layer. Keyword arguments: connect -- if the daemon should connect to the D-Bus (default is True) bus -- the D-Bus to connect to (defaults to the system bus) """ pklog.info("Initializing PackageKit compat layer") bus_name = None bus_path = None if connect is True: if bus is None: bus = dbus.SystemBus() self.bus = bus bus_path = PACKAGEKIT_DBUS_PATH bus_name = dbus.service.BusName(PACKAGEKIT_DBUS_SERVICE, self.bus) core.DBusObject.__init__(self, bus_name, bus_path) self._updates_changed_timeout_id = None self._updates_changed = False self.queue = queue self.queue.worker.connect("transaction-done", self._on_transaction_done) self.queue.connect("queue-changed", self._on_queue_changed) self._distro_id = None self.netmon = networking.get_network_monitor() self.netmon.connect("network-state-changed", self._on_network_state_changed) self._get_network_state() @inline_callbacks def _get_network_state(self): """Helper to defer the network state checking.""" yield self.netmon.get_network_state() # SIGNALS # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_DBUS_INTERFACE, signature="") def RestartSchedule(self): """A system restart has been sceduled.""" pass # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_DBUS_INTERFACE, signature="as") def TransactionListChanged(self, transactions): """The transaction list has changed, because either a transaction has finished or a new transaction created. :param transactions: A list of transaction ID's. :type transactions: as """ pklog.debug("Emitting TransactionListChanged signal: %s", transactions) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_DBUS_INTERFACE, signature="") def UpdatesChanged(self): """This signal is emitted when the number of updates has changed.""" pklog.debug("Emitting UpdatesChanged signal") # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_DBUS_INTERFACE, signature="") def RepoListChanged(self): """This signal is emitted when the repository list has changed.""" pass # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_DBUS_INTERFACE, signature="") def Changed(self): """This signal is emitted when a property on the interface changes.""" pklog.debug("Emitting PackageKit Changed()") # METHODS # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_DBUS_INTERFACE, in_signature="s", out_signature="u", sender_keyword="sender") def CanAuthorize(self, action_id, sender): """Allows a client to find out if it would be allowed to authorize an action. :param action_id: The action ID, e.g. org.freedesktop.packagekit.system-network-proxy-configure :returns: The result, either yes, no or interactive. """ pklog.info("CanAuthorize() was called: %s", str(action_id)) return self._can_authorize(action_id, sender) @inline_callbacks def _can_authorize(self, action_id, sender): try: action_id_aptd = MAP_POLICY[action_id] except KeyError: return_value(pk.AuthorizeEnum.UNKNOWN) try: policykit1.check_authorization_by_name( self, action_id, flags=policykit1.CHECK_AUTH_NONE) except policykit1.NotAuthorizedError: return_value(pk.AuthorizeEnum.NO) except policykit1.AuthorizationFailed: # check_authorization_* behaves a little bit different if the # flags are set to NONE instead of INTERACTIVE return_value(pk.AuthorizeEnum.INTERACTIVE) except: return_value(pk.AuthorizeEnum.UNKNOWN) return_value(pk.AuthorizeEnum.YES) # pylint: disable-msg=C0103,C0322 @dbus.service.method(PACKAGEKIT_DBUS_INTERFACE, in_signature="s", out_signature="") def StateHasChanged(self, reason): """This method suggests to PackageKit that the package backend state may have changed. This allows plugins to the native package manager to suggest that PackageKit drops it's caches. :param reason: The reason of the state change. Valid reasons are resume or posttrans. Resume is given a lower priority than posttrans. """ pklog.info("StateHasChanged() was called: %s", str(reason)) self._updates_changed = True if reason == "cache-update": self._check_updates_changed(timeout=30) elif reason == "resume": self._check_updates_changed(timeout=180) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_DBUS_INTERFACE, in_signature="", out_signature="o", sender_keyword="sender") def CreateTransaction(self, sender): """Gets a new transaction ID from the daemon. :returns: The tid, e.g. 45_dafeca_checkpoint32 """ pklog.info("CreateTransaction() was called") return self._create_transaction(sender) @inline_callbacks def _create_transaction(self, sender): pid, uid, cmdline = yield policykit1.get_proc_info_from_dbus_name( sender, self.bus) pktrans = PackageKitTransaction(pid, uid, cmdline, self.queue, sender) return_value(pktrans.tid) # pylint: disable-msg=C0103,C0322 @dbus.service.method(PACKAGEKIT_DBUS_INTERFACE, in_signature="", out_signature="s") def GetDaemonState(self): """Return the state of the currently running transactions.""" pklog.info("GetDaemonState() was called") # FIXME: Add some useful data here return "All is fine!" # pylint: disable-msg=C0103,C0322 @dbus.service.method(PACKAGEKIT_DBUS_INTERFACE, in_signature="", out_signature="ao") def GetTransactionList(self): """Gets the transaction list of any transactions that are in progress. :returns: A list of transaction ID's """ pklog.info("GetTransactionList() was called") return self._get_transaction_list() # HELPERS def _get_properties(self, iface): """Helper to get the properties of a D-Bus interface.""" if iface == PACKAGEKIT_DBUS_INTERFACE: return { # Claim that we are a current version "VersionMajor": dbus.UInt32(0), "VersionMinor": dbus.UInt32(8), "VersionMicro": dbus.UInt32(9), "BackendName": dbus.String("aptdaemon"), "BackendDescription": dbus.String("Compatibility layer"), "BackendAuthor": dbus.String(__author__), "Groups": dbus.UInt64(self.queue.worker.groups), "Provides": dbus.UInt64(self.queue.worker.provides), "Filters": dbus.UInt64(self.queue.worker.filters), "Roles": dbus.UInt64(self.queue.worker.roles), "MimeTypes": dbus.Array(self.queue.worker.mime_types, signature="s"), "Locked": dbus.Boolean(False), "NetworkState": dbus.UInt32(self.netmon.state), "DistroId": dbus.String(self._get_distro_id())} else: return {} def _get_distro_id(self): """Return information about the distibution.""" if self._distro_id is None: distro, version, _codename = platform.dist() self._distro_id = "%s;%s;%s" % (distro or "unknown", version or "unknown", NATIVE_ARCH) return self._distro_id def _on_network_state_changed(self, mon, state): self.Changed() self.PropertiesChanged(PACKAGEKIT_DBUS_INTERFACE, {"NetworkState": dbus.UInt32(state)}, []) def _on_queue_changed(self, queue): self.TransactionListChanged(self._get_transaction_list()) self._check_updates_changed() def _get_transaction_list(self): pk_transactions = [] for trans in self.queue.items: # We currently only emit PackageKit transaction # FIXME: Should we use MergedTransaction for all transactions and # ROLE_UNKOWN for aptdaemon only transactions? try: pk_transactions.append(trans.pktrans.tid) except AttributeError: pass try: pk_transactions.append(self.queue.worker.trans.pktrans.tid) except AttributeError: pass return pk_transactions def _on_transaction_done(self, worker, trans): # If a cache modifing transaction is completed schedule an # UpdatesChanged signal if trans.role in (aptd_enums.ROLE_INSTALL_FILE, aptd_enums.ROLE_INSTALL_PACKAGES, aptd_enums.ROLE_REMOVE_PACKAGES, aptd_enums.ROLE_UPGRADE_PACKAGES, aptd_enums.ROLE_COMMIT_PACKAGES, aptd_enums.ROLE_UPGRADE_SYSTEM, aptd_enums.ROLE_FIX_BROKEN_DEPENDS): self._updates_changed = True self._check_updates_changed() elif trans.role == aptd_enums.ROLE_UPDATE_CACHE: self._updates_changed = True self._check_updates_changed(timeout=30) def _check_updates_changed(self, timeout=60): """After the queue was processed schedule a delayed UpdatesChanged signal if required. """ if not self.queue.items and self._updates_changed: if self._updates_changed_timeout_id: # If we already have a scheduled UpdatesChanged signal # delay it even further pklog.debug("UpdatesChanged signal re-scheduled") GLib.source_remove(self._updates_changed_timeout_id) else: pklog.debug("UpdatesChanged signal scheduled") self._updates_changed_timeout_id = \ GLib.timeout_add_seconds(timeout, self._delayed_updates_changed) def _delayed_updates_changed(self): """Emit the UpdatesChanged signal and clear the timeout.""" self.UpdatesChanged() self._updates_changed_timeout_id = None self._updates_changed = False return False class MergedTransaction(core.Transaction): """Overlay of an Aptdaemon transaction which also provides the PackageKit object and its interfaces. """ def __init__(self, pktrans, role, queue, connect=True, bus=None, packages=None, kwargs=None): core.Transaction.__init__(self, pktrans.tid[1:], role, queue, pktrans.pid, pktrans.uid, pktrans.cmdline, pktrans.sender, connect, bus, packages, kwargs) self.pktrans = pktrans self.run_time = 0 @inline_callbacks def _run(self, sender): """Run the transaction and convert exceptions to PackageKit ones.""" try: yield core.Transaction._run(self, sender) except (TransactionFailed, errors.NotAuthorizedError, errors.AuthorizationFailed): # It is sufficient for PackageKit if the exit state and error # code of the transaction are set. So silently drop the execp if self.error: pass except Exception as error: raise error @inline_callbacks def _check_auth(self): """Override the auth method to allow simulates without any authorization. """ if bitfield_contains(self.pktrans.flags, pk.TransactionFlagEnum.SIMULATE): raise StopIteration else: yield core.Transaction._check_auth(self) @inline_callbacks def _check_simulated(self): """Skip simulate calls for simulated transactions.""" if bitfield_contains(self.pktrans.flags, pk.TransactionFlagEnum.SIMULATE): raise StopIteration else: yield core.Transaction._check_simulated(self) def _set_status(self, enum): core.Transaction._set_status(self, enum) self.pktrans.status = get_pk_status_enum(enum) status = property(core.Transaction._get_status, _set_status) def _set_progress(self, percent): core.Transaction._set_progress(self, percent) self.pktrans.percentage = self._progress progress = property(core.Transaction._get_progress, _set_progress) def _set_progress_details(self, details): core.Transaction._set_progress_details(self, details) self.pktrans.download_size_remaing = int(details[3]) - int(details[2]) self.pktrans.speed = int(details[4]) self.pktrans.remaining_time = int(details[5]) self.pktrans.elapsed_time = int(time.time() - self.pktrans.start_time) progress_details = property(core.Transaction._get_progress_details, _set_progress_details) def _set_progress_package(self, progress): core.Transaction._set_progress_package(self, progress) pkg_name, enum = progress # Ignore dpkg triggers if enum == aptd_enums.PKG_RUNNING_TRIGGER or pkg_name == "dpkg-exec": return try: id = self.pktrans.pkg_id_cache[pkg_name] except KeyError: id = get_pk_package_id(pkg_name) self.emit_package(get_pk_package_enum(enum), id, "") progress_package = property(core.Transaction._get_progress_package, _set_progress_package) def _set_progress_download(self, progress_download): core.Transaction._set_progress_download(self, progress_download) prog_enum = progress_download[1] prog_name = progress_download[2] total_size = progress_download[3] partial_size = progress_download[4] try: id = self.pktrans.pkg_id_cache[prog_name] except KeyError: return self.pktrans.Package(pk.InfoEnum.DOWNLOADING, id, "") if prog_enum == aptd_enums.DOWNLOAD_IDLE: percentage = 0 elif prog_enum == aptd_enums.DOWNLOAD_FETCHING and total_size > 0: percentage = partial_size * 100 / total_size elif prog_enum == aptd_enums.DOWNLOAD_DONE: percentage = 100 else: # In the case of an error percentage = 0 self.pktrans.ItemProgress(id, pk.InfoEnum.DOWNLOADING, percentage) progress_download = property(core.Transaction._get_progress_download, _set_progress_download) def _set_exit(self, enum): core.Transaction._set_exit(self, enum) self.pktrans.exit = get_pk_exit_enum(enum) exit = property(core.Transaction._get_exit, _set_exit) def _set_error(self, excep): core.Transaction._set_error(self, excep) self.pktrans.ErrorCode(get_pk_error_enum(excep.code), self._error_property[1]) error = property(core.Transaction._get_error, _set_error) def _remove_from_connection_no_raise(self): core.Transaction._remove_from_connection_no_raise(self) self.pktrans.Destroy() try: self.pktrans.remove_from_connection() except LookupError as error: pklog.debug("remove_from_connection() raised LookupError: %s", error) finally: self.pktrans.trans = None self.pktrans = None return False def emit_details(self, package_id, license, group, detail, url, size): self.pktrans.Details(package_id, license, group, detail, url, size) def emit_files(self, id, file_list): self.pktrans.Files(id, file_list) def emit_package(self, info, id, summary): if id.startswith("dpkg-exec;"): # PackageKit would show a non existing package pklog.debug("Don't emit Package() signal for the dpkg trigger") return self.pktrans.Package(info, id, summary) self.pktrans.last_package = id def emit_update_detail(self, package_id, updates, obsoletes, vendor_urls, bugzilla_urls, cve_urls, restart, update_text, changelog, state, issued, updated): self.pktrans.UpdateDetail(package_id, updates, obsoletes, vendor_urls, bugzilla_urls, cve_urls, restart, update_text, changelog, state, issued, updated) class PackageKitTransaction(core.DBusObject): """Provides a PackageKit transaction object.""" def __init__(self, pid, uid, cmdline, queue, sender, connect=True, bus=None): pklog.info("Initializing PackageKit transaction") bus_name = None bus_path = None self.tid = "/%s" % uuid.uuid4().hex if connect is True: if bus is None: bus = dbus.SystemBus() self.bus = bus bus_path = self.tid bus_name = dbus.service.BusName(PACKAGEKIT_DBUS_SERVICE, bus) core.DBusObject.__init__(self, bus_name, bus_path) self.queue = queue self.hints = {} self.start_time = time.time() self._elapsed_time = dbus.UInt32(0) self._remaining_time = dbus.UInt32(0) self._download_size_remaining = dbus.UInt64(0) self._speed = dbus.UInt32(0) self._caller_active = True self._allow_cancel = False self._percentage = dbus.UInt32(0) self._status = pk.StatusEnum.SETUP self._last_package = "" self.uid = dbus.UInt32(uid) self.pid = pid self.cmdline = cmdline self.role = pk.RoleEnum.UNKNOWN self.sender = sender self.trans = None self.flags = pk.TransactionFlagEnum.NONE self.pkg_id_cache = {} @property def allow_cancel(self): return self._allow_cancel @allow_cancel.setter def allow_cancel(self, value): self._allow_cancel = dbus.Boolean(value) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"AllowCancel": self._allow_cancel}, []) self.Changed() @property def last_package(self): return self._last_package @last_package.setter def last_package(self, value): self._last_package = dbus.String(value) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"LastPackage": self._last_package}, []) self.Changed() @property def caller_active(self): return self._caller_active @caller_active.setter def caller_active(self, value): self._caller_active = dbus.Boolean(value) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"CallerActive": self._caller_active}, []) self.Changed() @property def percentage(self): return self._percentage @percentage.setter def percentage(self, progress): self._percentage = dbus.UInt32(progress) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"Percentage": self._percentage}, []) self.Changed() @property def status(self): return self._status @status.setter def status(self, enum): self._status = dbus.UInt32(enum) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"Status": self._status}, []) self.Changed() @property def elapsed_time(self): return self._elapsed_time @elapsed_time.setter def elapsed_time(self, ela): self._elpased_time = dbus.UInt32(ela) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"ElapsedTime": self._elapsed_time}, []) self.Changed() @property def remaining_time(self): return self._remaining_time @remaining_time.setter def remaining_time(self, value): self._remaining_time = dbus.UInt32(value) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"RemainingTime": self._remaining_time}, []) self.Changed() @property def download_size_remaining(self): return self._download_size_remaining @download_size_remaining.setter def download_size_remaining(self, value): self._download_size_remaining = dbus.UInt64(value) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"DownloadSizeRemaining": self._download_size_remaining}, []) self.Changed() @property def speed(self): return self._speed @speed.setter def speed(self, speed): self._speed = dbus.UInt32(speed) self.PropertiesChanged(PACKAGEKIT_TRANS_DBUS_INTERFACE, {"Speed": self._speed}, []) self.Changed() @property def exit(self): return self._exit @exit.setter def exit(self, enum): self._exit = enum self.run_time = int((time.time() - self.start_time) * 1000) # The time could go backwards ... if self.run_time < 0: self.run_time = 0 if enum == pk.ExitEnum.CANCELLED: self.ErrorCode(pk.ErrorEnum.TRANSACTION_CANCELLED, "") self.status = pk.StatusEnum.FINISHED self.Finished(enum, self.run_time) # SIGNALS # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="osbuusus") def Transaction(self, object_path, timespec, succeeded, role, duration, data, uid, cmdline): """This signal is sent when more details are required about a specific transaction. :param object_path: The transaction ID of the old transaction. :param timespec: The timespec of the old transaction in ISO8601 format. :param succeeded: If the transaction succeeded. :param role: The role enumerated type. :param duration: The duration of the transaction in milliseconds. :param data: Any data associated :param uid: The user ID of the user that scheduled the action. :param cmdline: The command line of the tool that scheduled the action, e.g. /usr/bin/gpk-application. """ pklog.debug("Emitting Transaction signal: %s, %s, %s, %s, %s, %s, " "%s, %s", object_path, timespec, succeeded, pk.role_enum_to_string(role), duration, data, uid, cmdline) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="us") def ErrorCode(self, code, details): """This signal is used to report errors back to the session program. Errors should only be send on fatal abort. :param code: Enumerated type, e.g. no-network. :param details: Long description or error, e.g. "failed to connect" :type code: u :type details: s """ pklog.debug("Emitting ErrorCode signal: %s, %s", pk.error_enum_to_string(code), details) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="") def Changed(self): """This signal is emitted when a property on the interface changes.""" pklog.debug("Emitting Changed signal") # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="") def Destroy(self): """This signal is sent when the transaction has been destroyed and is no longer available for use.""" pklog.debug("Emitting Destroy signal") # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="uu") def Finished(self, exit_enum, runtime): """This signal is used to signal that the transaction has finished. :param exit: The PkExitEnum describing the exit status of the transaction. :param runtime: The amount of time in milliseconds that the transaction ran for. :type exit: s :type runtime: u """ pklog.debug("Emitting Finished signal: %s, %s", pk.exit_enum_to_string(exit_enum), runtime) pass # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="ssusst") def Details(self, package_id, license, group, detail, url, size): """This signal allows the backend to convey more details about the package. :param package_id: The package ID :param license: The license string, e.g. GPLv2+ or BSD and (MPLv1.1 or GPLv2+). Moredetails about the correct way to format licensing strings can be found on the Fedora packaging wiki. :param group: The enumerated package group description :param detail: The multi-line package description. If formatting is required, then markdown syntax should be used, e.g. This is **critically** important :param url: The upstream project homepage :param size: The size of the package in bytes. This should be the size of the entire package file, not the size of the files installed on the system. If the package is not installed, and already downloaded and present in the package manager cache, then this value should be set to zero. """ pklog.debug("Emitting Details signal for %s", package_id) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="us") def Message(self, kind, details): """This signal is sent when the backend wants to send a message to the session. The message will be shown after the transaction has been completed. """ pklog.debug("Emitting Message signal: %s, %s", kind, details) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="sas") def Files(self, package_id, file_list): """This signal is used to push file lists from the backend to the session. :param package_id: The Package ID that called the method. :param file_list: The file list """ pklog.debug("Emitting Files signal: %s, %s", package_id, file_list) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="suu") def ItemProgress(self, package_id, status, percentage): """This signal allows the backend to send information about package or repository progress when using Simultanous mode. :param package_id: The package ID :param status: The status enumerated value that is being completed :param percentage: The percentage of this action is completed """ pklog.debug("Emitting ItemProgress signal for %s: %s, %s", package_id, pk.info_enum_to_string(status), percentage) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="sasasasasasussuss") def UpdateDetail(self, package_id, updates, obsoletes, vendor_urls, bugzilla_urls, cve_urls, restart, update_text, changelog, state, issued, updated): """This signal is sent when more details are required about a specific update. :param package_id: The package ID :param updates: A list of package_id's that are to be updated. :param obsoletes: A list of package_id's that are to be obsoleted. :param vendor_urls: A URL with more details on the update, e.g. a page with more information on the update. The format of this command should be http://www.foo.org/page.html?4567;Update to SELinux :param bugzilla_urls: A bugzilla URL with more details on the update. If no URL is available then this field should be left empty. :param cve_urls: A CVE URL with more details on the security advisory. :param restart: A valid restart type, e.g. system. :param update_text: The update text describing the update. If formatting is required, then markdown syntax should be used, e.g. This is **critically** important. :param changelog: The ChangeLog text describing the changes since the last version. :param state: The state of the update, e.g. stable or testing. :param issued: The ISO8601 encoded date that the update was issued. :param updated: The ISO8601 encoded date that the update was updated. """ pklog.debug("Emitting UpdateDetail signal for %s", package_id) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="uss") def Package(self, info, package_id, summary): """This signal allows the backend to communicate packages to the session. If updating, as packages are updated then emit them to the screen. This allows a summary to be presented after the transaction. When returning results from a search always return installed before available for the same package name. :param info: A valid info enumerated type :param package_id: This identifier is of the form name;version;arch;data in a single string and is meant to represent a single package unique across all local and remote data stores. For a remote, not-installed package the data field should be set as the repository identifier or repository name. The data field for an installed package must be prefixed with installed as this is used to identify which packages are installable or installed in the client tools. As a special extension, if the package manager is able to track which repository a package was originally installed from, then the data field can be set to installed:REPO-NAME which allows the frontend client to advise the user of the package origin. The data field for a non-installed local package must be local as this signifies a repository name is not available and that package resides locally on the client system rather than in any specific repository. :param summary: The one line package summary, e.g. Clipart for OpenOffice """ pklog.debug("Emitting Package signal: %s, %s, %s'", pk.info_enum_to_string(info), package_id, summary[:10]) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="sss") def DistroUpgrade(self, distro_type, name, summary): """This signal allows the backend to communicate distribution upgrades to the session. :param type: A valid upgrade string enumerated type, e.g. stable or unstable :param name: The short name of the distribution, e.g. Fedora Core 10 RC1 :param summary: The multi-line description of the release """ pklog.debug("Emitting DistroUpgrade signal: %s, %s, %s", pk.distro_upgrade_enum_to_string(distro_type), name, summary) # pylint: disable-msg=C0103,C0322 @dbus.service.signal(dbus_interface=PACKAGEKIT_TRANS_DBUS_INTERFACE, signature="us") def RequireRestart(self, restart_type, package_id): """This signal is sent when the session client should notify the user that a restart is required to get all changes into effect. :param package_id: The Package ID of the package tiggering the restart :param file_list: One of system, application or session """ pklog.debug("Emitting RequireRestart signal: %s, %s", pk.restart_enum_to_string(restart_type), package_id) # METHODS # pylint: disable-msg=C0103,C0322 @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="as", out_signature="") def SetHints(self, hints): """This method allows the calling session to set transaction hints for the package manager which can change as the transaction runs. This method can be sent before the transaction has been run or whilst it is running. There is no limit to the number of times this method can be sent, although some backends may only use the values that were set before the transaction was started. Each parameter value is optional. :param hints: The values as an array of strings, for example ['locale=en_GB.utf8','interactive=false','cache-age=3600'] """ pklog.info("SetHints() was called: %s", get_string_from_array(hints)) for hint in hints: key, value = hint.split("=", 1) if key not in ["locale", "idle", "background", "interactive", "cache-age", "frontend-socket"]: raise Exception("Invalid option %s" % key) self.hints[key] = value # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def Cancel(self, sender): """This method cancels a transaction that is already running.""" if self.trans: return self.trans._cancel(sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tasbb", out_signature="", sender_keyword="sender") def RemovePackages(self, flags, package_ids, allow_deps, autoremove, sender): """This method removes packages from the local system. This method typically emits Progress, Status and Error and Package. Package enumerated types should be downloading, updating, installing or removing. :param flags: If the transaction should be simulated or prepared :param package_ids: An array of package IDs. :param allow_deps: Either true or false. If true allow other packages to be removed with the package, but false should cause the script to abort if other packages are dependant on the package. :param autoremove: Either true or false. This option is only really interesting on embedded devices with a limited amount of flash storage. It suggests to the packagekit backend that dependencies installed at the same time as the package should also be removed if they are not required by anything else. For instance, if you install OpenOffice, it might download libneon as a dependency. When auto_remove is set to true, and you remove OpenOffice then libneon will also get removed automatically. """ pklog.info("RemovePackages() was called: %s, %s", get_string_from_flags(flags), get_string_from_array(package_ids)) return self._remove_packages(flags, package_ids, allow_deps, autoremove, sender) @inline_callbacks def _remove_packages(self, flags, package_ids, allow_deps, autoremove, sender): self.role = pk.RoleEnum.REMOVE_PACKAGES self.flags = flags self.trans = self._get_merged_trans(aptd_enums.ROLE_REMOVE_PACKAGES, pkg_ids=package_ids, pkg_type=aptd_enums.PKGS_REMOVE) yield self.trans._set_property(APTDAEMON_TRANSACTION_DBUS_INTERFACE, "RemoveObsoletedDepends", autoremove, sender) # FIXME: Implement allow_deps yield self.trans._run(sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def UpdatePackages(self, flags, package_ids, sender): """This method updates existing packages on the local system. The installer should always update extra packages automatically to fulfil dependencies. This should allow an application to find out what package owns a file on the system. This method typically emits Progress, Status and Error and Package. :param flags: If the transaction is only allowed to install trusted packages. Unsigned packages should not be installed if the flags contains ONLY_TRUSED. If this method is can only install trusted packages, and the packages are unsigned, then the backend will send a ErrorCode(missing-gpg-signature). On recieving this error, the client may choose to retry with ONLY_TRUSTED set after gaining further authentication. : param package_ids: An array of package IDs. """ pklog.info("UpdatePackages() was called: %s, %s", get_string_from_flags(flags), get_string_from_array(package_ids)) return self._update_packages(flags, package_ids, sender) @inline_callbacks def _update_packages(self, flags, package_ids, sender): self.role = pk.RoleEnum.UPDATE_PACKAGES self.flags = flags self.trans = self._get_merged_trans(aptd_enums.ROLE_UPGRADE_PACKAGES, pkg_ids=package_ids, pkg_type=aptd_enums.PKGS_UPGRADE) yield self.trans._set_property( APTDAEMON_TRANSACTION_DBUS_INTERFACE, "AllowUnauthenticated", not bitfield_contains(flags, pk.TransactionFlagEnum.ONLY_TRUSTED), sender) yield self.trans._run(sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="uas", out_signature="", sender_keyword="sender") def InstallPackages(self, flags, package_ids, sender): """This method installs new packages on the local system. The installer should always install extra packages automatically as the use could call GetDepends prior to the install if a confirmation is required in the UI. This method typically emits Progress, Status and Error and Package. Package enumerated types should be downloading, updating, installing or removing. :param flags: If the transaction is only allowed to install trusted packages. Unsigned packages should not be installed if the flags contains ONLY_TRUSED. If this method is can only install trusted packages, and the packages are unsigned, then the backend will send a ErrorCode(missing-gpg-signature). On recieving this error, the client may choose to retry with ONLY_TRUSTED set after gaining further authentication. : param package_ids: An array of package IDs. """ pklog.info("InstallPackages() was called: %s, %s", get_string_from_flags(flags), get_string_from_array(package_ids)) return self._install_packages(flags, package_ids, sender) @inline_callbacks def _install_packages(self, flags, package_ids, sender): self.role = pk.RoleEnum.INSTALL_PACKAGES self.flags = flags self.trans = self._get_merged_trans(aptd_enums.ROLE_INSTALL_PACKAGES, pkg_ids=package_ids, pkg_type=aptd_enums.PKGS_INSTALL) yield self.trans._set_property( APTDAEMON_TRANSACTION_DBUS_INTERFACE, "AllowUnauthenticated", not bitfield_contains(flags, pk.TransactionFlagEnum.ONLY_TRUSTED), sender) yield self.trans._run(sender) # pylint: disable-msg=C0103,C0322 @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="su", out_signature="", sender_keyword="sender") def UpgradeSystem(self, distro_id, upgrade_kind, sender): """This method updates existing packages on the local system. The installer should always update extra packages automatically to fulfil dependencies. This should allow an application to find out what package owns a file on the system. This method typically emits Progress, Status and Error and Package. :param distro_id: The distribution id to upgrade to, e.g. saucy :param upgrade_kind: The type of upgrade e.g. minimal, default or complete. Minimal upgrades will download the smallest amount of data before launching a installer. The default is to download enough data to launch a full graphical installer, but a complete upgrade will be required if there is no internet access during install time. """ pklog.info("UpgradeSystem() was called") GLib.idle_add(self._fail_not_implemented) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="t", out_signature="", sender_keyword="sender") def RepairSystem(self, flags, sender): """This method recovers the package managment system from e.g. unsatisified dependencies of installed packages. :param flags: If the transaction is only allowed to install trusted packages. Unsigned packages should not be installed if the flags contains ONLY_TRUSED. If this method is can only install trusted packages, and the packages are unsigned, then the backend will send a ErrorCode(missing-gpg-signature). On recieving this error, the client may choose to retry with ONLY_TRUSTED set after gaining further authentication. """ pklog.info("RepairSystem() was called") return self._repair_system(flags, sender) @inline_callbacks def _repair_system(self, flags, sender): self.role = pk.RoleEnum.REPAIR_SYSTEM self.flags = flags self.trans = self._get_merged_trans(aptd_enums.ROLE_FIX_BROKEN_DEPENDS) yield self.trans._set_property( APTDAEMON_TRANSACTION_DBUS_INTERFACE, "AllowUnauthenticated", not bitfield_contains(flags, pk.TransactionFlagEnum.ONLY_TRUSTED), sender) yield self.trans._run(sender) # pylint: disable-msg=C0103,C0322 @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="b", out_signature="", sender_keyword="sender") def RefreshCache(self, force, sender): """This method should fetch updated meta-data for all enabled repositories. When fetching each software source, ensure to emit RepoDetail for the current source to give the user interface some extra details. Be sure to have the "enabled" field set to true, otherwise you wouldn't be fetching that source. This method typically emits Progress, Error and RepoDetail. :param force: If the caches should be cleaned and reloaded even if there is valid, up to date data. """ pklog.info("RefreshCache() was called") self.role = pk.RoleEnum.REFRESH_CACHE return self._refresh_cache(force, sender) @inline_callbacks def _refresh_cache(self, force, sender): self.trans = self._get_merged_trans(aptd_enums.ROLE_UPDATE_CACHE, kwargs={"sources_list": None}) yield self.trans._run(sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="as", out_signature="", sender_keyword="sender") def GetUpdateDetail(self, package_ids, sender): """This method returns details about a specific update. This method typically emits UpdateDetail and Error :param package_ids: An array of package IDs. """ pklog.info("GetUpdateDetail() was called") self.role = pk.RoleEnum.GET_UPDATE_DETAIL kwargs = {"package_ids": package_ids} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="t", out_signature="", sender_keyword="sender") def GetUpdates(self, filter, sender): """This method should return a list of packages that are installed and are upgradable. It should only return the newest update for each installed package. This method typically emits Progress, Error and Package. :param filter: A correct filter, e.g. none or installed;~devel """ pklog.info("GetUpdates() was called") self.role = pk.RoleEnum.GET_UPDATES kwargs = {"filters": filter} return self._run_query(kwargs, sender) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def GetDistroUpgrades(self, sender): """This method should return a list of distribution upgrades that are available. It should not return updates, only major upgrades. This method typically emits DistroUpgrade, Error """ pklog.info("GetDistroUpgrades() was called") self.role = pk.RoleEnum.GET_DISTRO_UPGRADES self.status = pk.StatusEnum.RUNNING GLib.idle_add(defer_idle, self._get_distro_upgrades) def _get_distro_upgrades(self): # FIXME: Should go into the worker after the threading branch is merged # It allows to run a nested loop until the download is finished self.allow_cancel = False self.percentage = 101 self.status = pk.StatusEnum.DOWNLOAD_UPDATEINFO if META_RELEASE_SUPPORT is False: self.ErrorCode(pk.ErrorEnum.INTERNAL_ERROR, "Please make sure that update-manager-core is" "correctly installed.") self.exit = pk.ExitEnum.FAILED return # FIXME Evil to start the download during init meta_release = GMetaRelease() meta_release.connect("download-done", self._on_distro_upgrade_download_done) def _on_distro_upgrade_download_done(self, meta_release): # FIXME: Add support for description if meta_release.new_dist is not None: self.DistroUpgrade("stable", "%s %s" % (meta_release.new_dist.name, meta_release.new_dist.version), "The latest stable release") self.exit = pk.ExitEnum.SUCCESS @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def Resolve(self, filter, packages, sender): """This method turns a single package name into a package_id suitable for the other methods. If the package is a fully formed package_id, then this should be treated as an exact package match. This is useful to find the summary or installed status of a package_id returned from other methods. This method typically emits Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param packages: An array of package names, e.g. scribus-clipart. The package names are case sensitive, so for instance: Resolve('Packagekit') would not match PackageKit. As a special case, if Resolve() is called with a name prefixed with @ then this should be treated as a category, for example: @web-development. In this instance, a meta-package should be emitted, for example: web-development;;;meta with the correct installed status and summary for the category. """ pklog.info("Resolve() was called: %s", get_string_from_array(packages)) self.role = pk.RoleEnum.RESOLVE kwargs = {"filters": filter, "packages": packages} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="t", out_signature="", sender_keyword="sender") def GetPackages(self, filter, sender): """This method returns all the packages without a search term. This method typically emits Progress, Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel """ pklog.info("GetPackages() was called") self.role = pk.RoleEnum.GET_PACKAGES kwargs = {"filters": filter} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="as", out_signature="", sender_keyword="sender") def GetDetails(self, package_ids, sender): """This method should return all the details about a specific package_id. This method typically emits Progress, Status and Error and Details. :param package_ids: An array of package IDs. """ pklog.info("GetDetails() was called") self.role = pk.RoleEnum.GET_DETAILS kwargs = {"package_ids": package_ids} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="as", out_signature="", sender_keyword="sender") def GetFiles(self, package_ids, sender): """This method should return the file list of the package_id. This method typically emits Progress, Status and Error and Files. :param package_ids: An array of package IDs. """ pklog.info("GetFiles() was called") self.role = pk.RoleEnum.GET_FILES kwargs = {"package_ids": package_ids} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def SearchFiles(self, filter, values, sender): """This method searches for files on the local system and files in available packages. This should search for files. This should allow an application to find out what package owns a file on the system. This method typically emits Progress, Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param values: A filename or fully qualified path and filename on the system. If the search term begins with a / it will be assumed the entire path has been given and only packages that contain this exact path and filename will be returned. If the search term does not start with / then it should be treated as a single filename, which can be in any directory. The search is case sensitive, and should not be escaped or surrounded in quotes. """ pklog.info("SearchFiles() was called") self.role = pk.RoleEnum.SEARCH_FILE kwargs = {"filters": filter, "values": values} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def SearchDetails(self, filter, values, sender): """This method allows deeper searching than SearchName(). Do not refresh the package cache. This should be fast. This is very similar to search-name. This should search as much data as possible, including, if possible repo names, package summaries, descriptions, licenses and URLs. Try to emit installed before available packages first, as it allows the client program to perform the GUI filtering and matching whilst the daemon is running the transaction. If the backend includes installed and available versions of the same package when searching then the available version will have to be filtered in the backend. This method typically emits Progress, Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param values: A single word search term with no wildcard chars. The search term can contain many words separated by spaces. In this case, the search operator is AND. For example, search of gnome power should returns gnome-power-manager but not gnomesword or powertop. The search should not be treated as case sensitive. """ pklog.info("SearchDetails() was called") self.role = pk.RoleEnum.SEARCH_DETAILS kwargs = {"filters": filter, "values": values} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def SearchGroups(self, filter, values, sender): """This method returns packages from a given group enumerated type. Do not refresh the package cache. This should be fast. Try to emit installed before available packages first, as it allows the client program to perform the GUI filtering and matching whilst the daemon is running the transaction. If the backend includes installed and available versions of the same package when searching then the available version will have to be filtered in the backend. This method typically emits Progress, Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param values: An enumerated group type, or unknown. The search cannot contain spaces. The following recommendations are made below: If the values strings are prefixed with category: then the request is treated as a 'category search', for example: category:web-development. repo: then the request is treated as a 'repository search', for example: repo:fedora-debuginfo. In this instance all packages that were either installed from, or can be installed from the fedora-debuginfo source would be returned. """ pklog.info("SearchGroups() was called") self.role = pk.RoleEnum.SEARCH_GROUP kwargs = {"filters": filter, "values": values} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def SearchNames(self, filter, values, sender): """This method searches the package database by package name. Try to emit installed before available packages first, as it allows the client program to perform the GUI filtering and matching whilst the daemon is running the transaction. If the backend includes installed and available versions of the same package when searching then the available version will have to be filtered in the backend. The search methods should return all results in all repositories. This may mean that multiple versions of package are returned. If this is not what is wanted by the client program, then the newest filter should be used. This method typically emits Progress, Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param values: A single word search term with no wildcard chars. The search term can contain many words separated by spaces. In this case, the search operator is AND. For example, search of gnome power should returns gnome-power-manager but not gnomesword or powertop. The search should not be treated as case sensitive. """ pklog.info("SearchNames() was called") self.role = pk.RoleEnum.SEARCH_NAME kwargs = {"filters": filter, "values": values} return self._run_query(kwargs, sender) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="s", out_signature="", sender_keyword="sender") def AcceptEula(self, eula_id, sender): """This method allows the user to accept a end user licence agreement. :param eula_id: A valid EULA ID """ self.role = pk.RoleEnum.ACCEPT_EULA GLib.idle_add(self._fail_not_implemented) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="bas", out_signature="", sender_keyword="sender") def DownloadPackages(self, store_in_cache, package_ids, sender): """This method downloads packages into a temporary directory. This method should emit one Files signal for each package that is downloaded, with the file list set as the name of the complete downloaded file and directory, so for example: DownloadPackages('hal;0.1.2;i386;fedora', 'hal-info;2009-09-07;no-arch;updates') should send two signals, e.g. Files('hal;0.1.2;i386;fedora', '/tmp/hal-0.1.2.i386.rpm') and Files('hal-info;2009-09-07;no-arch;updates', '/tmp/hal-info-2009-09-07.noarch.rpm'). :param store_in_cache: If the downloaded files should be stored in the system package cache rather than copied into a newly created directory. See the developer docs for more details on how this is supposed to work. :param package_ids: An array of package IDs. """ pklog.info("DownloadPackages() was called: %s", get_string_from_array(package_ids)) self.role = pk.RoleEnum.DOWNLOAD_PACKAGES kwargs = {"store_in_cache": store_in_cache, "package_ids": package_ids} return self._run_query(kwargs, sender) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="u", out_signature="", sender_keyword="sender") def GetOldTransactions(self, number, sender): """This method allows a client to view details for old transactions. :param number: The number of past transactions, or 0 for all known transactions. """ pklog.info("GetOldTransactions() was called: %s", str(number)) self.role = pk.RoleEnum.GET_OLD_TRANSACTIONS GLib.idle_add(self._fail_not_implemented) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="t", out_signature="", sender_keyword="sender") def GetRepoList(self, filter, sender): """This method returns the list of repositories used in the system. This method should emit RepoDetail. :param filter: A correct filter, e.g. none or installed;~devel """ pklog.info("GetRepoList() was called") self.role = pk.RoleEnum.GET_REPO_LIST GLib.idle_add(self._fail_not_implemented) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tas", out_signature="", sender_keyword="sender") def InstallFiles(self, flags, full_paths, sender): """This method installs local package files onto the local system. The installer should always install extra dependant packages automatically. This method typically emits Progress, Status and Error and Package. Package enumerated types should be downloading, updating, installing or removing. :param flags: If the transaction is only allowed to install trusted packages. Unsigned packages should not be installed if the flags contains ONLY_TRUSED. If this method is can only install trusted packages, and the packages are unsigned, then the backend will send a ErrorCode(missing-gpg-signature). On recieving this error, the client may choose to retry with ONLY_TRUSTED set after gaining further authentication. :param full_paths: An array of full path and filenames to packages. """ pklog.info("InstallFiles() was called: %s, %s", get_string_from_flags(flags), get_string_from_array(full_paths)) return self._install_files(flags, full_paths, sender) @inline_callbacks def _install_files(self, flags, full_paths, sender): self.role = pk.RoleEnum.INSTALL_FILES self.flags = flags # Python-APT only supports installing one file if len(full_paths) != 1: self.ErrorCode(pk.ErrorEnum.NOT_SUPPORTED, "Only one package can be " "installed at the same time.") self.exit = pk.ExitEnum.FAILED raise StopIteration path = full_paths[0] if not os.path.abspath(path): self.ErrorCode(pk.ErrorEnum.NOT_SUPPORTED, "Path is not absolute: %s") self.exit = pk.ExitEnum.FAILED raise StopIteration if not os.path.isfile(path): self.ErrorCode(pk.ErrorEnum.INVALID_PACKAGE_FILE, "File doesn't exist: %s" % path) self.exit = pk.ExitEnum.FAILED raise StopIteration kwargs = {"path": path, "force": True} self.trans = self._get_merged_trans(aptd_enums.ROLE_INSTALL_FILE, kwargs=kwargs) yield self.trans._run(sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="uss", out_signature="", sender_keyword="sender") def InstallSignature(self, sig_type, key_id, package_id, sender): """This method allows us to install new security keys. :param sig_type: A key type, e.g. gpg :param key_id: A key ID, e.g. BB7576AC :param package_id: A PackageID for the package that the user is trying to install (ignored) """ pklog.info("InstallSignature() was called: %s", str(key_id)) self.role = pk.RoleEnum.INSTALL_SIGNATURE kwargs = {"sig_type": sig_type, "key_id": key_id, "package_id": package_id} return self._run_query(kwargs, sender) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="sss", out_signature="", sender_keyword="sender") def RepoSetData(self, repo_id, parameter, value, sender): """This method allows arbitary data to be passed to the repository handler. :param repo_id: A repository identifier, e.g. fedora-development-debuginfo :param parameter: The backend specific value, e.g. set-download-url. :param value: The backend specific value, e.g. http://foo.bar.org/baz. """ pklog.info("RepoSetData() was called: %s, %s, %s", str(repo_id), str(parameter), str(value)) self.role = pk.RoleEnum.REPO_SET_DATA GLib.idle_add(self._fail_not_implemented) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="sb", out_signature="", sender_keyword="sender") def RepoEnable(self, repo_id, enabled, sender): """This method enables the repository specified. :param repo_id: A repository identifier, e.g. fedora-development-debuginfo or an apt source ("deb http://... unstable main") :param enabled: true if enabled, false if disabled. """ pklog.info("RepoEnable() was called(): %s, %s", str(repo_id), str(enabled)) self.role = pk.RoleEnum.REPO_ENABLE kwargs = {"repo_id": repo_id, "enabled": enabled} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tsas", out_signature="", sender_keyword="sender") def WhatProvides(self, filter, type, values, sender): """This method returns packages that provide the supplied attributes. This method is useful for finding out what package(s) provide a modalias or GStreamer codec string. This method typically emits Progress, Status and Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param type: A PkProvideType, e.g. PK_PROVIDES_ENUM_CODEC. :param values: The data to send to the backend to get the packages. Note: This is backend specific. """ pklog.info("WhatProvides() was called") self.role = pk.RoleEnum.WHAT_PROVIDES kwargs = {"filters": filter, "provides_type": type, "values": values} return self._run_query(kwargs, sender) @dbus.service.method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="", out_signature="", sender_keyword="sender") def GetCategories(self, sender): pklog.info("GetCategories() was called") """This method return the collection categories""" self.role = pk.RoleEnum.GET_CATEGORIES GLib.idle_add(self._fail_not_implemented) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tasb", out_signature="", sender_keyword="sender") def GetRequires(self, filter, package_ids, recursive, sender): """This method returns packages that depend on this package. This is useful to know, as if package_id is being removed, we can warn the user what else would be removed. This method typically emits Progress, Status and Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param package_ids: An array of package IDs. :param recursive: Either true or false. If yes then the requirements should be returned for all packages returned. This means if gnome-power-manager depends on NetworkManager and NetworkManager depends on HAL, then GetRequires on HAL should return both gnome-power-manager and NetworkManager. """ pklog.info("GetRequires() was called") self.role = pk.RoleEnum.GET_REQUIRES kwargs = {"filters": filter, "package_ids": package_ids, "recursive": recursive} return self._run_query(kwargs, sender) @dbus_deferred_method(PACKAGEKIT_TRANS_DBUS_INTERFACE, in_signature="tasb", out_signature="", sender_keyword="sender") def GetDepends(self, filter, package_ids, recursive, sender): """This method returns packages that this package depends on. This method typically emits Progress, Status and Error and Package. Package enumerated types should be available or installed. :param filter: A correct filter, e.g. none or installed;~devel :param package_ids: An array of package IDs. :param recursive: Either true or false. If yes then the requirements should be returned for all packages returned. This means if gnome-power-manager depends on NetworkManager and NetworkManager depends on HAL, then GetDepends on gnome-power-manager should return both HAL and NetworkManager. """ pklog.info("GetDepends() was called") self.role = pk.RoleEnum.GET_DEPENDS kwargs = {"filters": filter, "package_ids": package_ids, "recursive": recursive} return self._run_query(kwargs, sender) # HELPERS def _fail_not_implemented(self): self.ErrorCode(pk.ErrorEnum.NOT_SUPPORTED, "Unimplemented method") self.exit = pk.ExitEnum.FAILED return False def _get_properties(self, iface): """Helper to get the properties of a D-Bus interface.""" if iface == PACKAGEKIT_TRANS_DBUS_INTERFACE: return {"Role": dbus.UInt32(self.role), "Status": dbus.UInt32(self.status), "LastPackage": dbus.String(self.last_package), "Uid": dbus.UInt32(self.uid), "Percentage": dbus.UInt32(self.percentage), "AllowCancel": dbus.Boolean(self.allow_cancel), "CallerActive": dbus.Boolean(self.caller_active), "ElapsedTime": dbus.UInt32(self.elapsed_time), "RemainingTime": dbus.UInt32(self.remaining_time), "DownloadSizeRemaining": dbus.UInt64( self.download_size_remaining), "TransactionFlags": dbus.UInt64(self.flags), "Speed": dbus.UInt32(self.speed) } else: return {} @inline_callbacks def _run_query(self, kwargs, sender): self.trans = self._get_merged_trans(aptd_enums.ROLE_PK_QUERY, kwargs=kwargs) yield self.trans._run(sender) def _get_aptd_package_id(self, pk_id): """Convert a PackageKit Package ID to the apt syntax. e.g. xterm;235;i386;installed to xterm:i386=235 """ name, version, arch, data = pk_id.split(";") id = name if arch != self.queue.worker.NATIVE_ARCH and arch != "all": id += ":%s" % arch if version: id += "=%s" % version if data and data not in ["local", "installed"]: id += "/%s" % data return id def _get_merged_trans(self, role, pkg_ids=None, pkg_type=None, kwargs=None): if pkg_ids: packages = [[], [], [], [], [], []] packages[pkg_type] = [self._get_aptd_package_id(pkg) for pkg in pkg_ids] else: packages = None if self.trans: raise Exception("%s: Transaction may only run once." % pk.ErrorEnum.TRANSACTION_FAILED) trans = MergedTransaction(self, role, self.queue, packages=packages, kwargs=kwargs) try: trans._set_locale(self.hints["locale"]) except (KeyError, ValueError): # If the locale isn't vaild or supported a ValueError # will be raised pass try: trans._set_debconf(self.hints["frontend-socket"]) except KeyError: pass self.queue.limbo[trans.tid] = trans return trans if META_RELEASE_SUPPORT: class GMetaRelease(GObject.GObject, MetaReleaseCore): __gsignals__ = {"download-done": (GObject.SignalFlags.RUN_FIRST, None, ())} def __init__(self): GObject.GObject.__init__(self) MetaReleaseCore.__init__(self, False, False) def download(self): MetaReleaseCore.download(self) self.emit("download-done") def get_pk_exit_enum(enum): try: return MAP_EXIT_ENUM[enum] except KeyError: return pk.ExitEnum.UNKNOWN def get_pk_status_enum(enum): try: return MAP_STATUS_ENUM[enum] except KeyError: return pk.StatusEnum.UNKNOWN def get_pk_package_enum(enum): try: return MAP_PACKAGE_ENUM[enum] except KeyError: return pk.InfoEnum.UNKNOWN def get_pk_error_enum(enum): try: return MAP_ERROR_ENUM[enum] except KeyError: return pk.ErrorEnum.UNKNOWN def get_pk_package_id(pk_id, data=""): """Convert an AptDaemon package ID to the PackageKit syntax. e.g. xterm:i368=235; to xterm;235;i386;installed """ # FIXME add arch support name, version, release = split_package_id(pk_id) try: name, arch = name.split(":", 1) except ValueError: arch = "" if version is None: version = "" if release is None: release = "" return "%s;%s;%s;%s" % (name, version, arch, data or release) def defer_idle(func, *args): func(*args) return False def get_string_from_flags(flags): """Return a human readable string of the applied transaction flags.""" ret = "" if flags == pk.TransactionFlagEnum.NONE: return "simulate" if bitfield_contains(flags, pk.TransactionFlagEnum.SIMULATE): ret += " simulate" if bitfield_contains(flags, pk.TransactionFlagEnum.ONLY_DOWNLOAD): ret += " only-download" if bitfield_contains(flags, pk.TransactionFlagEnum.ONLY_TRUSTED): ret += " only-trusted" return ret.strip() def get_string_from_array(array): """Convert a DBus Array to a human readable format""" return [str(value) for value in array] # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/aptdaemon/pkenums.py0000644000000000000000000014110612161264076016660 0ustar 00000000000000# This file was autogenerated from ../../../lib/packagekit-glib2/pk-enum.c by enum-converter.py class PackageKitEnum: exit = ( "unknown", "success", "failed", "cancelled", "key-required", "eula-required", "media-change-required", "killed", "need-untrusted", "cancelled-priority", "skip-transaction", "repair-required", ) status = ( "unknown", "wait", "setup", "running", "query", "info", "refresh-cache", "remove", "download", "install", "update", "cleanup", "obsolete", "dep-resolve", "sig-check", "test-commit", "commit", "request", "finished", "cancel", "download-repository", "download-packagelist", "download-filelist", "download-changelog", "download-group", "download-updateinfo", "repackaging", "loading-cache", "scan-applications", "generate-package-list", "waiting-for-lock", "waiting-for-auth", "scan-process-list", "check-executable-files", "check-libraries", "copy-files", ) role = ( "unknown", "cancel", "get-depends", "get-details", "get-files", "get-packages", "get-repo-list", "get-requires", "get-update-detail", "get-updates", "install-files", "install-packages", "install-signature", "refresh-cache", "remove-packages", "repo-enable", "repo-set-data", "resolve", "search-details", "search-file", "search-group", "search-name", "update-packages", "what-provides", "accept-eula", "download-packages", "get-distro-upgrades", "get-categories", "get-old-transactions", "upgrade-system", "repair-system", ) error = ( "unknown", "out-of-memory", "no-cache", "no-network", "not-supported", "internal-error", "gpg-failure", "filter-invalid", "package-id-invalid", "transaction-error", "transaction-cancelled", "package-not-installed", "package-not-found", "package-already-installed", "package-download-failed", "group-not-found", "group-list-invalid", "dep-resolution-failed", "create-thread-failed", "repo-not-found", "cannot-remove-system-package", "process-kill", "failed-initialization", "failed-finalise", "failed-config-parsing", "cannot-cancel", "cannot-get-lock", "no-packages-to-update", "cannot-write-repo-config", "local-install-failed", "bad-gpg-signature", "missing-gpg-signature", "cannot-install-source-package", "repo-configuration-error", "no-license-agreement", "file-conflicts", "package-conflicts", "repo-not-available", "invalid-package-file", "package-install-blocked", "package-corrupt", "all-packages-already-installed", "file-not-found", "no-more-mirrors-to-try", "no-distro-upgrade-data", "incompatible-architecture", "no-space-on-device", "media-change-required", "not-authorized", "update-not-found", "cannot-install-repo-unsigned", "cannot-update-repo-unsigned", "cannot-get-filelist", "cannot-get-requires", "cannot-disable-repository", "restricted-download", "package-failed-to-configure", "package-failed-to-build", "package-failed-to-install", "package-failed-to-remove", "failed-due-to-running-process", "package-database-changed", "provide-type-not-supported", "install-root-invalid", "cannot-fetch-sources", "cancelled-priority", "unfinished-transaction", "lock-required", ) restart = ( "unknown", "none", "system", "session", "application", "security-system", "security-session", ) message = ( "unknown", "broken-mirror", "connection-refused", "parameter-invalid", "priority-invalid", "backend-error", "daemon-error", "cache-being-rebuilt", "newer-package-exists", "could-not-find-package", "config-files-changed", "package-already-installed", "autoremove-ignored", "repo-metadata-download-failed", "repo-for-developers-only", "other-updates-held-back", ) filter = ( "unknown", "none", "installed", "~installed", "devel", "~devel", "gui", "~gui", "free", "~free", "visible", "~visible", "supported", "~supported", "basename", "~basename", "newest", "~newest", "arch", "~arch", "source", "~source", "collections", "~collections", "application", "~application", ) group = ( "unknown", "accessibility", "accessories", "education", "games", "graphics", "internet", "office", "other", "programming", "multimedia", "system", "desktop-gnome", "desktop-kde", "desktop-xfce", "desktop-other", "publishing", "servers", "fonts", "admin-tools", "legacy", "localization", "virtualization", "power-management", "security", "communication", "network", "maps", "repos", "science", "documentation", "electronics", "collections", "vendor", "newest", ) update_state = ( "unknown", "testing", "unstable", "stable", ) info = ( "unknown", "installed", "available", "low", "normal", "important", "security", "bugfix", "enhancement", "blocked", "downloading", "updating", "installing", "removing", "cleanup", "obsoleting", "collection-installed", "collection-available", "finished", "reinstalling", "downgrading", "preparing", "decompressing", "untrusted", "trusted", ) sig_type = ( "unknown", "gpg", ) upgrade = ( "unknown", "stable", "unstable", ) provides = ( "unknown", "any", "modalias", "codec", "mimetype", "driver", "font", "postscript-driver", "plasma-service", "shared-library", "python-module", "language-support", ) network = ( "unknown", "offline", "online", "wired", "wifi", "mobile", ) media_type = ( "unknown", "cd", "dvd", "disc", ) authorize_type = ( "unknown", "yes", "no", "interactive", ) upgrade_kind = ( "unknown", "minimal", "default", "complete", ) transaction_flag = ( "none", "only-trusted", "simulate", "only-download", ) # Constants AUTHORIZE_INTERACTIVE = "interactive" AUTHORIZE_NO = "no" AUTHORIZE_UNKNOWN = "unknown" AUTHORIZE_YES = "yes" DISTRO_UPGRADE_STABLE = "stable" DISTRO_UPGRADE_UNKNOWN = "unknown" DISTRO_UPGRADE_UNSTABLE = "unstable" ERROR_ALL_PACKAGES_ALREADY_INSTALLED = "all-packages-already-installed" ERROR_BAD_GPG_SIGNATURE = "bad-gpg-signature" ERROR_CANCELLED_PRIORITY = "cancelled-priority" ERROR_CANNOT_CANCEL = "cannot-cancel" ERROR_CANNOT_DISABLE_REPOSITORY = "cannot-disable-repository" ERROR_CANNOT_FETCH_SOURCES = "cannot-fetch-sources" ERROR_CANNOT_GET_FILELIST = "cannot-get-filelist" ERROR_CANNOT_GET_LOCK = "cannot-get-lock" ERROR_CANNOT_GET_REQUIRES = "cannot-get-requires" ERROR_CANNOT_INSTALL_REPO_UNSIGNED = "cannot-install-repo-unsigned" ERROR_CANNOT_INSTALL_SOURCE_PACKAGE = "cannot-install-source-package" ERROR_CANNOT_REMOVE_SYSTEM_PACKAGE = "cannot-remove-system-package" ERROR_CANNOT_UPDATE_REPO_UNSIGNED = "cannot-update-repo-unsigned" ERROR_CANNOT_WRITE_REPO_CONFIG = "cannot-write-repo-config" ERROR_CREATE_THREAD_FAILED = "create-thread-failed" ERROR_DEP_RESOLUTION_FAILED = "dep-resolution-failed" ERROR_FAILED_CONFIG_PARSING = "failed-config-parsing" ERROR_FAILED_FINALISE = "failed-finalise" ERROR_FAILED_INITIALIZATION = "failed-initialization" ERROR_FILE_CONFLICTS = "file-conflicts" ERROR_FILE_NOT_FOUND = "file-not-found" ERROR_FILTER_INVALID = "filter-invalid" ERROR_GPG_FAILURE = "gpg-failure" ERROR_GROUP_LIST_INVALID = "group-list-invalid" ERROR_GROUP_NOT_FOUND = "group-not-found" ERROR_INCOMPATIBLE_ARCHITECTURE = "incompatible-architecture" ERROR_INSTALL_ROOT_INVALID = "install-root-invalid" ERROR_INTERNAL_ERROR = "internal-error" ERROR_INVALID_PACKAGE_FILE = "invalid-package-file" ERROR_LOCAL_INSTALL_FAILED = "local-install-failed" ERROR_LOCK_REQUIRED = "lock-required" ERROR_MEDIA_CHANGE_REQUIRED = "media-change-required" ERROR_MISSING_GPG_SIGNATURE = "missing-gpg-signature" ERROR_NOT_AUTHORIZED = "not-authorized" ERROR_NOT_SUPPORTED = "not-supported" ERROR_NO_CACHE = "no-cache" ERROR_NO_DISTRO_UPGRADE_DATA = "no-distro-upgrade-data" ERROR_NO_LICENSE_AGREEMENT = "no-license-agreement" ERROR_NO_MORE_MIRRORS_TO_TRY = "no-more-mirrors-to-try" ERROR_NO_NETWORK = "no-network" ERROR_NO_PACKAGES_TO_UPDATE = "no-packages-to-update" ERROR_NO_SPACE_ON_DEVICE = "no-space-on-device" ERROR_OOM = "out-of-memory" ERROR_PACKAGE_ALREADY_INSTALLED = "package-already-installed" ERROR_PACKAGE_CONFLICTS = "package-conflicts" ERROR_PACKAGE_CORRUPT = "package-corrupt" ERROR_PACKAGE_DATABASE_CHANGED = "package-database-changed" ERROR_PACKAGE_DOWNLOAD_FAILED = "package-download-failed" ERROR_PACKAGE_FAILED_TO_BUILD = "package-failed-to-build" ERROR_PACKAGE_FAILED_TO_CONFIGURE = "package-failed-to-configure" ERROR_PACKAGE_FAILED_TO_INSTALL = "package-failed-to-install" ERROR_PACKAGE_FAILED_TO_REMOVE = "package-failed-to-remove" ERROR_PACKAGE_ID_INVALID = "package-id-invalid" ERROR_PACKAGE_INSTALL_BLOCKED = "package-install-blocked" ERROR_PACKAGE_NOT_FOUND = "package-not-found" ERROR_PACKAGE_NOT_INSTALLED = "package-not-installed" ERROR_PROCESS_KILL = "process-kill" ERROR_PROVIDE_TYPE_NOT_SUPPORTED = "provide-type-not-supported" ERROR_REPO_CONFIGURATION_ERROR = "repo-configuration-error" ERROR_REPO_NOT_AVAILABLE = "repo-not-available" ERROR_REPO_NOT_FOUND = "repo-not-found" ERROR_RESTRICTED_DOWNLOAD = "restricted-download" ERROR_TRANSACTION_CANCELLED = "transaction-cancelled" ERROR_TRANSACTION_ERROR = "transaction-error" ERROR_UNFINISHED_TRANSACTION = "unfinished-transaction" ERROR_UNKNOWN = "unknown" ERROR_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS = "failed-due-to-running-process" ERROR_UPDATE_NOT_FOUND = "update-not-found" EXIT_CANCELLED = "cancelled" EXIT_CANCELLED_PRIORITY = "cancelled-priority" EXIT_EULA_REQUIRED = "eula-required" EXIT_FAILED = "failed" EXIT_KEY_REQUIRED = "key-required" EXIT_KILLED = "killed" EXIT_MEDIA_CHANGE_REQUIRED = "media-change-required" EXIT_NEED_UNTRUSTED = "need-untrusted" EXIT_REPAIR_REQUIRED = "repair-required" EXIT_SKIP_TRANSACTION = "skip-transaction" EXIT_SUCCESS = "success" EXIT_UNKNOWN = "unknown" FILTER_APPLICATION = "application" FILTER_ARCH = "arch" FILTER_BASENAME = "basename" FILTER_COLLECTIONS = "collections" FILTER_DEVELOPMENT = "devel" FILTER_FREE = "free" FILTER_GUI = "gui" FILTER_INSTALLED = "installed" FILTER_NEWEST = "newest" FILTER_NONE = "none" FILTER_NOT_APPLICATION = "~application" FILTER_NOT_ARCH = "~arch" FILTER_NOT_BASENAME = "~basename" FILTER_NOT_COLLECTIONS = "~collections" FILTER_NOT_DEVELOPMENT = "~devel" FILTER_NOT_FREE = "~free" FILTER_NOT_GUI = "~gui" FILTER_NOT_INSTALLED = "~installed" FILTER_NOT_NEWEST = "~newest" FILTER_NOT_SOURCE = "~source" FILTER_NOT_SUPPORTED = "~supported" FILTER_NOT_VISIBLE = "~visible" FILTER_SOURCE = "source" FILTER_SUPPORTED = "supported" FILTER_UNKNOWN = "unknown" FILTER_VISIBLE = "visible" GROUP_ACCESSIBILITY = "accessibility" GROUP_ACCESSORIES = "accessories" GROUP_ADMIN_TOOLS = "admin-tools" GROUP_COLLECTIONS = "collections" GROUP_COMMUNICATION = "communication" GROUP_DESKTOP_GNOME = "desktop-gnome" GROUP_DESKTOP_KDE = "desktop-kde" GROUP_DESKTOP_OTHER = "desktop-other" GROUP_DESKTOP_XFCE = "desktop-xfce" GROUP_DOCUMENTATION = "documentation" GROUP_EDUCATION = "education" GROUP_ELECTRONICS = "electronics" GROUP_FONTS = "fonts" GROUP_GAMES = "games" GROUP_GRAPHICS = "graphics" GROUP_INTERNET = "internet" GROUP_LEGACY = "legacy" GROUP_LOCALIZATION = "localization" GROUP_MAPS = "maps" GROUP_MULTIMEDIA = "multimedia" GROUP_NETWORK = "network" GROUP_NEWEST = "newest" GROUP_OFFICE = "office" GROUP_OTHER = "other" GROUP_POWER_MANAGEMENT = "power-management" GROUP_PROGRAMMING = "programming" GROUP_PUBLISHING = "publishing" GROUP_REPOS = "repos" GROUP_SCIENCE = "science" GROUP_SECURITY = "security" GROUP_SERVERS = "servers" GROUP_SYSTEM = "system" GROUP_UNKNOWN = "unknown" GROUP_VENDOR = "vendor" GROUP_VIRTUALIZATION = "virtualization" INFO_AVAILABLE = "available" INFO_BLOCKED = "blocked" INFO_BUGFIX = "bugfix" INFO_CLEANUP = "cleanup" INFO_COLLECTION_AVAILABLE = "collection-available" INFO_COLLECTION_INSTALLED = "collection-installed" INFO_DECOMPRESSING = "decompressing" INFO_DOWNGRADING = "downgrading" INFO_DOWNLOADING = "downloading" INFO_ENHANCEMENT = "enhancement" INFO_FINISHED = "finished" INFO_IMPORTANT = "important" INFO_INSTALLED = "installed" INFO_INSTALLING = "installing" INFO_LOW = "low" INFO_NORMAL = "normal" INFO_OBSOLETING = "obsoleting" INFO_PREPARING = "preparing" INFO_REINSTALLING = "reinstalling" INFO_REMOVING = "removing" INFO_SECURITY = "security" INFO_TRUSTED = "trusted" INFO_UNKNOWN = "unknown" INFO_UNTRUSTED = "untrusted" INFO_UPDATING = "updating" MEDIA_TYPE_CD = "cd" MEDIA_TYPE_DISC = "disc" MEDIA_TYPE_DVD = "dvd" MEDIA_TYPE_UNKNOWN = "unknown" MESSAGE_AUTOREMOVE_IGNORED = "autoremove-ignored" MESSAGE_BACKEND_ERROR = "backend-error" MESSAGE_BROKEN_MIRROR = "broken-mirror" MESSAGE_CACHE_BEING_REBUILT = "cache-being-rebuilt" MESSAGE_CONFIG_FILES_CHANGED = "config-files-changed" MESSAGE_CONNECTION_REFUSED = "connection-refused" MESSAGE_COULD_NOT_FIND_PACKAGE = "could-not-find-package" MESSAGE_DAEMON_ERROR = "daemon-error" MESSAGE_NEWER_PACKAGE_EXISTS = "newer-package-exists" MESSAGE_OTHER_UPDATES_HELD_BACK = "other-updates-held-back" MESSAGE_PACKAGE_ALREADY_INSTALLED = "package-already-installed" MESSAGE_PARAMETER_INVALID = "parameter-invalid" MESSAGE_PRIORITY_INVALID = "priority-invalid" MESSAGE_REPO_FOR_DEVELOPERS_ONLY = "repo-for-developers-only" MESSAGE_REPO_METADATA_DOWNLOAD_FAILED = "repo-metadata-download-failed" MESSAGE_UNKNOWN = "unknown" NETWORK_MOBILE = "mobile" NETWORK_OFFLINE = "offline" NETWORK_ONLINE = "online" NETWORK_UNKNOWN = "unknown" NETWORK_WIFI = "wifi" NETWORK_WIRED = "wired" PROVIDES_ANY = "any" PROVIDES_CODEC = "codec" PROVIDES_FONT = "font" PROVIDES_HARDWARE_DRIVER = "driver" PROVIDES_LANGUAGE_SUPPORT = "language-support" PROVIDES_MIMETYPE = "mimetype" PROVIDES_MODALIAS = "modalias" PROVIDES_PLASMA_SERVICE = "plasma-service" PROVIDES_POSTSCRIPT_DRIVER = "postscript-driver" PROVIDES_PYTHON = "python-module" PROVIDES_SHARED_LIB = "shared-library" PROVIDES_UNKNOWN = "unknown" RESTART_APPLICATION = "application" RESTART_NONE = "none" RESTART_SECURITY_SESSION = "security-session" RESTART_SECURITY_SYSTEM = "security-system" RESTART_SESSION = "session" RESTART_SYSTEM = "system" RESTART_UNKNOWN = "unknown" ROLE_ACCEPT_EULA = "accept-eula" ROLE_CANCEL = "cancel" ROLE_DOWNLOAD_PACKAGES = "download-packages" ROLE_GET_CATEGORIES = "get-categories" ROLE_GET_DEPENDS = "get-depends" ROLE_GET_DETAILS = "get-details" ROLE_GET_DISTRO_UPGRADES = "get-distro-upgrades" ROLE_GET_FILES = "get-files" ROLE_GET_OLD_TRANSACTIONS = "get-old-transactions" ROLE_GET_PACKAGES = "get-packages" ROLE_GET_REPO_LIST = "get-repo-list" ROLE_GET_REQUIRES = "get-requires" ROLE_GET_UPDATES = "get-updates" ROLE_GET_UPDATE_DETAIL = "get-update-detail" ROLE_INSTALL_FILES = "install-files" ROLE_INSTALL_PACKAGES = "install-packages" ROLE_INSTALL_SIGNATURE = "install-signature" ROLE_REFRESH_CACHE = "refresh-cache" ROLE_REMOVE_PACKAGES = "remove-packages" ROLE_REPAIR_SYSTEM = "repair-system" ROLE_REPO_ENABLE = "repo-enable" ROLE_REPO_SET_DATA = "repo-set-data" ROLE_RESOLVE = "resolve" ROLE_SEARCH_DETAILS = "search-details" ROLE_SEARCH_FILE = "search-file" ROLE_SEARCH_GROUP = "search-group" ROLE_SEARCH_NAME = "search-name" ROLE_UNKNOWN = "unknown" ROLE_UPDATE_PACKAGES = "update-packages" ROLE_UPGRADE_SYSTEM = "upgrade-system" ROLE_WHAT_PROVIDES = "what-provides" SIGTYPE_GPG = "gpg" SIGTYPE_UNKNOWN = "unknown" STATUS_CANCEL = "cancel" STATUS_CHECK_EXECUTABLE_FILES = "check-executable-files" STATUS_CHECK_LIBRARIES = "check-libraries" STATUS_CLEANUP = "cleanup" STATUS_COMMIT = "commit" STATUS_COPY_FILES = "copy-files" STATUS_DEP_RESOLVE = "dep-resolve" STATUS_DOWNLOAD = "download" STATUS_DOWNLOAD_CHANGELOG = "download-changelog" STATUS_DOWNLOAD_FILELIST = "download-filelist" STATUS_DOWNLOAD_GROUP = "download-group" STATUS_DOWNLOAD_PACKAGELIST = "download-packagelist" STATUS_DOWNLOAD_REPOSITORY = "download-repository" STATUS_DOWNLOAD_UPDATEINFO = "download-updateinfo" STATUS_FINISHED = "finished" STATUS_GENERATE_PACKAGE_LIST = "generate-package-list" STATUS_INFO = "info" STATUS_INSTALL = "install" STATUS_LOADING_CACHE = "loading-cache" STATUS_OBSOLETE = "obsolete" STATUS_QUERY = "query" STATUS_REFRESH_CACHE = "refresh-cache" STATUS_REMOVE = "remove" STATUS_REPACKAGING = "repackaging" STATUS_REQUEST = "request" STATUS_RUNNING = "running" STATUS_SCAN_APPLICATIONS = "scan-applications" STATUS_SCAN_PROCESS_LIST = "scan-process-list" STATUS_SETUP = "setup" STATUS_SIG_CHECK = "sig-check" STATUS_TEST_COMMIT = "test-commit" STATUS_UNKNOWN = "unknown" STATUS_UPDATE = "update" STATUS_WAIT = "wait" STATUS_WAITING_FOR_AUTH = "waiting-for-auth" STATUS_WAITING_FOR_LOCK = "waiting-for-lock" TRANSACTION_FLAG_NONE = "none" TRANSACTION_FLAG_ONLY_DOWNLOAD = "only-download" TRANSACTION_FLAG_ONLY_TRUSTED = "only-trusted" TRANSACTION_FLAG_SIMULATE = "simulate" UPDATE_STATE_STABLE = "stable" UPDATE_STATE_TESTING = "testing" UPDATE_STATE_UNKNOWN = "unknown" UPDATE_STATE_UNSTABLE = "unstable" UPGRADE_KIND_COMPLETE = "complete" UPGRADE_KIND_DEFAULT = "default" UPGRADE_KIND_MINIMAL = "minimal" UPGRADE_KIND_UNKNOWN = "unknown" # This file was autogenerated from ../../lib/packagekit-glib2/pk-enum.c by enum-converter.py class PackageKitEnum: exit = ( "unknown", "success", "failed", "cancelled", "key-required", "eula-required", "media-change-required", "killed", "need-untrusted", "cancelled-priority", "skip-transaction", "repair-required", ) status = ( "unknown", "wait", "setup", "running", "query", "info", "refresh-cache", "remove", "download", "install", "update", "cleanup", "obsolete", "dep-resolve", "sig-check", "test-commit", "commit", "request", "finished", "cancel", "download-repository", "download-packagelist", "download-filelist", "download-changelog", "download-group", "download-updateinfo", "repackaging", "loading-cache", "scan-applications", "generate-package-list", "waiting-for-lock", "waiting-for-auth", "scan-process-list", "check-executable-files", "check-libraries", "copy-files", ) role = ( "unknown", "cancel", "get-depends", "get-details", "get-files", "get-packages", "get-repo-list", "get-requires", "get-update-detail", "get-updates", "install-files", "install-packages", "install-signature", "refresh-cache", "remove-packages", "repo-enable", "repo-set-data", "resolve", "search-details", "search-file", "search-group", "search-name", "update-packages", "what-provides", "accept-eula", "download-packages", "get-distro-upgrades", "get-categories", "get-old-transactions", "upgrade-system", "repair-system", ) error = ( "unknown", "out-of-memory", "no-cache", "no-network", "not-supported", "internal-error", "gpg-failure", "filter-invalid", "package-id-invalid", "transaction-error", "transaction-cancelled", "package-not-installed", "package-not-found", "package-already-installed", "package-download-failed", "group-not-found", "group-list-invalid", "dep-resolution-failed", "create-thread-failed", "repo-not-found", "cannot-remove-system-package", "process-kill", "failed-initialization", "failed-finalise", "failed-config-parsing", "cannot-cancel", "cannot-get-lock", "no-packages-to-update", "cannot-write-repo-config", "local-install-failed", "bad-gpg-signature", "missing-gpg-signature", "cannot-install-source-package", "repo-configuration-error", "no-license-agreement", "file-conflicts", "package-conflicts", "repo-not-available", "invalid-package-file", "package-install-blocked", "package-corrupt", "all-packages-already-installed", "file-not-found", "no-more-mirrors-to-try", "no-distro-upgrade-data", "incompatible-architecture", "no-space-on-device", "media-change-required", "not-authorized", "update-not-found", "cannot-install-repo-unsigned", "cannot-update-repo-unsigned", "cannot-get-filelist", "cannot-get-requires", "cannot-disable-repository", "restricted-download", "package-failed-to-configure", "package-failed-to-build", "package-failed-to-install", "package-failed-to-remove", "failed-due-to-running-process", "package-database-changed", "provide-type-not-supported", "install-root-invalid", "cannot-fetch-sources", "cancelled-priority", "unfinished-transaction", "lock-required", ) restart = ( "unknown", "none", "system", "session", "application", "security-system", "security-session", ) message = ( "unknown", "broken-mirror", "connection-refused", "parameter-invalid", "priority-invalid", "backend-error", "daemon-error", "cache-being-rebuilt", "newer-package-exists", "could-not-find-package", "config-files-changed", "package-already-installed", "autoremove-ignored", "repo-metadata-download-failed", "repo-for-developers-only", "other-updates-held-back", ) filter = ( "unknown", "none", "installed", "~installed", "devel", "~devel", "gui", "~gui", "free", "~free", "visible", "~visible", "supported", "~supported", "basename", "~basename", "newest", "~newest", "arch", "~arch", "source", "~source", "collections", "~collections", "application", "~application", ) group = ( "unknown", "accessibility", "accessories", "education", "games", "graphics", "internet", "office", "other", "programming", "multimedia", "system", "desktop-gnome", "desktop-kde", "desktop-xfce", "desktop-other", "publishing", "servers", "fonts", "admin-tools", "legacy", "localization", "virtualization", "power-management", "security", "communication", "network", "maps", "repos", "science", "documentation", "electronics", "collections", "vendor", "newest", ) update_state = ( "unknown", "testing", "unstable", "stable", ) info = ( "unknown", "installed", "available", "low", "normal", "important", "security", "bugfix", "enhancement", "blocked", "downloading", "updating", "installing", "removing", "cleanup", "obsoleting", "collection-installed", "collection-available", "finished", "reinstalling", "downgrading", "preparing", "decompressing", "untrusted", "trusted", ) sig_type = ( "unknown", "gpg", ) upgrade = ( "unknown", "stable", "unstable", ) provides = ( "unknown", "any", "modalias", "codec", "mimetype", "driver", "font", "postscript-driver", "plasma-service", "shared-library", "python-module", "language-support", ) network = ( "unknown", "offline", "online", "wired", "wifi", "mobile", ) media_type = ( "unknown", "cd", "dvd", "disc", ) authorize_type = ( "unknown", "yes", "no", "interactive", ) upgrade_kind = ( "unknown", "minimal", "default", "complete", ) transaction_flag = ( "none", "only-trusted", "simulate", "only-download", ) # Constants AUTHORIZE_INTERACTIVE = "interactive" AUTHORIZE_NO = "no" AUTHORIZE_UNKNOWN = "unknown" AUTHORIZE_YES = "yes" DISTRO_UPGRADE_STABLE = "stable" DISTRO_UPGRADE_UNKNOWN = "unknown" DISTRO_UPGRADE_UNSTABLE = "unstable" ERROR_ALL_PACKAGES_ALREADY_INSTALLED = "all-packages-already-installed" ERROR_BAD_GPG_SIGNATURE = "bad-gpg-signature" ERROR_CANCELLED_PRIORITY = "cancelled-priority" ERROR_CANNOT_CANCEL = "cannot-cancel" ERROR_CANNOT_DISABLE_REPOSITORY = "cannot-disable-repository" ERROR_CANNOT_FETCH_SOURCES = "cannot-fetch-sources" ERROR_CANNOT_GET_FILELIST = "cannot-get-filelist" ERROR_CANNOT_GET_LOCK = "cannot-get-lock" ERROR_CANNOT_GET_REQUIRES = "cannot-get-requires" ERROR_CANNOT_INSTALL_REPO_UNSIGNED = "cannot-install-repo-unsigned" ERROR_CANNOT_INSTALL_SOURCE_PACKAGE = "cannot-install-source-package" ERROR_CANNOT_REMOVE_SYSTEM_PACKAGE = "cannot-remove-system-package" ERROR_CANNOT_UPDATE_REPO_UNSIGNED = "cannot-update-repo-unsigned" ERROR_CANNOT_WRITE_REPO_CONFIG = "cannot-write-repo-config" ERROR_CREATE_THREAD_FAILED = "create-thread-failed" ERROR_DEP_RESOLUTION_FAILED = "dep-resolution-failed" ERROR_FAILED_CONFIG_PARSING = "failed-config-parsing" ERROR_FAILED_FINALISE = "failed-finalise" ERROR_FAILED_INITIALIZATION = "failed-initialization" ERROR_FILE_CONFLICTS = "file-conflicts" ERROR_FILE_NOT_FOUND = "file-not-found" ERROR_FILTER_INVALID = "filter-invalid" ERROR_GPG_FAILURE = "gpg-failure" ERROR_GROUP_LIST_INVALID = "group-list-invalid" ERROR_GROUP_NOT_FOUND = "group-not-found" ERROR_INCOMPATIBLE_ARCHITECTURE = "incompatible-architecture" ERROR_INSTALL_ROOT_INVALID = "install-root-invalid" ERROR_INTERNAL_ERROR = "internal-error" ERROR_INVALID_PACKAGE_FILE = "invalid-package-file" ERROR_LOCAL_INSTALL_FAILED = "local-install-failed" ERROR_LOCK_REQUIRED = "lock-required" ERROR_MEDIA_CHANGE_REQUIRED = "media-change-required" ERROR_MISSING_GPG_SIGNATURE = "missing-gpg-signature" ERROR_NOT_AUTHORIZED = "not-authorized" ERROR_NOT_SUPPORTED = "not-supported" ERROR_NO_CACHE = "no-cache" ERROR_NO_DISTRO_UPGRADE_DATA = "no-distro-upgrade-data" ERROR_NO_LICENSE_AGREEMENT = "no-license-agreement" ERROR_NO_MORE_MIRRORS_TO_TRY = "no-more-mirrors-to-try" ERROR_NO_NETWORK = "no-network" ERROR_NO_PACKAGES_TO_UPDATE = "no-packages-to-update" ERROR_NO_SPACE_ON_DEVICE = "no-space-on-device" ERROR_OOM = "out-of-memory" ERROR_PACKAGE_ALREADY_INSTALLED = "package-already-installed" ERROR_PACKAGE_CONFLICTS = "package-conflicts" ERROR_PACKAGE_CORRUPT = "package-corrupt" ERROR_PACKAGE_DATABASE_CHANGED = "package-database-changed" ERROR_PACKAGE_DOWNLOAD_FAILED = "package-download-failed" ERROR_PACKAGE_FAILED_TO_BUILD = "package-failed-to-build" ERROR_PACKAGE_FAILED_TO_CONFIGURE = "package-failed-to-configure" ERROR_PACKAGE_FAILED_TO_INSTALL = "package-failed-to-install" ERROR_PACKAGE_FAILED_TO_REMOVE = "package-failed-to-remove" ERROR_PACKAGE_ID_INVALID = "package-id-invalid" ERROR_PACKAGE_INSTALL_BLOCKED = "package-install-blocked" ERROR_PACKAGE_NOT_FOUND = "package-not-found" ERROR_PACKAGE_NOT_INSTALLED = "package-not-installed" ERROR_PROCESS_KILL = "process-kill" ERROR_PROVIDE_TYPE_NOT_SUPPORTED = "provide-type-not-supported" ERROR_REPO_CONFIGURATION_ERROR = "repo-configuration-error" ERROR_REPO_NOT_AVAILABLE = "repo-not-available" ERROR_REPO_NOT_FOUND = "repo-not-found" ERROR_RESTRICTED_DOWNLOAD = "restricted-download" ERROR_TRANSACTION_CANCELLED = "transaction-cancelled" ERROR_TRANSACTION_ERROR = "transaction-error" ERROR_UNFINISHED_TRANSACTION = "unfinished-transaction" ERROR_UNKNOWN = "unknown" ERROR_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS = "failed-due-to-running-process" ERROR_UPDATE_NOT_FOUND = "update-not-found" EXIT_CANCELLED = "cancelled" EXIT_CANCELLED_PRIORITY = "cancelled-priority" EXIT_EULA_REQUIRED = "eula-required" EXIT_FAILED = "failed" EXIT_KEY_REQUIRED = "key-required" EXIT_KILLED = "killed" EXIT_MEDIA_CHANGE_REQUIRED = "media-change-required" EXIT_NEED_UNTRUSTED = "need-untrusted" EXIT_REPAIR_REQUIRED = "repair-required" EXIT_SKIP_TRANSACTION = "skip-transaction" EXIT_SUCCESS = "success" EXIT_UNKNOWN = "unknown" FILTER_APPLICATION = "application" FILTER_ARCH = "arch" FILTER_BASENAME = "basename" FILTER_COLLECTIONS = "collections" FILTER_DEVELOPMENT = "devel" FILTER_FREE = "free" FILTER_GUI = "gui" FILTER_INSTALLED = "installed" FILTER_NEWEST = "newest" FILTER_NONE = "none" FILTER_NOT_APPLICATION = "~application" FILTER_NOT_ARCH = "~arch" FILTER_NOT_BASENAME = "~basename" FILTER_NOT_COLLECTIONS = "~collections" FILTER_NOT_DEVELOPMENT = "~devel" FILTER_NOT_FREE = "~free" FILTER_NOT_GUI = "~gui" FILTER_NOT_INSTALLED = "~installed" FILTER_NOT_NEWEST = "~newest" FILTER_NOT_SOURCE = "~source" FILTER_NOT_SUPPORTED = "~supported" FILTER_NOT_VISIBLE = "~visible" FILTER_SOURCE = "source" FILTER_SUPPORTED = "supported" FILTER_UNKNOWN = "unknown" FILTER_VISIBLE = "visible" GROUP_ACCESSIBILITY = "accessibility" GROUP_ACCESSORIES = "accessories" GROUP_ADMIN_TOOLS = "admin-tools" GROUP_COLLECTIONS = "collections" GROUP_COMMUNICATION = "communication" GROUP_DESKTOP_GNOME = "desktop-gnome" GROUP_DESKTOP_KDE = "desktop-kde" GROUP_DESKTOP_OTHER = "desktop-other" GROUP_DESKTOP_XFCE = "desktop-xfce" GROUP_DOCUMENTATION = "documentation" GROUP_EDUCATION = "education" GROUP_ELECTRONICS = "electronics" GROUP_FONTS = "fonts" GROUP_GAMES = "games" GROUP_GRAPHICS = "graphics" GROUP_INTERNET = "internet" GROUP_LEGACY = "legacy" GROUP_LOCALIZATION = "localization" GROUP_MAPS = "maps" GROUP_MULTIMEDIA = "multimedia" GROUP_NETWORK = "network" GROUP_NEWEST = "newest" GROUP_OFFICE = "office" GROUP_OTHER = "other" GROUP_POWER_MANAGEMENT = "power-management" GROUP_PROGRAMMING = "programming" GROUP_PUBLISHING = "publishing" GROUP_REPOS = "repos" GROUP_SCIENCE = "science" GROUP_SECURITY = "security" GROUP_SERVERS = "servers" GROUP_SYSTEM = "system" GROUP_UNKNOWN = "unknown" GROUP_VENDOR = "vendor" GROUP_VIRTUALIZATION = "virtualization" INFO_AVAILABLE = "available" INFO_BLOCKED = "blocked" INFO_BUGFIX = "bugfix" INFO_CLEANUP = "cleanup" INFO_COLLECTION_AVAILABLE = "collection-available" INFO_COLLECTION_INSTALLED = "collection-installed" INFO_DECOMPRESSING = "decompressing" INFO_DOWNGRADING = "downgrading" INFO_DOWNLOADING = "downloading" INFO_ENHANCEMENT = "enhancement" INFO_FINISHED = "finished" INFO_IMPORTANT = "important" INFO_INSTALLED = "installed" INFO_INSTALLING = "installing" INFO_LOW = "low" INFO_NORMAL = "normal" INFO_OBSOLETING = "obsoleting" INFO_PREPARING = "preparing" INFO_REINSTALLING = "reinstalling" INFO_REMOVING = "removing" INFO_SECURITY = "security" INFO_TRUSTED = "trusted" INFO_UNKNOWN = "unknown" INFO_UNTRUSTED = "untrusted" INFO_UPDATING = "updating" MEDIA_TYPE_CD = "cd" MEDIA_TYPE_DISC = "disc" MEDIA_TYPE_DVD = "dvd" MEDIA_TYPE_UNKNOWN = "unknown" MESSAGE_AUTOREMOVE_IGNORED = "autoremove-ignored" MESSAGE_BACKEND_ERROR = "backend-error" MESSAGE_BROKEN_MIRROR = "broken-mirror" MESSAGE_CACHE_BEING_REBUILT = "cache-being-rebuilt" MESSAGE_CONFIG_FILES_CHANGED = "config-files-changed" MESSAGE_CONNECTION_REFUSED = "connection-refused" MESSAGE_COULD_NOT_FIND_PACKAGE = "could-not-find-package" MESSAGE_DAEMON_ERROR = "daemon-error" MESSAGE_NEWER_PACKAGE_EXISTS = "newer-package-exists" MESSAGE_OTHER_UPDATES_HELD_BACK = "other-updates-held-back" MESSAGE_PACKAGE_ALREADY_INSTALLED = "package-already-installed" MESSAGE_PARAMETER_INVALID = "parameter-invalid" MESSAGE_PRIORITY_INVALID = "priority-invalid" MESSAGE_REPO_FOR_DEVELOPERS_ONLY = "repo-for-developers-only" MESSAGE_REPO_METADATA_DOWNLOAD_FAILED = "repo-metadata-download-failed" MESSAGE_UNKNOWN = "unknown" NETWORK_MOBILE = "mobile" NETWORK_OFFLINE = "offline" NETWORK_ONLINE = "online" NETWORK_UNKNOWN = "unknown" NETWORK_WIFI = "wifi" NETWORK_WIRED = "wired" PROVIDES_ANY = "any" PROVIDES_CODEC = "codec" PROVIDES_FONT = "font" PROVIDES_HARDWARE_DRIVER = "driver" PROVIDES_LANGUAGE_SUPPORT = "language-support" PROVIDES_MIMETYPE = "mimetype" PROVIDES_MODALIAS = "modalias" PROVIDES_PLASMA_SERVICE = "plasma-service" PROVIDES_POSTSCRIPT_DRIVER = "postscript-driver" PROVIDES_PYTHON = "python-module" PROVIDES_SHARED_LIB = "shared-library" PROVIDES_UNKNOWN = "unknown" RESTART_APPLICATION = "application" RESTART_NONE = "none" RESTART_SECURITY_SESSION = "security-session" RESTART_SECURITY_SYSTEM = "security-system" RESTART_SESSION = "session" RESTART_SYSTEM = "system" RESTART_UNKNOWN = "unknown" ROLE_ACCEPT_EULA = "accept-eula" ROLE_CANCEL = "cancel" ROLE_DOWNLOAD_PACKAGES = "download-packages" ROLE_GET_CATEGORIES = "get-categories" ROLE_GET_DEPENDS = "get-depends" ROLE_GET_DETAILS = "get-details" ROLE_GET_DISTRO_UPGRADES = "get-distro-upgrades" ROLE_GET_FILES = "get-files" ROLE_GET_OLD_TRANSACTIONS = "get-old-transactions" ROLE_GET_PACKAGES = "get-packages" ROLE_GET_REPO_LIST = "get-repo-list" ROLE_GET_REQUIRES = "get-requires" ROLE_GET_UPDATES = "get-updates" ROLE_GET_UPDATE_DETAIL = "get-update-detail" ROLE_INSTALL_FILES = "install-files" ROLE_INSTALL_PACKAGES = "install-packages" ROLE_INSTALL_SIGNATURE = "install-signature" ROLE_REFRESH_CACHE = "refresh-cache" ROLE_REMOVE_PACKAGES = "remove-packages" ROLE_REPAIR_SYSTEM = "repair-system" ROLE_REPO_ENABLE = "repo-enable" ROLE_REPO_SET_DATA = "repo-set-data" ROLE_RESOLVE = "resolve" ROLE_SEARCH_DETAILS = "search-details" ROLE_SEARCH_FILE = "search-file" ROLE_SEARCH_GROUP = "search-group" ROLE_SEARCH_NAME = "search-name" ROLE_UNKNOWN = "unknown" ROLE_UPDATE_PACKAGES = "update-packages" ROLE_UPGRADE_SYSTEM = "upgrade-system" ROLE_WHAT_PROVIDES = "what-provides" SIGTYPE_GPG = "gpg" SIGTYPE_UNKNOWN = "unknown" STATUS_CANCEL = "cancel" STATUS_CHECK_EXECUTABLE_FILES = "check-executable-files" STATUS_CHECK_LIBRARIES = "check-libraries" STATUS_CLEANUP = "cleanup" STATUS_COMMIT = "commit" STATUS_COPY_FILES = "copy-files" STATUS_DEP_RESOLVE = "dep-resolve" STATUS_DOWNLOAD = "download" STATUS_DOWNLOAD_CHANGELOG = "download-changelog" STATUS_DOWNLOAD_FILELIST = "download-filelist" STATUS_DOWNLOAD_GROUP = "download-group" STATUS_DOWNLOAD_PACKAGELIST = "download-packagelist" STATUS_DOWNLOAD_REPOSITORY = "download-repository" STATUS_DOWNLOAD_UPDATEINFO = "download-updateinfo" STATUS_FINISHED = "finished" STATUS_GENERATE_PACKAGE_LIST = "generate-package-list" STATUS_INFO = "info" STATUS_INSTALL = "install" STATUS_LOADING_CACHE = "loading-cache" STATUS_OBSOLETE = "obsolete" STATUS_QUERY = "query" STATUS_REFRESH_CACHE = "refresh-cache" STATUS_REMOVE = "remove" STATUS_REPACKAGING = "repackaging" STATUS_REQUEST = "request" STATUS_RUNNING = "running" STATUS_SCAN_APPLICATIONS = "scan-applications" STATUS_SCAN_PROCESS_LIST = "scan-process-list" STATUS_SETUP = "setup" STATUS_SIG_CHECK = "sig-check" STATUS_TEST_COMMIT = "test-commit" STATUS_UNKNOWN = "unknown" STATUS_UPDATE = "update" STATUS_WAIT = "wait" STATUS_WAITING_FOR_AUTH = "waiting-for-auth" STATUS_WAITING_FOR_LOCK = "waiting-for-lock" TRANSACTION_FLAG_NONE = "none" TRANSACTION_FLAG_ONLY_DOWNLOAD = "only-download" TRANSACTION_FLAG_ONLY_TRUSTED = "only-trusted" TRANSACTION_FLAG_SIMULATE = "simulate" UPDATE_STATE_STABLE = "stable" UPDATE_STATE_TESTING = "testing" UPDATE_STATE_UNKNOWN = "unknown" UPDATE_STATE_UNSTABLE = "unstable" UPGRADE_KIND_COMPLETE = "complete" UPGRADE_KIND_DEFAULT = "default" UPGRADE_KIND_MINIMAL = "minimal" UPGRADE_KIND_UNKNOWN = "unknown" # This file was autogenerated from ../../lib/packagekit-glib2/pk-enum.c by enum-converter.py class PackageKitEnum: exit = ( "unknown", "success", "failed", "cancelled", "key-required", "eula-required", "media-change-required", "killed", "need-untrusted", "cancelled-priority", "skip-transaction", "repair-required", ) status = ( "unknown", "wait", "setup", "running", "query", "info", "refresh-cache", "remove", "download", "install", "update", "cleanup", "obsolete", "dep-resolve", "sig-check", "test-commit", "commit", "request", "finished", "cancel", "download-repository", "download-packagelist", "download-filelist", "download-changelog", "download-group", "download-updateinfo", "repackaging", "loading-cache", "scan-applications", "generate-package-list", "waiting-for-lock", "waiting-for-auth", "scan-process-list", "check-executable-files", "check-libraries", "copy-files", ) role = ( "unknown", "cancel", "get-depends", "get-details", "get-files", "get-packages", "get-repo-list", "get-requires", "get-update-detail", "get-updates", "install-files", "install-packages", "install-signature", "refresh-cache", "remove-packages", "repo-enable", "repo-set-data", "resolve", "search-details", "search-file", "search-group", "search-name", "update-packages", "what-provides", "accept-eula", "download-packages", "get-distro-upgrades", "get-categories", "get-old-transactions", "upgrade-system", "repair-system", ) error = ( "unknown", "out-of-memory", "no-cache", "no-network", "not-supported", "internal-error", "gpg-failure", "filter-invalid", "package-id-invalid", "transaction-error", "transaction-cancelled", "package-not-installed", "package-not-found", "package-already-installed", "package-download-failed", "group-not-found", "group-list-invalid", "dep-resolution-failed", "create-thread-failed", "repo-not-found", "cannot-remove-system-package", "process-kill", "failed-initialization", "failed-finalise", "failed-config-parsing", "cannot-cancel", "cannot-get-lock", "no-packages-to-update", "cannot-write-repo-config", "local-install-failed", "bad-gpg-signature", "missing-gpg-signature", "cannot-install-source-package", "repo-configuration-error", "no-license-agreement", "file-conflicts", "package-conflicts", "repo-not-available", "invalid-package-file", "package-install-blocked", "package-corrupt", "all-packages-already-installed", "file-not-found", "no-more-mirrors-to-try", "no-distro-upgrade-data", "incompatible-architecture", "no-space-on-device", "media-change-required", "not-authorized", "update-not-found", "cannot-install-repo-unsigned", "cannot-update-repo-unsigned", "cannot-get-filelist", "cannot-get-requires", "cannot-disable-repository", "restricted-download", "package-failed-to-configure", "package-failed-to-build", "package-failed-to-install", "package-failed-to-remove", "failed-due-to-running-process", "package-database-changed", "provide-type-not-supported", "install-root-invalid", "cannot-fetch-sources", "cancelled-priority", "unfinished-transaction", "lock-required", ) restart = ( "unknown", "none", "system", "session", "application", "security-system", "security-session", ) message = ( "unknown", "broken-mirror", "connection-refused", "parameter-invalid", "priority-invalid", "backend-error", "daemon-error", "cache-being-rebuilt", "newer-package-exists", "could-not-find-package", "config-files-changed", "package-already-installed", "autoremove-ignored", "repo-metadata-download-failed", "repo-for-developers-only", "other-updates-held-back", ) filter = ( "unknown", "none", "installed", "~installed", "devel", "~devel", "gui", "~gui", "free", "~free", "visible", "~visible", "supported", "~supported", "basename", "~basename", "newest", "~newest", "arch", "~arch", "source", "~source", "collections", "~collections", "application", "~application", ) group = ( "unknown", "accessibility", "accessories", "education", "games", "graphics", "internet", "office", "other", "programming", "multimedia", "system", "desktop-gnome", "desktop-kde", "desktop-xfce", "desktop-other", "publishing", "servers", "fonts", "admin-tools", "legacy", "localization", "virtualization", "power-management", "security", "communication", "network", "maps", "repos", "science", "documentation", "electronics", "collections", "vendor", "newest", ) update_state = ( "unknown", "testing", "unstable", "stable", ) info = ( "unknown", "installed", "available", "low", "normal", "important", "security", "bugfix", "enhancement", "blocked", "downloading", "updating", "installing", "removing", "cleanup", "obsoleting", "collection-installed", "collection-available", "finished", "reinstalling", "downgrading", "preparing", "decompressing", "untrusted", "trusted", ) sig_type = ( "unknown", "gpg", ) upgrade = ( "unknown", "stable", "unstable", ) provides = ( "unknown", "any", "modalias", "codec", "mimetype", "driver", "font", "postscript-driver", "plasma-service", "shared-library", "python-module", "language-support", ) network = ( "unknown", "offline", "online", "wired", "wifi", "mobile", ) media_type = ( "unknown", "cd", "dvd", "disc", ) authorize_type = ( "unknown", "yes", "no", "interactive", ) upgrade_kind = ( "unknown", "minimal", "default", "complete", ) transaction_flag = ( "none", "only-trusted", "simulate", "only-download", ) # Constants AUTHORIZE_INTERACTIVE = "interactive" AUTHORIZE_NO = "no" AUTHORIZE_UNKNOWN = "unknown" AUTHORIZE_YES = "yes" DISTRO_UPGRADE_STABLE = "stable" DISTRO_UPGRADE_UNKNOWN = "unknown" DISTRO_UPGRADE_UNSTABLE = "unstable" ERROR_ALL_PACKAGES_ALREADY_INSTALLED = "all-packages-already-installed" ERROR_BAD_GPG_SIGNATURE = "bad-gpg-signature" ERROR_CANCELLED_PRIORITY = "cancelled-priority" ERROR_CANNOT_CANCEL = "cannot-cancel" ERROR_CANNOT_DISABLE_REPOSITORY = "cannot-disable-repository" ERROR_CANNOT_FETCH_SOURCES = "cannot-fetch-sources" ERROR_CANNOT_GET_FILELIST = "cannot-get-filelist" ERROR_CANNOT_GET_LOCK = "cannot-get-lock" ERROR_CANNOT_GET_REQUIRES = "cannot-get-requires" ERROR_CANNOT_INSTALL_REPO_UNSIGNED = "cannot-install-repo-unsigned" ERROR_CANNOT_INSTALL_SOURCE_PACKAGE = "cannot-install-source-package" ERROR_CANNOT_REMOVE_SYSTEM_PACKAGE = "cannot-remove-system-package" ERROR_CANNOT_UPDATE_REPO_UNSIGNED = "cannot-update-repo-unsigned" ERROR_CANNOT_WRITE_REPO_CONFIG = "cannot-write-repo-config" ERROR_CREATE_THREAD_FAILED = "create-thread-failed" ERROR_DEP_RESOLUTION_FAILED = "dep-resolution-failed" ERROR_FAILED_CONFIG_PARSING = "failed-config-parsing" ERROR_FAILED_FINALISE = "failed-finalise" ERROR_FAILED_INITIALIZATION = "failed-initialization" ERROR_FILE_CONFLICTS = "file-conflicts" ERROR_FILE_NOT_FOUND = "file-not-found" ERROR_FILTER_INVALID = "filter-invalid" ERROR_GPG_FAILURE = "gpg-failure" ERROR_GROUP_LIST_INVALID = "group-list-invalid" ERROR_GROUP_NOT_FOUND = "group-not-found" ERROR_INCOMPATIBLE_ARCHITECTURE = "incompatible-architecture" ERROR_INSTALL_ROOT_INVALID = "install-root-invalid" ERROR_INTERNAL_ERROR = "internal-error" ERROR_INVALID_PACKAGE_FILE = "invalid-package-file" ERROR_LOCAL_INSTALL_FAILED = "local-install-failed" ERROR_LOCK_REQUIRED = "lock-required" ERROR_MEDIA_CHANGE_REQUIRED = "media-change-required" ERROR_MISSING_GPG_SIGNATURE = "missing-gpg-signature" ERROR_NOT_AUTHORIZED = "not-authorized" ERROR_NOT_SUPPORTED = "not-supported" ERROR_NO_CACHE = "no-cache" ERROR_NO_DISTRO_UPGRADE_DATA = "no-distro-upgrade-data" ERROR_NO_LICENSE_AGREEMENT = "no-license-agreement" ERROR_NO_MORE_MIRRORS_TO_TRY = "no-more-mirrors-to-try" ERROR_NO_NETWORK = "no-network" ERROR_NO_PACKAGES_TO_UPDATE = "no-packages-to-update" ERROR_NO_SPACE_ON_DEVICE = "no-space-on-device" ERROR_OOM = "out-of-memory" ERROR_PACKAGE_ALREADY_INSTALLED = "package-already-installed" ERROR_PACKAGE_CONFLICTS = "package-conflicts" ERROR_PACKAGE_CORRUPT = "package-corrupt" ERROR_PACKAGE_DATABASE_CHANGED = "package-database-changed" ERROR_PACKAGE_DOWNLOAD_FAILED = "package-download-failed" ERROR_PACKAGE_FAILED_TO_BUILD = "package-failed-to-build" ERROR_PACKAGE_FAILED_TO_CONFIGURE = "package-failed-to-configure" ERROR_PACKAGE_FAILED_TO_INSTALL = "package-failed-to-install" ERROR_PACKAGE_FAILED_TO_REMOVE = "package-failed-to-remove" ERROR_PACKAGE_ID_INVALID = "package-id-invalid" ERROR_PACKAGE_INSTALL_BLOCKED = "package-install-blocked" ERROR_PACKAGE_NOT_FOUND = "package-not-found" ERROR_PACKAGE_NOT_INSTALLED = "package-not-installed" ERROR_PROCESS_KILL = "process-kill" ERROR_PROVIDE_TYPE_NOT_SUPPORTED = "provide-type-not-supported" ERROR_REPO_CONFIGURATION_ERROR = "repo-configuration-error" ERROR_REPO_NOT_AVAILABLE = "repo-not-available" ERROR_REPO_NOT_FOUND = "repo-not-found" ERROR_RESTRICTED_DOWNLOAD = "restricted-download" ERROR_TRANSACTION_CANCELLED = "transaction-cancelled" ERROR_TRANSACTION_ERROR = "transaction-error" ERROR_UNFINISHED_TRANSACTION = "unfinished-transaction" ERROR_UNKNOWN = "unknown" ERROR_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS = "failed-due-to-running-process" ERROR_UPDATE_NOT_FOUND = "update-not-found" EXIT_CANCELLED = "cancelled" EXIT_CANCELLED_PRIORITY = "cancelled-priority" EXIT_EULA_REQUIRED = "eula-required" EXIT_FAILED = "failed" EXIT_KEY_REQUIRED = "key-required" EXIT_KILLED = "killed" EXIT_MEDIA_CHANGE_REQUIRED = "media-change-required" EXIT_NEED_UNTRUSTED = "need-untrusted" EXIT_REPAIR_REQUIRED = "repair-required" EXIT_SKIP_TRANSACTION = "skip-transaction" EXIT_SUCCESS = "success" EXIT_UNKNOWN = "unknown" FILTER_APPLICATION = "application" FILTER_ARCH = "arch" FILTER_BASENAME = "basename" FILTER_COLLECTIONS = "collections" FILTER_DEVELOPMENT = "devel" FILTER_FREE = "free" FILTER_GUI = "gui" FILTER_INSTALLED = "installed" FILTER_NEWEST = "newest" FILTER_NONE = "none" FILTER_NOT_APPLICATION = "~application" FILTER_NOT_ARCH = "~arch" FILTER_NOT_BASENAME = "~basename" FILTER_NOT_COLLECTIONS = "~collections" FILTER_NOT_DEVELOPMENT = "~devel" FILTER_NOT_FREE = "~free" FILTER_NOT_GUI = "~gui" FILTER_NOT_INSTALLED = "~installed" FILTER_NOT_NEWEST = "~newest" FILTER_NOT_SOURCE = "~source" FILTER_NOT_SUPPORTED = "~supported" FILTER_NOT_VISIBLE = "~visible" FILTER_SOURCE = "source" FILTER_SUPPORTED = "supported" FILTER_UNKNOWN = "unknown" FILTER_VISIBLE = "visible" GROUP_ACCESSIBILITY = "accessibility" GROUP_ACCESSORIES = "accessories" GROUP_ADMIN_TOOLS = "admin-tools" GROUP_COLLECTIONS = "collections" GROUP_COMMUNICATION = "communication" GROUP_DESKTOP_GNOME = "desktop-gnome" GROUP_DESKTOP_KDE = "desktop-kde" GROUP_DESKTOP_OTHER = "desktop-other" GROUP_DESKTOP_XFCE = "desktop-xfce" GROUP_DOCUMENTATION = "documentation" GROUP_EDUCATION = "education" GROUP_ELECTRONICS = "electronics" GROUP_FONTS = "fonts" GROUP_GAMES = "games" GROUP_GRAPHICS = "graphics" GROUP_INTERNET = "internet" GROUP_LEGACY = "legacy" GROUP_LOCALIZATION = "localization" GROUP_MAPS = "maps" GROUP_MULTIMEDIA = "multimedia" GROUP_NETWORK = "network" GROUP_NEWEST = "newest" GROUP_OFFICE = "office" GROUP_OTHER = "other" GROUP_POWER_MANAGEMENT = "power-management" GROUP_PROGRAMMING = "programming" GROUP_PUBLISHING = "publishing" GROUP_REPOS = "repos" GROUP_SCIENCE = "science" GROUP_SECURITY = "security" GROUP_SERVERS = "servers" GROUP_SYSTEM = "system" GROUP_UNKNOWN = "unknown" GROUP_VENDOR = "vendor" GROUP_VIRTUALIZATION = "virtualization" INFO_AVAILABLE = "available" INFO_BLOCKED = "blocked" INFO_BUGFIX = "bugfix" INFO_CLEANUP = "cleanup" INFO_COLLECTION_AVAILABLE = "collection-available" INFO_COLLECTION_INSTALLED = "collection-installed" INFO_DECOMPRESSING = "decompressing" INFO_DOWNGRADING = "downgrading" INFO_DOWNLOADING = "downloading" INFO_ENHANCEMENT = "enhancement" INFO_FINISHED = "finished" INFO_IMPORTANT = "important" INFO_INSTALLED = "installed" INFO_INSTALLING = "installing" INFO_LOW = "low" INFO_NORMAL = "normal" INFO_OBSOLETING = "obsoleting" INFO_PREPARING = "preparing" INFO_REINSTALLING = "reinstalling" INFO_REMOVING = "removing" INFO_SECURITY = "security" INFO_TRUSTED = "trusted" INFO_UNKNOWN = "unknown" INFO_UNTRUSTED = "untrusted" INFO_UPDATING = "updating" MEDIA_TYPE_CD = "cd" MEDIA_TYPE_DISC = "disc" MEDIA_TYPE_DVD = "dvd" MEDIA_TYPE_UNKNOWN = "unknown" MESSAGE_AUTOREMOVE_IGNORED = "autoremove-ignored" MESSAGE_BACKEND_ERROR = "backend-error" MESSAGE_BROKEN_MIRROR = "broken-mirror" MESSAGE_CACHE_BEING_REBUILT = "cache-being-rebuilt" MESSAGE_CONFIG_FILES_CHANGED = "config-files-changed" MESSAGE_CONNECTION_REFUSED = "connection-refused" MESSAGE_COULD_NOT_FIND_PACKAGE = "could-not-find-package" MESSAGE_DAEMON_ERROR = "daemon-error" MESSAGE_NEWER_PACKAGE_EXISTS = "newer-package-exists" MESSAGE_OTHER_UPDATES_HELD_BACK = "other-updates-held-back" MESSAGE_PACKAGE_ALREADY_INSTALLED = "package-already-installed" MESSAGE_PARAMETER_INVALID = "parameter-invalid" MESSAGE_PRIORITY_INVALID = "priority-invalid" MESSAGE_REPO_FOR_DEVELOPERS_ONLY = "repo-for-developers-only" MESSAGE_REPO_METADATA_DOWNLOAD_FAILED = "repo-metadata-download-failed" MESSAGE_UNKNOWN = "unknown" NETWORK_MOBILE = "mobile" NETWORK_OFFLINE = "offline" NETWORK_ONLINE = "online" NETWORK_UNKNOWN = "unknown" NETWORK_WIFI = "wifi" NETWORK_WIRED = "wired" PROVIDES_ANY = "any" PROVIDES_CODEC = "codec" PROVIDES_FONT = "font" PROVIDES_HARDWARE_DRIVER = "driver" PROVIDES_LANGUAGE_SUPPORT = "language-support" PROVIDES_MIMETYPE = "mimetype" PROVIDES_MODALIAS = "modalias" PROVIDES_PLASMA_SERVICE = "plasma-service" PROVIDES_POSTSCRIPT_DRIVER = "postscript-driver" PROVIDES_PYTHON = "python-module" PROVIDES_SHARED_LIB = "shared-library" PROVIDES_UNKNOWN = "unknown" RESTART_APPLICATION = "application" RESTART_NONE = "none" RESTART_SECURITY_SESSION = "security-session" RESTART_SECURITY_SYSTEM = "security-system" RESTART_SESSION = "session" RESTART_SYSTEM = "system" RESTART_UNKNOWN = "unknown" ROLE_ACCEPT_EULA = "accept-eula" ROLE_CANCEL = "cancel" ROLE_DOWNLOAD_PACKAGES = "download-packages" ROLE_GET_CATEGORIES = "get-categories" ROLE_GET_DEPENDS = "get-depends" ROLE_GET_DETAILS = "get-details" ROLE_GET_DISTRO_UPGRADES = "get-distro-upgrades" ROLE_GET_FILES = "get-files" ROLE_GET_OLD_TRANSACTIONS = "get-old-transactions" ROLE_GET_PACKAGES = "get-packages" ROLE_GET_REPO_LIST = "get-repo-list" ROLE_GET_REQUIRES = "get-requires" ROLE_GET_UPDATES = "get-updates" ROLE_GET_UPDATE_DETAIL = "get-update-detail" ROLE_INSTALL_FILES = "install-files" ROLE_INSTALL_PACKAGES = "install-packages" ROLE_INSTALL_SIGNATURE = "install-signature" ROLE_REFRESH_CACHE = "refresh-cache" ROLE_REMOVE_PACKAGES = "remove-packages" ROLE_REPAIR_SYSTEM = "repair-system" ROLE_REPO_ENABLE = "repo-enable" ROLE_REPO_SET_DATA = "repo-set-data" ROLE_RESOLVE = "resolve" ROLE_SEARCH_DETAILS = "search-details" ROLE_SEARCH_FILE = "search-file" ROLE_SEARCH_GROUP = "search-group" ROLE_SEARCH_NAME = "search-name" ROLE_UNKNOWN = "unknown" ROLE_UPDATE_PACKAGES = "update-packages" ROLE_UPGRADE_SYSTEM = "upgrade-system" ROLE_WHAT_PROVIDES = "what-provides" SIGTYPE_GPG = "gpg" SIGTYPE_UNKNOWN = "unknown" STATUS_CANCEL = "cancel" STATUS_CHECK_EXECUTABLE_FILES = "check-executable-files" STATUS_CHECK_LIBRARIES = "check-libraries" STATUS_CLEANUP = "cleanup" STATUS_COMMIT = "commit" STATUS_COPY_FILES = "copy-files" STATUS_DEP_RESOLVE = "dep-resolve" STATUS_DOWNLOAD = "download" STATUS_DOWNLOAD_CHANGELOG = "download-changelog" STATUS_DOWNLOAD_FILELIST = "download-filelist" STATUS_DOWNLOAD_GROUP = "download-group" STATUS_DOWNLOAD_PACKAGELIST = "download-packagelist" STATUS_DOWNLOAD_REPOSITORY = "download-repository" STATUS_DOWNLOAD_UPDATEINFO = "download-updateinfo" STATUS_FINISHED = "finished" STATUS_GENERATE_PACKAGE_LIST = "generate-package-list" STATUS_INFO = "info" STATUS_INSTALL = "install" STATUS_LOADING_CACHE = "loading-cache" STATUS_OBSOLETE = "obsolete" STATUS_QUERY = "query" STATUS_REFRESH_CACHE = "refresh-cache" STATUS_REMOVE = "remove" STATUS_REPACKAGING = "repackaging" STATUS_REQUEST = "request" STATUS_RUNNING = "running" STATUS_SCAN_APPLICATIONS = "scan-applications" STATUS_SCAN_PROCESS_LIST = "scan-process-list" STATUS_SETUP = "setup" STATUS_SIG_CHECK = "sig-check" STATUS_TEST_COMMIT = "test-commit" STATUS_UNKNOWN = "unknown" STATUS_UPDATE = "update" STATUS_WAIT = "wait" STATUS_WAITING_FOR_AUTH = "waiting-for-auth" STATUS_WAITING_FOR_LOCK = "waiting-for-lock" TRANSACTION_FLAG_NONE = "none" TRANSACTION_FLAG_ONLY_DOWNLOAD = "only-download" TRANSACTION_FLAG_ONLY_TRUSTED = "only-trusted" TRANSACTION_FLAG_SIMULATE = "simulate" UPDATE_STATE_STABLE = "stable" UPDATE_STATE_TESTING = "testing" UPDATE_STATE_UNKNOWN = "unknown" UPDATE_STATE_UNSTABLE = "unstable" UPGRADE_KIND_COMPLETE = "complete" UPGRADE_KIND_DEFAULT = "default" UPGRADE_KIND_MINIMAL = "minimal" UPGRADE_KIND_UNKNOWN = "unknown" aptdaemon-1.1.1+bzr982/aptdaemon/pkutils.py0000644000000000000000000000232712173204225016663 0ustar 00000000000000# !/usr/bin/env python # -*- coding: utf-8 -*- """ Provides helper functions for the PackageKit layer Copyright (C) 2007 Ali Sabil Copyright (C) 2007 Tom Parker Copyright (C) 2008-2013 Sebastian Heinlein Licensed under the GNU General Public License Version 2 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 (at your option) any later version. """ __author__ = "Sebastian Heinlein " def bitfield_summarize(*enums): """Return the bitfield with the given PackageKit enums.""" field = 0 for enum in enums: field |= 2 ** int(enum) return field def bitfield_add(field, enum): """Add a PackageKit enum to a given field""" field |= 2 ** int(enum) return field def bitfield_remove(field, enum): """Remove a PackageKit enum to a given field""" field = field ^ 2 ** int(enum) return field def bitfield_contains(field, enum): """Return True if a bitfield contains the given PackageKit enum""" return field & 2 ** int(enum) # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/aptdaemon/policykit1.py0000644000000000000000000001554312067610017017266 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides access to PolicyKit privilege mangement using gdefer Deferreds.""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("check_authorization_by_name", "check_authorization_by_pid", "get_pid_from_dbus_name", "get_uid_from_dbus_name", "CHECK_AUTH_ALLOW_USER_INTERACTION", "CHECK_AUTH_NONE", "PK_ACTION_ADD_REMOVE_VENDOR_KEY", "PK_ACTION_CANCEL_FOREIGN", "PK_ACTION_CHANGE_REPOSITORY", "PK_ACTION_CHANGE_CONIFG", "PK_ACTION_GET_TRUSTED_VENDOR_KEYS", "PK_ACTION_INSTALL_FILE", "PK_ACTION_INSTALL_OR_REMOVE_PACKAGES", "PK_ACTION_INSTALL_PACKAGES_FROM_NEW_REPO", "PK_ACTION_INSTALL_PACKAGES_FROM_HIGH_TRUST_REPO", "PK_ACTION_INSTALL_PURCHASED_PACKAGES", "PK_ACTION_UPDATE_CACHE", "PK_ACTION_UPGRADE_PACKAGES", "PK_ACTION_SET_PROXY", "PK_ACTION_CLEAN") import dbus from defer import Deferred, inline_callbacks, return_value from .errors import NotAuthorizedError, AuthorizationFailed PK_ACTION_INSTALL_OR_REMOVE_PACKAGES = ( "org.debian.apt.install-or-remove-packages") PK_ACTION_INSTALL_PURCHASED_PACKAGES = ( "org.debian.apt.install-purchased-packages") PK_ACTION_INSTALL_PACKAGES_FROM_NEW_REPO = ( "org.debian.apt.install-packages-from-new-repo") PK_ACTION_INSTALL_PACKAGES_FROM_HIGH_TRUST_REPO = ( "org.debian.apt.install-packages.high-trust-repo") PK_ACTION_INSTALL_FILE = "org.debian.apt.install-file" PK_ACTION_UPGRADE_PACKAGES = "org.debian.apt.upgrade-packages" PK_ACTION_UPDATE_CACHE = "org.debian.apt.update-cache" PK_ACTION_CANCEL_FOREIGN = "org.debian.apt.cancel-foreign" PK_ACTION_GET_TRUSTED_VENDOR_KEYS = "org.debian.apt.get-trusted-vendor-keys" PK_ACTION_CHANGE_REPOSITORY = "org.debian.apt.change-repository" PK_ACTION_CHANGE_CONFIG = "org.debian.apt.change-config" PK_ACTION_SET_PROXY = "org.debian.apt.set-proxy" PK_ACTION_CLEAN = "org.debian.apt.clean" CHECK_AUTH_NONE = 0 CHECK_AUTH_ALLOW_USER_INTERACTION = 1 def check_authorization_by_name(dbus_name, action_id, timeout=86400, bus=None, flags=None): """Check if the given sender is authorized for the specified action. If the sender is not authorized raise NotAuthorizedError. Keyword arguments: dbus_name -- D-Bus name of the subject action_id -- the PolicyKit policy name of the action timeout -- time in seconds for the user to authenticate bus -- the D-Bus connection (defaults to the system bus) flags -- optional flags to control the authentication process """ subject = ("system-bus-name", {"name": dbus_name}) return _check_authorization(subject, action_id, timeout, bus, flags) def check_authorization_by_pid(pid, action_id, timeout=86400, bus=None, flags=None): """Check if the given process is authorized for the specified action. If the sender is not authorized raise NotAuthorizedError. Keyword arguments: pid -- id of the process action_id -- the PolicyKit policy name of the action timeout -- time in seconds for the user to authenticate bus -- the D-Bus connection (defaults to the system bus) flags -- optional flags to control the authentication process """ subject = ("unix-process", {"pid": pid}) return _check_authorization(subject, action_id, timeout, bus, flags) def _check_authorization(subject, action_id, timeout, bus, flags=None): def policykit_done(xxx_todo_changeme): (authorized, challenged, auth_details) = xxx_todo_changeme if authorized: deferred.callback(auth_details) elif challenged: deferred.errback(AuthorizationFailed(subject, action_id)) else: deferred.errback(NotAuthorizedError(subject, action_id)) if not bus: bus = dbus.SystemBus() # Set the default flags if flags is None: flags = CHECK_AUTH_ALLOW_USER_INTERACTION deferred = Deferred() pk = bus.get_object("org.freedesktop.PolicyKit1", "/org/freedesktop/PolicyKit1/Authority") details = {} pk.CheckAuthorization( subject, action_id, details, flags, "", dbus_interface="org.freedesktop.PolicyKit1.Authority", timeout=timeout, reply_handler=policykit_done, error_handler=deferred.errback) return deferred def get_pid_from_dbus_name(dbus_name, bus=None): """Return a deferred that gets the id of process owning the given system D-Bus name. """ if not bus: bus = dbus.SystemBus() deferred = Deferred() bus_obj = bus.get_object("org.freedesktop.DBus", "/org/freedesktop/DBus/Bus") bus_obj.GetConnectionUnixProcessID(dbus_name, dbus_interface="org.freedesktop.DBus", reply_handler=deferred.callback, error_handler=deferred.errback) return deferred @inline_callbacks def get_uid_from_dbus_name(dbus_name, bus=None): """Return a deferred that gets the uid of the user owning the given system D-Bus name. """ if not bus: bus = dbus.SystemBus() pid = yield get_pid_from_dbus_name(dbus_name, bus) with open("/proc/%s/status" % pid) as proc: values = [v for v in proc.readlines() if v.startswith("Uid:")] uid = int(values[0].split()[1]) return_value(uid) @inline_callbacks def get_proc_info_from_dbus_name(dbus_name, bus=None): """Return a deferred that gets the pid, the uid of the user owning the given system D-Bus name and its command line. """ if not bus: bus = dbus.SystemBus() pid = yield get_pid_from_dbus_name(dbus_name, bus) with open("/proc/%s/status" % pid) as proc: values = [v for v in proc.readlines() if v.startswith("Uid:")] # instead of ", encoding='utf8'" we use the "rb"/decode() here for # py2 compatibility with open("/proc/%s/cmdline" % pid, "rb") as cmdline_file: cmdline = cmdline_file.read().decode("utf-8") uid = int(values[0].split()[1]) return_value((pid, uid, cmdline)) # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/progress.py0000644000000000000000000010375212352743243017047 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Progress handlers for APT operations""" # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) any later version. __author__ = "Sebastian Heinlein " __all__ = ("DaemonAcquireProgress", "DaemonOpenProgress", "DaemonInstallProgress", "DaemonDpkgInstallProgress", "DaemonForkProgress", "DaemonDpkgRecoverProgress", "DaemonLintianProgress") import locale import logging import os import platform import re import signal import sys import termios import time import traceback import tty import apt_pkg import apt.progress.base import apt.debfile from gi.repository import GLib from . import enums from . import lock from .loop import mainloop from .utils import IsoCodes # Required to get translatable strings extraced by xgettext _ = lambda s: s log = logging.getLogger("AptDaemon.Worker") log_terminal = logging.getLogger("AptDaemon.Worker.Terminal") INSTALL_TIMEOUT = 10 * 60 MAP_DPKG_STAGE = {"install": enums.PKG_INSTALLING, "configure": enums.PKG_CONFIGURING, "remove": enums.PKG_REMOVING, "trigproc": enums.PKG_RUNNING_TRIGGER, "purge": enums.PKG_PURGING, "disappear": enums.PKG_DISAPPEARING, "upgrade": enums.PKG_UPGRADING} REGEX_ANSI_ESCAPE_CODE = chr(27) + "\[[;?0-9]*[A-Za-z]" class DaemonOpenProgress(apt.progress.base.OpProgress): """Handles the progress of the cache opening.""" def __init__(self, transaction, begin=0, end=100, quiet=False): """Initialize a new DaemonOpenProgress instance. Keyword arguments: transaction -- corresponding transaction D-Bus object begin -- begin of the progress range (defaults to 0) end -- end of the progress range (defaults to 100) quiet -- do not emit any progress information for the transaction """ apt.progress.base.OpProgress.__init__(self) self._transaction = transaction self.steps = [begin + (end - begin) * modifier # the final 1.00 will not be used but we still # need it here for the final pop() for modifier in [0.25, 0.50, 0.75, 1.00, 1.00]] self.progress_begin = float(begin) self.progress_end = self.steps.pop(0) self.progress = 0 self.quiet = quiet def update(self, percent=None): """Callback for progress updates. Keyword argument: percent - current progress in percent """ # python-apt 0.8 does not include "percent" anymore in the call percent = percent or self.percent if percent < 101: progress = int(self.progress_begin + (percent / 100) * (self.progress_end - self.progress_begin)) if self.progress == progress: return else: progress = 101 self.progress = progress if not self.quiet: self._transaction.progress = progress def done(self): """Callback after completing a step. Sets the progress range to the next interval.""" # ensure that progress is updated self.progress = self.progress_end # switch to new progress_{begin, end} self.progress_begin = self.progress_end try: self.progress_end = self.steps.pop(0) except: log.warning("An additional step to open the cache is required") class DaemonAcquireProgress(apt.progress.base.AcquireProgress): ''' Handle the package download process ''' def __init__(self, transaction, begin=0, end=100): apt.progress.base.AcquireProgress.__init__(self) self.transaction = transaction self.progress_end = end self.progress_begin = begin self.progress = 0 def _emit_acquire_item(self, item, total_size=0, current_size=0): if item.owner.status == apt_pkg.AcquireItem.STAT_DONE: status = enums.DOWNLOAD_DONE # Workaround for a bug in python-apt, see lp: #581886 current_size = item.owner.filesize elif item.owner.status == apt_pkg.AcquireItem.STAT_AUTH_ERROR: status = enums.DOWNLOAD_AUTH_ERROR elif item.owner.status == apt_pkg.AcquireItem.STAT_FETCHING: status = enums.DOWNLOAD_FETCHING elif item.owner.status == apt_pkg.AcquireItem.STAT_ERROR: status = enums.DOWNLOAD_ERROR elif item.owner.status == apt_pkg.AcquireItem.STAT_IDLE: status = enums.DOWNLOAD_IDLE else: # Workaround: The StatTransientNetworkError status isn't mapped # by python-apt, see LP #602578 status = enums.DOWNLOAD_NETWORK_ERROR if (item.owner.status != apt_pkg.AcquireItem.STAT_DONE and item.owner.error_text): msg = item.owner.error_text elif item.owner.mode: msg = item.owner.mode else: msg = "" self.transaction.progress_download = ( item.uri, status, item.shortdesc, total_size | item.owner.filesize, current_size | item.owner.partialsize, msg) def _emit_status_details(self, items): """Emit the transaction status details.""" names = set() for item in items: if item.owner.id: names.add(item.owner.id) else: names.add(item.shortdesc) if names: # TRANSLATORS: %s is a list of package names msg = self.transaction.ngettext("Downloading %(files)s", "Downloading %(files)s", len(items)) % {"files": " ".join(names)} self.transaction.status_details = msg def done(self, item): """Invoked when an item is successfully and completely fetched.""" self._emit_acquire_item(item) def fail(self, item): """Invoked when an item could not be fetched.""" self._emit_acquire_item(item) def fetch(self, item): """Invoked when some of the item's data is fetched.""" self._emit_acquire_item(item) def ims_hit(self, item): """Invoked when an item is confirmed to be up-to-date. Invoked when an item is confirmed to be up-to-date. For instance, when an HTTP download is informed that the file on the server was not modified. """ self._emit_acquire_item(item) def pulse(self, owner): """Callback to update progress information""" if self.transaction.cancelled: return False self.transaction.progress_details = (self.current_items, self.total_items, self.current_bytes, self.total_bytes, self.current_cps, self.elapsed_time) percent = (((self.current_bytes + self.current_items) * 100.0) / float(self.total_bytes + self.total_items)) progress = int(self.progress_begin + percent / 100 * (self.progress_end - self.progress_begin)) # If the progress runs backwards emit an illegal progress value # e.g. during cache updates. if self.progress > progress: self.transaction.progress = 101 else: self.transaction.progress = progress self.progress = progress # Show all currently downloaded files items = [] for worker in owner.workers: if not worker.current_item: continue self._emit_acquire_item(worker.current_item, worker.total_size, worker.current_size) items.append(worker.current_item) self._emit_status_details(items) while GLib.main_context_default().pending(): GLib.main_context_default().iteration() return True def start(self): """Callback at the beginning of the operation""" self.transaction.status = enums.STATUS_DOWNLOADING self.transaction.cancellable = True def stop(self): """Callback at the end of the operation""" self.transaction.progress_details = (0, 0, 0, 0, 0.0, 0) self.transaction.progress = self.progress_end self.transaction.cancellable = False def media_change(self, medium, drive): """Callback for media changes""" self.transaction.required_medium = medium, drive self.transaction.paused = True self.transaction.status = enums.STATUS_WAITING_MEDIUM while self.transaction.paused: GLib.main_context_default().iteration() self.transaction.status = enums.STATUS_DOWNLOADING if self.transaction.cancelled: return False return True class DaemonAcquireRepoProgress(DaemonAcquireProgress): """Handle the repository information download""" def __init__(self, transaction, begin=0, end=100): DaemonAcquireProgress.__init__(self, transaction, begin, end) self.languages = IsoCodes("iso_639", tag="iso_639_1_code", fallback_tag="iso_639_2T_code") self.regions = IsoCodes("iso_3166", "alpha_2_code") self.progress = 101 def start(self): """Callback at the beginning of the operation""" self.transaction.status = enums.STATUS_DOWNLOADING_REPO self.transaction.cancellable = True def _emit_status_details(self, items): """Emit the transaction status details.""" repos = set() for item in items: # We are only interested in the hostname currently try: repos.add(item.description.split()[0].split("://")[-1]) except IndexError: # TRANSLATORS: the string is used as a fallback if we cannot # get the URI of a local repository repos.add(self.transaction.gettext("local repository")) if repos: # TRANSLATORS: %s is a list of repository names msg = self.transaction.ngettext("Downloading from %s", "Downloading from %s", len(repos)) % " ".join(repos) self.transaction.status_details = msg def _emit_acquire_item(self, item, total_size=0, current_size=0): if item.owner.status == apt_pkg.AcquireItem.STAT_DONE: status = enums.DOWNLOAD_DONE # Workaround for a bug in python-apt, see lp: #581886 current_size = item.owner.filesize elif item.owner.status == apt_pkg.AcquireItem.STAT_AUTH_ERROR: status = enums.DOWNLOAD_AUTH_ERROR elif item.owner.status == apt_pkg.AcquireItem.STAT_FETCHING: status = enums.DOWNLOAD_FETCHING elif item.owner.status == apt_pkg.AcquireItem.STAT_ERROR: status = enums.DOWNLOAD_ERROR elif item.owner.status == apt_pkg.AcquireItem.STAT_IDLE: status = enums.DOWNLOAD_IDLE else: # Workaround: The StatTransientNetworkError status isn't mapped # by python-apt, see LP #602578 status = enums.DOWNLOAD_NETWORK_ERROR if (item.owner.status != apt_pkg.AcquireItem.STAT_DONE and item.owner.error_text): msg = item.owner.error_text elif item.owner.mode: msg = item.owner.mode else: msg = "" # Get a better description than e.g. Packages or Sources host, dist = item.description.split()[0:2] try: host = host.split("://")[1] except IndexError: # TRANSLATORS: the string is used as a fallback if we cannot # get the URI of a local repository desc = self.transaction.gettext("local repository") repo = "%s %s" % (host, dist) if item.shortdesc == "InRelease": # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext("Structure of %s") % repo elif item.shortdesc == "Release": # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext("Description of %s") % repo elif item.shortdesc == "Release.gpg": # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext("Description signature " "of %s") % repo elif item.shortdesc.startswith("Packages"): # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext( "Available packages from %s") % repo elif item.shortdesc.startswith("Sources"): # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext( "Available sources from %s") % repo elif item.shortdesc == "TranslationIndex": # TRANSLATORS: repo is the name of a repository desc = self.transaction.gettext("Available translations from " "%s") % repo elif item.shortdesc.startswith("Translation-"): lang_code = item.shortdesc.split("-", 1)[-1] try: lang_code, region_code = lang_code.split("_") except ValueError: region_code = None lang = self.languages.get_localised_name(lang_code, self.transaction.locale) region = self.regions.get_localised_name(region_code, self.transaction.locale) if lang and region: # TRANSLATORS: The first %s is the name of a language. The # second one the name of the region/country. Th # third %s is the name of the repository desc = self.transaction.gettext( "Translations for %s (%s) from %s") % (lang, region, repo) elif lang: # TRANSLATORS: %s is the name of a language. The second one is # the name of the repository desc = self.transaction.gettext("Translations for %s from " "%s") % (lang, repo) else: # TRANSLATORS: %s is the code of a language, e.g. ru_RU. # The second one is the name of the repository desc = self.transaction.gettext("Translations (%s) from " "%s") % (lang_code, repo) else: desc = item.shortdesc self.transaction.progress_download = ( item.uri, status, desc, total_size | item.owner.filesize, current_size | item.owner.partialsize, msg) class DaemonForkProgress(object): """Forks and executes a given method in the child process while monitoring the output and return state. During the run() call the mainloop will be iterated. Furthermore a status file descriptor is available to communicate with the child process. """ def __init__(self, transaction, begin=50, end=100): self.transaction = transaction self.status = "" self.progress = 0 self.progress_begin = begin self.progress_end = end self._child_exit = -1 self.last_activity = 0 self.child_pid = 0 self.status_parent_fd, self.status_child_fd = os.pipe() self.output = "" self._line_buffer = "" def __enter__(self): self.start_update() return self def __exit__(self, etype, evalue, etb): self.finish_update() def start_update(self): log.debug("Start update") self.transaction.status = enums.STATUS_COMMITTING self.transaction.term_attached = True self.last_activity = time.time() self.start_time = time.time() def finish_update(self): """Callback at the end of the operation""" self.transaction.term_attached = False def _child(self, method, *args): """Call the given method or function with the corrsponding arguments in the child process. This method should be replace in subclasses. """ method(*args) time.sleep(0.5) os._exit(0) def run(self, *args, **kwargs): """Setup monitoring, fork and call the self._child() method in the child process with the given arguments. """ log.debug("Run") terminal_fd = None if self.transaction.terminal: try: # Save the settings of the transaction terminal and set to # raw mode terminal_fd = os.open(self.transaction.terminal, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK) terminal_attr = termios.tcgetattr(terminal_fd) tty.setraw(terminal_fd, termios.TCSANOW) except (OSError, termios.error): # Switch to non-interactive self.transaction.terminal = "" pid = self._fork() if pid == 0: os.close(self.status_parent_fd) try: self._setup_child() self._child(*args, **kwargs) except Exception: traceback.print_exc() finally: # Give the parent process enough time to catch the output time.sleep(1) # Abort the subprocess immediatelly on any unhandled # failure - otherwise the atexit methods would # be called, e.g. the frozen status decorator os._exit(apt_pkg.PackageManager.RESULT_FAILED) else: self.child_pid = pid os.close(self.status_child_fd) log.debug("Child pid: %s", pid) watchers = [] flags = GLib.IO_IN | GLib.IO_ERR | GLib.IO_HUP if self.transaction.terminal: # Setup copying of i/o between the controlling terminals watchers.append(GLib.io_add_watch(terminal_fd, GLib.PRIORITY_HIGH_IDLE, flags, self._copy_io)) watchers.append(GLib.io_add_watch(self.master_fd, GLib.PRIORITY_HIGH_IDLE, flags, self._copy_io_master, terminal_fd)) # Monitor the child process watchers.append( GLib.child_watch_add(GLib.PRIORITY_HIGH_IDLE, pid, self._on_child_exit)) # Watch for status updates watchers.append(GLib.io_add_watch(self.status_parent_fd, GLib.PRIORITY_HIGH_IDLE, GLib.IO_IN, self._on_status_update)) while self._child_exit == -1: GLib.main_context_default().iteration() for id in watchers: GLib.source_remove(id) # Restore the settings of the transaction terminal if terminal_fd: try: termios.tcsetattr(terminal_fd, termios.TCSADRAIN, terminal_attr) except termios.error: pass # Make sure all file descriptors are closed for fd in [self.master_fd, self.status_parent_fd, terminal_fd]: try: os.close(fd) except (OSError, TypeError): pass return os.WEXITSTATUS(self._child_exit) def _on_child_exit(self, pid, condition): log.debug("Child exited: %s", condition) self._child_exit = condition return False def _on_status_update(self, source, condition): """Callback for changes on the status file descriptor. The method has to return True to keep the monitoring alive. If it returns False the monitoring will stop. Replace this method in your subclass if you use the status fd. """ return False def _fork(self): """Fork and create a master/slave pty pair by which the forked process can be controlled. """ pid, self.master_fd = os.forkpty() return pid def _setup_child(self): """Setup the environment of the child process.""" def interrupt_handler(signum, frame): # Exit the child immediately if we receive the interrupt # signal or a Ctrl+C - otherwise the atexit methods would # be called, e.g. the frozen status decorator os._exit(apt_pkg.PackageManager.RESULT_FAILED) signal.signal(signal.SIGINT, interrupt_handler) # Make sure that exceptions of the child are not caught by apport sys.excepthook = sys.__excepthook__ mainloop.quit() # force terminal messages in dpkg to be untranslated, the # status-fd or debconf prompts will not be affected os.environ["DPKG_UNTRANSLATED_MESSAGES"] = "1" # We also want untranslated status messages from apt locale.setlocale(locale.LC_ALL, "C") # Switch to the language of the user if self.transaction.locale: os.putenv("LANG", self.transaction.locale) # Either connect to the controllong terminal or switch to # non-interactive mode if not self.transaction.terminal: # FIXME: we should check for "mail" or "gnome" here # and not unset in this case os.putenv("APT_LISTCHANGES_FRONTEND", "none") os.putenv("APT_LISTBUGS_FRONTEND", "none") else: os.putenv("TERM", "linux") # Run debconf through a proxy if available if self.transaction.debconf: os.putenv("DEBCONF_PIPE", self.transaction.debconf) os.putenv("DEBIAN_FRONTEND", "passthrough") if log.level == logging.DEBUG: os.putenv("DEBCONF_DEBUG", ".") elif not self.transaction.terminal: os.putenv("DEBIAN_FRONTEND", "noninteractive") # Proxy configuration if self.transaction.http_proxy: apt_pkg.config.set("Acquire::http::Proxy", self.transaction.http_proxy) # Mark changes as being make by aptdaemon cmd = "aptdaemon role='%s' sender='%s'" % (self.transaction.role, self.transaction.sender) apt_pkg.config.set("CommandLine::AsString", cmd) def _copy_io_master(self, source, condition, target): if condition == GLib.IO_IN: self.last_activity = time.time() try: char_byte = os.read(source, 1) except OSError: log.debug("Faild to read from master") return True # Write all the output from dpkg to a log char = char_byte.decode("UTF-8", "ignore") if char == "\n": # Skip ANSI characters from the console output line = re.sub(REGEX_ANSI_ESCAPE_CODE, "", self._line_buffer) if line: log_terminal.debug(line) self.output += line + "\n" self._line_buffer = "" else: self._line_buffer += char if target: try: os.write(target, char_byte) except OSError: log.debug("Failed to write to controlling terminal") return True try: os.close(source) except OSError: # Could already be closed by the clean up in run() pass return False def _copy_io(self, source, condition): if condition == GLib.IO_IN: try: char = os.read(source, 1) os.write(self.master_fd, char) except OSError: pass else: # Detect config file prompt answers on the console if (self.transaction.paused and self.transaction.config_file_conflict): self.transaction.config_file_conflict_resolution = None self.transaction.paused = False return True os.close(source) return False class DaemonLintianProgress(DaemonForkProgress): """Performs a lintian call.""" def _child(self, path): # Avoid running lintian as root os.setuid(self.transaction.uid) if platform.dist()[1] == "debian": profile = "debian/aptdaemon" else: profile = "ubuntu/aptdaemon" # If HOME isn't set lintian won't try to load user profiles os.unsetenv("HOME") lintian_path = apt_pkg.config.find_file("Dir::Bin::Lintian", "/usr/bin/lintian") os.execlp(lintian_path, lintian_path, "--no-cfg", "--fail-on-warnings", "--profile", profile, path) os._exit(1) class DaemonInstallProgress(DaemonForkProgress): """Progress to execute APT package operations in a child process.""" def start_update(self): DaemonForkProgress.start_update(self) lock.status_lock.release() def finish_update(self): """Callback at the end of the operation""" DaemonForkProgress.finish_update(self) lock.wait_for_lock(self.transaction, lock.status_lock) def _child(self, pm): try: res = pm.do_install(self.status_child_fd) except: os._exit(apt_pkg.PackageManager.RESULT_FAILED) else: os._exit(res) def _on_status_update(self, source, condition): """Parse messages from APT on the status fd.""" log.debug("UpdateInterface") status_msg = "" try: while not status_msg.endswith("\n"): self.last_activity = time.time() status_msg += os.read(source, 1).decode("UTF-8", "ignore") except: return False try: (status, pkg, percent, message_raw) = status_msg.split(":", 3) except ValueError: # silently ignore lines that can't be parsed return True message = message_raw.strip() # print "percent: %s %s" % (pkg, float(percent)/100.0) if status == "pmerror": self._error(pkg, message) elif status == "pmconffile": # we get a string like this: # 'current-conffile' 'new-conffile' useredited distedited match = re.match("\s*\'(.*)\'\s*\'(.*)\'.*", message_raw) if match: new, old = match.group(1), match.group(2) self._conffile(new, old) elif status == "pmstatus": if message.startswith("Installing"): status_enum = enums.PKG_INSTALLING elif message.startswith("Installed"): status_enum = enums.PKG_INSTALLED elif message.startswith("Configuring"): status_enum = enums.PKG_CONFIGURING elif message.startswith("Preparing to configure"): status_enum = enums.PKG_PREPARING_CONFIGURE elif message.startswith("Preparing for removal of"): status_enum = enums.PKG_PREPARING_REMOVE elif message.startswith("Removing"): status_enum = enums.PKG_REMOVING elif message.startswith("Removed"): status_enum = enums.PKG_REMOVED elif message.startswith("Preparing to completely remove"): status_enum = enums.PKG_PREPARING_PURGE elif message.startswith("Completely removing"): status_enum = enums.PKG_PURGING elif message.startswith("Completely removed"): status_enum = enums.PKG_PURGED elif message.startswith("Unpacking"): status_enum = enums.PKG_UNPACKING elif message.startswith("Preparing"): status_enum = enums.PKG_PREPARING_INSTALL elif message.startswith("Noting disappearance of"): status_enum = enums.PKG_DISAPPEARING elif message.startswith("Running"): status_enum = enums.PKG_RUNNING_TRIGGER else: status_enum = enums.PKG_UNKNOWN self._status_changed(pkg, float(percent), status_enum) # catch a time out by sending crtl+c if (self.last_activity + INSTALL_TIMEOUT < time.time() and self.child_pid): log.critical("Killing child since timeout of %s s", INSTALL_TIMEOUT) os.kill(self.child_pid, 15) return True def _status_changed(self, pkg, percent, status_enum): """Callback to update status information""" log.debug("APT status: %s, %s, %s", pkg, percent, status_enum) progress = self.progress_begin + percent / 100 * (self.progress_end - self.progress_begin) if self.progress < progress: self.transaction.progress = int(progress) self.progress = progress # We use untranslated messages from apt. # So convert them to an enum to allow translations, see LP #641262 # The strings are taken from apt-pkg/deb/dpkgpm.cc desc = enums.get_package_status_from_enum(status_enum) msg = self.transaction.gettext(desc) % pkg self.transaction.status_details = msg self.transaction.progress_package = (pkg, status_enum) def _conffile(self, current, new): """Callback for a config file conflict""" log.warning("Config file prompt: '%s' (%s)" % (current, new)) self.transaction.config_file_conflict = (current, new) self.transaction.paused = True self.transaction.status = enums.STATUS_WAITING_CONFIG_FILE_PROMPT while self.transaction.paused: GLib.main_context_default().iteration() log.debug("Sending config file answer: %s", self.transaction.config_file_conflict_resolution) if self.transaction.config_file_conflict_resolution == "replace": os.write(self.master_fd, b"y\n") elif self.transaction.config_file_conflict_resolution == "keep": os.write(self.master_fd, b"n\n") self.transaction.config_file_conflict_resolution = None self.transaction.config_file_conflict = None self.transaction.status = enums.STATUS_COMMITTING return True def _error(self, pkg, msg): """Callback for an error""" log.critical("%s: %s" % (pkg, msg)) class DaemonDpkgInstallProgress(DaemonInstallProgress): """Progress handler for a local Debian package installation.""" def __init__(self, transaction, begin=101, end=101): DaemonInstallProgress.__init__(self, transaction, begin, end) def _child(self, debfile): args = [apt_pkg.config["Dir::Bin::DPkg"], "--status-fd", str(self.status_child_fd)] args.extend(apt_pkg.config.value_list("DPkg::Options")) if not self.transaction.terminal: args.extend(["--force-confdef", "--force-confold"]) args.extend(["-i", debfile]) os.execlp(apt_pkg.config["Dir::Bin::DPkg"], *args) def _on_status_update(self, source, condition): log.debug("UpdateInterface") status_raw = "" try: while not status_raw.endswith("\n"): status_raw += os.read(source, 1).decode("UTF-8", "ignore") except: return False try: status = [s.strip() for s in status_raw.split(":", 3)] except ValueError: # silently ignore lines that can't be parsed return True # Parse the status message. It can be of the following types: # - "status: PACKAGE: STATUS" # - "status: PACKAGE: error: MESSAGE" # - "status: FILE: conffile: 'OLD' 'NEW' useredited distedited" # - "processing: STAGE: PACKAGE" with STAGE is one of upgrade, # install, configure, trigproc, remove, purge if status[0] == "status": # FIXME: Handle STATUS if status[2] == "error": self._error(status[1], status[3]) elif status[2] == "conffile": match = re.match("\s*\'(.*)\'\s*\'(.*)\'.*", status[3]) if match: new, old = match.group(1), match.group(2) self._conffile(new, old) elif status[0] == "processing": try: status_enum = MAP_DPKG_STAGE[status[1]] except KeyError: status_enum = enums.PKG_UNKONWN self._status_changed(status[2], 101, status_enum) return True class DaemonDpkgRecoverProgress(DaemonDpkgInstallProgress): """Progress handler for dpkg --confiure -a call.""" def _child(self): args = [apt_pkg.config["Dir::Bin::Dpkg"], "--status-fd", str(self.status_child_fd), "--configure", "-a"] args.extend(apt_pkg.config.value_list("Dpkg::Options")) if not self.transaction.terminal: args.extend(["--force-confdef", "--force-confold"]) os.execlp(apt_pkg.config["Dir::Bin::DPkg"], *args) class DaemonDpkgReconfigureProgress(DaemonDpkgInstallProgress): """Progress handler for dpkg-reconfigure call.""" def _child(self, packages, priority, ): args = ["/usr/sbin/dpkg-reconfigure"] if priority != "default": args.extend(["--priority", priority]) args.extend(packages) os.execlp("/usr/sbin/dpkg-reconfigure", *args) # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/test.py0000644000000000000000000002760712162730627016167 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Small helpers for the test suite.""" # Copyright (C) 2011 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 __author__ = "Sebastian Heinlein " __all__ = ("get_tests_dir", "Chroot", "AptDaemonTestCase") import inspect import os import shutil import subprocess import sys import time import tempfile import unittest if sys.version_info.major > 2: from http.server import HTTPServer from http.server import SimpleHTTPRequestHandler as HTTPRequestHandler else: from BaseHTTPServer import HTTPServer from SimpleHTTPServer import SimpleHTTPRequestHandler as HTTPRequestHandler import apt_pkg import apt.auth PY3K = sys.version_info.major > 2 class MockQueue(object): """A fake TransactionQueue which only provides a limbo attribute.""" def __init__(self): self.limbo = {} class Chroot(object): """Provides a chroot which can be used by APT.""" def __init__(self, prefix="tmp"): self.path = tempfile.mkdtemp(prefix) def setup(self): """Setup the chroot and modify the apt configuration.""" for subdir in ["alternatives", "info", "parts", "updates", "triggers"]: path = os.path.join(self.path, "var", "lib", "dpkg", subdir) os.makedirs(path) for fname in ["status", "available"]: with open(os.path.join(self.path, "var", "lib", "dpkg", fname), "w"): pass os.makedirs(os.path.join(self.path, "var/cache/apt/archives/partial")) os.makedirs(os.path.join(self.path, "var/lib/apt/lists")) os.makedirs(os.path.join(self.path, "var/lib/apt/lists/partial")) os.makedirs(os.path.join(self.path, "etc/apt/apt.conf.d")) os.makedirs(os.path.join(self.path, "etc/apt/sources.list.d")) os.makedirs(os.path.join(self.path, "etc/apt/preferences.d")) os.makedirs(os.path.join(self.path, "var/log")) os.makedirs(os.path.join(self.path, "media")) # Make apt use the new chroot dpkg_wrapper = os.path.join(get_tests_dir(), "dpkg-wrapper.sh") apt_key_wrapper = os.path.join(get_tests_dir(), "fakeroot-apt-key") config_path = os.path.join(self.path, "etc/apt/apt.conf.d/10chroot") with open(config_path, "w") as cnf: cnf.write("Dir::Bin::DPkg %s;" % dpkg_wrapper) cnf.write("Dir::Bin::Apt-Key %s;" % apt_key_wrapper) apt_pkg.read_config_file(apt_pkg.config, config_path) apt_pkg.init_system() apt_pkg.config["Dir"] = self.path def remove(self): """Remove the files of the chroot.""" apt_pkg.config.clear("Dir") apt_pkg.config.clear("Dir::State::Status") apt_pkg.init() shutil.rmtree(self.path) def add_trusted_key(self): """Add glatzor's key to the trusted ones.""" apt.auth.add_key_from_file(os.path.join(get_tests_dir(), "repo/glatzor.gpg")) def install_debfile(self, path, force_depends=False): """Install a package file into the chroot.""" cmd_list = ["fakeroot", "dpkg", "--root", self.path, "--log=%s/var/log/dpkg.log" % self.path] if force_depends: cmd_list.append("--force-depends") cmd_list.extend(["--install", path]) cmd = subprocess.Popen(cmd_list, env={"PATH": "/sbin:/bin:/usr/bin:/usr/sbin"}) cmd.communicate() def add_test_repository(self, copy_list=True, copy_sig=True): """Add the test repository to the to the chroot.""" return self.add_repository(os.path.join(get_tests_dir(), "repo"), copy_list, copy_sig) def add_cdrom_repository(self): """Emulate a repository on removable device.""" # Create the content of a fake cdrom media_path = os.path.join(self.path, "tmp/fake-cdrom") # The cdom gets identified by the info file os.makedirs(os.path.join(media_path, ".disk")) with open(os.path.join(media_path, ".disk/info"), "w") as info: info.write("This is a fake CDROM") # Copy the test repository "on" the cdrom shutil.copytree(os.path.join(get_tests_dir(), "repo"), os.path.join(media_path, "repo")) # Call apt-cdrom add mount_point = self.mount_cdrom() os.system("apt-cdrom add -m -d %s " "-o 'Debug::Acquire::cdrom'=True " "-o 'Acquire::cdrom::AutoDetect'=False " "-o 'Dir'=%s" % (mount_point, self.path)) self.unmount_cdrom() config_path = os.path.join(self.path, "etc/apt/apt.conf.d/11cdrom") with open(config_path, "w") as cnf: cnf.write('Debug::Acquire::cdrom True;\n' 'Acquire::cdrom::AutoDetect False;\n' 'Acquire::cdrom::NoMount True;\n' 'Acquire::cdrom::mount "%s";' % mount_point) def mount_cdrom(self): """Copy the repo information to the CDROM mount point.""" mount_point = os.path.join(self.path, "media/cdrom") os.symlink(os.path.join(self.path, "tmp/fake-cdrom"), mount_point) return mount_point def unmount_cdrom(self): """Remove all files from the mount point.""" os.unlink(os.path.join(self.path, "media/cdrom")) def add_repository(self, path, copy_list=True, copy_sig=True): """Add a sources.list entry to the chroot.""" # Add a sources list lst_path = os.path.join(self.path, "etc/apt/sources.list") with open(lst_path, "w") as lst_file: lst_file.write("deb file://%s ./ # Test repository" % path) if copy_list: filename = apt_pkg.uri_to_filename("file://%s/." % path) shutil.copy(os.path.join(path, "Packages"), "%s/var/lib/apt/lists/%s_Packages" % (self.path, filename)) if os.path.exists(os.path.join(path, "Release")): shutil.copy(os.path.join(path, "Release"), "%s/var/lib/apt/lists/%s_Release" % (self.path, filename)) if copy_sig and os.path.exists(os.path.join(path, "Release.gpg")): shutil.copy(os.path.join(path, "Release.gpg"), "%s/var/lib/apt/lists/%s_Release.gpg" % (self.path, filename)) class AptDaemonTestCase(unittest.TestCase): @classmethod def setupClass(cls): # Start with a clean APT configuration to remove changes # of previous tests for key in set([key.split("::")[0] for key in apt_pkg.config.keys()]): apt_pkg.config.clear(key) apt_pkg.init_config() def start_fake_polkitd(self, options="all"): """Start a fake PolicyKit daemon. :param allowed_actions: comma separated list of allowed actions. Defaults to all """ try: env = os.environ.copy() env["DBUS_SYSTEM_BUS_ADDRESS"] = self.dbus_address except AttributeError: env = None dir = get_tests_dir() proc = subprocess.Popen([os.path.join(dir, "fake-polkitd.py"), "--allowed-actions", options], env=env) self.addCleanup(self._kill_process, proc) return proc def start_session_aptd(self, chroot="/", debug=True): """Start an aptdaemon which listens on the session D-Bus. :param chroot: path to the chroot """ env = os.environ.copy() try: env["DBUS_SYSTEM_BUS_ADDRESS"] = self.dbus_address except AttributeError: pass try: env.pop("http_proxy") # Unset a local proxy, see LP #1050799 except KeyError: pass dir = get_tests_dir() if dir == "/usr/share/aptdaemon/tests": path = "/usr/sbin/aptd" else: path = os.path.join(dir, "../aptd") cmd = ["python3", path, "--disable-timeout", "--disable-plugins", "--chroot", chroot] if debug: cmd.append("--debug") proc = subprocess.Popen(cmd, env=env) self.addCleanup(self._kill_process, proc) return proc def start_dbus_daemon(self): """Start a private D-Bus daemon and return its process and address.""" proc, dbus_address = start_dbus_daemon() self.addCleanup(self._kill_process, proc) self.dbus_address = dbus_address def start_keyserver(self, filename=None): """Start a fake keyserver on hkp://localhost:19191 Keyword arguments: filename -- Optional path to a GnuPG pulic key file which should be returned by lookups. By default the key of the test repo is used. """ dir = tempfile.mkdtemp(prefix="keyserver-test-") self.addCleanup(shutil.rmtree, dir) os.mkdir(os.path.join(dir, "pks")) if filename is None: filename = os.path.join(get_tests_dir(), "repo/glatzor.gpg") shutil.copy(filename, os.path.join(dir, "pks", "lookup")) pid = os.fork() if pid == 0: # quiesce server log os.dup2(os.open('/dev/null', os.O_WRONLY), sys.stderr.fileno()) os.chdir(dir) httpd = HTTPServer(('localhost', 19191), HTTPRequestHandler) httpd.serve_forever() os._exit(0) else: self.addCleanup(self._kill_pid, pid) # wait a bit until server is ready time.sleep(0.5) def _kill_pid(self, pid): os.kill(pid, 15) os.wait() def _kill_process(self, proc): proc.kill() proc.wait() def get_tests_dir(): """Return the absolute path to the tests directory.""" # Try to detect a relative tests dir if we are running from the source # directory try: path = inspect.getsourcefile(sys.modules["aptdaemon.test"]) except KeyError: path = inspect.getsourcefile(inspect.currentframe()) path = os.path.realpath(path) relative_path = os.path.join(os.path.dirname(path), "../tests") if os.path.exists(os.path.join(relative_path, "repo/Packages")): return os.path.normpath(relative_path) # Fallback to an absolute path elif os.path.exists("/usr/share/aptdaemon/tests/repo/Packages"): return "/usr/share/aptdaemon/tests" else: raise Exception("Could not find tests direcotry") def start_dbus_daemon(): """Start a private D-Bus daemon and return its process and address.""" config_path = os.path.join(get_tests_dir(), "dbus.conf") proc = subprocess.Popen(["dbus-daemon", "--nofork", "--print-address", "--config-file", config_path], stdout=subprocess.PIPE) output = proc.stdout.readline().strip() if PY3K: dbus_address = output.decode() else: dbus_address = output return proc, dbus_address # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/aptdaemon/utils.py0000644000000000000000000000655312352743243016344 0ustar 00000000000000"""Module with little helper functions and classes: deprecated - decorator to emit a warning if a depreacted function is used """ # Copyright (C) 2008-2009 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # (at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. __author__ = "Sebastian Heinlein " __all__ = ("deprecated", "IsoCodes") import sys import gettext import functools import warnings from xml.etree import ElementTree if sys.version >= '3': _gettext_method = "gettext" else: _gettext_method = "ugettext" def deprecated(func): """This is a decorator which can be used to mark functions as deprecated. It will result in a warning being emitted when the function is used. Taken from http://wiki.python.org/moin/PythonDecoratorLibrary #GeneratingDeprecationWarnings """ @functools.wraps(func) def new_func(*args, **kwargs): warnings.warn_explicit( "Call to deprecated function %(funcname)s." % { 'funcname': func.__name__, }, category=DeprecationWarning, filename=func.__code__.co_filename, lineno=func.__code__.co_firstlineno + 1 ) return func(*args, **kwargs) return new_func class IsoCodes(object): """Provides access to the iso-codes language, script and country database. """ def __init__(self, norm, tag, fallback_tag=None): filename = "/usr/share/xml/iso-codes/%s.xml" % norm et = ElementTree.ElementTree(file=filename) self._dict = {} self.norm = norm for element in list(et.iter()): iso_code = element.get(tag) if not iso_code and fallback_tag: iso_code = element.get(fallback_tag) if iso_code: self._dict[iso_code] = element.get("name") def get_localised_name(self, value, locale): try: name = self._dict[value] except KeyError: return None trans = gettext.translation(domain=self.norm, fallback=True, languages=[locale]) return getattr(trans, _gettext_method)(name) def get_name(self, value): try: return self._dict[value] except KeyError: return None def split_package_id(package): """Return the name, the version number and the release of the specified package.""" if "=" in package: name, version = package.split("=", 1) release = None elif "/" in package: name, release = package.split("/", 1) version = None else: name = package version = release = None return name, version, release # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/worker/0000755000000000000000000000000012173147421016127 5ustar 00000000000000aptdaemon-1.1.1+bzr982/aptdaemon/worker/__init__.py0000644000000000000000000003100112174674317020245 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides AptWorker which processes transactions.""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("BaseWorker", "DummyWorker") import logging import os import pkg_resources import time import traceback from gi.repository import GObject, GLib from .. import enums from .. import errors log = logging.getLogger("AptDaemon.Worker") # Just required to detect translatable strings. The translation is done by # core.Transaction.gettext _ = lambda s: s class BaseWorker(GObject.GObject): """Worker which processes transactions from the queue.""" __gsignals__ = {"transaction-done": (GObject.SignalFlags.RUN_FIRST, None, (GObject.TYPE_PYOBJECT,)), "transaction-simulated": (GObject.SignalFlags.RUN_FIRST, None, (GObject.TYPE_PYOBJECT,))} NATIVE_ARCH = None def __init__(self, chroot=None, load_plugins=True): """Initialize a new AptWorker instance.""" GObject.GObject.__init__(self) self.trans = None self.last_action_timestamp = time.time() self.chroot = chroot # Store the the tid of the transaction whose changes are currently # marked in the cache self.marked_tid = None self.plugins = {} @staticmethod def _split_package_id(package): """Return the name, the version number and the release of the specified package.""" if "=" in package: name, version = package.split("=", 1) release = None elif "/" in package: name, release = package.split("/", 1) version = None else: name = package version = release = None return name, version, release def run(self, transaction): """Process the given transaction in the background. Keyword argument: transaction -- core.Transcation instance to run """ log.info("Processing transaction %s", transaction.tid) if self.trans: raise Exception("There is already a running transaction") self.trans = transaction GLib.idle_add(self._run_transaction_idle, transaction) def simulate(self, trans): """Return the dependencies which will be installed by the transaction, the content of the dpkg status file after the transaction would have been applied, the download size and the required disk space. Keyword arguments: trans -- the transaction which should be simulated """ log.info("Simulating trans: %s" % trans.tid) trans.status = enums.STATUS_RESOLVING_DEP GLib.idle_add(self._simulate_transaction_idle, trans) def _emit_transaction_simulated(self, trans): """Emit the transaction-simulated signal. Keyword argument: trans -- the simulated transaction """ log.debug("Emitting transaction-simulated: %s", trans.tid) self.emit("transaction-simulated", trans) def _emit_transaction_done(self, trans): """Emit the transaction-done signal. Keyword argument: trans -- the finished transaction """ log.debug("Emitting transaction-done: %s", trans.tid) self.emit("transaction-done", trans) def _run_transaction_idle(self, trans): """Run the transaction""" self.last_action_timestamp = time.time() trans.status = enums.STATUS_RUNNING trans.progress = 11 try: self._run_transaction(trans) except errors.TransactionCancelled: trans.exit = enums.EXIT_CANCELLED except errors.TransactionFailed as excep: trans.error = excep trans.exit = enums.EXIT_FAILED except (KeyboardInterrupt, SystemExit): trans.exit = enums.EXIT_CANCELLED except Exception as excep: tbk = traceback.format_exc() trans.error = errors.TransactionFailed(enums.ERROR_UNKNOWN, tbk) trans.exit = enums.EXIT_FAILED try: from . import crash except ImportError: pass else: crash.create_report("%s: %s" % (type(excep), str(excep)), tbk, trans) else: trans.exit = enums.EXIT_SUCCESS finally: trans.progress = 100 self.last_action_timestamp = time.time() tid = trans.tid[:] self.trans = None self.marked_tid = None self._emit_transaction_done(trans) log.info("Finished transaction %s", tid) return False def _simulate_transaction_idle(self, trans): try: (trans.depends, trans.download, trans.space, trans.unauthenticated, trans.high_trust_packages) = self._simulate_transaction(trans) except errors.TransactionFailed as excep: trans.error = excep trans.exit = enums.EXIT_FAILED except Exception as excep: tbk = traceback.format_exc() trans.error = errors.TransactionFailed(enums.ERROR_UNKNOWN, tbk) try: from . import crash except ImportError: pass else: crash.create_report("%s: %s" % (type(excep), str(excep)), tbk, trans) trans.exit = enums.EXIT_FAILED else: trans.status = enums.STATUS_SETTING_UP trans.simulated = time.time() self.marked_tid = trans.tid finally: self._emit_transaction_simulated(trans) self.last_action_timestamp = time.time() return False def _load_plugins(self, plugins, entry_point="aptdaemon.plugins"): """Load the plugins from setuptools' entry points.""" plugin_dirs = [os.path.join(os.path.dirname(__file__), "plugins")] env = pkg_resources.Environment(plugin_dirs) dists, errors = pkg_resources.working_set.find_plugins(env) for dist in dists: pkg_resources.working_set.add(dist) for name in plugins: for ept in pkg_resources.iter_entry_points(entry_point, name): try: self.plugins.setdefault(name, []).append(ept.load()) except: log.critical("Failed to load %s plugin: " "%s" % (name, ept.dist)) else: log.debug("Loaded %s plugin: %s", name, ept.dist) def _simulate_transaction(self, trans): """This method needs to be implemented by the backends.""" depends = [[], [], [], [], [], [], []] unauthenticated = [] high_trust_packages = [] skip_pkgs = [] size = 0 installs = reinstalls = removals = purges = upgrades = upgradables = \ downgrades = [] return depends, 0, 0, [], [] def _run_transaction(self, trans): """This method needs to be implemented by the backends.""" raise errors.TransactionFailed(enums.ERROR_NOT_SUPPORTED) def set_config(self, option, value, filename): """Set a configuration option. This method needs to be implemented by the backends.""" raise NotImplementedError def get_config(self, option): """Get a configuration option. This method needs to be implemented by the backends.""" raise NotImplementedError def get_trusted_vendor_keys(self): """This method needs to be implemented by the backends.""" return [] def is_reboot_required(self): """This method needs to be implemented by the backends.""" return False class DummyWorker(BaseWorker): """Allows to test the daemon without making any changes to the system.""" def run(self, transaction): """Process the given transaction in the background. Keyword argument: transaction -- core.Transcation instance to run """ log.info("Processing transaction %s", transaction.tid) if self.trans: raise Exception("There is already a running transaction") self.trans = transaction self.last_action_timestamp = time.time() self.trans.status = enums.STATUS_RUNNING self.trans.progress = 0 self.trans.cancellable = True GLib.timeout_add(200, self._run_transaction_idle, transaction) def _run_transaction_idle(self, trans): """Run the worker""" if trans.cancelled: trans.exit = enums.EXIT_CANCELLED elif trans.progress == 100: trans.exit = enums.EXIT_SUCCESS elif trans.role == enums.ROLE_UPDATE_CACHE: trans.exit = enums.EXIT_FAILED elif trans.role == enums.ROLE_UPGRADE_PACKAGES: trans.exit = enums.EXIT_SUCCESS elif trans.role == enums.ROLE_UPGRADE_SYSTEM: trans.exit = enums.EXIT_CANCELLED else: if trans.role == enums.ROLE_INSTALL_PACKAGES: if trans.progress == 1: trans.status = enums.STATUS_RESOLVING_DEP elif trans.progress == 5: trans.status = enums.STATUS_DOWNLOADING elif trans.progress == 50: trans.status = enums.STATUS_COMMITTING trans.status_details = "Heyas!" elif trans.progress == 55: trans.paused = True trans.status = enums.STATUS_WAITING_CONFIG_FILE_PROMPT trans.config_file_conflict = "/etc/fstab", "/etc/mtab" while trans.paused: GLib.main_context_default().iteration() trans.config_file_conflict_resolution = None trans.config_file_conflict = None trans.status = enums.STATUS_COMMITTING elif trans.progress == 60: trans.required_medium = ("Debian Lenny 5.0 CD 1", "USB CD-ROM") trans.paused = True trans.status = enums.STATUS_WAITING_MEDIUM while trans.paused: GLib.main_context_default().iteration() trans.status = enums.STATUS_DOWNLOADING elif trans.progress == 70: trans.status_details = "Servus!" elif trans.progress == 90: trans.status_deatils = "" trans.status = enums.STATUS_CLEANING_UP elif trans.role == enums.ROLE_REMOVE_PACKAGES: if trans.progress == 1: trans.status = enums.STATUS_RESOLVING_DEP elif trans.progress == 5: trans.status = enums.STATUS_COMMITTING trans.status_details = "Heyas!" elif trans.progress == 50: trans.status_details = "Hola!" elif trans.progress == 70: trans.status_details = "Servus!" elif trans.progress == 90: trans.status_deatils = "" trans.status = enums.STATUS_CLEANING_UP trans.progress += 1 return True trans.status = enums.STATUS_FINISHED self.last_action_timestamp = time.time() tid = self.trans.tid[:] trans = self.trans self.trans = None self._emit_transaction_done(trans) log.info("Finished transaction %s", tid) return False def simulate(self, trans): depends = [[], [], [], [], [], [], []] return depends, 0, 0, [], [] # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/worker/aptworker.py0000644000000000000000000020543112352744055020531 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides AptWorker which processes transactions.""" # Copyright (C) 2008-2009 Sebastian Heinlein # # 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 " __all__ = ("AptWorker") import contextlib import errno import glob import logging import netrc import os import re import shutil import stat import sys import tempfile import time import traceback try: from urllib.parse import urlsplit, urlunsplit except ImportError: from urlparse import urlsplit, urlunsplit try: from configparser import ConfigParser except ImportError: from ConfigParser import ConfigParser import apt import apt.auth import apt.cache import apt.debfile import apt_pkg import aptsources import aptsources.distro from aptsources.sourceslist import SourcesList from gi.repository import GObject, GLib from . import BaseWorker from ..enums import * from ..errors import * from .. import lock from ..progress import ( DaemonOpenProgress, DaemonInstallProgress, DaemonAcquireProgress, DaemonAcquireRepoProgress, DaemonDpkgInstallProgress, DaemonDpkgReconfigureProgress, DaemonDpkgRecoverProgress, DaemonLintianProgress, DaemonForkProgress) log = logging.getLogger("AptDaemon.Worker") # Just required to detect translatable strings. The translation is done by # core.Transaction.gettext _ = lambda s: s _POPCON_PATH = "/etc/popularity-contest.conf" _POPCON_DEFAULT = """# Config file for Debian's popularity-contest package. # # To change this file, use: # dpkg-reconfigure popularity-contest # # You can also edit it by hand, if you so choose. # # See /usr/share/popularity-contest/default.conf for more info # on the options. MY_HOSTID="%(host_id)s" PARTICIPATE="%(participate)s" USE_HTTP="yes" """ def trans_only_installs_pkgs_from_high_trust_repos(trans, whitelist=set()): """Return True if this transaction only touches packages in the aptdaemon repoisotry high trust repository whitelist """ # the transaction *must* be simulated before if not trans.simulated: return False # we never allow unauthenticated ones if trans.unauthenticated: return False # paranoia: wrong role if trans.role not in (ROLE_INSTALL_PACKAGES, ROLE_COMMIT_PACKAGES): return False # if there is anything touched that is not a install bail out for enum in (PKGS_REINSTALL, PKGS_REMOVE, PKGS_PURGE, PKGS_DOWNGRADE, PKGS_UPGRADE): if trans.packages[enum]: return False # paranoia(2): we must want to install something if not trans.packages[PKGS_INSTALL]: return False # if the install packages matches the whitelisted set we are good return set(trans.packages[PKGS_INSTALL]) == set(trans.high_trust_packages) def read_high_trust_repository_dir(whitelist_cfg_d): """Return a set of (origin, component, pkgname-regexp) from a high-trust-repository-whitelist.d directory """ whitelist = set() for path in glob.glob(os.path.join(whitelist_cfg_d, "*.cfg")): whitelist |= _read_high_trust_repository_whitelist_file(path) return whitelist def _read_high_trust_repository_whitelist_file(path): """Read a individual high-trust-repository whitelist file and return a set of tuples (origin, component, pkgname-regexp) """ parser = ConfigParser() whitelist = set() try: parser.read(path) except Exception as e: log.error("Failed to read repository whitelist '%s' (%s)" % (path, e)) return whitelist for section in parser.sections(): origin = parser.get(section, "origin") component = parser.get(section, "component") pkgnames = parser.get(section, "pkgnames") whitelist.add((origin, component, pkgnames)) return whitelist class AptWorker(BaseWorker): """Worker which processes transactions from the queue.""" NATIVE_ARCH = apt_pkg.get_architectures()[0] # the basedir under which license keys can be stored LICENSE_KEY_ROOTDIR = "/opt/" def __init__(self, chroot=None, load_plugins=True): """Initialize a new AptWorker instance.""" BaseWorker.__init__(self, chroot, load_plugins) self._cache = None # Change to a given chroot if self.chroot: apt_conf_file = os.path.join(chroot, "etc/apt/apt.conf") if os.path.exists(apt_conf_file): apt_pkg.read_config_file(apt_pkg.config, apt_conf_file) apt_conf_dir = os.path.join(chroot, "etc/apt/apt.conf.d") if os.path.isdir(apt_conf_dir): apt_pkg.read_config_dir(apt_pkg.config, apt_conf_dir) apt_pkg.config["Dir"] = chroot apt_pkg.config["Dir::State::Status"] = os.path.join( chroot, "var/lib/dpkg/status") apt_pkg.config.clear("DPkg::Post-Invoke") apt_pkg.config.clear("DPkg::Options") apt_pkg.config["DPkg::Options::"] = "--root=%s" % chroot apt_pkg.config["DPkg::Options::"] = ("--log=%s/var/log/dpkg.log" % chroot) status_file = apt_pkg.config.find_file("Dir::State::status") lock.status_lock.path = os.path.join(os.path.dirname(status_file), "lock") archives_dir = apt_pkg.config.find_dir("Dir::Cache::Archives") lock.archive_lock.path = os.path.join(archives_dir, "lock") lists_dir = apt_pkg.config.find_dir("Dir::State::lists") lock.lists_lock.path = os.path.join(lists_dir, "lock") apt_pkg.init_system() # a set of tuples of the type (origin, component, pkgname-regexp) # that on install will trigger a different kind of polkit # authentication request (see LP: #1035207), useful for e.g. # webapps/company repos self._high_trust_repositories = read_high_trust_repository_dir( os.path.join(apt_pkg.config.find_dir("Dir"), "etc/aptdaemon/high-trust-repository-whitelist.d")) log.debug( "using high-trust whitelist: '%s'" % self._high_trust_repositories) self._status_orig = apt_pkg.config.find_file("Dir::State::status") self._status_frozen = None if load_plugins: self._load_plugins(["modify_cache_after", "modify_cache_before", "get_license_key"]) def _call_plugins(self, name, resolver=None): """Call all plugins of a given type.""" if not resolver: # If the resolver of the original task isn't available we create # a new one and protect the already marked changes resolver = apt.cache.ProblemResolver(self._cache) for pkg in self._cache.get_changes(): resolver.clear(pkg) resolver.protect(pkg) if pkg.marked_delete: resolver.remove(pkg) if name not in self.plugins: log.debug("There isn't any registered %s plugin" % name) return False for plugin in self.plugins[name]: log.debug("Calling %s plugin: %s", name, plugin) try: plugin(resolver, self._cache) except Exception as error: log.critical("Failed to call %s plugin:\n%s" % (plugin, error)) return True def _run_transaction(self, trans): """Run the worker""" try: lock.wait_for_lock(trans) # Prepare the package cache if (trans.role == ROLE_FIX_INCOMPLETE_INSTALL or not self.is_dpkg_journal_clean()): self.fix_incomplete_install(trans) # Process transaction which don't require a cache if trans.role == ROLE_ADD_VENDOR_KEY_FILE: self.add_vendor_key_from_file(trans, **trans.kwargs) elif trans.role == ROLE_ADD_VENDOR_KEY_FROM_KEYSERVER: self.add_vendor_key_from_keyserver(trans, **trans.kwargs) elif trans.role == ROLE_REMOVE_VENDOR_KEY: self.remove_vendor_key(trans, **trans.kwargs) elif trans.role == ROLE_ADD_REPOSITORY: self.add_repository(trans, **trans.kwargs) elif trans.role == ROLE_ENABLE_DISTRO_COMP: self.enable_distro_comp(trans, **trans.kwargs) elif trans.role == ROLE_RECONFIGURE: self.reconfigure(trans, trans.packages[PKGS_REINSTALL], **trans.kwargs) elif trans.role == ROLE_CLEAN: self.clean(trans) # Check if the transaction has been just simulated. So we could # skip marking the changes a second time. elif (trans.role in (ROLE_REMOVE_PACKAGES, ROLE_INSTALL_PACKAGES, ROLE_UPGRADE_PACKAGES, ROLE_COMMIT_PACKAGES, ROLE_UPGRADE_SYSTEM, ROLE_FIX_BROKEN_DEPENDS) and self.marked_tid == trans.tid): self._apply_changes(trans) trans.exit = EXIT_SUCCESS return False else: self._open_cache(trans) # Process transaction which can handle a broken dep cache if trans.role == ROLE_FIX_BROKEN_DEPENDS: self.fix_broken_depends(trans) elif trans.role == ROLE_UPDATE_CACHE: self.update_cache(trans, **trans.kwargs) # Process the transactions which require a consistent cache elif trans.role == ROLE_ADD_LICENSE_KEY: self.add_license_key(trans, **trans.kwargs) elif self._cache and self._cache.broken_count: raise TransactionFailed(ERROR_CACHE_BROKEN, self._get_broken_details(trans)) if trans.role == ROLE_PK_QUERY: self.query(trans) elif trans.role == ROLE_INSTALL_FILE: self.install_file(trans, **trans.kwargs) elif trans.role in [ROLE_REMOVE_PACKAGES, ROLE_INSTALL_PACKAGES, ROLE_UPGRADE_PACKAGES, ROLE_COMMIT_PACKAGES]: self.commit_packages(trans, *trans.packages) elif trans.role == ROLE_UPGRADE_SYSTEM: self.upgrade_system(trans, **trans.kwargs) finally: lock.release() def commit_packages(self, trans, install, reinstall, remove, purge, upgrade, downgrade, simulate=False): """Perform a complex package operation. Keyword arguments: trans - the transaction install - list of package names to install reinstall - list of package names to reinstall remove - list of package names to remove purge - list of package names to purge including configuration files upgrade - list of package names to upgrade downgrade - list of package names to upgrade simulate -- if True the changes won't be applied """ log.info("Committing packages: %s, %s, %s, %s, %s, %s", install, reinstall, remove, purge, upgrade, downgrade) with self._cache.actiongroup(): resolver = apt.cache.ProblemResolver(self._cache) self._mark_packages_for_installation(install, resolver) self._mark_packages_for_installation(reinstall, resolver, reinstall=True) self._mark_packages_for_removal(remove, resolver) self._mark_packages_for_removal(purge, resolver, purge=True) self._mark_packages_for_upgrade(upgrade, resolver) self._mark_packages_for_downgrade(downgrade, resolver) self._resolve_depends(trans, resolver) self._check_obsoleted_dependencies(trans, resolver) if not simulate: self._apply_changes(trans) def _resolve_depends(self, trans, resolver): """Resolve the dependencies using the given ProblemResolver.""" self._call_plugins("modify_cache_before", resolver) resolver.install_protect() try: resolver.resolve() except SystemError: raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, self._get_broken_details(trans, now=False)) if self._call_plugins("modify_cache_after", resolver): try: resolver.resolve() except SystemError: details = self._get_broken_details(trans, now=False) raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, details) def _get_high_trust_packages(self): """ Return a list of packages that come from a high-trust repo """ def _in_high_trust_repository(pkgname, pkgorigin): for origin, component, regexp in self._high_trust_repositories: if (origin == pkgorigin.origin and component == pkgorigin.component and re.match(regexp, pkgname)): return True return False # loop from_high_trust_repo = [] for pkg in self._cache.get_changes(): if pkg.marked_install: for origin in pkg.candidate.origins: if _in_high_trust_repository(pkg.name, origin): from_high_trust_repo.append(pkg.name) break return from_high_trust_repo def _get_unauthenticated(self): """Return a list of unauthenticated package names """ unauthenticated = [] for pkg in self._cache.get_changes(): if (pkg.marked_install or pkg.marked_downgrade or pkg.marked_upgrade or pkg.marked_reinstall): trusted = False for origin in pkg.candidate.origins: trusted |= origin.trusted if not trusted: unauthenticated.append(pkg.name) return unauthenticated def _mark_packages_for_installation(self, packages, resolver, reinstall=False): """Mark packages for installation.""" for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg) for pkg in packages]: try: pkg = self._cache[pkg_name] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("Package %s isn't available"), pkg_name) if reinstall: if not pkg.is_installed: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("Package %s isn't installed"), pkg.name) if pkg_ver and pkg.installed.version != pkg_ver: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("The version %s of %s isn't " "installed"), pkg_ver, pkg_name) else: # Fail if the user requests to install the same version # of an already installed package. if (pkg.is_installed and # Compare version numbers pkg_ver and pkg_ver == pkg.installed.version and # Optionally compare the origin if specified (not pkg_rel or pkg_rel in [origin.archive for origin in pkg.installed.origins])): raise TransactionFailed( ERROR_PACKAGE_ALREADY_INSTALLED, _("Package %s is already installed"), pkg_name) pkg.mark_install(False, True, True) resolver.clear(pkg) resolver.protect(pkg) if pkg_ver: try: pkg.candidate = pkg.versions[pkg_ver] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("The version %s of %s isn't " "available."), pkg_ver, pkg_name) elif pkg_rel: self._set_candidate_release(pkg, pkg_rel) def enable_distro_comp(self, trans, component): """Enable given component in the sources list. Keyword arguments: trans -- the corresponding transaction component -- a component, e.g. main or universe """ trans.progress = 101 trans.status = STATUS_COMMITTING old_umask = os.umask(0o022) try: sourceslist = SourcesList() distro = aptsources.distro.get_distro() distro.get_sources(sourceslist) distro.enable_component(component) sourceslist.save() finally: os.umask(old_umask) def add_repository(self, trans, src_type, uri, dist, comps, comment, sourcesfile): """Add given repository to the sources list. Keyword arguments: trans -- the corresponding transaction src_type -- the type of the entry (deb, deb-src) uri -- the main repository uri (e.g. http://archive.ubuntu.com/ubuntu) dist -- the distribution to use (e.g. karmic, "/") comps -- a (possible empty) list of components (main, restricted) comment -- an (optional) comment sourcesfile -- an (optinal) filename in sources.list.d """ trans.progress = 101 trans.status = STATUS_COMMITTING if sourcesfile: if not sourcesfile.endswith(".list"): sourcesfile += ".list" dir = apt_pkg.config.find_dir("Dir::Etc::sourceparts") sourcesfile = os.path.join(dir, os.path.basename(sourcesfile)) else: sourcesfile = None # Store any private login information in a separate auth.conf file if re.match("(http|https|ftp)://\S+?:\S+?@\S+", uri): uri = self._store_and_strip_password_from_uri(uri) auth_conf_path = apt_pkg.config.find_file("Dir::etc::netrc") if not comment: comment = "credentials stored in %s" % auth_conf_path else: comment += "; credentials stored in %s" % auth_conf_path try: sources = SourcesList() entry = sources.add(src_type, uri, dist, comps, comment, file=sourcesfile) if entry.invalid: # FIXME: Introduce new error codes raise RepositoryInvalidError() except: log.exception("adding repository") raise else: sources.save() def _store_and_strip_password_from_uri(self, uri, auth_conf_path=None): """Extract the credentials from an URI. Store the password in auth.conf and return the URI without any password information. """ try: res = urlsplit(uri) except ValueError as error: log.warning("Failed to urlsplit '%s'", error) return uri netloc_public = res.netloc.replace("%s:%s@" % (res.username, res.password), "") machine = netloc_public + res.path # find auth.conf if auth_conf_path is None: auth_conf_path = apt_pkg.config.find_file("Dir::etc::netrc") # read all "machine"s from the auth.conf "netrc" file netrc_hosts = {} netrc_hosts_as_text = "" if os.path.exists(auth_conf_path): netrc_hosts = netrc.netrc(auth_conf_path).hosts with open(auth_conf_path, "rb") as f: netrc_hosts_as_text = f.read().decode("UTF-8") # the new entry new_netrc_entry = "\nmachine %s login %s password %s\n" % ( machine, res.username, res.password) # if there is the same machine already defined, update it # using a regexp this will ensure order/comments remain if machine in netrc_hosts: sub_regexp = r'machine\s+%s\s+login\s+%s\s+password\s+%s' % ( re.escape(machine), re.escape(netrc_hosts[machine][0]), re.escape(netrc_hosts[machine][2])) replacement = 'machine %s login %s password %s' % ( machine, res.username, res.password) # this may happen if e.g. the order is unexpected if not re.search(sub_regexp, netrc_hosts_as_text): log.warning("can not replace existing netrc entry for '%s' " "prepending it instead" % machine) netrc_hosts_as_text = new_netrc_entry + netrc_hosts_as_text else: netrc_hosts_as_text = re.sub( sub_regexp, replacement, netrc_hosts_as_text) else: netrc_hosts_as_text += new_netrc_entry # keep permssion bits of the file mode = 0o640 try: mode = os.stat(auth_conf_path)[stat.ST_MODE] except OSError as e: if e.errno != errno.ENOENT: raise # write out, tmp file first plus rename to be atomic try: auth_conf_tmp = tempfile.NamedTemporaryFile( dir=os.path.dirname(auth_conf_path), prefix=os.path.basename(auth_conf_path), delete=False) auth_conf_tmp.write(netrc_hosts_as_text.encode('UTF-8')) auth_conf_tmp.close() os.rename(auth_conf_tmp.name, auth_conf_path) # and restore permissions (or set default ones) os.chmod(auth_conf_path, mode) except OSError as error: log.warning("Failed to write auth.conf: '%s'" % error) # Return URI without user/pass return urlunsplit((res.scheme, netloc_public, res.path, res.query, res.fragment)) def add_vendor_key_from_keyserver(self, trans, keyid, keyserver): """Add the signing key from the given (keyid, keyserver) to the trusted vendors. Keyword argument: trans -- the corresponding transaction keyid - the keyid of the key (e.g. 0x0EB12F05) keyserver - the keyserver (e.g. keyserver.ubuntu.com) """ log.info("Adding vendor key from keyserver: %s %s", keyid, keyserver) # Perform some sanity checks try: res = urlsplit(keyserver) except ValueError: raise TransactionFailed(ERROR_KEY_NOT_INSTALLED, # TRANSLATORS: %s is the URL of GnuPG # keyserver _("The keyserver URL is invalid: %s"), keyserver) if res.scheme not in ["hkp", "ldap", "ldaps", "http", "https"]: raise TransactionFailed(ERROR_KEY_NOT_INSTALLED, # TRANSLATORS: %s is the URL of GnuPG # keyserver _("Invalid protocol of the server: %s"), keyserver) try: int(keyid, 16) except ValueError: raise TransactionFailed(ERROR_KEY_NOT_INSTALLED, # TRANSLATORS: %s is the id of a GnuPG key # e.g. E08ADE95 _("Invalid key id: %s"), keyid) trans.status = STATUS_DOWNLOADING trans.progress = 101 with DaemonForkProgress(trans) as progress: progress.run(apt.auth.add_key_from_keyserver, keyid, keyserver) if progress._child_exit != 0: # TRANSLATORS: The first %s is the key id and the second the server raise TransactionFailed(ERROR_KEY_NOT_INSTALLED, _("Failed to download and install the key " "%s from %s:\n%s"), keyid, keyserver, progress.output) def add_vendor_key_from_file(self, trans, path): """Add the signing key from the given file to the trusted vendors. Keyword argument: path -- absolute path to the key file """ log.info("Adding vendor key from file: %s", path) trans.progress = 101 trans.status = STATUS_COMMITTING with DaemonForkProgress(trans) as progress: progress.run(apt.auth.add_key_from_file, path) if progress._child_exit != 0: raise TransactionFailed(ERROR_KEY_NOT_INSTALLED, _("Key file %s couldn't be installed: %s"), path, progress.output) def remove_vendor_key(self, trans, fingerprint): """Remove repository key. Keyword argument: trans -- the corresponding transaction fingerprint -- fingerprint of the key to remove """ log.info("Removing vendor key: %s", fingerprint) trans.progress = 101 trans.status = STATUS_COMMITTING try: int(fingerprint, 16) except ValueError: raise TransactionFailed(ERROR_KEY_NOT_REMOVED, # TRANSLATORS: %s is the id of a GnuPG key # e.g. E08ADE95 _("Invalid key id: %s"), fingerprint) with DaemonForkProgress(trans) as progress: progress.run(apt.auth.remove_key, fingerprint) if progress._child_exit != 0: raise TransactionFailed(ERROR_KEY_NOT_REMOVED, _("Key with fingerprint %s couldn't be " "removed: %s"), fingerprint, progress.output) def install_file(self, trans, path, force, simulate=False): """Install local package file. Keyword argument: trans -- the corresponding transaction path -- absolute path to the package file force -- if installing an invalid package is allowed simulate -- if True the changes won't be committed but the debfile instance will be returned """ log.info("Installing local package file: %s", path) # Check if the dpkg can be installed at all trans.status = STATUS_RESOLVING_DEP deb = self._check_deb_file(trans, path, force) # Check for required changes and apply them before (install, remove, unauth) = deb.required_changes self._call_plugins("modify_cache_after") if simulate: return deb with self._frozen_status(): if len(install) > 0 or len(remove) > 0: self._apply_changes(trans, fetch_range=(15, 33), install_range=(34, 63)) # Install the dpkg file deb_progress = DaemonDpkgInstallProgress(trans, begin=64, end=95) res = deb.install(deb_progress) trans.output += deb_progress.output if res: raise TransactionFailed(ERROR_PACKAGE_MANAGER_FAILED, trans.output) def _mark_packages_for_removal(self, packages, resolver, purge=False): """Mark packages for installation.""" for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg) for pkg in packages]: try: pkg = self._cache[pkg_name] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("Package %s isn't available"), pkg_name) if not pkg.is_installed and not pkg.installed_files: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("Package %s isn't installed"), pkg_name) if pkg.essential is True: raise TransactionFailed(ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE, _("Package %s cannot be removed."), pkg_name) if pkg_ver and pkg.installed != pkg_ver: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("The version %s of %s is not " "installed"), pkg_ver, pkg_name) pkg.mark_delete(False, purge) resolver.clear(pkg) resolver.protect(pkg) resolver.remove(pkg) def _check_obsoleted_dependencies(self, trans, resolver=None): """Mark obsoleted dependencies of to be removed packages for removal. """ if not trans.remove_obsoleted_depends: return if not resolver: resolver = apt.cache.ProblemResolver(self._cache) installed_deps = set() with self._cache.actiongroup(): for pkg in self._cache.get_changes(): if pkg.marked_delete: installed_deps = self._installed_dependencies( pkg.name, installed_deps) for dep_name in installed_deps: if dep_name in self._cache: pkg = self._cache[dep_name] if pkg.is_installed and pkg.is_auto_removable: pkg.mark_delete(False) # do an additional resolver run to ensure that the autoremove # never leaves the cache in an inconsistent state, see bug # LP: #659111 for the rational, essentially this may happen # if a package is marked install during problem resolving but # is later no longer required. the resolver deals with that self._resolve_depends(trans, resolver) def _installed_dependencies(self, pkg_name, all_deps=None): """Recursively return all installed dependencies of a given package.""" # FIXME: Should be part of python-apt, since it makes use of non-public # API. Perhaps by adding a recursive argument to # apt.package.Version.get_dependencies() if not all_deps: all_deps = set() if pkg_name not in self._cache: return all_deps cur = self._cache[pkg_name]._pkg.current_ver if not cur: return all_deps for sec in ("PreDepends", "Depends", "Recommends"): try: for dep in cur.depends_list[sec]: dep_name = dep[0].target_pkg.name if dep_name not in all_deps: all_deps.add(dep_name) all_deps |= self._installed_dependencies(dep_name, all_deps) except KeyError: pass return all_deps def _mark_packages_for_downgrade(self, packages, resolver): """Mark packages for downgrade.""" for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg) for pkg in packages]: try: pkg = self._cache[pkg_name] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("Package %s isn't available"), pkg_name) if not pkg.is_installed: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("Package %s isn't installed"), pkg_name) auto = pkg.is_auto_installed pkg.mark_install(False, True, True) pkg.mark_auto(auto) resolver.clear(pkg) resolver.protect(pkg) if pkg_ver: if pkg.installed and pkg.installed.version < pkg_ver: # FIXME: We need a new error enum raise TransactionFailed(ERROR_NO_PACKAGE, _("The former version %s of %s " "is already installed"), pkg.installed.version, pkg.name) elif pkg.installed and pkg.installed.version == pkg_ver: raise TransactionFailed(ERROR_PACKAGE_ALREADY_INSTALLED, _("The version %s of %s " "is already installed"), pkg.installed.version, pkg.name) try: pkg.candidate = pkg.versions[pkg_ver] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("The version %s of %s isn't " "available"), pkg_ver, pkg_name) else: raise TransactionFailed(ERROR_NO_PACKAGE, _("You need to specify a version to " "downgrade %s to"), pkg_name) def _mark_packages_for_upgrade(self, packages, resolver): """Mark packages for upgrade.""" for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg) for pkg in packages]: try: pkg = self._cache[pkg_name] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("Package %s isn't available"), pkg_name) if not pkg.is_installed: raise TransactionFailed(ERROR_PACKAGE_NOT_INSTALLED, _("Package %s isn't installed"), pkg_name) auto = pkg.is_auto_installed pkg.mark_install(False, True, True) pkg.mark_auto(auto) resolver.clear(pkg) resolver.protect(pkg) if pkg_ver: if (pkg.installed and apt_pkg.version_compare(pkg.installed.version, pkg_ver) == 1): raise TransactionFailed(ERROR_PACKAGE_UPTODATE, _("The later version %s of %s " "is already installed"), pkg.installed.version, pkg.name) elif (pkg.installed and apt_pkg.version_compare(pkg.installed.version, pkg_ver) == 0): raise TransactionFailed(ERROR_PACKAGE_UPTODATE, _("The version %s of %s " "is already installed"), pkg.installed.version, pkg.name) try: pkg.candidate = pkg.versions[pkg_ver] except KeyError: raise TransactionFailed(ERROR_NO_PACKAGE, _("The version %s of %s isn't " "available."), pkg_ver, pkg_name) elif pkg_rel: self._set_candidate_release(pkg, pkg_rel) @staticmethod def _set_candidate_release(pkg, release): """Set the candidate of a package to the one from the given release.""" # FIXME: Should be moved to python-apt # Check if the package is provided in the release for version in pkg.versions: if [origin for origin in version.origins if origin.archive == release]: break else: raise TransactionFailed(ERROR_NO_PACKAGE, _("The package %s isn't available in " "the %s release."), pkg.name, release) pkg._pcache.cache_pre_change() pkg._pcache._depcache.set_candidate_release(pkg._pkg, version._cand, release) pkg._pcache.cache_post_change() def update_cache(self, trans, sources_list): """Update the cache. Keyword arguments: trans -- the corresponding transaction sources_list -- only update the repositories found in the sources.list snippet by the given file name. """ def compare_pathes(first, second): """Small helper to compare two pathes.""" return os.path.normpath(first) == os.path.normpath(second) log.info("Updating cache") progress = DaemonAcquireRepoProgress(trans, begin=10, end=90) if sources_list and not sources_list.startswith("/"): dir = apt_pkg.config.find_dir("Dir::Etc::sourceparts") sources_list = os.path.join(dir, sources_list) if sources_list: # For security reasons (LP #722228) we only allow files inside # sources.list.d as basedir basedir = apt_pkg.config.find_dir("Dir::Etc::sourceparts") system_sources = apt_pkg.config.find_file("Dir::Etc::sourcelist") if "/" in sources_list: sources_list = os.path.abspath(sources_list) # Check if the sources_list snippet is in the sourceparts # directory common_prefix = os.path.commonprefix([sources_list, basedir]) if not (compare_pathes(common_prefix, basedir) or compare_pathes(sources_list, system_sources)): raise AptDaemonError("Only alternative sources.list files " "inside '%s' are allowed (not '%s')" % (basedir, sources_list)) else: sources_list = os.path.join(basedir, sources_list) try: self._cache.update(progress, sources_list=sources_list) except apt.cache.FetchFailedException as error: # ListUpdate() method of apt handles a cancelled operation # as a failed one, see LP #162441 if trans.cancelled: raise TransactionCancelled() else: raise TransactionFailed(ERROR_REPO_DOWNLOAD_FAILED, str(error)) except apt.cache.FetchCancelledException: raise TransactionCancelled() except apt.cache.LockFailedException: raise TransactionFailed(ERROR_NO_LOCK) self._open_cache(trans, begin=91, end=95) def upgrade_system(self, trans, safe_mode=True, simulate=False): """Upgrade the system. Keyword argument: trans -- the corresponding transaction safe_mode -- if additional software should be installed or removed to satisfy the dependencies the an updates simulate -- if the changes should not be applied """ log.info("Upgrade system with safe mode: %s" % safe_mode) trans.status = STATUS_RESOLVING_DEP # FIXME: What to do if already uptotdate? Add error code? self._call_plugins("modify_cache_before") try: self._cache.upgrade(dist_upgrade=not safe_mode) except SystemError as excep: raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, str(excep)) self._call_plugins("modify_cache_after") self._check_obsoleted_dependencies(trans) if not simulate: self._apply_changes(trans) def fix_incomplete_install(self, trans): """Run dpkg --configure -a to recover from a failed installation. Keyword arguments: trans -- the corresponding transaction """ log.info("Fixing incomplete installs") trans.status = STATUS_CLEANING_UP with self._frozen_status(): with DaemonDpkgRecoverProgress(trans) as progress: progress.run() trans.output += progress.output if progress._child_exit != 0: raise TransactionFailed(ERROR_PACKAGE_MANAGER_FAILED, trans.output) def reconfigure(self, trans, packages, priority): """Run dpkg-reconfigure to reconfigure installed packages. Keyword arguments: trans -- the corresponding transaction packages -- list of packages to reconfigure priority -- the lowest priority of question which should be asked """ log.info("Reconfiguring packages") with self._frozen_status(): with DaemonDpkgReconfigureProgress(trans) as progress: progress.run(packages, priority) trans.output += progress.output if progress._child_exit != 0: raise TransactionFailed(ERROR_PACKAGE_MANAGER_FAILED, trans.output) def fix_broken_depends(self, trans, simulate=False): """Try to fix broken dependencies. Keyword arguments: trans -- the corresponding transaction simualte -- if the changes should not be applied """ log.info("Fixing broken depends") trans.status = STATUS_RESOLVING_DEP try: self._cache._depcache.fix_broken() except SystemError: raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, self._get_broken_details(trans)) if not simulate: self._apply_changes(trans) def _open_cache(self, trans, begin=1, end=5, quiet=False, status=None): """Open the APT cache. Keyword arguments: trans -- the corresponding transaction start -- the begin of the progress range end -- the end of the the progress range quiet -- if True do no report any progress status -- an alternative dpkg status file """ self.marked_tid = None trans.status = STATUS_LOADING_CACHE if not status: status = self._status_orig apt_pkg.config.set("Dir::State::status", status) apt_pkg.init_system() progress = DaemonOpenProgress(trans, begin=begin, end=end, quiet=quiet) try: if not isinstance(self._cache, apt.cache.Cache): self._cache = apt.cache.Cache(progress) else: self._cache.open(progress) except SystemError as excep: raise TransactionFailed(ERROR_NO_CACHE, str(excep)) def is_dpkg_journal_clean(self): """Return False if there are traces of incomplete dpkg status updates.""" status_updates = os.path.join(os.path.dirname(self._status_orig), "updates/") for dentry in os.listdir(status_updates): if dentry.isdigit(): return False return True def _apply_changes(self, trans, fetch_range=(15, 50), install_range=(50, 90)): """Apply previously marked changes to the system. Keyword arguments: trans -- the corresponding transaction fetch_range -- tuple containing the start and end point of the download progress install_range -- tuple containing the start and end point of the install progress """ changes = self._cache.get_changes() if not changes: return # Do not allow to remove essential packages for pkg in changes: if pkg.marked_delete and (pkg.essential is True or (pkg.installed and pkg.installed.priority == "required") or pkg.name == "aptdaemon"): raise TransactionFailed(ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE, _("Package %s cannot be removed"), pkg.name) # Check if any of the cache changes get installed from an # unauthenticated repository"" if not trans.allow_unauthenticated and trans.unauthenticated: raise TransactionFailed(ERROR_PACKAGE_UNAUTHENTICATED, " ".join(sorted(trans.unauthenticated))) if trans.cancelled: raise TransactionCancelled() trans.cancellable = False fetch_progress = DaemonAcquireProgress(trans, begin=fetch_range[0], end=fetch_range[1]) inst_progress = DaemonInstallProgress(trans, begin=install_range[0], end=install_range[1]) with self._frozen_status(): try: self._cache.commit(fetch_progress, inst_progress) except apt.cache.FetchFailedException as error: raise TransactionFailed(ERROR_PACKAGE_DOWNLOAD_FAILED, str(error)) except apt.cache.FetchCancelledException: raise TransactionCancelled() except SystemError as excep: # Run dpkg --configure -a to recover from a failed transaction trans.status = STATUS_CLEANING_UP with DaemonDpkgRecoverProgress(trans, begin=90, end=95) as pro: pro.run() output = inst_progress.output + pro.output trans.output += output raise TransactionFailed(ERROR_PACKAGE_MANAGER_FAILED, "%s: %s" % (excep, trans.output)) else: trans.output += inst_progress.output @contextlib.contextmanager def _frozen_status(self): """Freeze the status file to allow simulate operations during a dpkg call.""" frozen_dir = tempfile.mkdtemp(prefix="aptdaemon-frozen-status") shutil.copy(self._status_orig, frozen_dir) self._status_frozen = os.path.join(frozen_dir, "status") try: yield finally: shutil.rmtree(frozen_dir) self._status_frozen = None def query(self, trans): """Process a PackageKit query transaction.""" raise NotImplementedError def _simulate_transaction(self, trans): depends = [[], [], [], [], [], [], []] unauthenticated = [] high_trust_packages = [] skip_pkgs = [] size = 0 installs = reinstalls = removals = purges = upgrades = upgradables = \ downgrades = [] # Only handle transaction which change packages # FIXME: Add support for ROLE_FIX_INCOMPLETE_INSTALL if trans.role not in [ROLE_INSTALL_PACKAGES, ROLE_UPGRADE_PACKAGES, ROLE_UPGRADE_SYSTEM, ROLE_REMOVE_PACKAGES, ROLE_COMMIT_PACKAGES, ROLE_INSTALL_FILE, ROLE_FIX_BROKEN_DEPENDS]: return depends, 0, 0, [], [] # If a transaction is currently running use the former status file if self._status_frozen: status_path = self._status_frozen else: status_path = self._status_orig self._open_cache(trans, quiet=True, status=status_path) if trans.role == ROLE_FIX_BROKEN_DEPENDS: self.fix_broken_depends(trans, simulate=True) elif self._cache.broken_count: raise TransactionFailed(ERROR_CACHE_BROKEN, self._get_broken_details(trans)) elif trans.role == ROLE_UPGRADE_SYSTEM: for pkg in self._iterate_packages(): if pkg.is_upgradable: upgradables.append(pkg) self.upgrade_system(trans, simulate=True, **trans.kwargs) elif trans.role == ROLE_INSTALL_FILE: deb = self.install_file(trans, simulate=True, **trans.kwargs) skip_pkgs.append(deb.pkgname) try: # Sometimes a thousands comma is used in packages # See LP #656633 size = int(deb["Installed-Size"].replace(",", "")) * 1024 # Some packages ship really large install sizes e.g. # openvpn access server, see LP #758837 if size > sys.maxsize: raise OverflowError("Size is too large: %s Bytes" % size) except (KeyError, AttributeError, ValueError, OverflowError): if not trans.kwargs["force"]: msg = trans.gettext("The package doesn't provide a " "valid Installed-Size control " "field. See Debian Policy 5.6.20.") raise TransactionFailed(ERROR_INVALID_PACKAGE_FILE, msg) try: pkg = self._cache[deb.pkgname] except KeyError: trans.packages = [[deb.pkgname], [], [], [], [], []] else: if pkg.is_installed: # if we failed to get the size from the deb file do nor # try to get the delta if size != 0: size -= pkg.installed.installed_size trans.packages = [[], [deb.pkgname], [], [], [], []] else: trans.packages = [[deb.pkgname], [], [], [], [], []] else: # FIXME: ugly code to get the names of the packages (installs, reinstalls, removals, purges, upgrades, downgrades) = [[re.split("(=|/)", entry, 1)[0] for entry in lst] for lst in trans.packages] self.commit_packages(trans, *trans.packages, simulate=True) changes = self._cache.get_changes() changes_names = [] # get the additional dependencies for pkg in changes: if (pkg.marked_upgrade and pkg.is_installed and pkg.name not in upgrades): pkg_str = "%s=%s" % (pkg.name, pkg.candidate.version) depends[PKGS_UPGRADE].append(pkg_str) elif pkg.marked_reinstall and pkg.name not in reinstalls: pkg_str = "%s=%s" % (pkg.name, pkg.candidate.version) depends[PKGS_REINSTALL].append(pkg_str) elif pkg.marked_downgrade and pkg.name not in downgrades: pkg_str = "%s=%s" % (pkg.name, pkg.candidate.version) depends[PKGS_DOWNGRADE].append(pkg_str) elif pkg.marked_install and pkg.name not in installs: pkg_str = "%s=%s" % (pkg.name, pkg.candidate.version) depends[PKGS_INSTALL].append(pkg_str) elif pkg.marked_delete and pkg.name not in removals: pkg_str = "%s=%s" % (pkg.name, pkg.installed.version) depends[PKGS_REMOVE].append(pkg_str) # FIXME: add support for purges changes_names.append(pkg.name) # get the unauthenticated packages unauthenticated = self._get_unauthenticated() high_trust_packages = self._get_high_trust_packages() # Check for skipped upgrades for pkg in upgradables: if pkg.marked_keep: pkg_str = "%s=%s" % (pkg.name, pkg.candidate.version) depends[PKGS_KEEP].append(pkg_str) # apt.cache.Cache.required_download requires a clean cache. Under some # strange circumstances it can fail (most likely an interrupted # debconf question), see LP#659438 # Running dpkg --configure -a fixes the situation try: required_download = self._cache.required_download except SystemError as error: raise TransactionFailed(ERROR_INCOMPLETE_INSTALL, str(error)) required_space = size + self._cache.required_space return (depends, required_download, required_space, unauthenticated, high_trust_packages) def _check_deb_file(self, trans, path, force): """Perform some basic checks for the Debian package. :param trans: The transaction instance. :returns: An apt.debfile.Debfile instance. """ if not os.path.isfile(path): raise TransactionFailed(ERROR_UNREADABLE_PACKAGE_FILE, path) if not force and os.path.isfile("/usr/bin/lintian"): with DaemonLintianProgress(trans) as progress: progress.run(path) # FIXME: Add an error to catch return state 2 (failure) if progress._child_exit != 0: raise TransactionFailed(ERROR_INVALID_PACKAGE_FILE, "Lintian check results for %s:" "\n%s" % (path, progress.output)) try: deb = apt.debfile.DebPackage(path, self._cache) except IOError: raise TransactionFailed(ERROR_UNREADABLE_PACKAGE_FILE, path) except Exception as error: raise TransactionFailed(ERROR_INVALID_PACKAGE_FILE, str(error)) try: ret = deb.check() except Exception as error: raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, str(error)) if not ret: raise TransactionFailed(ERROR_DEP_RESOLUTION_FAILED, deb._failure_string) return deb def clean(self, trans): """Clean the download directories. Keyword arguments: trans -- the corresponding transaction """ # FIXME: Use pkgAcquire.Clean(). Currently not part of python-apt. trans.status = STATUS_CLEANING_UP archive_path = apt_pkg.config.find_dir("Dir::Cache::archives") for dir in [archive_path, os.path.join(archive_path, "partial")]: for filename in os.listdir(dir): if filename == "lock": continue path = os.path.join(dir, filename) if os.path.isfile(path): log.debug("Removing file %s", path) os.remove(path) def add_license_key(self, trans, pkg_name, json_token, server_name): """Add a license key data to the given package. Keyword arguemnts: trans -- the coresponding transaction pkg_name -- the name of the corresponding package json_token -- the oauth token as json server_name -- the server to use (ubuntu-production, ubuntu-staging) """ # set transaction state to downloading trans.status = STATUS_DOWNLOADING try: license_key, license_key_path = ( self.plugins["get_license_key"][0](trans.uid, pkg_name, json_token, server_name)) except Exception as error: logging.exception("get_license_key plugin failed") raise TransactionFailed(ERROR_LICENSE_KEY_DOWNLOAD_FAILED, str(error)) # ensure stuff is good if not license_key_path or not license_key: raise TransactionFailed(ERROR_LICENSE_KEY_DOWNLOAD_FAILED, _("The license key is empty")) # add license key if we have one self._add_license_key_to_system(pkg_name, license_key, license_key_path) def _add_license_key_to_system(self, pkg_name, license_key, license_key_path): # fixup path license_key_path = os.path.join(apt_pkg.config.find_dir("Dir"), license_key_path.lstrip("/")) # Check content of the key if (license_key.strip().startswith("#!") or license_key.startswith("\x7fELF")): raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("The license key is not allowed to " "contain executable code.")) # Check the path of the license license_key_path = os.path.normpath(license_key_path) license_key_path_rootdir = os.path.join( apt_pkg.config["Dir"], self.LICENSE_KEY_ROOTDIR.lstrip("/"), pkg_name) if not license_key_path.startswith(license_key_path_rootdir): raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("The license key path %s is invalid"), license_key_path) if os.path.lexists(license_key_path): raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("The license key already exists: %s"), license_key_path) # Symlink attacks! if os.path.realpath(license_key_path) != license_key_path: raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("The location of the license key is " "unsecure since it contains symbolic " "links. The path %s maps to %s"), license_key_path, os.path.realpath(license_key_path)) # Check if the directory already exists if not os.path.isdir(os.path.dirname(license_key_path)): raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("The directory where to install the key " "to doesn't exist yet: %s"), license_key_path) # write it log.info("Writing license key to '%s'" % license_key_path) old_umask = os.umask(18) try: with open(license_key_path, "w") as license_file: license_file.write(license_key) except IOError: raise TransactionFailed(ERROR_LICENSE_KEY_INSTALL_FAILED, _("Failed to write key file to: %s"), license_key_path) finally: os.umask(old_umask) def _iterate_mainloop(self): """Process pending actions on the main loop.""" while GLib.main_context_default().pending(): GLib.main_context_default().iteration() def _iterate_packages(self, interval=1000): """Itarte von the packages of the cache and iterate on the GObject main loop time for more responsiveness. Keyword arguments: interval - the number of packages after which we iterate on the mainloop """ for enum, pkg in enumerate(self._cache): if not enum % interval: self._iterate_mainloop() yield pkg def _get_broken_details(self, trans, now=True): """Return a message which provides debugging information about broken packages. This method is basically a Python implementation of apt-get.cc's ShowBroken. Keyword arguments: trans -- the corresponding transaction now -- if we check currently broken dependecies or the installation candidate """ msg = trans.gettext("The following packages have unmet dependencies:") msg += "\n\n" for pkg in self._cache: if not ((now and pkg.is_now_broken) or (not now and pkg.is_inst_broken)): continue msg += "%s: " % pkg.name if now: version = pkg.installed else: version = pkg.candidate indent = " " * (len(pkg.name) + 2) dep_msg = "" for dep in version.dependencies: or_msg = "" for base_dep in dep.or_dependencies: if or_msg: or_msg += "or\n" or_msg += indent # Check if it's an important dependency # See apt-pkg/depcache.cc IsImportantDep # See apt-pkg/pkgcache.cc IsCritical() if not (base_dep.rawtype in ["Depends", "PreDepends", "Obsoletes", "DpkgBreaks", "Conflicts"] or (apt_pkg.config.find_b("APT::Install-Recommends", False) and base_dep.rawtype == "Recommends") or (apt_pkg.config.find_b("APT::Install-Suggests", False) and base_dep.rawtype == "Suggests")): continue # Get the version of the target package try: pkg_dep = self._cache[base_dep.name] except KeyError: dep_version = None else: if now: dep_version = pkg_dep.installed else: dep_version = pkg_dep.candidate # We only want to display dependencies which cannot # be satisfied if dep_version and not apt_pkg.check_dep(base_dep.version, base_dep.relation, version.version): break or_msg = "%s: %s " % (base_dep.rawtype, base_dep.name) if base_dep.version: or_msg += "(%s %s) " % (base_dep.relation, base_dep.version) if self._cache.is_virtual_package(base_dep.name): or_msg += trans.gettext("but it is a virtual package") elif not dep_version: if now: or_msg += trans.gettext("but it is not installed") else: or_msg += trans.gettext("but it is not going to " "be installed") elif now: # TRANSLATORS: %s is a version number or_msg += (trans.gettext("but %s is installed") % dep_version.version) else: # TRANSLATORS: %s is a version number or_msg += (trans.gettext("but %s is to be installed") % dep_version.version) else: # Only append an or-group if at least one of the # dependencies cannot be satisfied if dep_msg: dep_msg += indent dep_msg += or_msg dep_msg += "\n" msg += dep_msg return msg def is_reboot_required(self): """If a reboot is required to get all changes into effect.""" return os.path.exists(os.path.join(apt_pkg.config.find_dir("Dir"), "var/run/reboot-required")) def set_config(self, option, value, filename=None): """Write a configuration value to file.""" if option in ["AutoUpdateInterval", "AutoDownload", "AutoCleanInterval", "UnattendedUpgrade"]: self._set_apt_config(option, value, filename) elif option == "PopConParticipation": self._set_popcon_pariticipation(value) def _set_apt_config(self, option, value, filename): config_writer = ConfigWriter() cw.set_value(option, value, filename) apt_pkg.init_config() def _set_popcon_participation(self, participate): if participate in [True, 1, "yes"]: value = "yes" else: value = "no" if os.path.exists(_POPCON_PATH): # read the current config and replace the corresponding settings # FIXME: Check if the config file is a valid bash script and # contains the host_id with open(_POPCON_PATH) as conf_file: old_config = conf_file.read() config = re.sub(r'(PARTICIPATE=*)(".+?")', '\\1"%s"' % value, old_config) else: # create a new popcon config file m = md5() m.update(open("/dev/urandom", "r").read(1024)) config = _POPCON_DEFAULT % {"host_id": m.hexdigest(), "participate": value} with open(_POPCON_PATH, "w") as conf_file: conf_file.write(config) def get_config(self, option): """Return a configuration value.""" if option == "AutoUpdateInterval": key = "APT::Periodic::Update-Package-Lists" return apt_pkg.config.find_i(key, 0) elif option == "AutoDownload": key = "APT::Periodic::Download-Upgradeable-Packages" return apt_pkg.config.find_b(key, False) elif option == "AutoCleanInterval": key = "APT::Periodic::AutocleanInterval" return apt_pkg.config.find_i(key, 0) elif option == "UnattendedUpgrade": key = "APT::Periodic::Unattended-Upgrade", return apt_pkg.config.find_b(key, False) elif option == "GetPopconParticipation": return self._get_popcon_pariticipation() def _get_popcon_participation(self): # FIXME: Use a script to evaluate the configuration: # #!/bin/sh # . /etc/popularitiy-contest.conf # . /usr/share/popularitiy-contest/default.conf # echo $PARTICIAPTE $HOST_ID if os.path.exists(_POPCON_PATH): with open(_POPCON_PATH) as conf_file: config = conf_file.read() match = re.match("\nPARTICIPATE=\"(yes|no)\"", config) if match and match[0] == "yes": return True return False def get_trusted_vendor_keys(self): """Return a list of trusted GPG keys.""" return [key.keyid for key in apt.auth.list_keys()] # vim:ts=4:sw=4:et aptdaemon-1.1.1+bzr982/aptdaemon/worker/pkworker.py0000644000000000000000000016414212352744055020362 0ustar 00000000000000# !/usr/bin/env python # -*- coding: utf-8 -*- """ Provides a compatibility layer to PackageKit Copyright (C) 2007 Ali Sabil Copyright (C) 2007 Tom Parker Copyright (C) 2008-2011 Sebastian Heinlein Licensed under the GNU General Public License Version 2 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 (at your option) any later version. """ __author__ = "Sebastian Heinlein " import datetime import glob import gzip import locale import logging import os import platform import re import subprocess import tempfile import time import apt_pkg from gi.repository import GObject from gi.repository import PackageKitGlib as pk # for optional plugin support try: import pkg_resources except ImportError: pkg_resources = None from ..pkutils import (bitfield_add, bitfield_remove, bitfield_summarize, bitfield_contains) from . import enums as aptd_enums from ..errors import TransactionFailed from ..progress import DaemonAcquireProgress from . import aptworker pklog = logging.getLogger("AptDaemon.PackageKitWorker") # Check if update-manager-core is installed to get aware of the # latest distro releases try: from UpdateManager.Core.MetaRelease import MetaReleaseCore except ImportError: META_RELEASE_SUPPORT = False else: META_RELEASE_SUPPORT = True # Xapian database is optionally used to speed up package description search XAPIAN_DB_PATH = os.environ.get("AXI_DB_PATH", "/var/lib/apt-xapian-index") XAPIAN_DB = XAPIAN_DB_PATH + "/index" XAPIAN_DB_VALUES = XAPIAN_DB_PATH + "/values" XAPIAN_SUPPORT = False try: import xapian except ImportError: pass else: if os.access(XAPIAN_DB, os.R_OK): pklog.debug("Use XAPIAN for the search") XAPIAN_SUPPORT = True # Regular expressions to detect bug numbers in changelogs according to the # Debian Policy Chapter 4.4. For details see the footnote 16: # http://www.debian.org/doc/debian-policy/footnotes.html#f16 MATCH_BUG_CLOSES_DEBIAN = ( r"closes:\s*(?:bug)?\#?\s?\d+(?:,\s*(?:bug)?\#?\s?\d+)*") MATCH_BUG_NUMBERS = r"\#?\s?(\d+)" # URL pointing to a bug in the Debian bug tracker HREF_BUG_DEBIAN = "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%s" MATCH_BUG_CLOSES_UBUNTU = r"lp:\s+\#\d+(?:,\s*\#\d+)*" HREF_BUG_UBUNTU = "https://bugs.launchpad.net/bugs/%s" # Regular expression to find cve references MATCH_CVE = "CVE-\d{4}-\d{4}" HREF_CVE = "http://web.nvd.nist.gov/view/vuln/detail?vulnId=%s" # Map Debian sections to the PackageKit group name space SECTION_GROUP_MAP = { "admin": pk.GroupEnum.ADMIN_TOOLS, "base": pk.GroupEnum.SYSTEM, "cli-mono": pk.GroupEnum.PROGRAMMING, "comm": pk.GroupEnum.COMMUNICATION, "database": pk.GroupEnum.SERVERS, "debian-installer": pk.GroupEnum.SYSTEM, "debug": pk.GroupEnum.PROGRAMMING, "devel": pk.GroupEnum.PROGRAMMING, "doc": pk.GroupEnum.DOCUMENTATION, "editors": pk.GroupEnum.PUBLISHING, "education": pk.GroupEnum.EDUCATION, "electronics": pk.GroupEnum.ELECTRONICS, "embedded": pk.GroupEnum.SYSTEM, "fonts": pk.GroupEnum.FONTS, "games": pk.GroupEnum.GAMES, "gnome": pk.GroupEnum.DESKTOP_GNOME, "gnu-r": pk.GroupEnum.PROGRAMMING, "gnustep": pk.GroupEnum.DESKTOP_OTHER, "graphics": pk.GroupEnum.GRAPHICS, "hamradio": pk.GroupEnum.COMMUNICATION, "haskell": pk.GroupEnum.PROGRAMMING, "httpd": pk.GroupEnum.SERVERS, "interpreters": pk.GroupEnum.PROGRAMMING, "introspection": pk.GroupEnum.PROGRAMMING, "java": pk.GroupEnum.PROGRAMMING, "kde": pk.GroupEnum.DESKTOP_KDE, "kernel": pk.GroupEnum.SYSTEM, "libdevel": pk.GroupEnum.PROGRAMMING, "libs": pk.GroupEnum.SYSTEM, "lisp": pk.GroupEnum.PROGRAMMING, "localization": pk.GroupEnum.LOCALIZATION, "mail": pk.GroupEnum.INTERNET, "math": pk.GroupEnum.SCIENCE, "misc": pk.GroupEnum.OTHER, "net": pk.GroupEnum.NETWORK, "news": pk.GroupEnum.INTERNET, "ocaml": pk.GroupEnum.PROGRAMMING, "oldlibs": pk.GroupEnum.LEGACY, "otherosfs": pk.GroupEnum.SYSTEM, "perl": pk.GroupEnum.PROGRAMMING, "php": pk.GroupEnum.PROGRAMMING, "python": pk.GroupEnum.PROGRAMMING, "ruby": pk.GroupEnum.PROGRAMMING, "science": pk.GroupEnum.SCIENCE, "shells": pk.GroupEnum.ADMIN_TOOLS, "sound": pk.GroupEnum.MULTIMEDIA, "tex": pk.GroupEnum.PUBLISHING, "text": pk.GroupEnum.PUBLISHING, "utils": pk.GroupEnum.ACCESSORIES, "vcs": pk.GroupEnum.PROGRAMMING, "video": pk.GroupEnum.MULTIMEDIA, "virtual": pk.GroupEnum.COLLECTIONS, "web": pk.GroupEnum.INTERNET, "xfce": pk.GroupEnum.DESKTOP_OTHER, "x11": pk.GroupEnum.DESKTOP_OTHER, "zope": pk.GroupEnum.PROGRAMMING, "unknown": pk.GroupEnum.UNKNOWN, "alien": pk.GroupEnum.UNKNOWN, "translations": pk.GroupEnum.LOCALIZATION, "metapackages": pk.GroupEnum.COLLECTIONS, "tasks": pk.GroupEnum.COLLECTIONS} class AptPackageKitWorker(aptworker.AptWorker): _plugins = None """Process PackageKit Query transactions.""" def __init__(self, chroot=None, load_plugins=True): aptworker.AptWorker.__init__(self, chroot, load_plugins) self.roles = bitfield_summarize(pk.RoleEnum.REFRESH_CACHE, pk.RoleEnum.UPDATE_PACKAGES, pk.RoleEnum.INSTALL_PACKAGES, pk.RoleEnum.INSTALL_FILES, pk.RoleEnum.REMOVE_PACKAGES, pk.RoleEnum.GET_UPDATES, pk.RoleEnum.GET_UPDATE_DETAIL, pk.RoleEnum.GET_PACKAGES, pk.RoleEnum.GET_DETAILS, pk.RoleEnum.GET_DEPENDS, pk.RoleEnum.GET_REQUIRES, pk.RoleEnum.SEARCH_NAME, pk.RoleEnum.SEARCH_DETAILS, pk.RoleEnum.SEARCH_GROUP, pk.RoleEnum.SEARCH_FILE, pk.RoleEnum.WHAT_PROVIDES, pk.RoleEnum.REPO_ENABLE, pk.RoleEnum.INSTALL_SIGNATURE, pk.RoleEnum.REPAIR_SYSTEM, pk.RoleEnum.CANCEL, pk.RoleEnum.DOWNLOAD_PACKAGES) if META_RELEASE_SUPPORT: self.roles = bitfield_add(self.roles, pk.RoleEnum.GET_DISTRO_UPGRADES) self.filters = bitfield_summarize(pk.FilterEnum.INSTALLED, pk.FilterEnum.NOT_INSTALLED, pk.FilterEnum.FREE, pk.FilterEnum.NOT_FREE, pk.FilterEnum.GUI, pk.FilterEnum.NOT_GUI, pk.FilterEnum.COLLECTIONS, pk.FilterEnum.NOT_COLLECTIONS, pk.FilterEnum.SUPPORTED, pk.FilterEnum.NOT_SUPPORTED, pk.FilterEnum.ARCH, pk.FilterEnum.NOT_ARCH, pk.FilterEnum.NEWEST) self.groups = bitfield_summarize(*SECTION_GROUP_MAP.values()) # FIXME: Add support for Plugins self.provides = (pk.ProvidesEnum.ANY) self.mime_types = ["application/x-deb"] def _run_transaction(self, trans): if (hasattr(trans, "pktrans") and bitfield_contains(trans.pktrans.flags, pk.TransactionFlagEnum.SIMULATE)): self._simulate_and_emit_packages(trans) return False else: return aptworker.AptWorker._run_transaction(self, trans) def _simulate_and_emit_packages(self, trans): trans.status = aptd_enums.STATUS_RUNNING self._simulate_transaction_idle(trans) # The simulate method lets the transaction fail in the case of an # error if trans.exit == aptd_enums.EXIT_UNFINISHED: # It is a little bit complicated to get the packages but avoids # a larger refactoring of apt.AptWorker._simulate() for pkg in trans.depends[aptd_enums.PKGS_INSTALL]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.INSTALLING) for pkg in trans.depends[aptd_enums.PKGS_REINSTALL]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.REINSTALLING) for pkg in trans.depends[aptd_enums.PKGS_REMOVE]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.REMOVING) for pkg in trans.depends[aptd_enums.PKGS_PURGE]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.REMOVING) for pkg in trans.depends[aptd_enums.PKGS_UPGRADE]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.UPDATING, force_candidate=True) for pkg in trans.depends[aptd_enums.PKGS_DOWNGRADE]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.DOWNGRADING, force_candidate=True) for pkg in trans.depends[aptd_enums.PKGS_KEEP]: self._emit_package(trans, self._cache[self._split_package_id(pkg)[0]], pk.InfoEnum.BLOCKED, force_candidate=True) for pkg in trans.unauthenticated: self._emit_package(trans, self._cache[pkg], pk.InfoEnum.UNTRUSTED, force_candidate=True) trans.status = aptd_enums.STATUS_FINISHED trans.progress = 100 trans.exit = aptd_enums.EXIT_SUCCESS tid = trans.tid[:] self.trans = None self.marked_tid = None self._emit_transaction_done(trans) pklog.info("Finished transaction %s", tid) def query(self, trans): """Run the worker""" if trans.role != aptd_enums.ROLE_PK_QUERY: raise TransactionFailed(aptd_enums.ERROR_UNKNOWN, "The transaction doesn't seem to be " "a query") if trans.pktrans.role == pk.RoleEnum.RESOLVE: self.resolve(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_UPDATES: self.get_updates(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_UPDATE_DETAIL: self.get_update_detail(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_PACKAGES: self.get_packages(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_FILES: self.get_files(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.SEARCH_NAME: self.search_names(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.SEARCH_GROUP: self.search_groups(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.SEARCH_DETAILS: self.search_details(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.SEARCH_FILE: self.search_files(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_DEPENDS: self.get_depends(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_REQUIRES: self.get_requires(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.GET_DETAILS: self.get_details(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.DOWNLOAD_PACKAGES: self.download_packages(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.WHAT_PROVIDES: self.what_provides(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.REPO_ENABLE: self.repo_enable(trans, **trans.kwargs) elif trans.pktrans.role == pk.RoleEnum.INSTALL_SIGNATURE: self.install_signature(trans, **trans.kwargs) else: raise TransactionFailed(aptd_enums.ERROR_UNKNOWN, "Role %s isn't supported", trans.pktrans.role) def search_files(self, trans, filters, values): """Implement org.freedesktop.PackageKit.Transaction.SearchFiles() Works only for installed file if apt-file isn't installed. """ trans.progress = 101 result_names = set() # Optionally make use of apt-file's Contents cache to search for not # installed files. But still search for installed files additionally # to make sure that we provide up-to-date results if (os.path.exists("/usr/bin/apt-file") and not bitfield_contains(filters, pk.FilterEnum.INSTALLED)): # FIXME: use rapt-file on Debian if the network is available # FIXME: Show a warning to the user if the apt-file cache is # several weeks old pklog.debug("Using apt-file") filenames_regex = [] for filename in values: if filename.startswith("/"): pattern = "^%s$" % filename[1:].replace("/", "\/") else: pattern = "\/%s$" % filename filenames_regex.append(pattern) cmd = ["/usr/bin/apt-file", "--regexp", "--non-interactive", "--package-only", "find", "|".join(filenames_regex)] pklog.debug("Calling: %s" % cmd) apt_file = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = apt_file.communicate() if apt_file.returncode == 0: # FIXME: Actually we should check if the file is part of the # candidate, e.g. if unstable and experimental are # enabled and a file would only be part of the # experimental version result_names.update(stdout.split()) self._emit_visible_packages_by_name(trans, filters, result_names) else: raise TransactionFailed(aptd_enums.ERROR_INTERNAL_ERROR, "%s %s" % (stdout, stderr)) # Search for installed files filenames_regex = [] for filename in values: if filename.startswith("/"): pattern = "^%s$" % filename.replace("/", "\/") else: pattern = ".*\/%s$" % filename filenames_regex.append(pattern) files_pattern = re.compile("|".join(filenames_regex)) for pkg in self._iterate_packages(): if pkg.name in result_names: continue for installed_file in self._get_installed_files(pkg): if files_pattern.match(installed_file): self._emit_visible_package(trans, filters, pkg) break def search_groups(self, trans, filters, values): """Implement org.freedesktop.PackageKit.Transaction.SearchGroups()""" # FIXME: Handle repo and category search trans.progress = 101 for pkg in self._iterate_packages(): group_str = pk.group_enum_to_string(self._get_package_group(pkg)) if group_str in values: self._emit_visible_package(trans, filters, pkg) def search_names(self, trans, filters, values): """Implement org.freedesktop.PackageKit.Transaction.SearchNames()""" def matches(searches, text): for search in searches: if search not in text: return False return True trans.progress = 101 for pkg_name in list(self._cache.keys()): if matches(values, pkg_name): self._emit_all_visible_pkg_versions(trans, filters, self._cache[pkg_name]) def search_details(self, trans, filters, values): """Implement org.freedesktop.PackageKit.Transaction.SearchDetails()""" trans.progress = 101 if XAPIAN_SUPPORT is True: search_flags = (xapian.QueryParser.FLAG_BOOLEAN | xapian.QueryParser.FLAG_PHRASE | xapian.QueryParser.FLAG_LOVEHATE | xapian.QueryParser.FLAG_BOOLEAN_ANY_CASE) pklog.debug("Performing xapian db based search") db = xapian.Database(XAPIAN_DB) parser = xapian.QueryParser() parser.set_default_op(xapian.Query.OP_AND) query = parser.parse_query(" ".join(values), search_flags) enquire = xapian.Enquire(db) enquire.set_query(query) matches = enquire.get_mset(0, 1000) for pkg_name in (match.document.get_data() for match in enquire.get_mset(0, 1000)): if pkg_name in self._cache: self._emit_visible_package(trans, filters, self._cache[pkg_name]) else: def matches(searches, text): for search in searches: if search not in text: return False return True pklog.debug("Performing apt cache based search") values = [val.lower() for val in values] for pkg in self._iterate_packages(): txt = pkg.name try: txt += pkg.candidate.raw_description.lower() txt += pkg.candidate._translated_records.long_desc.lower() except AttributeError: pass if matches(values, txt): self._emit_visible_package(trans, filters, pkg) def get_updates(self, trans, filters): """Only report updates which can be installed safely: Which can depend on the installation of additional packages but which don't require the removal of already installed packages or block any other update. """ def succeeds_security_update(pkg): """ Return True if an update succeeds a previous security update An example would be a package with version 1.1 in the security archive and 1.1.1 in the archive of proposed updates or the same version in both archives. """ for version in pkg.versions: # Only check versions between the installed and the candidate if (pkg.installed and apt_pkg.version_compare(version.version, pkg.installed.version) <= 0 and apt_pkg.version_compare(version.version, pkg.candidate.version) > 0): continue for origin in version.origins: if (origin.origin in ["Debian", "Ubuntu"] and (origin.archive.endswith("-security") or origin.label == "Debian-Security") and origin.trusted): return True return False # FIXME: Implment the basename filter self.cancellable = False self.progress = 101 # Start with a safe upgrade try: self._cache.upgrade(dist_upgrade=True) except SystemError: pass for pkg in self._iterate_packages(): if not pkg.is_upgradable: continue # This may occur on pinned packages which have been updated to # later version than the pinned one if not pkg.candidate.origins: continue if not pkg.marked_upgrade: # FIXME: Would be nice to all show why self._emit_package(trans, pkg, pk.InfoEnum.BLOCKED, force_candidate=True) continue # The update can be safely installed info = pk.InfoEnum.NORMAL # Detect the nature of the upgrade (e.g. security, enhancement) candidate_origin = pkg.candidate.origins[0] archive = candidate_origin.archive origin = candidate_origin.origin trusted = candidate_origin.trusted label = candidate_origin.label if origin in ["Debian", "Ubuntu"] and trusted is True: if archive.endswith("-security") or label == "Debian-Security": info = pk.InfoEnum.SECURITY elif succeeds_security_update(pkg): pklog.debug("Update of %s succeeds a security update. " "Raising its priority." % pkg.name) info = pk.InfoEnum.SECURITY elif archive.endswith("-backports"): info = pk.InfoEnum.ENHANCEMENT elif archive.endswith("-updates"): info = pk.InfoEnum.BUGFIX if origin in ["Backports.org archive"] and trusted is True: info = pk.InfoEnum.ENHANCEMENT self._emit_package(trans, pkg, info, force_candidate=True) self._emit_require_restart(trans) def _emit_require_restart(self, trans): """Emit RequireRestart if required.""" # Check for a system restart if self.is_reboot_required(): trans.pktrans.RequireRestart(pk.RestartEnum.SYSTEM, "") def get_update_detail(self, trans, package_ids): """ Implement the {backend}-get-update-details functionality """ def get_bug_urls(changelog): """ Create a list of urls pointing to closed bugs in the changelog """ urls = [] for r in re.findall(MATCH_BUG_CLOSES_DEBIAN, changelog, re.IGNORECASE | re.MULTILINE): urls.extend([HREF_BUG_DEBIAN % bug for bug in re.findall(MATCH_BUG_NUMBERS, r)]) for r in re.findall(MATCH_BUG_CLOSES_UBUNTU, changelog, re.IGNORECASE | re.MULTILINE): urls.extend([HREF_BUG_UBUNTU % bug for bug in re.findall(MATCH_BUG_NUMBERS, r)]) return urls def get_cve_urls(changelog): """ Create a list of urls pointing to cves referred in the changelog """ return [HREF_CVE % c for c in re.findall(MATCH_CVE, changelog, re.MULTILINE)] trans.progress = 0 trans.cancellable = False trans.pktrans.status = pk.StatusEnum.DOWNLOAD_CHANGELOG total = len(package_ids) count = 1 old_locale = locale.getlocale(locale.LC_TIME) locale.setlocale(locale.LC_TIME, "C") for pkg_id in package_ids: self._iterate_mainloop() trans.progress = count * 100 / total count += 1 pkg = self._get_package_by_id(pkg_id) # FIXME add some real data if pkg.installed.origins: installed_origin = pkg.installed.origins[0].label # APT returns a str with Python 2 if isinstance(installed_origin, bytes): installed_origin = installed_origin.decode("UTF-8") else: installed_origin = "" updates = ["%s;%s;%s;%s" % (pkg.name, pkg.installed.version, pkg.installed.architecture, installed_origin)] # Get the packages which will be replaced by the update obsoletes = set() if pkg.candidate: for dep_group in pkg.candidate.get_dependencies("Replaces"): for dep in dep_group: try: obs = self._cache[dep.name] except KeyError: continue if not obs.installed: continue if dep.relation: cmp = apt_pkg.version_compare( obs.candidate.version, dep.version) # Same version if cmp == 0 and dep.relation in [">", "<"]: continue # Installed version higer elif cmp < 0 and dep.relation in ["<"]: continue # Installed version lower elif cmp > 0 and dep.relation in [">"]: continue obs_id = self._get_id_from_version(obs.installed) obsoletes.add(obs_id) vendor_urls = [] restart = pk.RestartEnum.NONE update_text = "" state = pk.UpdateStateEnum.UNKNOWN # FIXME: Add support for Ubuntu and a better one for Debian if (pkg.candidate and pkg.candidate.origins[0].trusted and pkg.candidate.origins[0].label == "Debian"): archive = pkg.candidate.origins[0].archive if archive == "stable": state = pk.UpdateStateEnum.STABLE elif archive == "testing": state = pk.UpdateStateEnum.TESTING elif archive == "unstable": state = pk.UpdateStateEnum.UNSTABLE issued = "" updated = "" # FIXME: make this more configurable. E.g. a dbus update requires # a reboot on Ubuntu but not on Debian if (pkg.name.startswith("linux-image-") or pkg.name in ["libc6", "dbus"]): restart == pk.RestartEnum.SYSTEM changelog_dir = apt_pkg.config.find_dir("Dir::Cache::Changelogs") if changelog_dir == "/": changelog_dir = os.path.join(apt_pkg.config.find_dir("Dir::" "Cache"), "Changelogs") filename = os.path.join(changelog_dir, "%s_%s.gz" % (pkg.name, pkg.candidate.version)) changelog_raw = "" if os.path.exists(filename): pklog.debug("Reading changelog from cache") changelog_file = gzip.open(filename, "rb") try: changelog_raw = changelog_file.read().decode("UTF-8") except: pass finally: changelog_file.close() if not changelog_raw: pklog.debug("Downloading changelog") changelog_raw = pkg.get_changelog() # The internal download error string of python-apt ist not # provided as unicode object if not isinstance(changelog_raw, str): changelog_raw = changelog_raw.decode("UTF-8") # Cache the fetched changelog if not os.path.exists(changelog_dir): os.makedirs(changelog_dir) # Remove old cached changelogs pattern = os.path.join(changelog_dir, "%s_*" % pkg.name) for old_changelog in glob.glob(pattern): os.remove(os.path.join(changelog_dir, old_changelog)) changelog_file = gzip.open(filename, mode="wb") try: changelog_file.write(changelog_raw.encode("UTF-8")) finally: changelog_file.close() # Convert the changelog to markdown syntax changelog = "" for line in changelog_raw.split("\n"): if line == "": changelog += " \n" else: changelog += " %s \n" % line if line.startswith(pkg.candidate.source_name): match = re.match(r"(?P.+) \((?P.*)\) " "(?P.+); urgency=(?P.+)", line) update_text += "%s\n%s\n\n" % (match.group("version"), "=" * len(match.group("version"))) elif line.startswith(" "): # FIXME: The GNOME PackageKit markup parser doesn't support # monospaced yet # update_text += " %s \n" % line update_text += "%s\n\n" % line elif line.startswith(" --"): # FIXME: Add %z for the time zone - requires Python 2.6 update_text += " \n" match = re.match("^ -- (?P.+) (?P<.+>) " "(?P.+) (?P[-\+][0-9]+)$", line) if not match: continue try: date = datetime.datetime.strptime(match.group("date"), "%a, %d %b %Y " "%H:%M:%S") except ValueError: continue issued = date.isoformat() if not updated: updated = date.isoformat() if issued == updated: updated = "" bugzilla_urls = get_bug_urls(changelog) cve_urls = get_cve_urls(changelog) trans.emit_update_detail(pkg_id, updates, obsoletes, vendor_urls, bugzilla_urls, cve_urls, restart, update_text, changelog, state, issued, updated) locale.setlocale(locale.LC_TIME, old_locale) def get_details(self, trans, package_ids): """Implement org.freedesktop.PackageKit.Transaction.GetDetails()""" trans.progress = 101 for pkg_id in package_ids: version = self._get_version_by_id(pkg_id) # FIXME: We need more fine grained license information! origins = version.origins if (origins and origins[0].component in ["main", "universe"] and origins[0].origin in ["Debian", "Ubuntu"]): license = "free" else: license = "unknown" group = self._get_package_group(version.package) trans.emit_details(pkg_id, license, group, version.description, version.homepage, version.size) def get_packages(self, trans, filters): """Implement org.freedesktop.PackageKit.Transaction.GetPackages()""" self.progress = 101 for pkg in self._iterate_packages(): if self._is_package_visible(pkg, filters): self._emit_package(trans, pkg) def resolve(self, trans, filters, packages): """Implement org.freedesktop.PackageKit.Transaction.Resolve()""" trans.status = aptd_enums.STATUS_QUERY trans.progress = 101 self.cancellable = False for name in packages: try: # Check if the name is a valid package id version = self._get_version_by_id(name) except ValueError: pass else: if self._is_version_visible(version, filters): self._emit_pkg_version(trans, version) continue # The name seems to be a normal name try: pkg = self._cache[name] except KeyError: raise TransactionFailed(aptd_enums.ERROR_NO_PACKAGE, "Package name %s could not be " "resolved.", name) else: self._emit_all_visible_pkg_versions(trans, filters, pkg) def get_depends(self, trans, filters, package_ids, recursive): """Emit all dependencies of the given package ids. Doesn't support recursive dependency resolution. """ def emit_blocked_dependency(base_dependency, pkg=None, filters=pk.FilterEnum.NONE): """Send a blocked package signal for the given apt.package.BaseDependency. """ if pk.FilterEnum.INSTALLED in filters: return if pkg: summary = pkg.candidate.summary filters = bitfield_remove(filters, pk.FilterEnum.NOT_INSTALLED) if not self._is_package_visible(pkg, filters): return else: summary = "" if base_dependency.relation: version = "%s%s" % (base_dependency.relation, base_dependency.version) else: version = base_dependency.version trans.emit_package("%s;%s;;" % (base_dependency.name, version), pk.InfoEnum.BLOCKED, summary) def check_dependency(pkg, base_dep): """Check if the given apt.package.Package can satisfy the BaseDepenendcy and emit the corresponding package signals. """ if not self._is_package_visible(pkg, filters): return if base_dep.version: satisfied = False # Sort the version list to check the installed # and candidate before the other ones ver_list = list(pkg.versions) if pkg.installed: ver_list.remove(pkg.installed) ver_list.insert(0, pkg.installed) if pkg.candidate: ver_list.remove(pkg.candidate) ver_list.insert(0, pkg.candidate) for dep_ver in ver_list: if apt_pkg.check_dep(dep_ver.version, base_dep.relation, base_dep.version): self._emit_pkg_version(trans, dep_ver) satisfied = True break if not satisfied: emit_blocked_dependency(base_dep, pkg, filters) else: self._emit_package(trans, pkg) # Setup the transaction self.status = aptd_enums.STATUS_RESOLVING_DEP trans.progress = 101 self.cancellable = True dependency_types = ["PreDepends", "Depends"] if apt_pkg.config["APT::Install-Recommends"]: dependency_types.append("Recommends") for id in package_ids: version = self._get_version_by_id(id) for dependency in version.get_dependencies(*dependency_types): # Walk through all or_dependencies for base_dep in dependency.or_dependencies: if self._cache.is_virtual_package(base_dep.name): # Check each proivider of a virtual package for provider in self._cache.get_providing_packages( base_dep.name): check_dependency(provider, base_dep) elif base_dep.name in self._cache: check_dependency(self._cache[base_dep.name], base_dep) else: # The dependency does not exist emit_blocked_dependency(trans, base_dep, filters=filters) def get_requires(self, trans, filters, package_ids, recursive): """Emit all packages which depend on the given ids. Recursive searching is not supported. """ self.status = aptd_enums.STATUS_RESOLVING_DEP self.progress = 101 self.cancellable = True for id in package_ids: version = self._get_version_by_id(id) for pkg in self._iterate_packages(): if not self._is_package_visible(pkg, filters): continue if pkg.is_installed: pkg_ver = pkg.installed elif pkg.candidate: pkg_ver = pkg.candidate for dependency in pkg_ver.dependencies: satisfied = False for base_dep in dependency.or_dependencies: if (version.package.name == base_dep.name or base_dep.name in version.provides): satisfied = True break if satisfied: self._emit_package(trans, pkg) break def download_packages(self, trans, store_in_cache, package_ids): """Implement the DownloadPackages functionality. The store_in_cache parameter gets ignored. """ def get_download_details(ids): """Calculate the start and end point of a package download progress. """ total = 0 downloaded = 0 versions = [] # Check if all ids are vaild and calculate the total download size for id in ids: pkg_ver = self._get_version_by_id(id) if not pkg_ver.downloadable: raise TransactionFailed( aptd_enums.ERROR_PACKAGE_DOWNLOAD_FAILED, "package %s isn't downloadable" % id) total += pkg_ver.size versions.append((id, pkg_ver)) for id, ver in versions: start = downloaded * 100 / total end = start + ver.size * 100 / total yield id, ver, start, end downloaded += ver.size trans.status = aptd_enums.STATUS_DOWNLOADING trans.cancellable = True trans.progress = 10 # Check the destination directory if store_in_cache: dest = apt_pkg.config.find_dir("Dir::Cache::archives") else: dest = tempfile.mkdtemp(prefix="aptdaemon-download") if not os.path.isdir(dest) or not os.access(dest, os.W_OK): raise TransactionFailed(aptd_enums.ERROR_INTERNAL_ERROR, "The directory '%s' is not writable" % dest) # Start the download for id, ver, start, end in get_download_details(package_ids): progress = DaemonAcquireProgress(trans, start, end) self._emit_pkg_version(trans, ver, pk.InfoEnum.DOWNLOADING) try: ver.fetch_binary(dest, progress) except Exception as error: raise TransactionFailed( aptd_enums.ERROR_PACKAGE_DOWNLOAD_FAILED, str(error)) else: path = os.path.join(dest, os.path.basename(ver.filename)) trans.emit_files(id, [path]) self._emit_pkg_version(trans, ver, pk.InfoEnum.FINISHED) def get_files(self, trans, package_ids): """Emit the Files signal which includes the files included in a package Apt only supports this for installed packages """ for id in package_ids: pkg = self._get_package_by_id(id) trans.emit_files(id, self._get_installed_files(pkg)) def what_provides(self, trans, filters, provides_type, values): """Emit all packages which provide the given type and search value.""" self._init_plugins() supported_type = False provides_type_str = pk.provides_enum_to_string(provides_type) # run plugins for plugin in self._plugins.get("what_provides", []): pklog.debug("calling what_provides plugin %s %s", str(plugin), str(filters)) for search_item in values: try: for package in plugin(self._cache, provides_type_str, search_item): self._emit_visible_package(trans, filters, package) supported_type = True except NotImplementedError: # keep supported_type as False pass if not supported_type and provides_type != pk.ProvidesEnum.ANY: # none of the plugins felt responsible for this type raise TransactionFailed(aptd_enums.ERROR_NOT_SUPPORTED, "Query type '%s' is not supported" % pk.provides_enum_to_string(provides_type)) def repo_enable(self, trans, repo_id, enabled): """Enable or disable a repository.""" if not enabled: raise TransactionFailed(aptd_enums.ERROR_NOT_SUPPORTED, "Disabling repositories is not " "implemented") fields = repo_id.split() if len(fields) < 3 or fields[0] not in ('deb', 'deb-src'): raise TransactionFailed( aptd_enums.ERROR_NOT_SUPPORTED, "Unknown repository ID format: %s" % repo_id) self.add_repository(trans, fields[0], fields[1], fields[2], fields[3:], '', None) def install_signature(self, trans, sig_type, key_id, package_id): """Install an archive key.""" if sig_type != pk.SigTypeEnum.GPG: raise TransactionFailed(aptd_enums.ERROR_NOT_SUPPORTED, "Type %s is not supported" % sig_type) try: keyserver = os.environ["APTDAEMON_KEYSERVER"] except KeyError: if platform.dist()[0] == "Ubuntu": keyserver = "hkp://keyserver.ubuntu.com:80" else: keyserver = "hkp://keys.gnupg.net" self.add_vendor_key_from_keyserver(trans, key_id, keyserver) # Helpers def _get_id_from_version(self, version): """Return the package id of an apt.package.Version instance.""" if version.origins: origin = version.origins[0].label # APT returns a str with Python 2 if isinstance(origin, bytes): origin = origin.decode("UTF-8") else: origin = "" if version.architecture in [self.NATIVE_ARCH, "all"]: name = version.package.name else: name = version.package.name.split(":")[0] id = "%s;%s;%s;%s" % (name, version.version, version.architecture, origin) return id def _emit_package(self, trans, pkg, info=None, force_candidate=False): """ Send the Package signal for a given apt package """ if (not pkg.is_installed or force_candidate) and pkg.candidate: self._emit_pkg_version(trans, pkg.candidate, info) elif pkg.is_installed: self._emit_pkg_version(trans, pkg.installed, info) else: pklog.debug("Package %s hasn't got any version." % pkg.name) def _emit_pkg_version(self, trans, version, info=None): """Emit the Package signal of the given apt.package.Version.""" id = self._get_id_from_version(version) section = version.section.split("/")[-1] if not info: if version == version.package.installed: if section == "metapackages": info = pk.InfoEnum.COLLECTION_INSTALLED else: info = pk.InfoEnum.INSTALLED else: if section == "metapackages": info = pk.InfoEnum.COLLECTION_AVAILABLE else: info = pk.InfoEnum.AVAILABLE trans.emit_package(info, id, version.summary) def _emit_all_visible_pkg_versions(self, trans, filters, pkg): """Emit all available versions of a package.""" for version in pkg.versions: if self._is_version_visible(version, filters): self._emit_pkg_version(trans, version) def _emit_visible_package(self, trans, filters, pkg, info=None): """ Filter and emit a package """ if self._is_package_visible(pkg, filters): self._emit_package(trans, pkg, info) def _emit_visible_packages(self, trans, filters, pkgs, info=None): """ Filter and emit packages """ for pkg in pkgs: if self._is_package_visible(pkg, filters): self._emit_package(trans, pkg, info) def _emit_visible_packages_by_name(self, trans, filters, pkgs, info=None): """ Find the packages with the given namens. Afterwards filter and emit them """ for name in pkgs: if (name in self._cache and self._is_package_visible(self._cache[name], filters)): self._emit_package(trans, self._cache[name], info) def _is_version_visible(self, version, filters): """Return True if the package version is matched by the given filters. """ if filters == pk.FilterEnum.NONE: return True if (bitfield_contains(filters, pk.FilterEnum.NEWEST) and version.package.candidate != version): return False if (bitfield_contains(filters, pk.FilterEnum.INSTALLED) and version.package.installed != version): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_INSTALLED) and version.package.installed == version): return False if (bitfield_contains(filters, pk.FilterEnum.SUPPORTED) and not self._is_package_supported(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_SUPPORTED) and self._is_package_supported(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.FREE) and not self._is_version_free(version)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_FREE) and self._is_version_free(version)): return False if (bitfield_contains(filters, pk.FilterEnum.GUI) and not self._has_package_gui(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_GUI) and self._has_package_gui(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.COLLECTIONS) and not self._is_package_collection(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_COLLECTIONS) and self._is_package_collection(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.DEVELOPMENT) and not self._is_package_devel(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_DEVELOPMENT) and self._is_package_devel(version.package)): return False if (bitfield_contains(filters, pk.FilterEnum.ARCH) and version.architecture not in [self.NATIVE_ARCH, "all"]): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_ARCH) and version.architecture in [self.NATIVE_ARCH, "all"]): return False return True def _is_package_visible(self, pkg, filters): """Return True if the package is matched by the given filters.""" if filters == pk.FilterEnum.NONE: return True if (bitfield_contains(filters, pk.FilterEnum.INSTALLED) and not pkg.is_installed): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_INSTALLED) and pkg.is_installed): return False if (bitfield_contains(filters, pk.FilterEnum.SUPPORTED) and not self._is_package_supported(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_SUPPORTED) and self._is_package_supported(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.FREE) and not self._is_package_free(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_FREE) and self._is_package_free(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.GUI) and not self._has_package_gui(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_GUI) and self._has_package_gui(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.COLLECTIONS) and not self._is_package_collection(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_COLLECTIONS) and self._is_package_collection(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.DEVELOPMENT) and not self._is_package_devel(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_DEVELOPMENT) and self._is_package_devel(pkg)): return False if (bitfield_contains(filters, pk.FilterEnum.ARCH) and ":" in pkg.name): return False if (bitfield_contains(filters, pk.FilterEnum.NOT_ARCH) and ":" not in pkg.name): return False return True def _is_package_free(self, pkg): """Return True if we can be sure that the package's license is a free one """ if not pkg.candidate: return False return self._is_version_free(pkg.candidate) def _is_version_free(self, version): """Return True if we can be sure that the package version has got a free license. """ origins = version.origins return (origins and ((origins[0].origin == "Ubuntu" and origins[0].component in ["main", "universe"]) or (origins[0].origin == "Debian" and origins[0].component == "main")) and origins[0].trusted) def _is_package_collection(self, pkg): """Return True if the package is a metapackge """ section = pkg.section.split("/")[-1] return section == "metapackages" def _has_package_gui(self, pkg): # FIXME: take application data into account. perhaps checking for # property in the xapian database return pkg.section.split('/')[-1].lower() in ['x11', 'gnome', 'kde'] def _is_package_devel(self, pkg): return (pkg.name.endswith("-dev") or pkg.name.endswith("-dbg") or pkg.section.split('/')[-1].lower() in ['devel', 'libdevel']) def _is_package_supported(self, pkg): if not pkg.candidate: return False origins = pkg.candidate.origins return (origins and ((origins[0].origin == "Ubuntu" and origins[0].component in ["main", "restricted"]) or (origins[0].origin == "Debian" and origins[0].component == "main")) and origins[0].trusted) def _get_package_by_id(self, id): """Return the apt.package.Package corresponding to the given package id. If the package isn't available error out. """ version = self._get_version_by_id(id) return version.package def _get_version_by_id(self, id): """Return the apt.package.Version corresponding to the given package id. If the version isn't available error out. """ name, version_string, arch, data = id.split(";", 4) if arch and arch not in [self.NATIVE_ARCH, "all"]: name += ":%s" % arch try: pkg = self._cache[name] except KeyError: raise TransactionFailed(aptd_enums.ERROR_NO_PACKAGE, "There isn't any package named %s", name) try: version = pkg.versions[version_string] except: raise TransactionFailed(aptd_enums.ERROR_NO_PACKAGE, "Verion %s doesn't exist", version_string) if version.architecture != arch: raise TransactionFailed(aptd_enums.ERROR_NO_PACKAGE, "Version %s of %s isn't available " "for architecture %s", pkg.name, version.version, arch) return version def _get_installed_files(self, pkg): """ Return the list of unicode names of the files which have been installed by the package This method should be obsolete by the apt.package.Package.installedFiles attribute as soon as the consolidate branch of python-apt gets merged """ path = os.path.join(apt_pkg.config["Dir"], "var/lib/dpkg/info/%s.list" % pkg.name) try: with open(path, 'rb') as f: files = f.read().decode('UTF-8').split("\n") except IOError: return [] return files def _get_package_group(self, pkg): """ Return the packagekit group corresponding to the package's section """ section = pkg.section.split("/")[-1] if section in SECTION_GROUP_MAP: return SECTION_GROUP_MAP[section] else: pklog.warning("Unkown package section %s of %s" % (pkg.section, pkg.name)) return pk.GroupEnum.UNKNOWN def _init_plugins(self): """Initialize PackageKit apt backend plugins. Do nothing if plugins are already initialized. """ if self._plugins is not None: return if not pkg_resources: return self._plugins = {} # plugin_name -> [plugin_fn1, ...] # just look in standard Python paths for now dists, errors = pkg_resources.working_set.find_plugins( pkg_resources.Environment()) for dist in dists: pkg_resources.working_set.add(dist) for plugin_name in ["what_provides"]: for entry_point in pkg_resources.iter_entry_points( "packagekit.apt.plugins", plugin_name): try: plugin = entry_point.load() except Exception as e: pklog.warning("Failed to load %s from plugin %s: %s" % ( plugin_name, str(entry_point.dist), str(e))) continue pklog.debug("Loaded %s from plugin %s" % ( plugin_name, str(entry_point.dist))) self._plugins.setdefault(plugin_name, []).append(plugin) def _apply_changes(self, trans, fetch_range=(15, 50), install_range=(50, 90)): """Apply changes and emit RequireRestart accordingly.""" if hasattr(trans, "pktrans"): # Cache the ids of the to be changed packages, since we will # only get the package name during download/install time for pkg in self._cache.get_changes(): if pkg.marked_delete or pkg.marked_reinstall: pkg_id = self._get_id_from_version(pkg.installed) else: pkg_id = self._get_id_from_version(pkg.candidate) trans.pktrans.pkg_id_cache[pkg.name] = pkg_id aptworker.AptWorker._apply_changes(self, trans, fetch_range, install_range) if (hasattr(trans, "pktrans") and (trans.role == aptd_enums.ROLE_UPGRADE_SYSTEM or trans.packages[aptd_enums.PKGS_UPGRADE] or trans.depends[aptd_enums.PKGS_UPGRADE])): self._emit_require_restart(trans) if META_RELEASE_SUPPORT: class GMetaRelease(GObject.GObject, MetaReleaseCore): __gsignals__ = {"download-done": (GObject.SignalFlags.RUN_FIRST, None, ())} def __init__(self): GObject.GObject.__init__(self) MetaReleaseCore.__init__(self, False, False) def download(self): MetaReleaseCore.download(self) self.emit("download-done") def bitfield_summarize(*enums): """Return the bitfield with the given PackageKit enums.""" field = 0 for enum in enums: field |= 2 ** int(enum) return field def bitfield_add(field, enum): """Add a PackageKit enum to a given field""" field |= 2 ** int(enum) return field def bitfield_remove(field, enum): """Remove a PackageKit enum to a given field""" field = field ^ 2 ** int(enum) return field def bitfield_contains(field, enum): """Return True if a bitfield contains the given PackageKit enum""" return field & 2 ** int(enum) # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/data/20dbus0000644000000000000000000000036311312112035014566 0ustar 00000000000000// Notify all clients to reload the cache APT::Update::Post-Invoke-Success { "[ ! -f /var/run/dbus/system_bus_socket ] || /usr/bin/dbus-send --system --dest=org.debian.apt --type=signal /org/debian/apt org.debian.apt.CacheChanged || true"; }; aptdaemon-1.1.1+bzr982/data/icons/0000755000000000000000000000000011141032573014665 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/lintian/0000755000000000000000000000000011764346465015233 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/org.debian.apt.conf0000644000000000000000000000066211144506404017222 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/org.debian.apt.policy.in0000644000000000000000000001521312021076231020172 0ustar 00000000000000 Apt Daemon http://launchpad.net/aptdaemon/ package-x-generic <_description> List keys of trusted vendors <_message> To view the list of trusted keys, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Remove downloaded package files <_message> To clean downloaded package files, you need to authenticate. auth_admin auth_admin yes <_description> Change software configuration <_message> To change software settings, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Change software repository <_message> To change software repository settings, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Install package file <_message> To install this package, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Update package information <_message> To update the software catalog, you need to authenticate. auth_admin auth_admin yes <_description> Install or remove packages <_message> To install or remove software, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Install software from a high-trust whitelisted repository. <_message> To install software, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Add a new repository and install packages from it <_message> To install software from a new source, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Add a new repository of purchased software and install packages from it <_message> To install purchased software, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Upgrade packages <_message>To install updated software, you need to authenticate. auth_admin auth_admin auth_admin_keep <_description> Cancel the task of another user <_message> To cancel someone else's software changes, you need to authenticate. auth_admin auth_admin auth_admin <_description> Set a proxy for software downloads <_message> To use a proxy server for downloading software, you need to authenticate. auth_admin auth_admin auth_admin aptdaemon-1.1.1+bzr982/data/org.debian.apt.service0000644000000000000000000000010311301007275017720 0ustar 00000000000000[D-BUS Service] Name=org.debian.apt Exec=/usr/sbin/aptd User=root aptdaemon-1.1.1+bzr982/data/org.freedesktop.PackageKit-aptd.conf0000644000000000000000000000211011661467105022456 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/org.freedesktop.PackageKit.service0000644000000000000000000000011711662234760022250 0ustar 00000000000000[D-BUS Service] Name=org.freedesktop.PackageKit Exec=/usr/sbin/aptd User=root aptdaemon-1.1.1+bzr982/data/icons/16x16/0000755000000000000000000000000011141032573015452 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/22x22/0000755000000000000000000000000011141032573015444 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/24x24/0000755000000000000000000000000011141032573015450 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/48x48/0000755000000000000000000000000011141032573015464 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/clean_svg_icons.sh0000755000000000000000000000031211141032573020354 0ustar 00000000000000# clean to reduce file size subdirs="categories status" for subdir in $subdirs; do cd scalable/$subdir for i in *.svg; do inkscape -f "$i" --vacuum-defs --export-plain-svg "$i"; done cd - done aptdaemon-1.1.1+bzr982/data/icons/generate_16x16_icons.sh0000755000000000000000000000044211141032573021056 0ustar 00000000000000# we need to generate the 24x24 icons from the 22x22 tango icons subdirs="categories status" for subdir in $subdirs; do cd 22x22/$subdir for icon in *.png; do target="../../16x16/$subdir/$icon" if [ ! -e $target ]; then convert -resize 16x16 $icon $target; fi done cd - done aptdaemon-1.1.1+bzr982/data/icons/generate_24x24_icons.sh0000755000000000000000000000047111141032573021056 0ustar 00000000000000# we need to generate the 24x24 icons from the 22x22 tango icons subdirs="categories status" for subdir in $subdirs; do cd 22x22/$subdir for icon in *.png; do target="../../24x24/$subdir/$icon" if [ ! -e $target ]; then convert -bordercolor Transparent -border 1x1 $icon $target; fi done cd - done aptdaemon-1.1.1+bzr982/data/icons/generate_48x48_icons.sh0000755000000000000000000000055211141032573021072 0ustar 00000000000000 subdirs="categories" for subdir in $subdirs; do cd scalable/$subdir for i in *.svg;do target="../48x48/"$( echo $i | cut -d . -f -1 ).png echo "converting $i to $target" if [ ! -e $target ]; then inkscape --without-gui --export-png=$target --export-dpi=72 --export-background-opacity=0 --export-width=48 --export-height=48 "$i";done fi cd - done aptdaemon-1.1.1+bzr982/data/icons/scalable/0000755000000000000000000000000011141032573016433 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/0000755000000000000000000000000011141032573017614 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/16x16/status/0000755000000000000000000000000011141032573016775 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-cleaning-up.png0000644000000000000000000000503211141035702025742 0ustar 00000000000000PNG  IHDRtXtEXtSoftwareAdobe ImageReadyqe< IDATxڼ{pTǿ޻o6fynIHBl2 ED8RE} Gjg3-?j>RlkQ17F d7W}0no3w9s]ױ~CMM@ϱuͩiZq-qv/!\&فm.ޘ5@Q.K#?T bFOQK/֗?KO'1-竟[^ӧO?oJn(Xxy؅΢FOW3GBhׄh4OuS|hDJx*|00ۜE έi[q3n?| { }H#Ck0h\EULF1: U9b \{ƆNfʧoĿDzk@,q#w9p_j^7'Clꂧ:PmYdPnp& @9n]4r;ym8yܴGmv$V&7߈w_یk[ X{O_݂?GBs`=e +$ع$x*6=rѓ@C`8, )UHG1-(gG?R/ "W4~&O$yY~C:7f?zAރ߈!NDŅW5.xT#aZ:%=-_?;#}̳%w^FhL7Yl~H(o^C}۲lYSP~|! ۙlr]:=#QHִx"e_ރf)9؀ rekh`xN]q;}P6&E7 IN%ڍt`ʛg5a8fgAh|9v#sBEWWuܺ-:G_uhnq_/+b- UXtEmu3<|񩻀^4W7&*,/t0=^˳v3\>_T%aw@LK={cjmoa({yPbvA٘L`G## F3e՗]Vd4U9zC;?7Q3t?xt7QBˋJ(1"s=鮖bsZT2>ܑDMX)z6W4pB̝dgע lzx@],m9yBxg0@Y*vo3HQR1Q3t~LtE7v3O V=gCv$fkN={]ӍJIU$sv=nVE7?V55D:3Ȕԃ3tӺuU7`R5V"t*ҷ"3g0[Q3t 4IuxƎѾ!]M,8kasRw<;>=g;p\O<}77N:7,Y 8kl8z() e `yl,5^"0>Q3Fb>+UQ.$<lEk]bU 1rXAhX޵֘R?S}O)0Y̼U5tuVa^HFN[~`+4پ19, S()X&wˉ)0[|>/.M+~zX*$&xhjH~mK%^w-Ah(J'wUi+Hk2+&2k?/I9 CiЅG?H+QިxQS}SZ,V_7n?q%[PdfjPB`]-Qj~n/vILJHJ&#q`ص]"A) 8F,1|"}]L'PZSI=6M,0`GFo;K<#[tRI~C%<'cQި~ MLVj]jLM8DퟞbSٳBe !^UGm=~> Cr:@8LVJf7ߨWo, AM>|ϖaZ2I}Jd2hySH1}stIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-downloading.png0000644000000000000000000000266211141035702026053 0ustar 00000000000000PNG  IHDRXwtEXtSoftwareAdobe ImageReadyqe<TIDATx}luǿm}f7p[aME&AP@AL H/1h䏅 F Sa- 5 M&ͅ1^:Ju;ڦk^9ܳ4<}seC5v(VuKnE)[xZfjIpui t9}3:w8Rxw|XM2gHZ<.(xۗ.Լd)iWʿ9{2(ԏ@źuO e𱫷YycaaP(`] m>6 GZ|U~sjE{KFʕ.ICFL{ZݦIqvsſ(#=YW:T΍x8NB_ЎX7^u\x˕9b ӕQjY0;ԯޣR m]Ӻu _シ ^Eʜ1ΟvW.~lĺj~u'NK a_Y3d_^'_j!Wr\x;|~'a+X>. &!Ɗcr^烲S.: ף?ͫ=c>{K[FM K@j>(;폞+_-IX_ N1a^O|=Dh/KpB͛#BOm۝󰼪FS郲ӛQcm,>ǖpH O 71ZgRSjjGwy#(8H`n_Xwv;F?R|TU6TzCQ*XUk|:wWꍃWL~Kq>!^L%W˿\d=t`|D  dGΓ~ZB0Ývt >O}H` ܿ5`ZS! _ -Olx1IENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-installing.png0000644000000000000000000000325311141035702025707 0ustar 00000000000000PNG  IHDRtEXtSoftwareAdobe ImageReadyqe<MIDATxkLW.doDmADT1Fh16Ѥ6TKlFMҪM554~P3"">XmDay¾ff{؁4M3g3w2Sy9$zz g9) Ie~4yc a2v@C Cu 2wNȼ̏6q`71Ezm0KZDus v›hFȴwޭEdIHۗgg{ձ}fl2?ɠwZ"iPO`2uwmz->|s#DϘIon~#?r iiŚIH/O~ua0gp֔DLC ^9 U@ 'd;9ٗܬLGI~ 5f*/-)K~_:gͽ_G#i- 2,mTĤԪx$2bTĤWQnǀ[h~r9^2~=*[k ̟KYA&lNB=vxN?қť7!0UbNdkUy=q ?('Iߛ_~̋ Dis5<1KּmT_n;Mm32o~^d J.A\=B]u <]-Cl|ڛ[+?+ 릤z4B8]۾gmѐwF tX)e-κ#P;<ᇩ1<8nÏUظ3pq;>}?>7)U@Y9+Qt8f$jE6^L |Oeaڌ!m= `~=tͧ{/W~Q|y7ďO#0 m v쩀zB@|Kw 7} ~AdkWx/S[2QX^AÃZG:SV_Xgْ8ЎCRۆdƯ7A]hs47vJbYT G³_i0&twwS:;|)WZ)V"\MP( F_de7 ,8kVI)ُic c Kv>A!1g?ccW_;V+LF(ɇ4 TRva\O*/cOgVsde.f6TCp8x L&L7sQq^˼̏$-H3G"`~PT)T(RP6M<܎A' B@w" L8ɯ紽s~ww^yL_L=A5@C7T*"Oa8rӗ$"%RAdcD:B$/"!6CPfꏴI0~A2-5~n8P䦣|76T,*Yگ69.+ {~؛~}Ҝ==]_,#:9Qh %EG#J@#5y8 A[i@6o|2Ny&4(# [M?EQT!|Zmqf`{f靁hkXBt|-s^Xr=q[g]ohhB ёCLye9odĻg^XZqg,J6e-3'-9M3hkrmבdYSߺ^}L%fV,n_ojnR34Mz 0P( l8Q}9|NM2 l:Ǜ$&++È$*oNHgy; xZzvHx&&\$x 7+cEF1Z]=t59i6K___!N;1M TuK_"">L4Z'[,PoFs̈3E n\C`K+a7{ {,ko~qR1Gq Ԩ2>Y] e (ֳJ&G`aiԾWLme^Ϳf5uKCp$ ˗d 1 6o7iA+;Bf08l6+xCEmhsЌL2~HwB4DGR*aOSr_ޮg1§%wKy7o`Ӗh(He|_3%nXPf$Dl6h.Xcx2].yj?LfC§.7|1N>HXɘԐ|\@Sɞ}{`nwHt\9إVj?Q #7%Dhk^i6@ wۺ`0@"uLRBQ]vݫbO8Ԟ| (BҤ(Dxhڱyl!#yzُ?Ɠc?3m6(Wadgug-Ȍs$qX'ܞkBM<3H ?V]مa|+NjgXPֻJ rps<;Gx)Sƫ-˭nxs.`}CP3&Я6k M™\ȳ7J(8]/ߙ11IUN͓Az4qEH9ppvx'5O\߰G. 1O^x|;P}IENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-resolving.png0000644000000000000000000000334711141040562025557 0ustar 00000000000000PNG  IHDR`ztEXtSoftwareAdobe ImageReadyqe<IDATx[lWgn{޲׎o4MP %(*!Zj"TED ġ$%q"'k{q2f;;7,;Bj<ٝ3Ιb&6On6!ȫ^q/+3;X©νNiM~<9sQ#SǺV(Jp8$<I |p큡Uq/?\${&q?0w|g;Ws07gIΠOB/PK)JĨ6"QܞO7Γ_::뭵\^ZIx*ŕߢ摁eT+%LJvxƃϧ1elP}n?SG[wc{FoGOrj9 CQ=?>U 2=tQAݛE,,1:1`lbr2IcjenU){ 871nҷ!RpKSVr '㔍WXSpK TM2>ZE!tfc"C(ݸ1xUA!UHwNSGߎi|"[<t00?(P)‰XJrTp\M!iYοZ-}CSo&V:6f5Ր,{ﲝV>@I[E‘[z{{,TM( lq*My6~#Si4vlcG>1ԻO`TKVƌ!`K4"4ZWTPB /|mKz>fnScl)̗rg7m!M{I|vvK#{ }αllF ^S{ftr pZhىLH/gɕ0#spP۔ Q' Ybu`۳ v4lyvBJl_g?2fpBl\<./[@R/<7j^^+xka2N2D;'5c,{ 4fYbc6Gr1Ԍ?h)TYjH*3>/ϨuxVơ;]nĪ:b)V;$G޽-tW9<ƷEA<J%m2 ܊1'S>:VF~?'_׾ӧHQlҔX  Oihje馞9 wXV-~BuOd)=-`8(zrr c/}s_\v|؃/@pd#oC_>6wPla HymiZ'A,` OQɝIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-updating-cache.png0000644000000000000000000000353411141035702026421 0ustar 00000000000000PNG  IHDRXwsRGBbKGD pHYs  tIME7.IDATh{l[W?bǯ:vMG(k- +s;ԭei mL 1`!cTh*ec8ct]KG8N؎׾?UYْTBcҽ>s~s|1w@'VY {w~xS8}}D>wP}`0K'(2~'}PViwnSfJK E~?\EuZL3YL"O˗/>'5؏qiO W=Ҹvhd4bb/N}tlTqt~20b":˓p :E}`rj *H|bfZ#0=["jZP ^~NӭcL|j9߰Vw@߅)rJ,+.X2L>WNs`aD;}toBeq/|uE4?̽O#([eq2 `2[?{kG^zW*=߃QH!B8R :Nn MTF<_@Mcm]_Wވqӎ$^$N#b p]es*2JaD5oE}rn|JRB 18G׬x VJL:x:5_\/Ȥ$^̆)NXk~PCϖh4ȋYP‚ @0,p*!4҇l&Grut3WL*Yo$°@#Bxd!I I8!RA 3L݈ώD!Ҫ[vTtr`ǝU͟=# o pO0$:{ N{Ξmj]ٟu<Nxtf,άQZkΣV.uB&=uJ$02iu 1I_7YzH(hAh*9.AX׬V*ch:m  ŸE,I!`P"UF3?{3kݯM/9+qIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/animations/aptdaemon-action-waiting.png0000644000000000000000000000313411141035702025203 0ustar 00000000000000PNG  IHDRtXtEXtSoftwareAdobe ImageReadyqe<IDATxklUϝ̾nm+mED6THPb&bD`5DCA5ACT_LP!* B)G>fwy3ˣ;K lg͙w=wS1YF98v31Auoȥǡ94z!Ưv.ϔFo*Ňza(:%~Q)>w> HEQҪ0j\s.沗|i&R tr,˴lW$R<?=y|y)[e~쯦JT~1;:CZrxuv)>Av?e^⟃PkHTV%wߓkh9^@?P|R{u>  4Czb<_,:)_N]䫶JTgOLKXXdf`tlZv)7F 6aWrD]%D0NjidEFeq,Y O cE$u xk@g=$Š\~9 Mj4J!-o1L`beeXbvȁQtDeE\/20 8]e\"(e2V8r.0KF0tB66+~E4& ?Xʤ|2_io7yå]䄴m;%S2nݽ x}YԶ߸]`D45__nycSQS Mk[ІaeYeGZ߾9[Cs")}2>V,@3 ܐ ʽW4JT2VpSd;vim~x^( Mn)/Qb@P̍7hxs }#|ۂ+-9OoYw[}E˱jTϔ#о}J_T{xDIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-add.png0000644000000000000000000000334211141035702022200 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭ$IDATHŕYPTE{F\@D *t4H4$Et4SԸTa5QLcX:R\PpLm#QAֽ# Rx!=Rn:RG ljey@|d1@+(z&>- ]=o_&p!X)OQ-C0hlP:}4T2PcHP+YO(kJ AgRwDTɷԜ=84a׸ԈY Pwg܍(h1 6< }mN 45k(mZ]#Mhe d'9nP 9arղdi1G{F)H)Ŕe :www?DwXY9 惫ݺ Lw|/SU+FF91 #v{Z;?{w$6/5$Մ_^yE_-Fqmy%Y}A <<֙$YR kd hybqH3 ]ևp =6}UrlDyeTNd ^gX'_Βbq%wv~`z@3cpwNA޹KUYKo"C9wࣴh;'Ť'T5qkesq"Z^yCS=-?˃v tKO&0nyV7J7X{7g?y6 yҰO|)}„ 1Oؠ0$XA"vupt~~'Àyt?w0l9sV{?$~xWaPF_ yR`iQW/(Q5R 9=G ra`nnsj+Plkev03)wN{ݳmDhy#pQLWM[yPka S4Gı2UUO>LZ"eJpT*I 2M,!J3U%sUknj72=>9μLדlw~s*Ә,R! c:tt/vpټ$,V ^n{95؋D]}nН̿z|ڙ#pao[(DI%?~ɒ"Pscd8VHO/q zkepZJ ?]4ĪIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-cleanup.png0000644000000000000000000000347011141035702023101 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭzIDATHŕYT6pJ®1XATťQ#Z#iغFjB܂II5E'Q"0000}9!o=ӽFxfR^6jO&s|{5 ˒da[z EI5La۞ ;TKUVʨ,Pr?i m *25 ||tY8&Fs^*M,~acu;+|^yW8?\rVSYPa_n 1:X%tot@&6|*(|T/d[^j:2^P$;ިk$deT寉>ֻz`B==h NUѽKAHHhA]2hr-x1$9^c^gR"_ !uL{(ʼ~zs-L% 8ob{pw,;]=J̹9b׵LQ!لS`]@sE}UYe^ bO5OK~A ۑPw:KX' 628<;_6ߎv{G^խ#9SbO J"^3{eOn}!h-=MhV>Pb _uI@:/N/پ1OE .uzV)bRWiQ-?ީ!a~[i߬ku}`fiEpӊndiڛtD5 f@ '\3(jr1@ Y-ӝnm>@TIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-download.png0000644000000000000000000000345711141035702023266 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭqIDATHŕYTT{, #hP@4((AIkja1r)4TY9.wj@ުy|h;4Aj*4ڣY:߇yŕ w>>^T],mI9$Q<+-??aRFnQh\rndTU^5i[Dj9'm꾼4kՒO%OrTCjPԌ ܯ'+;^yK5WTeoazj{n{AO9gjY ?ub7\g6 ~i|:>/8׻n>|0:6lWH Xw4-mȡ'Ma-xW|u\}NHZbRr!ꡚ|Sz%::oϠ]*4fnM!W_ƹc`5W_'hա%G/Ȟut;s>-rZr9N̶q;ҵWT( Hq0H_7oGD,8m>^~ < Q c ˿)zM` rmlVu/`pqD;7:/;lǟln;K|6DҳP!Y<-66C-ECNӨs]ОgOh ֹٍ k뺍Z^a{ܷ~'TcL`US9 ao}WNFv_BkB4qM,ݞS[AQ𢠼H#v+6hUAʼn? wjc_D7lp,JL6N8]8o*I:]ϚfPw;_O+ 䩰xP^jp3Kvh))u .;(CaK`]e9tLYu7sHmk6%%eRO@1Lnn[o^~^Y뇝yS. KbɲPi?WwRQ˔{G%-[79nXǥc?zu=%prǮ+)kW #5թo ETw]wZy%xWIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-resolve.png0000644000000000000000000000356211141040213023124 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭIDATHkT 0w Mi!hk0)vO=-u>*Bs>SA6CcdA~|Q[WV_<8 3yYהWr%QIK:uEV#̙3u.aP'p`lTv}9 mkgaVc>aK>Q!Ei .O~Y^i9U.{ 0^gc>`˒m;\8\$T(&AS䘂4 @AہWquZ=Y: =kW;#(LY=7+h`zjm2Ow#'Odz;'`]`']x]N]~-*{:I#`vGPfr[p}W -uԶdNn\D),i )%Tm^Ms drşf<=Go;;9I3  )ԥ&4.O ^ |S)3.b6R7 ~\cOjw3c{CDwO:r^#ry60WC4vkD>âkN=\]\lT wil:w&NMQ[j`ʖnV7ϫ1up! #: xJDtQ1g~@0S|972|`hڤ<@8 V > T웢WG޳e ];MS|x {P(;<ղALhy2)ZĒߧ=:kr"#4E9N=Il<k)״߯W"b̙t mٯ6~R\kkm/& =ѽ_浥?76N]ܶlRFE~w=*Žz A="rEPALT6G{#cl~IE*OiOFD& "?q_a4߸~p̮BQqd969`0|=t6!:o1Hþ*ZԾ^Y]cB_ pBm?@{Y l:0:ZBym/<)jKAT6Xvغίjs6#X87A hγB0T< ;<"6!`3TYA:x o %B1y5=War~baKym×ҷ 'U LYl~x.n?C) 㶄p@m]~(1R|>=jUj:D ;\NzѠU=~,w"SK sE#?x܂x"L=60RB8 JJyZX ij5*IX4%֐%}_`ƋakPah|XO R0V\B4_"X̽7Q/#2`p݀cFCӈp:;<((by@1D,pCxiB 1 ab G/!vW,m-A:)K.4tNUw疻9K+0EUݮ$QŽ?ulkm=\]ߵI_M1}Ӄ,yP֞l3.26*;o5³_SmxPs5Q!4m(&괏][푏Zv/D L?S3hm2߁Ts5{"|1 \5ARh;juyv8̛` sG{3B#)O8Og΋_9-%U7޹[:; O'zӛf+)~ Pr`i |rRc5':\.+_.6 F0[J6=v)ΛM/GZ/[L}{6H˥Fj߻?d,ﵵIENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-upgrade.png0000644000000000000000000000360111141035702023075 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭIDATHŕ[PSsNnB@@`HD(FuexAU3:;mTVK*lGQ@%B'pB9mg{3/!MN@ $~!r\*f%SIf-){xQ\7!QJÝq$ 4*/ir, 5l-,Jz3|H쉪?h?5uqtZv)tP5`:Fq p&6/=Z W.^ʜ *FSJ%G~B{Ywl$97 0`] Qiw)Nx7^=}:d&QLdNfcKN#ރ~ywsZE>Rp|V#k p:%맀%۲rv s`wfE0|oa}~! 'ѫy9wX500; g+-,orN5ѫl>TpN6uE07I ,LqΏE뀖9^ 겁1Us(0]}y 0?~arÂaGvIkT{9c(U*]PLܠR]o)j|^-~ztm:~ HС,wm ;-SeECX8Yl;ڃne/]v p,ŀikThуT]]Wˣ&Qe&{wXuIڗa :Znѵ⸾q Wt^WH\2K@^rtm}|fxWj-O_h;FψBaarXdixMM=zKFZF8% %8-|G[hz>.w6{~O8'oϘ1ZCr<)›ґ@+؄V+ | [?ܚzԈӖ{q_[V\ttIPʧOY&5$LxP/6LO7o1k0?S]GC:zQ҄= t?RMjɬ;ft&*QU2ӤȜ XbJgQk_/v gv]zf{L>qIC´Si7&B\eNDf,')cŰ7TvЊ.];4?h:j[bĉ0Aiù9WFD w:k7q_VMd7F"T!qlO&l‰>E/'u&xe꼙 xVs ("] W9KRXSL헆-Mbu봗٨E[w\L'&9ƞ'Q6F[(&өߚ;^IENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-wait.png0000644000000000000000000000347511141035702022423 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭIDATHŕ[P߷,ʂDTTQ'*((J4iKEtbmbL hR[51\$TaYKM_ۧvΜs!"W);UK{ Hr|2'1\ۙ ”`cRfQh%鴴ه9$%2|5"/OQZ´ȫKu$Qcf%`;"*%O^!fWLRZ70sS{ˆ߿Mşs:ʯ|],3S0|PèGs? *7 nDCO7U->'Dkv:m)jvU8d9y&Udީ[@sfC2NS(mZ㔡}*G^IQ~|{rW1e۱ $kڽDk^tR7mž[W@FhNe3dM@w5749[k{M7ֿ4&yOI]i;]Wm}Gq1X zb*gr0AO e u m'gHhRޘBz*zbLoKSwj4V>検-:b&pX%r_A%e$0Gs8ZQX"Q8(UT*6ڥdO=1O[t$UKLFITU6)Ð:_(CC@l TPj>DU\+Uhb M矪/M?|n%.I_Lvym8һÃ2K6C2-hxq.0>N,SO.J\ih xԌV /-M[/4;[~_'Jr|9ptZ)AO hu@@ozq.䒔]9ˣc8Olp}9س&y,D)ѯ5mP鮩\lWCHj]>%eNɬ q\dtKgi@ڻbA^*_?e_f@op_\w؞O ' 5.oe+_v%Q+BTk-`,7`;&07&~=jH`P(J*hUo)`{x ]7LraZ^ZMoW H5~i[=\N ^)-瞈UCTEOZ9ߔ;L5N󕋎g|jϷ_G+Km-Vמu>4&KMj5??gWMli9#;][-bk΀M>qA!Qs5\vA}u7_ul6]1|*]c],<};}FM{`Զw{fʌ(06"׃eݏ?0lD_,|##1j#[5[DG润֭US?3Θ:sFCtccuט~Xm(2ݰD+Q#V7ZVQo&3>*&^?E[IENDB`aptdaemon-1.1.1+bzr982/data/icons/16x16/status/aptdaemon-working.png0000644000000000000000000000351211311115757023137 0ustar 00000000000000PNG  IHDROc#"gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAg\ƭIDATHŕiTT޼a`@mEp5Gcx0%wQƽ=5 &Z ڴQۈ ,bY>(3OWsϹk2-YP:`vX#ƉWHf;W}T]BgŊ4 YT`}-_|"p,>SNW=rwT-<纚QVAj 4Jz#EeeMN?3[\v/E6@_vY(p(&x{dΪ-,3|^wiA&n hҥF6Ȼ /YF.1pAl=(3k,{yCwՂmWQ nb…Ti-}|Vgi3|2Ǜ%Xf8/뭊eCzpNmj|P_nY*@?/pF< TI|9[4tԋo;G"bǍ~p#9"BCIa5`P2P#&C"g_1@)T^_T;rۧ~|xҷn-&0I?yϱ= AÙk4m UF>28sw˩u$Z ԍ5P${ͮ۠ v5:K]n+Wv-R _N\o--'ڊl~k.M򸯥e '~YЁpdyaZG:g/ܛà=-?IGn.x}?`k~u(q]KwΩ[f[ jIOPTt|h >89>u?^1 KS-5+R\LV0&φ^hhiNџ.^|PU!dXgYuazߋid/"3k55| uhH!;t|3hCK4Ŵy?];Jf?Vqa_?e^QrbtwN_0mж @O/`}SrvJ%f@>m'npƛ@(5=:𴧻8%RhUqYM~N}*H<}sB[ xbk2 = s2 - Q7ArZBW _cNy&^wpkfP" 7oq>ߝye3TmZn)T*V}TD,قM)Pe{֮4٠ y漛 6owjHF[Z;q$ޭ.t\2&֤|bdcQM@!oFthޒ,s xZz0 M6Gv)MX'p7^ϼyKf׻eeڳˏS<=g {_^^Ʌc̆y|I^^2E7.:g<I5374nl(yv>^.)0,04pW]vÞlUR[*XJ܄Ra8@}irIENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/0000755000000000000000000000000011141032573017606 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/22x22/status/0000755000000000000000000000000011141032573016767 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/aptdaemon-action-cleaning-up.png0000644000000000000000000000607311141035702025742 0ustar 00000000000000PNG  IHDR)StEXtSoftwareAdobe ImageReadyqe< IDATx lTUƿ;Wi;m훾- .DѠdE YM&5D]v"VmdUP|uq }Lyytw;-e:\:={7{Ι2@e̗+SD;yPlN͒Hos`a&p`1|OJ"$a}F =$ho;t6-,!5l OXt&M:o #yDe91)nc\V|G(RSAĹ VlD7%3|KQVR>{u`41s~w1-/⋃0n0;޸|o>ƜGv,?Բ:&k1޾hXs K+8ƪv6m :δQ̆)c>#l&nKVRH|qCzX2=Qn+U= \t7TFbtp;F*x>D[PV||ڬ\rP!76Dd Ǽ-s~8 H]M0Ә80ZC dIsk/n:. |,MVV-nЀߟL)˲XZQ 6Ni<ŝL/Ms`h_j$"ຘq)\H\Ο L چ^_Õ-+`ĊT DbUu=HѻP…zXqՁ{d%kr%$ewA*B?u|p%} 冖i4ʇ1M6&.7Ti(Y MNڠ»|~Rg\sA xI AKֆV,"9^wpfG,Hޏy3B&\^:Tp+ē3A.#V}o#*]y' 0flX~ªh-kJA΢hdA(3<totOW˗{ ]@K4ªT3សVӐ Zⵕkk1{^ߜqA"lxE*vʒk*>Q9\8UH208On]\pwݫ_T% `Y!96 sO M;N:4wE1')Xtz(4jHNOWɞuι|or)Ti{ lПb0.g5B\Mr"'tv_\r9= K-Yf+(Z?lnt:"%J Eu]@& jMգ%UPK+Z 3%1Wܯh#S69w~ g$ ]}:4 K?\tշH\R;H=MWIh4f.v !Hn4G+9Z$՜jO=^PO7#l A$NCN4טtn0XK+B^4`an#aIRIEkhHă!$k7)qK}h4f;́Bsi4h軉jO=^PO7#l0e4:BLw[|p|c '1npss-0}H}Ñ\ i"vVcvԾ9TS`t[+:~g|߾Th4f;́Bsi4X>cB[ zDlNLYSCL&^Y=8'16 wnȥ{SR LR^o]55ljPc/mRwrIbm&s_F/5txq4޸tD zH=D ߳Y7EL|4m2gTӷ?#55F!U_fi J4:_%Ilb}pIENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/aptdaemon-action-downloading.png0000644000000000000000000000515311141035702026043 0ustar 00000000000000PNG  IHDR`tEXtSoftwareAdobe ImageReadyqe< IDATx TT# "`+jԨuZ)ndrhr,'!1MmӴi490"EqXGgY^} 0[8Cc;ӛ}SZ!pH'h73hv4%~440 }3 aPv(tjݽ2$N~)gB kJ s/XjCYG?khpN܄>$*}A^jU4JʒIJ%`!ی?;>\ #f:Zpk9̵d4g #g=/uU?BצU@,Cu'P4 0syK?{bj09 {RmZ;t:õqp-Vne` GR{-TO=r ј㮾 "w|Ejq3pJe`|]~kddTPyl;&{bnKfs"lm!t\KB}+{#?LJz2t0dor՗rs+[a7& L}op>$-AUK)݃QB,hv,2/"+W۶GuK@ՂZ__+] r,Fi]t4k4U} hKإÂʼn@mc9v9s|]~`<#C1SeWi?sX_>5if{Z=tFwÜyҶlD,rb,?F'? ɜ2.x ΟVHۊ渴zb 1P6 H3T!18Qb 0B_G >zLT|2P]Szj6|XAF!&& h"q4b*@. iA,%++."uk_qEfQ$%&!S}wQq*0ϥ1QPo'd*_W؞c4|H 2-|2,3l")rMmrH*NW*&^nH$$t; ;̥mN$$W˂H5s'A(rsKȩ$S6:,J_{ SbP^ XK;4j.40^Rd(rr׉KB/qA&Kcv4t{"8~e5v&9Npi,"캲ύqI=G#46 |]~8-q B|dY`]t C&y?Jd Q MhIGYu7_^dGY-흒=|Ɠ ̃ _@M&(&ޭa,v|dfG⋫Y2s[k>ĩP>ħ=R1i7:Wcy FDTh((Jʖg=F6V +nܸqp[MlnnAdB:(-cJSIEhډvtvɰ5:5Օ9(hPiڡ_Gi= w+pH!qPPb99s=&'-N ڑ7kɈ;-q^~7p%%%'nZ#s}qŐ߲rqݐhXe+-6{+}^?In6eFXzpmEј/]|;NHrOfnrӱyhȲڻ kq.KYyŨDDd7/\iƝi5]s=O~3~a q8L>`:hcW]hxfƀ$2tn*L>[N$086#oW^-}0tr!ar{#E|&*'8ɓ6ܓy/"`ᶵXg@hxlFݗKP [V-v i߹IoW Ur5\af u]V,p7'm:P0u lP݁5-hٯ\ri6,DR> @WW/d1fIOvO?4iWwv68~ysBv* p"p" Lʓ1c"uD5m,po5 \7''7oƦ{߅N3n[0a)a⩥ki Xsx;ȏ>¤фW9O[mǢ _5w#LXJQ0i ac/"1! d$hPaۙ?\HEFACS=s Ӣr3z{{~Hٿ0LF_ٗ 4 IJŏwna#dA+̼qmTgS݈4-NJ9ā]N?_L" Vs@\'qطHOCˉw UAE/'X}=zf+xtG?ԧǬ +۸n7'O'G a)^-޹X̱3Ev9?w$5Cu=p%JXAtww{T*\r;vU5E&+p/7fc3!jX:ɡL*!@ $bRJF2<;WC 8r8LFECG܃f&pr_XH̾'&Ed29a$#NƄr}a$W \_.p)).ӹxkš [p$E&pOrjπgIENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/aptdaemon-action-removing.png0000644000000000000000000000571111141035702025364 0ustar 00000000000000PNG  IHDR)StEXtSoftwareAdobe ImageReadyqe< kIDATx pT{ݼ_FtlAvXej-taTGi+hڂUETނf_s&!!*$Kqܓ9s=g}{ *rqy.dX'NMK!o.r Z/y!#WP 6 "]Fʾ)-45Ld>*xKQ6.?{4`lD~iGQ8y7E}rhCd_.4ŐVV2m܃7ЈMȫd`s( bFA8s>~zd(~QS1 %hك"]؃W?~cǎѼESjy?Gy{Qnp :'O0 ,K WdBS$hɃEmlE[z+c2ge4ЃvTLL۩PX9Qxp8 *ڻ0و㮮,f);밳y=fWwNw0xn ?pUUܹbgqj7V~zX69[avX<0&,bciOU1s-Evl 6 /[R˗6WnNgRO tAɟd .7Fx:fЙf\f'gdE2142r]0A>fC"F Ѕf!F]wx[QcN" ۅ%׼vcb[Z%['#GA(W($ W(&fCs0|__S3+!`Go%1g}9냇+AKt3*M(Mע ^m3cHӔfȤHXQVQodE"U&k d +茖̻ ۏ"ʢHկ|t .Zn5pX<01x% .mE'ۇ5o*L*epK[R*2fJ$2rf APl2zƊ*3L DQ2HSܥ5{ўg+cuZǜ=ݍz i;ևG<ަfR|J*M;lX[VVbvbB/qgzMq x7^97z؋<f8aqRq(eDuГA 2 [ INj]~:w.òꃫ B,܂LO]XJU'X4+ꊢTOԕ6}'ieoPu^~d8;硅DV)0Y9x1?|E.}%&D[7U6R$o=ZQWAr٧W?|{mEݨ !D{A#cGwI9x 828oA5$RTض<}Yܧ`໵n3b=\ۡp`2\e9tYA~>śI;~e%xFdIХ?O>4k֫ɖ=ZݠPvrM -1;1:D 0^k;JD6a$Pp-'nOxnw 7eP2z7)ok!w \ـEZb)@" 9ց^9kӁ2Mw`T#3WB'=]8z$E$OoۆQ[A~dPY>fcrXEQ>}J 1w/%1;H$U0Htg D9ՍY~qܝw:[oyvy>>y@oo^;Lā#͈:M Ti@M1>'n*ʢ`DA% vW$2á_6a%^M>dG,8s^J N6j.~3~`Y;ӧr\D?5,fi~:jaL_}ohY[5 fp eUSg\vO$7Y$5$e;_uҠ-]kp Pk43 fas )f?Ь[z8\kpcǍ%IBxơĘ,E,tBw.t:1Mo.m {yP:I+e`CB7X:hȁ(P~ -{&{FO?-+2;`ha?mD]%r5!Oa0VF(#!ZZ0$y)#PnGԭ[np!: 8T \*N"SG`HUtd1Pǣ=^|cm0HGvZϠ`K&^B/_QK@b0"\ƢYJeN*fz\IΗ/CșV#$6\"T ,yN-qpGg7QpDht~2(%4.|Uq:RqiL-==>PWXx݂/懷˒53-f$hܖeU873C0'>bB.oe(LVegB~fD{,T[]`c8G ^Vӂ%CxEIsWܲf|mG49Prm얞.DơPh' jEb`.]΅jן~Va8rV, BbW5pˆ&o~_݅~+sW/>+_)iTD{t$drm)n*` Ύ! T,\v`X[NtļT)IQxY/Ǒ6k^jԊe\~PJy]UQסD0:X{j iB8 jJ*.AVXZ%oFL+*:^Eg,貅25!Q2tvrB'4dxOC8چ*ڢBޢXlɍB>ٳoN Vaj6khrghWfEB\יhcMrhrj5ݎHW(mEJRZ)GztV61GU`^$ ,\G  "PmVj5)uo3% ×%\Uy[?/ܖE;o3q;_Nǡ>dav"Ͱ`loǗ]DMHa463˶l~ U!9JiU)$b ³1uO'ddn\@ΚG`<ۙ˝>#w L݆:tVmt#Y!8SrYyzt٣O  F#z;`܂2D"$b>7w2>dzN6")8x\al*ɽ$V}!uRi6Y/Kl()(1}f\'T= wq_K FM}|4~0!BFX r<ע&3xe u!hώN&6JAH SyBc! סƆ( -?Αٲ%+)!BDv|v 1`b}/^{i2u0c7g/}'_vr<75 2MuD)3a76p{ idj2 C݌3".o46Wpkei0`V΄]# '#79GCIw/yt:5@,%||Ǐ,Y)Ic(J Fi]77 R2^dܴrՊ`OnLJ\)P6ZW6|3F۩LגX00TzigP聊f7໯BN[`|+ ` Y[raAٍ0"W|Ų\W3oOB.j%[7'M&ӎ{=|{`|2>>A_kmij=c:A6Fc2s(E掏 ulEwK[Lݯ]> Zi|汿RN;8yӤh仹<0L~B¬LzlV{&? Î+oӺg?V9歹KCNЕ~KHnqq.OL<\d#EPfjJ]FFzyz꼩asd>B7aOwg`IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/aptdaemon-action-updating-cache.png0000644000000000000000000000453411141035702026414 0ustar 00000000000000PNG  IHDR`sRGBbKGD pHYs  tIME2ObIDAThmpTu_l6@I @1a*:S`hgNv:;ium Apl vfS[d$im5$Ifw;s!/&)`6:mg3=w%r-僅G^L& lFgׁ\פM1zO-(6.sm=sj z35VeN|+U O % %zy+P;s\^10Gzӎѣhzg#jwv#p͚X|5gޣscܞxֽ |La zm3ʥT]B ?z}sFhݤݦ۔-X1>#5-̻֏^]Œ4x!些4'UnbWT lœ|bJo~p qtW6wVY2!Y;4-@bb!ct7*ku +߬;뱰A'%{|f8dB^MUn/z7c4Up+p*9z12d>Z\f*_Od9rR"4 ^`+xpmZd7}Gf'^eRE ljn_>?جjQzGeWJ'=0^ZJ[ |kޢe U⑔FERK/-94~Jth3uur`ޢ<0Ӌd+% X4MRd-*; 8V_~ڭz|-"Z}-śxL㚪k!L0t`EȓU~ QMk/ ?ܢ/!iì`ZDL"+o4-#H'ek̆j"2^w7ȵvǁOw7iwU&d׼C;;V:TګH|QγtXXFww˘Ue-/X<~؊!O/巽RdդI6s +vrL=-Én]tH'$>^R_Ȓ;_$ޱvr̢UΑR!j|E,IzM t77YYqU$$ I,ENrp{{VUsu7iyN E_C1W}*9wbmMZ&t!SЖl$riK 8dpt!H ]~ G~vGWGٰInb#I2B;O_P43*е?(S=^A"|VJ._i"Ob vt@Wi"*-Gw.!|e Óປ]t~ՉXsMkǘ}y & |J⪺!) Pq: a1DHx4O}oψ Hlk\8)a`SHUͧW`FvPJb u.fYCBI$2oCAʋW =ц;OJ&sFD"~?}=כy W~6[YDn1.5+T~v9x`h9h; g]Hp`J $i :h n\m&/y_Dih"L8|o7GG[Swیƭ#GH(Ȫ DJ&JD "((iz?%+n?Zx\}71E z jt.R1L#J\f9nm 1#S`)04b6]v1Mk&u-lk-g^3G,d"]i3,r7܉hf&SMr7kܩ/2{"q,#cM3v%6s7+\unpet˧9n6 eu9s 5@fNi3渟W d @w,DDi*GҔ Y ¨g=gT(G~LkVf{D  }H1 D5x5>z(/IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/animations/aptdaemon-action-waiting.png0000644000000000000000000000455311141035702025203 0ustar 00000000000000PNG  IHDR)StEXtSoftwareAdobe ImageReadyqe< IDATxkly˻aͣ&uG\J *QS%*M m$O[ZEH"DTIV-MiQ+.A^yܻ^wݙAjtwssF2g&/p~⋟ppjK֒^֏s}pE胿9moC&=5a(<8 Ew4\{tԁ8^i9 "Q`G%䭏KAnןl\s\L\vQ>~%8up7\HEoVBQ,aXBo_Bg/5mdpl]>\+&7/= i@Є )KІT3кeƪ@Ōs}+Ћmٗn^cE5XgGsC/G5 ѷ`>e+\h@삹COV,\s "3]tD$KXم+fWM .A1z~ =]VlKr"q9 _>Bx6f]sx? t5 n{;\taᚺ: u76^جNM%+x%c{sQGg=j{W$~ǾMB&)X7?vRZӳ,ȅ:1)F/"w+^˥٦^U<8_a%9贒`9@3Yu3Aw̉;)Wr8, n@˩㮸J0 -.<N0sp ƾ3 }y5WT@E!ˁPQb[r"JT=["ef@D.=+/Lbpyn t '} MND"N}&+M^׫xp˜cKTzEygp#u:80qƴǍU' ʉ@QW#.p%lrp҆J( 'F*M\? ɣ:f(p^Z+@p8fo&TM;Q[qG׍^׳xpBBliLŝ/NVHN0 !e40kK<=Yَ =]֟@p8lRqe=c:vrm:.'+M"1XE>S~vh+TѸEKxzB[% 6P}}}Ū>ne;Ξu̝lWətMb+zNWKCxQ_Ңs{G֭П%~gx"=qlo-;Aט34hhͿ}ܺ%WWjVU7xf][OIe{}v!smk74,꣮w߽4HZT):xrۖtTrcnWN#ۚaltG_eԾ8z_I %n⁶PPU5 xRx<+TQɸ-eϯeuH&lFnp{ӶŋoaTj5r3MZ1Y3r+[ifƠ!t{x "0ғGv:,J"Eץy &] Ɲ <Nڦ]<YRɄw*~SBĠp 7 ?kv"ޅ 0:| ^odD D<:~g^ .oEİd&2mxo_\н];Y 3mTcwۤ*2pш-36@X&лhǺH 5mWЙ6Ʉ72R:vw\*BuG 1zvA (z3*tXȔ%q\s@ 8 9Zq<"``yBƠ p5vxI]ORKoWp_u1 cW 8yob 2pckwq2>kѝi/ .ؑC$g;ٮ2X ,V@֣{^#Z P(GϿ|/9=Q*NA2IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/status/aptdaemon-cleanup.png0000644000000000000000000000216311141035702023071 0ustar 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME mPSZIDAT8[lEnnK]HZDB)Qb rh"cpVBU EQD($ƚ$ 6`z==/r0&^xLfd̗}nV4K֒z/C/MU @hA2#37=-Z'i8nTY=Y ] \>oǑ]tIBc:#6k@Z ?3ǘtP700tH&(V,% (K|囶~Ķe|kO3B3ia/lC7dy ʊ O+SV|—JLDQVe=Be>Nl_t;PVVq  LY7:fdYITlw P9ՌnȢr93Nv\kֆRk^@^9@S`mumzQ+)+_[w}N&@z:JL|^^S/EvS-kf3pF!uPx^y\oD9]󟂯ɱ0+| _݇@G/Xwb>Vkyr8x9x!%Lנi#@6؝)WLa3 2p؍( TËW,(M=,ZDOO)YY]Kc*o+ŋ=WYY`w6!R6{)&!Pq)]]'$7_.IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/status/aptdaemon-delete.png0000644000000000000000000000174511141035702022711 0ustar 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME 8 eIDAT8KhUf&Ɍmb3 #H}4lVPp 5P[-j E`5*NfMHcL2NfE1dw8{{\_"V:]mV`_;z2M}Rf0X,k9 @XNj`ݗJΓ _Aqmc jqlAj#}xL||%fOtx668\cm |BBާ|HffF}$|g2>8=7޹%h,w>ҹAJv :OgOQF3|v :pt]7^uq#:pw8=Xm[evVG[ft VD|{@<# 5L8&m4k]VoԼQ0w=O+ņHc63)(iҠ5AJ)1=^XMɿ_e[sy6, Ǿi29H{5U/zN ̹A笘u T━P$eCeZaabR?ձV<*\w#xkU(t3@@GIJ0F/,p_!ىO $Z5>~Bj.hh B 5Rj7oG)RMőz:K:r|.x>gD :IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/status/aptdaemon-download.png0000644000000000000000000000211211141035702023243 0ustar 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME ,vIDAT8[LErh&"B=D1iHL!(7蕩!B腩)JRMl)&LnZ@BKZah/8SL4^L&7Of_s'%2uv *^ Mwp<e'PFEQ'aǙ0  >Wr颹v:;zz;v(l,eʞmf:eV?WC].Y@O ԔfE\VCw=|u  w[Jޕ'eB)4R@ץm=|JT}G+h>5U2`5X*txIP!@G, W&ʹhv[k\-zf) DbClއR 3Էu2.^?^?W.rQ 6sy KQZ͔c:5N@)SD)PL;q{}>vnȧJ+?3%p Lpje>Cx,ĕ! ( pqy}>|)iFzHrQq5өqoi,kvi*]hڅܟ[-5VN D3Nþ8p4v1q`UŇ/ؘS )ٔZL{'IƘ p@w)NXj:1IQ^ɹ|Š,*80zK@a~T6E-RyS1eˡ?yɯSC랰 5>)T%o`^[W287IENDB`aptdaemon-1.1.1+bzr982/data/icons/22x22/status/aptdaemon-resolve.png0000644000000000000000000000233611141040213023114 0ustar 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME _^IDAT8ilUmo3t$)K %` [@Rd)41!D&F!n"(QPK$A (-P,B;ӝ>Zи$9ynr{G_P TGVtzu' tEsU @(a@#5uiI4Me|T\pHd,@B e"|p1y3;@wm'! BZ\@@E˂DVE !wT:Ùr{T8tYQy- zI)LLàdY:łAV0 :%$aֽ\8e^J+w!+dѦ=8v DZTcE<ߓµ #YrPevj~SxQÙQc4n؅ql,q,3pGMk3&GȌt_òNB絷Jԋ^k'{l>uCɌ$PB>IM$C%$>c";ih$`rhʥrDd%ǻlY S BZ.ZI{|T@t6.o`ܨ⾓no4|O.|i?Dkg#hK#SWSܾӿ1Osם_ZZ^xj蝹Kk%ptS},Afܠwx<>x0GbY/4h-#(4֟ B 4`sPb(mDۯrF4HN ]y9LSK+~~. s4?pm `E5g|mG0]é\V:n3̟I-˜EѶLܹ縘8ҵP>}/0q#vg3VVu(PJBŶ@X"ڞ+5U=c+\3^\?{''siv2|TU^~iDc RZXD0 ޱ\M6{M(bdVs""1B@kl#E|G`ĐHUS Ax̫8Nk`D,6lD.> h!(sx,FICE zpb]%ߟ2 ^Z +ݘc?<H1<ׂY3(Ho7~I0q+?c[@XB@p3whQBԑQQ>R.^#3N[y91~Rن>&^O@vnUs[OO9,0w aaOQOϓ&[ _KoGVF 8A:u&bp~~Q,t䢿ܺϛ.vwk`ڑbdavZa߯>${^ևKV# F8ܼҰ>w_BnJn݁Ր&Gu]#?[}'zum` Hלa/c>h[ O¬xr/pr؅6'㎾##JWCq5kN34Y*~k暴k5P8vgOMa!bQy30ϵ>\+HIlP=֔h D;PZ/>?EҒao`2 }#sOWϗ/gnmf\_s]'|n;MI<:͝R}m11W#WaB,7Dbۇّ̟ }7I |-{ZjƞUy<5ռpޚuCH/kվkװ~I_`}\#'+;WQV>MtFjU%iizQ\åCI&KePpg,+LSu\Cԇ7QJrÀQ/sP\?Ă[pMb!{m0ZVҍ(P( vv(#|T()GBx^B.J^Z .A ~d[nˉ[6m'䅭\CG8EĒX%F.) ~C xdڏV` h:T>Rל*˜૕h9݇qωT>pȔ炢J\tDž„ :~VnZk*tĄD~7p SG;91ZpŜQ%pҠ\U(^ZLBx(\‚Kh {C>|U""\Dk}ߑ$=/-qX'z再>PUlCKt.R`BQCg $nC,Pcѳ|T:F( qd$_ytyv+E@5Tu:ĈFqCͽhlm@/*P& дSe#ϵ>sxee1XhL46#5| zD DV/,' u-ef`v^jߩ4L^ {ȝm0v{; -])3o)bc7a$?@P~Ɇ1_ ';ћd=(3avbf5k8r@0 A;k~Zz6?'k}W[!>KX;Hc+dg{> @<$ )`$d]y2 j>7r%'"##}@Iri9INx覸˿Mc0*+ΡfקhD4IyXV}9x.~o(s WoZLn*|$D8.$gˡnRA3$hg˧8%#8OI9sXAb v(~7t>P]~  &I0h@B*Y¥ \ByHYWh~OG#F͝jI(6QR FwpCK\ [Pl a'd4 i@ԊN϶/'rsgG9\3''tBbbc5LcPoG+zHF?}9VJ8:XsfAuf6 |8=h0@f]煮J @o)9^CzFFln4n4lV|+'4 FcҘiTPcJQg;!ziP4:Nw xzu^bM*>x̴Ҷw rgBZ.tlFf>SߩsT@c1h4V3jk=H=^QϨwCeӈ⇢oGjRѭcgQ~=4'M3)ޭKbDOH r@Щ4<y!BdqZ,xʎBdP:p/k7^ѥrxgo:=>b4$/"16g6Y,3yla8^4pג  ,y>/K'k{\^FS48I/IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/animations/aptdaemon-action-downloading.png0000644000000000000000000000522511141035702026047 0ustar 00000000000000PNG  IHDREtEXtSoftwareAdobe ImageReadyqe< 7IDATx TT# "`+jV"QT9j49&I4i4=& jHED DqA[E@ffy (,17o}-pQ5KÝSq:yJ^+R5쿼 ^÷[])CsM;@1 ֪~ ˑ0- 6`l[%L6CMI\Wa y#D0'vP PG =|쿳JM Rd 9K&&1d"3nb`{a9a Y7Y@v-dP|p׃b5~פU@R!o7< H "/$/JԫE@YEiߵ䗰o;on7w**M{,=p:N7eײH"pV#i2BetujvJLK?NWbދ\;7m=X˷$|sl+?Gy7@r&M~AY9od_j&Gk  ' G#|!cp[;K>`hzpSp Eqy ;[Gď\{yk9"TI tbQVؚ6lD7脴oN [go@5Ҽ-/+3 Ӣ<_u199@s"ڤ~_$&8vf㖢:VN@@( p6b֨ t^ w%PKY~;g-Jn} t- +=` RQ}r~{ )&Fm*ڍ _8<jm ЊwgO}k2xM F4 d-UI>ks)GS2w p,cM [8H(LE<;dRGOnاQRm­uom кXܢJ;{#&YUnA'bf$A$㉦nӭ;gtd-Ą9DM &I!3)Q}<i|z0) tKӍ98}K@+FVmŁZS~.4^c{H: c`%[[i%Vowϥ#h'Yo>@U C#-:qVcG?eSV"0}'A˨ r3 A p8V"|gL?L{ȁ9GR&N2WlRCq*(#`uBOtzI} g4hRʠ49>i:(*(Ir$&߄ϠKЗAJf!svD5voOߧ` Z7q1HZpCD+q0' 5 Ur[ȀnONxDOę{Id8JƲso wߞat=::jKpZ@ۀs1=:5;*ՆXb )O9aKv3׬{fU % 8;ҵ 1&J{nsLUַKߡfOuڡ% @MwH~l]+{;goO:yGDcXҦsbQw-S?bahGv\ƧmXL8~/_ :.x)ΞFHUMi %Pu` E<13>cEF AA^!؀v3'~;>LTY}T]Sv"U` - M' P Ig@&`) ||l2dk?F{I"0%ឣ;Ҩ8D GdOm6yssGAa.Y`slPw5_X$ۖI>Hj)o$M\mrHW.WU`c P#B2 zh.D#Jn74z "i !|ږDNE$YFw(#q>Ћ^ LK ]5%Ƹ_SR?gH3ނO~ ` P/D'|jIue%VIm"}=1X3wC @b5df(!L9/h!B$os[-ʃ!qsjрtV9[Ag`72jHovw-?~X;Q[1H%do.Z!m Ϯ @M,vmǚ2kFj0>=B;wkdE|:Oe-".Ƿ6~kL`t_ %O~NBot_Kdf?0#w;.osC͢a!s )Nyegc:EnIvGne_OEk4IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/animations/aptdaemon-action-installing.png0000644000000000000000000000566111141035702025712 0ustar 00000000000000PNG  IHDRBp}tEXtSoftwareAdobe ImageReadyqe< SIDATx tTw߯6͓< $ARyXIZsZ*R+V=hz(hU|բRMSA(P(#@$BM6;n޻͆d9g2ݙٹ|P4MCB$\8$KI̿F*\j |/SW7ܷ&?*&T{ɓg=HL{aF%Eׂϙp6*.AQR6ed:ϔcʻ |/㋮Rǚ3KebckK2AUlȃyL9]T]E=hi>s"LMljX4zC`SJ#n؋$S(`_ Xa Ppb=y=?fkCndlDENtbP#?#Bkw[]2GݍqboY|ʮwA"S=Y'Fڻ`bXmxoGdؐ3 v ;2A ]HrOd.r+c0R 9[ߒŵLR %RV춋bH""WW΢%lt_u};O|s~'W32,ak`ewhXp| ?TR& oL<]I$'gl(FZ˯?86kИ?ts.'b/_>˼< %/?o \h2'ʌbҜ>N;=&tʜ; aN''Qz IcRq.S@bbx@l¥Gf5h'V V|P^Ǽ< Dxzv\{$}#KC3'~|~gD*ߑw/'"!Ϻg'?XS{f`;-6ǻvΘKp0`vw1Nsc]s{=| QHq9y !nG`(;1cJ).!NUwcЩ'?>:Kx&/zc#s%1: `-'^$D'mv:^0|;/d~1&ێշ_Y0@ w~H?Lx&؆R@LѴ1ZhkkRoė^h]'55?r4|+近Hj^چ4E(:ͼ3h1XtolN?} t mC}Yt"|Ϙ/B+Pu#Zqv6,_SM?j 6xej| BO%6K0ڱiK Ϸфɋ`s6lkU?=X.i#"w#ac( (f^@VbD$O&#,42 zͽ7 $>]T)}vஃ/"kР)S3ډjx+[OӝÜE/0GDyNƏ<3w_¼0խ]@sS \xo)P(D{q-mQCX4ih$Q"pc 2Co(  BK~Ecry, UsCo%"dqQEVRamx$'S$MZcf0p9ZgM-˅6B@gegz0ADDDJBstKR 板z7X:mX)jOr,.ہyOc̍#R_A$I<2 t ʕ3'07Pofͱ >}z](-0;?g o _2䠔r\ȝ8GX'@IN/BlE܉_w?t/en{Ϯ G.O>TM@yQ5Z -`Hw}Ǐ_k/ѣ4+|C/Ph6ʎX*;G˪ :@O38|&L%@3NO9` dEF8W17g~m e ['> l2jKVnttC3ɋL=" EΑGy#KEp :Y݌lwgg/E CGm$k)Yl~N՘JĔC8f~|"qTm@qU߸}nfcF)A J!L@$Խ)LB iY]e;Ih6@dr'Y7w`vxrP2"(:SA;0˹ZJW #E\ ̴[g5߁(zfxvՠos} vcH" goh*0!WÂq/aNniS-˘-r>͚x̥0).X] R#H7mz2̄U"0UUgJ%u=)=ǿnaW-} ?ٍ:8InOsi#v asH x A ً֔X3hW `eܺah{fAjDcdfV9A~0 &IyʟE;j?@?[=2âwW-T!.F'p|$6+dEH U$:y~؞gN%v]Nl*<9z&b"2CuugZ# ?@a++x,~}þE!v|u6&ˋ(7^Az}xH`y.+|WXvRޘ&ed8 7㳦!n!I4mV( s@i)8ӓ‹5嚯=Xi /<#@?Z2q _m'nCmᵗWYUAZj{j5ooS0 7'O?r\Nc `dbĒØY ŐeA#xNGᰋ>|o߻ݡuBC3d“4;KLVw_}y Y9|? |}3Fey 3ϛ'8}áwEzq94To |;J6?&-︞[mVDv_5g7x)t4ǧ=n<| UgQLwqBTCg'o 0{$TktXޝPέ޿~>is0o 0)RbwWhCݕ 0 1d*8IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/animations/aptdaemon-action-resolving.png0000644000000000000000000000562011141040562025551 0ustar 00000000000000PNG  IHDRt tEXtSoftwareAdobe ImageReadyqe< 2IDATx TTuǿwoO"@L{`Gkc'Citڭn,YZfRoD$0 03 ̃ߑA m-s.{g|P. i:M6-Nh:MW8_~;de5|큯 ]1XL=,$( r`TY4CLy 䁯V {%|t.@ 9sDc`j:CK;y,9' Ȝ *#SR~a@lp)n⏨k8UAwpجCNҋ^Lftt0SAK17;l.LܻG* O"Nߣ0uހ 7Ѣj~{xL/,dҰL#>j98G:6mQc* F+Զ\uqx\ *778:f=s?C.,}Cь.~qD JU`[upqE A{`]SqowB' |u bCLϚvNN#N5cJM4iʚz۫^5ЙXM5%SWMF[` Z||F8"=Bdy .`,)D Qulٗ7~e};,Sbde3W*mnWuΣ`C!v章 A4ηpFs Ww@5 gmG_6#@g1\Nb%fMU׻;qUGvy5h4\ˈK?l* <W>dzT2.ljlVO5K ((!.ıhN$u #- v3{]>ԕl%CO^hv@dBD(c.(2L#-~X56c9͊EQ I4hGd4@zv~#y>X3K~c%`A8ytk5N(qTA')!O ˈs:.BSPǘ|;峎"#1+v`eoI*p&Ts Nj9#Ky!P6DUqښO>زXFv\iYoa "qm|.˽p }W~W.|7D:X#=qtͿ&!@"t\?VB԰sxghxs=Y/WW6R^w=1@`}>څ'å[pX*jvuM0u^ sO'.P[\Us3gpct專pYNz{`ҭEKc%| >BLmZrٌ'fmLjܝh:" t lɃ4(`mX P-CBp`[9Yn"Ѧ)(־nnӹ.6i9py|۱3Ь? f">,$ʡRPSSZf|ibuRx5Q,`J*<.~M./`\٨>[,sNx|Vw h3CDK,vQ^^1=y(: d,8\>#>}"碡 fS]#CU7(-/[EM(GT)Q h2LU2O:aqdڰ|0&^/?kTo^&d*pYP,Z:l ;+>Z[zB/LI*w/} ˂ !ПKuc. ޷v"1>N HKXbIl.$RHTo*,Hs9k,]f_Z#Ži`u Xm)¿aj:0{)l8h{Eq+V_jQ} |ݹ7̚!evx=nBpEUZ4l9YH"'IW^zK,GYYua!FϞ~厉?mNL4;M uGގ .Ũ99w{ێW&s|{Fx+b߼28F-"JWZ]S@ i8?޻wE9)ΥK aɧ~`xG;(@?2_j:w'a"*?~  vB5sRiIOwϧEE_ə7._Z|eL1r܅!ۈosN9(>yZj,6g3/ydëN禔kG{ۻ4sJ+޼&N4=޽O-$%%xju) _SqWS93\"CkzPPQ>NYY`E&z—G]5F I>8t&:W+V.%+}b* OɛWT* t{5t5 ؗԾiIENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/animations/aptdaemon-action-updating-cache.png0000644000000000000000000000477311141035702026425 0ustar 00000000000000PNG  IHDREsRGBbKGD pHYs  tIME  Î$ {IDATx{l[?Wı&!IIҦkSQ MV2ZaӺ!XCАi 110aCxh"Lll @[`tm %:#nvIܔdG:V|wא/3Z>eק?Rļ fy\o>;R(Oax, zبts*$eSŵ+i?-4IU'[sB:y*!jxȋDkr $Oitw, .'1 ͹k:[ͯ-V0C'.ק4 'Oq7y* ~߬f] ]% _\Yۚ#qwS8c?Iu=B^hOQRNlXCE kmd0y@gBc ֧H7b+__nKe;h?]`Y>ThH(Ѐ;)ieނ :dhSy6olӽBTsx:@lHfeoK[PaXJPD[Zb@5pj]mƔzC7kɸ~o"cY D ab&(FG%{'bj3ѻڟUZ0j#q,"wի#Zt` 7"|Bz\h^3Y O zނtDMJπ;J2"j:tBbw*%)``c)*K`45.Y9?DzfUS|@ u76l17kB/Ϋ分ɰROauVHۿ\dH \O{b"hoj~j-+I@N1>|g,Op|=UaVZUzh7 .k(vwid9Tdrר͔A0 $,-<< y@"C9:] " ( XK@Ob),㙻Sn%מ%uڽ#k֠k\t8x8hm=љ`5( 7v3ֿ|G5)5#"Q~~3צﳧ.6L Hm?x85OOUK8C0c]3O5Dt@UWQZ8Lo<Ў6vC{4`DUH$P蚏, ؝%]z+B"@0Kݞ1%SZde݊sW( oLf4ǃMqsJ9A U7E4f GCxloڞ?_%yuc}S'PS#Mv{\]L$08-d?#wRuAI1rb gqi2SbDV![7tYF8([t$<5wcQ(``0^>&RDoHz ߩ+k0nMLm=x(,.2o*~,x) i 64Eɕrxyk"0c_i3@ HARBH&K.i/1h$nI_geht$ۻg`)L@{8㍧qʑ-^zvZ !V#ϟ> ;vf #iim'`/qs?AmlKo+r+G_ٙ=LMк|U_@bkSesg-z2 @ICj9bѸs$ϟ=~4{TSq_n?}Y|y tm;MZh=m>8q<Ã4.ϟ}ꠠ3-:y~?g2 Zm8H%A} B}+2w$Kml"H*0pxBЇ.t \9{y_Ã~Gr,QapO/oxN",,ʣPqk=X D*GRC`nBh=猻oSe>YQß~>!p+= -RMK=n8i#>[WmU~(G&υO5E *T}Byy 8җ(*ۛZ |r/@@i|ИԢW ??r {s,n=QghPe[6RLW76gb?F1&&hh cG۞z"q WjD淪X|;1f|j4woJg,lE}/W>uZ+R:=Mly3)T|CNӹy5\e/ A~'fC OC>n?PE ٵzVh?9 6`]& _Kgxxhky],kο bUv-p`·+Z_ŋGmm!跠Ԁ]Rs!|A)(@9ww__'ˇ{ gE+MΔm'W2A$ Eť ]4j0tgΟ3LWLK/ཀ:7;6 N=Q_q(ls5ԍ. @MiqpJM?: Iȋc"/_ 9 G8 tYЁ$/ԁ<@F栃"L#S4 MWJx'Nu=/?袜Щb3vnqMRqR晎/ϋ8r%gImWzjJ!8XnUaˇG̥r qp) 8uWJ(s th!G8/4J)@6FEtM˟(h{[oµKA"]|k?ɢA8fbeӽ+b| W@oWBvw»; ܫz=cjdѧDٞlQPBu\kΔΎ!'o~2 :_1hrKAeaB/?AQ\2{~[+Vp!odjцY/ff S#XiЍF̞x?pvKvt//D%E=ToظRm;IUY\n5d=>/ e}ָ+WӚv?|jYY(c}KPyKy?vsso<^0{pwT-7dEROΕgzΟ l~IP~h3LE8F3vnl%&!o!(/SG#tJJ7tV~}}}ӟD-f6MƍEM5-]zc{=Qڜ;ɿz=F}`[o~`mEF05v#o\_ȡQ1"hjjL&]|o9ű=nk͢;ǻ|1qSYtӈۂqYty=Nw5.ߝJ$.3O쮿r8ٕ 0D EwaIENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-add.png0000644000000000000000000000254111141035702022176 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLIDATXVKh]f2Ҵ S[AjgA7bZ֖JATA*ƈ.|".D]hElkMRD)ZlS$)dؤ/g3s'w n+W*+y~:jy-<ԩ6ML xm?~,Q/!>8Zqps\V ((l'MM;vL$@*G].H$/I <l˖F#,TY,Kvvvn l7hzHR8<: ߹А?ҥ xU| MY۷ٿx&8|ziFK5ko W޵ Mx^srff~MK&BqI1M&`xݹbaqBBޮ.^r˖@$VTUUU?n_F|E]۽;KJ~ٳ}Z[͝t֭s7ovtdvςmkk;y`aOU_n ,o ˗SΤhTVd2q#)3PYyO޽g7oni@nw9aC&occ*&gDZZ}N~Lw:?pm{x:p9k"YY&c6pĉmۀDBK+Pթ!4wQV ל1h6/Z9.Ut@F _ SBUĒIebEAtcwV@&PRbD" nT%d^\_|ӧhZ2Sxie3`6&;_߿=+JuK8/zAYo) ( UU(T5ӷ}c_0}agR4{:}Zks!z^{M+(^[ގ'N|?;v|CCMM .--,QM[yN$aWz$I$ $IKt6 }WQqBV #.,BCCMͩS۝ ُ= ,lGZڊo6'%9v?Ly9GN,- |~˗_<3278曕˲}46_6y o4UM67::~a2_%cV?rePzh^m͕eHO/(PHMݰeydH$ EGGCg=K\␤t;--QicH]X=ZUO?]Z03rukaaq1[U04ܼ XO:pd9;@pNn +>Z:4Xrr}v׮Ç!5555#Ξmm `s^~RRzB!OQ  |=Ayg#Ӵ_}a~~hӴ[`vV&&IOqo4@v$lNFc1D(l8g`t;Ykh4,ZZ!%<M۸>50l6=qB4IAX4@4z},OWϟFp8?tɊ ]+>j-ošL~@M۷nْq-/.'͢VWc~wvVUUũ30.;#g5$Ids zv{rǓpt==˱p] ^^.|1z<8^sV!6o@ ]OIENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-delete.png0000644000000000000000000000320711141035702022710 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLIDATXV[HT]Ι9̨3y)GI ¨$S3KC˂"($ P BHJC M昗F43sF3?z[/^{3k}{]@Y,v-lxO޾`^Tt0y<@ ԪXa(+*&a`jgAMem6d"}2114y+ Le !HI8l6Sbc#8'N<b_ӧ<{vvqDؙ'':TZf3>,ó3i@0H I$I(~?ű/_^`d{ 0 Q(((.4ͼi]?p6d2llqXz]'DU]uBV+?4ٲ%++7$`^͛(@A+Mrtu--CCի/?y߼ B`^Xxʋ3GRQ 瑑a8hsLDf>=?Ӧ]v<|X__VVW3̿|t}۶{Ϝ=/fkjWYwtT)MSU]T*!,2!((25M4WVݻcQy> DEv{BlV%$n˗@VVvvz:B!:099>-& s##(NN@ I XVkj*r~rFZn{N@BB||J lYXK$uu66%$49e;gFGfׁ @jjr#tl@wS^NKE78KddCCP[t:sam6aG2`/] pÑ57FsFǧ^X]"RSSRok p:ssBhL& ( EQ樨KBy'lZqiX}=oeYU/^=qP0(.Pg9+VLS=IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-download.png0000644000000000000000000000345511141035702023262 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLoIDATXV]lSe~mmʖ!1g67dK, 41PtA_@u aJ2 fF 5S٦[AN[|^|ֲ1^{9oB!!:!l6ѣw] s98$^/صkl6$NY999yy\Q.Xvd9'硇顡@U'&B!̙}w~!d6|nt݀ $7n> utp08:ٜm}0i499&|qQQM bEIIe%pӹukqvk56 p% t (+{7 JKׯcLJed$t>ܼcG[Lz"Ʃh4 >ر1I2ql xz3Hj ؘח{gnt]U/]i_##OX20<ƍ~+*z^'w,Cٳ--۶k.&3Dh\>wn{{#Gv\}>||pPIbH2gɼ1Ҏ1sQTFp*,,QI{͟~|?{˕Kt'@)c4ƒ4NOb:c߾j(( F5D…dR<ilB]y= "`5 `_ܽII=#0FJ5 Ѵ@%K((EB7x]͗H$8B:, F#`2eel@u5˗g/^tYYҥ?l@]c8[{V? I WQ4RSOJJX pt}hh]P@"qzE嫯ٴ[~@qqYYUpĄ ,S Zp==.ec_SU/% Nώ#l: &S^`6 68bVk(D ">رc]{@Yٕ+ǏkZ8{LMqqc~v߼9>|_kvttu}u4 <(`zq1yT4ʘRSsS!,Ng_Z}>竮Wp8ع34UU/|IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-resolve.png0000644000000000000000000000426511141040213023123 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLIDATXVkL[e~9==---t07نрcp\ с.qޖd,!7Ź(ƸXą 촔Nsql >޾NGjj{$׬^Z74Bw- O|۶,vuQQ}$ B_(J  i raF>XoZ] K~ZY p64t3Aظ%2jvɒٜet: ..3s.a+{`8cj SY\9x||SOUW$)1 qCCB<,X8,yx<v33Ԕq!7&&l6jv`||`oZtz3-[9y2JW dsi\UU]]Rimm}- 5oLB@EQdj֯~\.AAzO&( 6z ??5Q 8EV*IIhAAEEuu"/l6rl~]6<4 +u 8<<9O [$&}}.FedՀNV,0r9k+fO?K(z5~^d?`vw77پ}55y HC%%/dfV+A֭[tt@vZ-j^/Q D p8Rд(R ҆|<@  B0x"fh"OheU*@&y:V+2 CCv&dbjJzwbBL&$^7._mY/"@&ОFc20QQ@JJ(ƍEEee| r9*B J7z(AÏ>'IIA^ڻw߾޺#GKH`YR8p ylnl<{>MB+WLJڿ)A7hiimmi?/&*ۈ,7c$=+*****xeJĉJJ 46@i[]IENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-update-cache.png0000644000000000000000000000410411141035702023766 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLIDATX[lTUg.gi3}RiF$BKh1i/>@$`#4 /ڒTl^liNg9̅|8ck~:_k ڿmz|*Us wᵴge2##9q $p8RF* (>ZD  Ng6Ӳ h4lowD"p'CzzFF `hܹn$gvU*fV(h4|` TWto/Hw}qWDTwv􌎂Jш"H RHܭX:bh$H$@8@ K<r~ vǡ룏r ?) d=w0N846Kf2dl&*(}}ccR($ːL,Z P[k޾iSa!Hҷ߂`2шWDQB4w.\CCa׮Ç!1%3̎7oǣ^YY[ cD"Irgfl6jp8@D~˗annq?tgZǎ}zס}˖GֆjID`PvVL&R d2 s}}pŋ/CqN=;94O_ fsELMyYvX^xQϿٳ##۷mh0R] b4B?.Z LvoCeeJ$09R00.ץKJuXr[PH鯿d}mdAoh(,"r*NC"!˩R7n,\LJq❈#tv=z@uYUutQQq$7;v;EEJj!ǓIx|`fg^XXX\WAh~Zy6șTRRW'{dϞʼn077e>̡Cmmð,##ptuss^o$840 06nwv6P]=<TU] ]bpbg^0~=tZ,Nݗ_Z tt47mII0x]}}uugP7Z[ p ڃܒ@D1$EiWD<`'kW2UV4`PÔGG'&ffA<>JL80O?|Y._;(BCC6ۥKa;99;E,a@t-I@YYM͒%))^)˒W T*ex霘T( qQ4@( =ܾ}49i-$yA.Nr|@ d2i 116V֯OH22֬1H-QT TUwwߟbgϻ~;w^RuGG8 'I4+Լ?n(aHNHvZxw:}>ΟrxbӁHN~://))|(R"p 9~\x( ^ hiq:-rr4Ir:eLE(*޽;7$i 66"Bn}՚@x] ȁHYY^֭/LLl݌@w$=f2j t L,_NA( 07moLJ⢢4`jjn. /J`LT*Vk4.9^Y (  S(nX&fJRB@@Ej G х*dS$kcc@q5mm@AE'&'OT.!:V 8BX$y-[»HfP]}O?/tv;VR'T*YP($irEhuzHknno/\Y@=Dž#.["ϓh>e2Jf}ddz8Ҝ=u矁Lش0YaDoT#GhzoOHصڵщd%PzU*?ןxh$h**ʕJ%!okWN[ǎ56UUMM==@ZLE!v;ò9940j> ݓ0 CQ\B FCRaCI篼q#M/8qcFF\E I)hllk:wn822@XYD㙝m۞|/X\22ńXZ7:hT⊊UH2Zx@MNLLO =8蘙 A3Bɔek{ssG|}MՏ>h8W\@iRH 04ry (3;(,/ VA9(<[(7oycRQ$IJNAE$Ij~dG?ٟWIENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-wait.png0000644000000000000000000000305711141035702022415 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLqIDATXWMHT]~cS)Y.!Z~tYAd-2ڵ(JpdEVFP0-%tl'g4gx1k.{s43f:^o2f͖oD<< I$I@   iVkV2GFyp8}V%6[nnfq %  <`de ( xd=Ow:W$@>Ml(]BTB$ (J1%+KۅN$T* 8-NәQ*m-6 ȲNgdכͩ۸TJYh8z<׻\%%Z(Gˈ ~HL--]ZYd<;UEex˗0@)f`= ̜>g٨Xl4Ը,////++(X~JAI$I<+%Jeyt4+z.r: >|yB(%RA`=5 Jh9S3ӿq\]]]]]]2vk8x"UsYGG{;`4L5 )v݊"(/^3bbl&ͦ t&bZgÑH8\X( k\*اhͽ0 vnfYS}prIENDB`aptdaemon-1.1.1+bzr982/data/icons/24x24/status/aptdaemon-working.png0000644000000000000000000000302111311115757023130 0ustar 00000000000000PNG  IHDRgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs oy vpAgxLSIDATXV_HSm~lM6ۦVP ՜V%QBtQDQ^"A κB4@E٦](HʶVEQG%YKBZQEQ@Q:ET99-.Jef<}|xj!+$tmdXZ |_hi8띜\N@36n 2H633;[􌌜`(+kh-[8W=jlL.'G_ƲM3R p..F"+3 áP0`0<>>d}z1 u|{ -An 8bǿ`\jK)V(=d:vU ? EQJ&u54ä'_h4D18@ VVֶ^(& wbbpPw>re@8*^dbzb oVZz6[WWr+~m~mmKK__|tt{' G]]yre߼ioEf9(h4zb1@E 7l ,R 6h:/!FjfDs~~f@}}]ݕ+?: ϟD"fss3ժii'O1F$ݵar1!p8@~~^^A`6CC, x<^ W^L&X7n45ݼ BDĉg_K-_Nt4׆_(YAJJVVӥ/,丷oɚ*힞vkddhht:  F^&><<P\XXZBht~^>4wOۻjKKyaj[ΜYsTDh<`vعs.`tdYZ ffÇ+*#S@gg]]/_]+Ńd|dΝ۷z k;d$d].ɲ,A8!+\*:'aShm7%P*HǏdo`% /dD 5+XgNIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/0000755000000000000000000000000011141032573017626 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/48x48/status/0000755000000000000000000000000011141032573017007 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-cleaning-up.png0000644000000000000000000002313011141035702025753 0ustar 00000000000000PNG  IHDR0ɝtEXtSoftwareAdobe ImageReadyqe<%IDATx}\g}3;ۛ+YՒ,ܻM0%1599 ;/! "|9`7<;P+OG{{}ۀO,<~៫ɾxz͇)߷C_N{G4,~[J>U9-ѐ*=ؗN~e:>Us;}A lv>MQuF:vf,h)Cu"{=~S_?n<ןf;m/,!-R, nޝ3BeȘm]fK LLW~9>y~j\bf{+;#7=d>j̖&5,:gv7)wޛa/Zh?nSt2~Aބ|O~?]Gq/ʪW9#?_$) cرbO.ooP"p ~fZl> scgDkq3 JѠ_L$FY˲.TImˍXg0M$*+u_DuVPt,-?g?0_E_Z{Շ#{67/97{`I+y,pn *=w,;gvdq5b hYKdwg[~|,*+kAL[񏺮$zE|rfhUqwlۂD_֮XʿH㞝Fȱx۷˅ |+]~)H_[ewǦU)gQi9QNb0vZW]`7ށ]s֓!FƗ}63bNGuH C)p{RAÍ]`dx3hT&S/-|g m/;/=}GFst=,x΋ƓfǫOT.sD׸tӕm/=ug.|?#z>ODٱk-_ѳIje|x=B*u׭m]Xz5TY*)TQ>*BK߆W}vn[w=t[?B+T!iB tX/aEtFymRZ2W$gޖ0,L;&0Ƌë/w1)K6 81M3B5ŢE׍Q[ز{jH[#~8{6K6,@:Cl&ekڋ@jn>qXM(;pD%09P&#MQ,o~ 7]{>|7P"Mx~g/ADΉ?]Lm=TՀoAgP@i椐+qn刲"o7NLWJ0kp kkK8;xXwi +e_p5. F.jHvp6E!I._Pwr4r$rZqy0D3U,[c?fEc3K'|#94/D\W^ɕt'sZз'DElqɄ64/[ω DIAc}A,' `Tʹu5 }*3oN4."VAe594աJA@)M+~{qA?$26H#K&sv{Mf$|Bߩe 5 y`9ԑ%Ta bA"Bl៬L%*FrEFbGmDdQF>!2^Fr ~l9`:h%IDk𵋨nBuhy7AaՊrOu3)?:`IG6j`{#Ɣ+7qeVAoN?y`&&N0)69>d)CY U5g17-3"ɁQ*R\r%ܨa6z#yX$ L_9nÿ@gL26T >ZT0$ 9¦͖KxPQiV-90[=&醈V@>^²siDmz*e/nzbP++=sS~u$4~J5(m'CG9CaydJ)&;q͖@TŚA)# djuUUaU0t 4̬[ s)Ā*~}O!.itAVAѵ#սAtu: D4oXBC J@,(t'A.n]~Ԁٔ7lHjZ#bddLT-|p6%I3H#8+/Ѵt=V{z_Ob`:ұBU#BY EAMd lX'M᝔  N!WJXaG҂ƛ@t=e^,I$.:WAk-+cɪ9 6%R#32'_8~ ;oIBjQ,ii7^ڤ s# uFʬf_([L,eM>AK8kl4B45bZ84__˛sNvϳ{BZ[({up;8)``:3uz e5ރ'&gِd,rOY:UA?W/ rV/5kANl`٠3?o1ءlZ PzAAJpg-d_8Ș@"Ȁ~yU( @*[D\F纃Е~XkQx 5;0i=$ @ h3΀r`|Ť31P|l,[2@8yr Twh #d$ ȳR&P*oDG0<Րʮ>СЗnASXNiGe)H?{3&heҼm]@*-. a+r-ZnnE- 1e]Czn}R%žޟo V@".@j@ P32'_r?+T?=9wY;S*ULs t.6jG[?C,!@-Jul9J́Yw|S?Czmu60!SߍU+4]uL$$µj+;^zchu`cY0yz%]7gEJkq=WM:?-2l/u4m?(Դw>?ƛ 266Pݨ@dnC)$K IIysP*-[,RxK/joA \CF~T5hϠT0tq&iQDX1mf_25# 6jniaċR: ,p/[:I@aG:V1iA47EI.DusuK9άu|%{Z/5˧O>{/_()"?#O'A"=A o;+`EJLF)LM,gtDY tBd[;ݕ YFxEnU%fadOJ}Ou jƌ23}VGNo@п,ZێЙQ!`sNZ25͝h/qtɋxAGTA(K>ēłBOe@eq#<7ԡ✷.>"jeFZoCbbdix+/:}w"bUB;DfG$ͷ+MYI-dݭ77ͳ+->Mw| =NEw}݌@?gk3q\0NP+ܼK֯C}['+y%eq2AZy![Y:Q3OkZf}m5Wb%D(V5![Y:6O{UF!=TK}fܹwY ;I hCr:W}AX47x>ƙxжmG.F쇟%Gb9`)4qt,B=0IRnyҭj 7260ѳ ;<+?D"6u5-}HlIA0:"UAg)~XZ:>HaBf;MAtrq+;%٦Yh,ҕdL)3vӃ#SypgB* 6߰RH?W]C߾Q$XK]'y璽F@&c:ÏP@=%Z$,d ;sXdxM伨rvl0P'#oy T'2:'y' LGҤ+Lg!ZS92#QDc|PP0-Oj(,]DF"xd-#/4fScWٺ hB6F0wv\yU,:[p96C%e=Uh `K0 ?(__$ZRa9 Gѱ"dX<X۽QvfhB CVCPObNmyT֢Z1l2hm-BQwV·Ņnـ8b,'jňIOF$C~zSp۶4n0j:[07̈{x h C0G|lCl4d/Y:bCāij#qO5I'EC6)K܇HM ځ۝at/zgS~qуgTLw*Gkt׺oUQb&tA`jB(dtS)M]dڈ@# RGχ`UތeNgy66i5g)1|6+Vžӧ4ѹz,Ԣ`w#܇֍n[Lb@%׀:Ɣ5űUP#3 ;#|2&NW$dakhF AL0j)?`ѩ8QXf8Dx kcEP~Grov\_,D?&ImXPVؤ22}9TTc@Mbpk-Lp]G˿Мy |c5wB ( դ;HwS[㴾!}vUUUXqH!E)]E9n;B EXrX^q> uc-Vm!] W. n]`JּOw&* *"Jʛ,38ZD; ?#%$R¤)UQ"M?iVoP|+[okږϼ5̀2dO[^ъah#f܉gsi_a[X'H(Ed(K"}JgaA_dJZ6~ad Sn7Zl,@nJT\V_.Z1pcYZ@gӤɤhso[/V9 }VVvIӕ2R!W5$H7y߸5m dGk|2Cn젔/v/?v `lF(<·,Tgǵ9lCQ׫bܝBc[ LX(33R!,ekϥJh `ލfq Upi6vtkL՞ػ|\׈pdzp%a6e"uIY_) d>C7w'ث0#L^}rI5TSHBM{E١"urdy|sql}zzo.? L?c' bC_?mQS#],lP.:ELT wtG1{YY?U*eSݦ(WC%;TD> 10=qzLһ'ZGwu#UE_^aZH I|:Ih#V0lE8*oGdVƁ4\%3\3fH[ȿ!냟i[!ە鍆& RG4a ͢qI #lm*o?}CtM#?Td!2eai| &R_kz&2Yst9EĀ򱦿<Y2j@f<rmQMp6 |X>nQ҇Lt(> Y%ȦkIkU(!7Ld2Jzȏ<*Q2@h|uyLQQ@DrP#V*8r0֥A^k.H <5Q*4]<U vUu5/Tގo"԰g~*G=ЏlkD0' 9v_Ip')uy+KǮ1< |&? A?Sʞ2$V7w6bp p/Kwk-0^3x .쳄}CL1Kj?~{.Lts?G9m>:osU`Cwe8V]QDfgyhPTc&Yi4&|1+ lT4O1¿|Z>_]C(_ƺKȥr|L⑌eOg+ؿ*M'aO\AlCjB)_|p:NS-z]~NX x@eF7(K2geC0#x[@ {8RЯ tygM3(0֑.}wRN$$Ezmt|qnΰ̈́M~I7V(!*qGF D*Hmo}I}JhkGg_MfGn:8B~קދ{ƝPT@j ,euh[á]E,,&|t눱g1794^[Uw 15/{xIkMtƒε28%mɣP07 |VD>tG_OPHzs&?‰ʕT:Con7/lF?`".\i> 78WmIqȵ)czzj#"G$E6RC&j$Ѣ;h^IR梃Boӵ-x2gNBZ7lZC){KRϸ'#Wn^GbBK5>U\*BȲl( Ӳe:4О8xU].D !dIO- 3ɾ94W%?IOWS禯4-iO[4LM' 1W=UC:7߮[;dQ GgI~pd)V)kIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-downloading.png0000644000000000000000000001273111141035702026063 0ustar 00000000000000PNG  IHDR0ɝtEXtSoftwareAdobe ImageReadyqe<{IDATx xUOm;!B@Hā@PQŇ"`ttQ>GDF@70K@Y ([/wout7z7]]S9ZIBP(TpŢ P( BP(` BPQ( BP( 0 BPQ( B&@PhV:% G,VC0P(9PT}\vpl`wZkR6yJw''^G00aSIb>~6B]-&=,& gG d2tN; 0=0J5yIoYJwH!ÒK+s(kbKt\ŭC-$??V`r{&u8`9 0+8;tW^rߋŵKYu}(h#9J[PS>/#yBO,(`uTIa$5u0ѯItX|sP[]4 rd`!t*7ia6>CchL# 0n8kf<>voO+b :Ѐ)u2H ?ɽ=du[#}^NoD'ߢ(|Eq~9w vz 6T`-:.tdDx{I!#m$skgf,-‘PoqK"XPSW³04}lkjg`%`x XR&UN`93, 2_؄eH?j]k73.=CAW.FzWÞmi +!S1WOcAoJIC!*u S@r, &ªIsdJvտg@(? ʯx^   3~ Յ8PU}vV7Z~V00eT Xٲy2%޼-ǝG^ gÅcI>y^< G~C buC $yڧV~؍ h_FoGM4^=;z s%νZU '@Ac!ppVKYc/fȁ*)rGz{UW~oMFkN(,%·V1p;g ގM ;'/ْI=R4Ds/8XHX {~}2")J؉ݫlУ?X;si%@'2ܵt\VCJjeZ2俖5QG8E; ߾$YUߓ=TzTbsR$ՎR(︶HGT$AN Ǐ͛7XpX/X'?O?~0'h1bzlk֋ϜX$: ȑfug3$)&G;f6ҵ3h4=e@:g<ǶhfbCiEUæ-`[Žߟ.POsl*,r?6LX90#܎Fzgw>Q,}D6V82]="<|8S~/TO|#T5ir%X$+-n0l޴ b vd'm߇oԨQéٚ6H9{ Ey˅vCIԘȯ' Cdh ?qġ-G߂1UJ Xw]N2a 'raCc7ZŐH{.h CEc]sFKAWyiJ+l:qKs+o1k l\2jTK~$;,1|\H+^yG.oQ ȝٜ=̅>;q֍_A-²_4}Jw[5F} LdPNZ_r cܗxi~[7톻ŠnNP՟00YplGZ2 VwҥSu^YC8 ms9> \{ X귁u τuD (ݗL/(;o$?R{?r4>]ιd#MͮN{ue^Cױ?Av8xT,KO '-oY:we\ h!|eT O;R>Z݅)6i."C0G=sI @:E0JW$ZOxCU!aO+9̤iĤBm:.?+! ΟQg(*W, BmKH{ύʇ^O]dRNvǣc:J/83f 6{A?؆خ0`y;>^1ヲdo%)a!7{&4`]f-*$7:'@zAw] j4CJHgG@?ᬐ6 ̡p uLl]+ڑcxwdGboO'Y13 \/5,xab8p޽k/|^/~ֲۚMYR۲?gTQnWPe-3n L^6M]X3Miv#ˠBW %n*xrQЋIX>铰?T3sCk8m,5 +Œ_Extd [Ar iz|MY\ۓQ7 f&ԗ =K-VlW`禽]5ӾDs 9j\J7 ɋ~mjjpDhι6 `#νڰ[_ fV^o v"s'tURjKO|oj~ b?ZOe ^rZ$%a: DN1@{uȏ-ڐAP3.&AV~OzLx>w1Wn ?J 7Y]d,:y p,Z #?G$0Nzw2\irr 4Btȏȏ'?ߒ-`i*4S4]`Mw'~bTb׫g6=oApXew1iI Om^aD$yӳ(?`k&? 'Ǻ9Wz8r.]AC `=3%?#'&J-XbS2ӼsеkaP\-<ȷ@s_@W`G~G~G~GON'bf)vR7jHCȏȏȏ=`e# |@2B2Hgz4V{-߽{fzzѭUUWww+y~}C$*4$9rĆsr:\<+<^B_ ~/=r f6EV8ӧCh<"z(ե-g-ϒs 3ܜ#Ό TVs]Ђ_ ~/}j!3#E h(`H*OA/ap%TP.P.,b3/S(??v^/_ /@_T09v4 I2dY$XXExF* *N!l*;<3cii=皛_ ~旷o3$=?ƴ.ѹ*Kt^_KyT0Zs$L.*eėZ|E:e6hHnm3\z ~/uϿmu 8|c893eZ(- ed;:Z_ ~/>4r4}=T晜A{\HZ~J_\Oj% 8pM`$/p_5w_ ~/ߎ҇[7|KEi.fA1"-5-{#バ-VmT+Rp:D7Q(-[!a^<3/ޝTÁ_ ~/Kj@7@:QT=BK{)s<H}Kg0q%<&`c2%ZMwÌEdHvU _u;u_ ~/-TM%޵Ox%\<8{6NjDA(_[(5 EQOa񟑈T;xWη t3~I%KdDbk !t.4n//[@mǘHGTÃn;T\b Y1ZGa p hP.Wk0:-r_ ~/ɯn= spKdI;Mk+ar ߡNV"N%PҦ.B PP U2$$\!X"}q ^ x˱ j1| ~]Tf+($,a(:I .+Ս%Q:/=^Gׂ`/ߎmL#z"y{(셖÷&?#o<HRCL7<8,{rXaH3)(B<ɦZ((Nើ[ҩ' I,V|2r "O\l*ܥEZ@ך͖H5H_=m):׏"m/[*^d/''3ݐs5 #-[ }Yܢf̂Ug`5k#o,$W;::j,X,oU`̂c`\,OPq"Z(~ėTQL"HrPvPg ]@19sGQ]֮ᕗRuF38|> {`p#{9pst39XDrJCG{nS{3+: =s2;[} "Qg]f)3zJaZXſSz^#n{ /nΤ;{c5|3$y,rV%42JxEr8.g`@^X`z[JH%ް ˙Ko p Wqמ߃ǻ _y[t~^ỪǢ=EPU_{u˸P|_C&xst |f_e=1G_|OqaPcN͂ &S_\9օ {nia-X) VWQ0n%BӖn?] P-. \MὴtWφڃ e!9 _;@5Vq5 SU~$ӡŀGQ->MOP[[A[*Nwb!3%k]nR J#`S7< nqn@S$n?n ~bJѷ`L8$|H09PI7G9SֳoFw_K V#ߝ`՛Y/_ZyGoOop)Ga1$ʹ9m6;R,yع#ǓotWO]81wh/ @t8z4M 6\"!20-mRVbOQL5pWxby(&`Ph"͵=t!w6^xR֙+_9Gqae6yʞEf:ncghw;وՍ_҂TG?-X,XGʹ.^z F_}mǶ7]/)D.ZK]e>. 5DD *&Kx;wW<7/-#AK-ʼnW PyWq0C, ɟ=u߻13G s;KNϜЃTbFO ZSKOojX D] Bε!+@wLߏ%DB)ti8|7xȚX~ `Q}/?{ =7GuQ$ͯN_yK Vt^SBoOG?Z٬v_똲.2t0Q:}jǯH>Toq,أ׉ʼn4j-Є㈦QB8;%T6MDn˜aglq ބcG%E_ŕ7׷` &kďKG}߶k_.L|ñgoaxY:gD}]B75Y?|ҳpj>|_cĹr?p&CxlcYߖ uIJ/TfX-ٻ8&50Ctn^qr^eefiv{[/ [ݧ:I r ^`-Q'fL̟8u}}0&@'OAMo;įMѦa CNjOa>K%Dl~&n݃GOw$"Ȕ.5sm( 4z sO"̠BeHE@A#Hgl J>ѽ= *w'155LˡgYhI{C۲`əoj1`_(ȄzVb !,6“5Ѿi"hfqT ] ,?wQ@ !G|(ަ9M=7\.5uz_UPwwxww _cX[w-͜o{{ɤ U%=4'xwl~_9.R$BYy$4p8Bw?WbV8/J*_Y">QHх_XByȴ2Rpl{'y(SN;>į <|ĆO)#azl?ן2ڙ5+L0Љ 1qzrjya E鸔[[424'٥23KKK?D9hymQŗP3+32u/ccc0تMǶ]3:/^:է?~ u<Ϳg۱ߎO5ԇ36LhM?$ 4Es-Ucy(6i$01}7fJhwr([yؗkqX`b(,]t2$G+. ` "!_DBZOX W2;QW>>W}Ɵ?|ٻ90WݏXyc\ QW)WY]pkjQ>L2NL-iu6sd _~/_o_]@(|D ޳_>wIh@F,C I3OoG$IXW/_ m5xF-奿pTMѥ́CYɒT2V̛|nv>̮dY_ ~/v YD*6W<ďquv ɟȟ{sBYIZ$%3eqbdƜ ]jNPL/qGqB6卶gܫ_ ~/'H\ZLYc98x}lE\[s(갪Z|A o)_t+UI:c&R,я)/_ mKުfcQJ}?dC&&s׮Kgg)=_@ūx ~/_oʿF20@[ ˩pefW ~/+P- Sj`c ] X ~/f9 o+._ ~U/R )'.IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-removing.png0000644000000000000000000001673011141035702025407 0ustar 00000000000000PNG  IHDR0ɝtEXtSoftwareAdobe ImageReadyqe<zIDATx}u9.6GE @lEe߶EK!%[I}Q_l#[J $@&v9ɹï],6fzdaf{o~]ェW՜(`„ &L\f„ &Lf„ &Lf„ *<%k|< &K#< &&,?鴹_Y 3L0Ib0_[Nc ̈́ Uv?+)hTdԓV$ɈZ!-./س~.uy9]c)))I9]g 0&Ln,%TEV dODcQ8e}t[?ׂ?۟ky~5W)4{]:3=u(P+-K #f=b-)VDNQOψzш-wkdGj~(t" V3tu+Alē1@0j{g^^o+D@@Dz1Q߫d4 D'֏3_-ӟT^!!tnD03PzЂ菝G}*V?oTX} .훭g@OfB\DL"QpY4:zTT g'ƶc{.#NCڻw@\,C[G'G&5 :F Z|',#Mb8ɄZT|J<4%Zo(,,$}7({O#`M!DCV$N`HecN5Co6kB[ ~h> |h]4jd!( -.C]T`+< ɕo<8( ^TAp%%%_ `D'C(.φ{  9Bbj;D(H#8|J Z>*Wՠ7pr5E)@%xk.f2j%5)x).G x;e߹%:y K J®B'MOa">cmlGy5]K"m*9O`& <7(@nZ&K,AZ#L"#ɧ볗Bϙ115J[-['zCnxqJ8?z}f]pK'C)pvG!+-q?L(1M˩_~bX;~J??x!Nf.G_jmfSrIW_P Gwl#DKHQ8?}ßo/+ϣ~U5<~KCN${+T$R6EXf?ZnAY*11W_MGϩY;a!'+* g~{Hv;já8+_W_7 Vj@IBR:VxҲMX6wWUן}lٿn9Ý{2uM*]~EqH-xGmvg NWt `uOƳ1/m-/``w 1jo]-Y4x7Lv1a3d0iıW1 ĉH`"֫Ҥo&$ы68V~xVnP+ BsfFՊV|p$GLxi?FmF|x/~r+pZ qivdyE!F|~2y0692SF(pzpq}Vpj&COڣGn?/0mWs1`A---5jCvZrb~NOxv0t`4n Ԥ:tot Q]NuJGɊR1ɮs?/pfM8\vb,֣93CG7tUy?Js4+jLS$r[d5h#D D뱭bBx%MZxN#0;` na㟢RN89q!*഻0%7/!I4^uE’/Zpk?-`85s/ib<@{uNЭ_dlj_BF*  WbSg ;7 'S~ c$R!D)Ňsb>o02C8v,˓sR.O=`4J&w#U^{;DہD*Oo3|Oh"d|@/ѢKR2匚$RO" C#}x Mh?F0gD)~T⩂` 6 )%ɉ LR4=|exŽ6sgO9y Cm!d"²-'3!kd cG.,vLDF9ܬ)LQoƚ&?gSImA C<#B1D1ܿ!\>iDΕЊOk2Q8 6jL@1<:VOYnuv H'-ee4V} rK0T=:Yappm(iI2^*$ x5z_SJ*XyR,|w;o-PB(vb*:#1F" ‘0}ٞwQhc(V `ёD /c6X1qI>g#gcNn?/hS_9)ԾVR[HVz–wPeVS)~Їƚ]odNSڵk4 yL)okE8|Z7! \ynX Nu`Oܳғ7L"ߣX<ŠZEv@,4'O'ރHP 3FlMmXjn$WIþ /4_?KrC$^]Ԭb!(N-?412'Q]`Ii4ToD/H G/@+(VE1<>{,w:~pToxv̕WL?6. $&O87Fc 6=ؼ.~?<>d$'O r,,)S=X|km AΫ+`hkGO,jXF?/ E}чI=zQ‹C : (+,,㱨=!^-*وO^777c8j@2RLь=h5\8.[͛9'Z4^ha@ zyVۀ*:B]XJ`qxH M!AHC2 (qԫ~]}ݸeVaݱ[3_=8x+o` B8qpPI^ݎH%mP+W)zZ*'+@ЀNq;Q4udYRY4qgnFfL*X2\8 *9Q+̧B3񫃧Ԗ&VzZ7=|/gX:p n$i8 $b88SQ&ÈҐS4kϜ P|Ƅ&8Q^jqPoBk 4;]-aL?6UKDx[&FKT}^&SftߠDN?]| CpVBI5Dȿ"kՄ8]@. ˸RCqb?p2EN\|kҟ+ kXO$k!|iyEnbдe+.v.:W~C"O#;&Jq ̽U跀1_uŻPܙOF0ѵ ǿL>oS#<ջ - xrHUEhmDy?IFNSʁ86'a}y?GկR6^e G+t4lW'ӰXm:jpV.W+p@;g&,*kj`Mg~NO]p.!\Ѩfl;^3ζ\$nbԌyͿ6j㹹}MPUQ iO^'/w?vNK]kV`bTNLNaw͠Yehc㣪`5[a%Zl{S$II%৯edŶ-7N "Ǭy ?3 ?ÿ`|ޘHe3 E]K^ܻwor?=ag3w+y} 2~u"ؼi+\N dcngN߷;5tO"9R&1CHI :Ls!:NMM巎v?C3 ?/X'Kzt7 mR8t`n˾aOt?]'WKHC֐r;]%DgU1ZaT .aRFzN"s< A&į3g~_V6rE>s!s^RN+$,k?3XKm]hVqouӳ'MW5ܖ>lnZP+jaX huS 3ٛ~g~q̂9Wssu3ߗK)Ir44~*@EI.$gmf~ge]%Ã[0t2=M+pxYz(͒Uncl|2.Ԭ ?3 ?ÿӳUӒ$5V.5;tG.t_Cwuv3N雏s8-'ܒ'9eNg/3 ?3?5}K'K~ŵ^ "w. "4 @$5lwEMR2%įJ>;g~g~j#.R6R, Q(I!WTA STFHg4 !mg3tw/Mg Gqı 2pr{@ާcH2iQ79>{ބ$ ?g3^a~g ?w#/HqbE6;\̒M=Q;q3 ?3'ϪF3]ߐEi[`qg~g?f„ &L̗/{ARF5 IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-resolving.png0000644000000000000000000003313511141040562025567 0ustar 00000000000000PNG  IHDR0p/FtEXtSoftwareAdobe ImageReadyqe<5IDATx}xיOH ! Q(ccb'K{ĉSnqll'67AMMsf$$!! =ψh==_9gI$$! &-IHB,$! IHB$$! IHB"$$! IB$$! XHB$$$-IHB_~_AXN?J;Om~p5tB2"$$!-3f|#==Z=QRRRfX1},$!KŹ;g͚˅DS~LH"={GgO~147! XHBrO}ş0'_V݌u{kv%iLT[lr|͝6+&B#D?0՘>mmmضmG MHx{EV(5d eE'@eR a'%'ut$?\i6sU̾H/ Ng=(SwoNc;{ck+#''O`{Ա2lyLdpJu ⅊jjJhxjph+=O)>f3Ir{nLV"Aȷ;unMFe˕:Ƨt4Kė~oxL S|?%cjDZnQ r* _BE $*Ȟأ'Jpج8ΆrO|Mn=7>nENELnώH)q:Uw茹h3Ӎ(ʉ 0A um8wՌ{Pt$0.WtDI ɜM8t\Z!I~bQvQ./aϱ{bZ*mY,vHˎ7?m9C\N "?wC9F>R+a6%||n>9|KQ8%Fܸ=b.5AXZ37]_mߍڕH P5R!*#ƌ{pW~P򿥦3Y:ޯcD)?Kp ȃIv <$tw˥aR)߰h{Q`u/= |V' jh8׾IyT!(hTY~,:޾ Lɝ G %J4!DaF;[a9d%G`se&zb#"")Cʊ sɩ{ID~A@ҢGdf %"#5xbE>hA5S0k Mq`gnFHSH[J>_.t狿fhدY3+/.^i;{i7#5Z1Fh?/*/B No6>Rnd~; [1E1a؋qd ]~/{^e4*92* ѭgbU0Gaa!7WV} ?>W>3k1s?UQ_vQ*r2M+{n|MFM>'.?9 u ǘ |q>hjx MpqZYi<4&uanBt"FiY=N'wθe9螛X 2͍E?7FG͍R-Gs6nBT~=($-Ұd5m?dv2VΛ fS`dGSzQQQX<w *t(2Q*CdŨ&Á۲A l+:d Rd#Ӡp5'*YUXh4QŰ{}K m3Qt&?&"k- ;}˯[!?މ<3jL"1b%o%@K]h%Dnb4 hR:zK "("d&@ȎBY9hnVTdeGD$x=)SR)F,Wx(U$\.>aL< s15كC'8رcx^0++{+| X˸=_ pR:[S^ {\1rk5H\s~16ICޙIAyANF\*9E)[N@яadġprJ0@PRS r8qF'r :~'9n'QaC`iMɟӗ$HS2\54јT?5 U|Ak](2M gόBd3 q2  Ƭ$SCdt|P:,Ѕuύ cX$>}%%g>74.1NdoHWpMTcC,f,x=p&19o'gQA |PEAτ^@Vrx ==㽛GڄXr7Q"oyX]/*Tڏ?{mD|O\T6t!"C_[;v e"_3?_cre- !0>):.B]srO20]8LiQ?CTmWeaя=G;k!S!6V OWwҊNn>2 liUt.W?ĕv,ʧ CEDm8jId8zَ)ǢgC,9͘IɈ0踟:YZuk*qOo/IAɁMϻ)QMw{JWQ7[CaQ|-w̸: R#-Lȱ3>mpB8x%g~kTl̙+JNZ z`u8RdQu۽vc֢u?##>V{;ΑiS5qyvd|~1ΖD^t~]B/$ $?R6N~KLyvXA1/#doEjTpN)bŜK"b&ĝ,#g ?NEN+\8eA%q[[x(\s;6X|0PyyKM&r 3G&*xTvՋى~TUUE a-5BVnd,E6&8]^s#81=7F\Aos=iviH@bQ@Ģ|OĝfZDx R; sgrQK%.6cdgzDPEq0*qB]DNz kB$ TAu sjŷ%[-Dyպֲ)PjZs)3?p-e,gMLGn]̛[_M.czüf7jMR^83\}i~ [O6`eaRR4R ,.;9WqK z6N5N% ?g#+5p3GʌO0<:Qcs3L]"e" r4gfjܧ$uIek T5cb[wB#n'ͰaapS<'f۸*]y?7m47>#d\!g憥tܸhn?7 i炂,YUHO½qӬA t{6B!bF}cc =-#Qb~T!'sf@,P)g9?2 ,YEZމevǦ0'0e1|~q&Z%,e <{k'{΄x 'Aшglj*âO`x}y٘JO-͆V´dGxMǵύoq`\T+IsU&`ܴ\Z2 Hvwzv]fZNJf'/W.bik9\zR*4&E(ғc{A6>7˱ 㴑O֣u3ӀhzX)؟&HB^f2Z[[BŒ#X{'I37473N]>$o$x*8w^rB*L67֠א[)PxMYjZx TtY4鰲63ƥu2'@@*8~#%v,|<"'>VivtAIv>&Bc-=%ڳHōu]zx><ʪo.Sjoz/儰 f#/=,X<`PVnնdY3ffGBU_{}p'o}g07qP X]4>P0zyiVr5-]hنncva^omg d X4=28fo | ,Y|iY馱PB˧ P[[ h" Ml%|\+ONObv^⌼> #_F|"a]lď:<-VD 5#u9rD e2{qB'鹩o޼FL`i%;jZ*[] *L_òNDt$CɄ'OvME|5hTA?s$ce<ZBNZ%kxAM6 ($)}8Yt:(V[0lj4]L~Bb[lNsKyJIIAD߀?uR6u _EN>jɼD^SSn?+\z)3`ߵiX͏sNc#e Wzeh?֦'X_`Q(UlC۠p3iOasH&LjA:?y ؉n)5/Q;O K_[#=Ë+7 u[I8ft՟BG?$%}-^Na>TT\FSn|r 3 B"eGԩhB!ڡ{ xBFx֩*ʴ;.=ޝ= 946f5Ca^:tX2)E'dD8<|rw8$??@\ *~=и h_~<f܂vW^VR[0M 11|n، _k=l:)yPJiFd> "o V)7+33_}a.lAPG] J-Kc-2P=b,vQL"C}+Dpj߻h _G`Oa36idjiC?~As"?'w+S[gyEjHSZFgDX z)ݟjF7r(手M(Ax' DdMG$G L@݈G'C݊BD}p(uÊOl:U*|^i}- /t*y :S>{ txYNNڦS}xөNY gb<ׇU miQ\ϯŻ;ܘd";@.'xj>ԋҮt':}u&1()yηX'a ^yZvWW#,͕6QS5EARZ̦7?IOY-4Tj(՚An as{af2->"' |.~(}zpڡ DY#.\V ܬ?QfO*;6G=ƸkI b`>\J3SUZ!{W\4p#2ԨUiV%(v3꜌mi "{Q` Cnx ”,=$|D5\XNz:eh O?#~J*;lLR#vпH" :Ȫo#mc< âŰ+V G~祉O[g LW)p=7E&ɨ{ÌGA.WomDKAPJ6[Pٲϗs%aRߥ^ FƠ<02gzg9Nqj,ʴţAÈ2Gr0εF`ῑ$_ٟ?ù;HN* pԗ`^jp-=8x= ))SRRЀD,Y{oM~2Zcn233UDb;Ğ"|+q5<O̹.:R2'/_>Ƒٞsk .ɴ 8TF#/pQ}|͐S60r ъ28zA.<ބ Sq.FU؎rޝ+IBPsxVhRɨ)5"0=ߩ76"j~ spׇ"H7:.RKbῧ(^fTRs 0<ߣ %ȍ&9KH,83o8'κŃ9Mi_{9xr]v2x"pn.!{Df>.-W?%rgvR-l.BV!S1sC@3N:uHRǎ|sK6oNaߗG%laΛeBKjls&~oqiRGVKԖc#Bh'BAP;T,:)"Jީ-A7n87~6`G2Eɔ_AgjE2"^d^+TɨQ"u@Kx:ɤD2z)ǟla* WRcZxͨ/J<,C1$GA&knI ԕKYN9eH;^gy㳥X^p!hCk/קBnLK"MqXM[ӦMw/p,7|{%.^ĉ9EȷV4<'!!S)Pn.(rEezdkݏs2x0%J_XaJ].-J[㰶xRSLِ{X3ۮ ab,ʫ+ @z"FS%١X《9W&<jUs N<㏴VD2o@zK!N 瑌O^Y#`.Pg5H$u9}HsQ5LA 6*?)UNKy`AQ!!Bޒ2#Eڃ3'dGlJ 97{anwI_aaV v3i`9]⛕}>wW=1ӋK>BBaK~)* Ξ"K)$W;yRѦCtT8`%bqaeÓBTހW{B#Gy'zxW2hȡS[2I >"R J+f"C܏gL{/`fbP od:?xC]1'ɏjތ4 o 050q B RѪE)7N@Aw"9J!hWY1S"wFb>1yeTӘ  IDb|xЌHw:Ms5ۇuv`#::FڵkoXm'NL`qq[!`\5v]؅{Ѱ@8Uy|A~ Q"Ș4?37,_0Xnh΁fEpa%#,"f't +(y?ofLI"qdGfeRd˘dFZɕ *Y$PX}M U_Ɍ$1(=)Hq@Af_ HABA2-$b Prjl?s4vL /="x&މ}{w_ Kؿx=M9_Q*on[;vw}y7nEs y𯜡Gi}n Z[j*91" 7ОBA~f4} P!X>2&ؒػ#Bppֈ5&!SBrEãA$I[X.Tdjdt!RG2NjDEds àQ] we#fR;4mÖ C+]}L£ӜDĪY5CcqyQI3?TLUJ<23݂0Q*62eQw?vC៝x]by6R?3֍qiTWs߼D,uQq^(2 Ș %04ՌtkB7qQ.-}=!Tw!9  TDFfB؋V3s&^ؤ8fL@ɩO);h$CD2&/b "guƟ8 S 9 X< jl=nԂjGN̻H!B^sWV1&1_|Å l t~*?IKKñnVDg-~Gi=OF́>4! B_l>X3boD7g&eR$qSed.8xs!E4%a*ȸ8ԠG HfFml7 Ԏ0E3}OaP)Б/JEr|3-]UVSʍ"02LPJ6$ReX'*L!L-:g@ئ4^XNFogR՚:ȎZ$ckDM |xKώAGk ܢeF%w,aä S!UuVr-NCd_O%>aǶk=;rXt]hcw௯nذ?/6ncǎ%;D< ]8J.zA7O@3E2Nn:T7nLw~&JA~Q!]v}~LFBMw#~&!!_v uU]/Z(ru_h`a0,pFLhU"oQ4 0B`)!F,*cv˖-ݽ{C䠃|'NH&<T̯ѣ=?SB$$_. BHB%$$! IH/gϾIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-updating-cache.png0000644000000000000000000001573311141035702026437 0ustar 00000000000000PNG  IHDR0z~sRGBbKGD pHYs  tIME# DATxytם￷mԈM`' vb'08L<309'q/1bg9'%~mdFZ IK--,VwUuWW_}_uPM5TSM5Tsͮ6~vQ@<',&AW߬vj].P-<飼v=O9seuloս*67Q^Z2"-6V( l1Ya5[/< ! V@m |aUnl#jg;|㲳n-6g^2fQnNbOuQgwd#M%  1 Iwjo>xBjBD!ēq^$~O泈 0_`*Xd ΰVuXL=!|5+0r>'^jo^@=u0GG--C`,A7|oo[]D{=d6$ C"4p8#I5WVG ,vvuYӀD2p4t1ŐH?8ojwu=uz8kJ^J)壳g-c5@D}Kx6wqalV_kٴl r_q8[] +CFdDYĘ2?)7:Þ =Ѓp4:VS&,V8fMZɥ8/0D2D*ov~0joG}~7ՇSEjG{5U s+` q )9zEhYjk7~U|ͥEA"FP!]t/Hf6kuIa x u^{8FT;bu؞d*q_݉ ӈcJHA4"x@Jkҹ%%hȞΤ; M`4sd?$ESIa+iJ<7X n 0r%=@UD%FmJG[Zߺ;t8]lj|5_*[zq=pC!+4[BPP|$('tƒMw7g%Pڍknj1V!&uU аڲ1v ;55IܙE^ "tҙKk䁢(BQRH1ĥbVΝ__OkzLp΁bIK 47m-uݡCllh*3 H((zzA,J(3B˚'KFNB`-z9] ΚCy:c4UKw\f/ ?B.q"& Si} !#C-Nkwʧcݡ[1\Τ5%N#,ЎRP喒MQU>(⚕7Y ,z,f # BPJ-E09Pc~iB CXtjvw(sv*wc]o/u"2t[. ie̴epؖADlвafmC3#wP'Yrw(.v?@(-Ɋ"Oʟc`-1ݡ6ߎwrhcx{ 18N``3ڡ'P\mJ5+oE ,C֊Rv3Z{ axbg@XJuB:B.vOcCFŅhUMPUTEFY0qw(cжl_K$*sw(ǃi-scfIT7!A(IʋPbLĞX, 1\r Onb6xg>ǰVQ0{'ys\mk.s_1x7%)̀`C)!R0Lv$#$Xhnֆ$ґ$:+6T>0`zLWBF(I\91,;X+7w/! @8`X0,0<#xNCx!BpIɐ,+O{+ B;+uv'$.H719-/e6Ԯo6I389|)1Ҕ 9kp yҲ߼EĮЭ[ZF}'f7;a-Jt;Cv46 ,;ʳ 0 g(z{zx֕mvu+G^ךAEe)'iԀSxrcۂO{%KT#LYm8^$17iϰ>M*IX(qtb,9dφPeYgcg0,+(! $YlN{UOfrTvV.RLj+bf%, 0L5,ђehv=`s۰ E.HƎ< zhBT%{'Y-8?2DVG>kK7%k?׆_764m3?dM% [Ѱ k׉u1vI z4A(9ǵG_K+aysj,-Y_e`VL'PQX ^zHBX!pkak|oB[8QX. tVk[?{XJ./M-.䶬tz4% ׈>Ox>^qft_xGx`󆰡g*1dAj{QIW3> tu_j>:2ph`@a92@%PPaޢ&!S4!'1۰7Ykkvt d&avuuoG?Vۊ,SbNOAk,`c64?Ȫ:,)Xf_ΣJ*-ưrdaЍt !c(`C !` s A¡ҁZ~T|ƺ=튰`A BXV؊d"Hf>)ܼv1{ X" B%bsDA* 9~H H1?{{z힖/B.|(k Χ E,T \T,%_BjA4(p RIgR%zӗx'Tg((9 %@e|Ι/VDA r1k!KƧInIt2l>]!{@(i#Ur1}lOjжfR+`Lsyyh_ b{n5=?3!!BҰAWs!Q RY tz 9J)nnXCևn:F3?tE&xƆ! '(e,Hc8zY(2!Ӌ y?d$ 0B zY #B!LZlK[~Zg-s"_am Rl"LJ* x0ax]2%al"w 2{?߉4|&4.fd v"_{S뾻"i|bۮʯ7? ~k}-6:\r6?QTQFC]e^h%zdФz6ţ|j3t%'없sͳ[_p~x#ak㧊|q3]Gd *Ld2׼̡B#5[l흏AΜ2NK{Yc_oyMPZ0.L)uo ϲ+o{Fz9U nr n$hkA l*fSaXpf^0mFC*ʯ* pU0׀eY\HU~_^e `X(ʯ*0 0,*ʯW<,*ʯ_YN˰l*ʯUA>7{N e? _忡ٴay0,wO Lʯ*?{@XNb,7 ,}B:biIqZWU~_埆**ŇͿ E9xٟʌ̰T~_WU<%L(-' ͮ7X]1(u @)T~_WU+L\23y>SzsuNTnsi~^A9)ۮ*ʯMQ x1=tߣaQ2_7$7oq& _WU~0!͂_isi \*8CNWU~_埁9DNhN=t!<*ʯ?]LNEmyni_WU~_埂}AIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/animations/aptdaemon-action-waiting.png0000644000000000000000000001342511141035702025221 0ustar 00000000000000PNG  IHDR0ɝtEXtSoftwareAdobe ImageReadyqe<IDATx Wy{ٝ=eH1*PebEq@LT8 T8vD61v E#6>B"_ے,Y]W3;3;;;۳#wfm ¨&!!!!!:`IHHHHH&!!!!!!:`IHHHHH&!!!!!!7:n*x+OFI Ovضx)xts&̵_O?&~'~'~_ mw> Lⷭ^u[}@IVqo*9"*(8*NMˆB. mF!uiZ_&sm≟ 0\ m[+7: /wDh 228!9JSGY|+dOGV::dlc) 7\@ c}>qEe&X2ݿm7H#(."g>/h47̧usl:[:OOOK_ b(>|k ث5[h CMaXXu~"߸/ ;y߽8{lwz"f9 LȽ.=␞U1h$ەmf|1-ClAOOĿu}7W{}#09.tZ齹5fs8)dw{D{ɓ}zhNѲN?OΰNOOĿ:`XVGᯄBa{ noa`OwQst^MksHd` '!֊(M8e,z_ϾԤ{#9K?K8;~)˲מ}Lēst&Pن0eE1MAMIBqe՚'~'~'~~FU\ mk1)mY?Hl`4٢o"#'^W(3 ܁C pfIlL^\~=_Դo;PN;`rMN^C~^N8?|oѻWcn.=_EOOߋvAgD8[KJ`T>QHMݛ}??/O̍mD_Ҭd1&an \&e4OOOFz x$-:~wGW~%5Þ__JJ~8ջms???/ucv+jhau_;Na0Vue- +n:BkNIJ;˵΁e/.]ܠ~K+4Č:z> zTUWѢJ[ٕ?A}Ksd>g@ e\î}ӘR~K\&m6MQ*8\3՚07LE;95"KPiWO/u$u\pt2'aMF=nu'0PSn$>tϕWf_‰0~8# BWT Ƒkw{F YT!A`U,>0,o_$ [PN(YDZnH@.+A^Y%!5<_!M h p(N[dQ kǐ?=SOg1[,q'80^~ f=~W7ndN axk灕q HOދwK. ukF 8-u[ BT{/i0z$$ۨ `A(C7mN<\3{{,o!a| S 8vh{CUy jō,G? 瞠nF!Uu_Q@0/!ox\ܝqkuY:uiAX@aGZq]]0 VkYΓ=ǝx76ڔeڠwzdyaFgzYD^i✷ Vtw+Ur*I${Spԗ]cd;0-" )F0ww߱ 4UYNYW6t"q-OWP]DgWk$g87}'tNh^n9g HTY1RG|G;sɏFLJD)]qQdFw,|a0KvY`nc .st%/e[~9E۩WaGT䗔4X;a;  Z;ul L^?۞VS*wօhG)cZ^$7ꂓяYy C64(SKra<[$-o_(xY꺆/}~ ?kSlJC |@oN:>=.g^x~{{{,fCu+'o#9 [5 0X)o E5 W׍--;q]֐lًoT"euZt뮁W TIw_Lkri kz? ,fgz#.wTfUuG uzY<)k ZxKw zvݹ^yi; P;QZ/1$|]s3Q5`/|ah),fTHڶm dk°Aۍ4U]Y0rYQUU[&MoӞn[δ!:PSD :1_ΊA,TgYD߲[.oAP|~jDnΙϮV/(ęחz+s]ozEm#eb*Pl Dp"_XKu"v$T*X~pT6f4:ɖ2%g1?oxNp s.Vi:˅t\g4-! @ gv~03 SfPt]g\N ]gsQ3ʩTft:-" =y2] *9"Y+sۛL\2M Sg)kLJeSZdyCAȁY;U&ksMWL :"$~GWDpȎ>FV4fLѐeb:F~uվ3T'2EZ.(0rШuEc>|XۼyAar&I!拓Db%P. /KǺG,G);B! <&2(;O&欟n7.=o&ab-85b ssTgYLϛDr-7n}Uj(E}UBT"xU igĢؘda vu_cym: x4%11!ٞ0d?!_@FIeu)r)m2ZT =bXm?IRJX}8 LlJ|KZˡCI}EC6T˴L,"i_cBb1B5,[@u-ueH&{) =Sxe]T_ixԟqmzU<>3{,-ZH"ԲIKcG&P'Ě7]a ʰy;#/ю.YdeX UB+8Y Mr0+ɲ-I-C0?j/As0SWG'_>\NUѵs9@&FXXhFXX#AAD( ߿cf^-SF^Քk 9 ʯ7P($H b9\H]5;y0xܲjpΝe6D{jǻ*=uM@"TgYLϧ}("^>@ahsQ|;W^%r`N+'=َn"(E߹Җ}RJ HFʳ~x5ޯݼGWu#+@ b Ʃx4π544+wX10r U׭q߇*lp3אsk!\r7xȖ-ԁMЋYw 'i9G~lm@@q$S޼ysOm6En=w12beϡ= zg^giet:xIQ/lwܜ.əQn3g\IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-add.png0000644000000000000000000000467411141035702022223 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< 9IDATh{Uksk OEm|UCTXh-M JcpjG4VĦMS1>!5 X* Rcx}9rps>sڏ+ʷỶM$-' h9ID˷[rSc^B!kP0"UD$hLP1:HPnR_Lq{ڤƟ{Iw+q""aq=č`C\J:ͻ-l}X5œ4 45&7xRmԳ3J>>|y,qn 8p EqB(@~dR]]=y+*aCȍė֍x7>Ugt߮OHuIcA]o)  *DZpt¥̙zAdWO/tݷfXt$╿xv?U}Xjۇ2;*My?8L>*+}b+ 7Ou-r Jenx-ַ?n[VK[ Bl)j#fEc7Q3׋U?{/W  @Vm@A/}D,"A8@) K8ZLSx_s`{֓/(Ϯ}=juŝH19Ӎ_r1Hw`sHqK(q\0"C Jb<ǖt$<}?RaQ;]`ߡ> 45&:^tyH$jGכߌO LD2b+#mW3KH#AKO4Tؼn ɪh&s>S] tZ 񢯟{͉^N=k_yW=q ~c4iúu[%3qۺϡy3wlٝn<*Ng-cؔ}`\/-o-oo#lhfE܃ޅ2Gm>(\bJm6h/+l|gL~ s]:s*I wޚ `//]gh4%7\6,3IZt 9]!fh8NS!,cqyDygon^ܕh#y aݘ&pPemBe0+@+E}?XE[6R5J._'[X0|u8蓅Eڝ?ke8ɢei4b,yeKotm/x{e^K -L˦j_ObAO^΃XZ/:&IcW5U^d!08ũז"'1M~o"pf&j)*,*X ]]PQ?#>LZ[ln/nS hXeEc(Q=˿7 !X! &L<)/Υ'w)]+޳([wln @_zъ8&(5T3 (ZvY_%`f"'M}ZzgHq"yP-BXؖ^ W! {58 =Piiϲ#SZ[_kkúJ'hJ: 8%m^ehTB&`.Z>`zG*lx!"[=ט~Qxŭ0̱}g3AV0,&OT_Gd`Sqlx0*qh"r Hdj] bǩ 4_Lq1h}#YC&" yZ`e{RpPU-Q-"#"$2mH4S1-l1REE4**#N{"7{"xR'Ttshɽ0% ϟ>;9=P*LDb}PN e :Ζ5@`Eb8|b5@m]y?^{ _*p{x;r[3P`;>gꍹ>]@GxTk@!D: T R:.+hʷjdYFPCy v[!lH h>t: Xx 5 uiUY1$p$-k`IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-cleanup.png0000644000000000000000000000546111141035702023115 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< IDAThy՝?3cO`1$ 2g."ěd8dHU#%ZV 1JpX( lVg1p#왞飺c\b!~^{U->ˤδK893M8`MgpgGnlRAa@ADJ@L`(#(@ܾk|'; @$5(m'Z3oug_ZwIJQAi (mوF, lϮ)冎6iiˉ3AiUyg/YQnW@0SvAkPW :jer1 Jx?ml[fa/#~׆9OBE]S-#׭Ȼ1'qZA/H"mD(A m_Ԝ}fk,=\bwm\ Iz$oqkڅ@|Ls$$wW od7r4FKt_5N85<B .gV?*$8a0?'Vm]=޸x;m'$ An?)I$@DP*9p,9Ri Je\OM:<r@3@#Jc{j*؍E.)Åʲ4Ihea;}fΥa947ֵo18 (B[&Bk |{RJk,"`9L7/y> QM.ϧvк>^áh,X0nmnaɭ+_^y"'&߰LbH(d҃sY$u9[@>5HxӅ5VhZﵽacAL0ۈ %jQvq) AI'Sh[vmR ."j Eܿev O$R86j<DDS~`ޛ(n_vm-> ^!_,RJ07da¹sLi8 zQ67uk-;ā<=fsn8P \""74& X2`;õu"B}ě/"7D )±?> }нk p0hɍ1&B=GֽT /@h,?^~ϒt߇!d^jf^B75[&^r# pE7'|+"Q J9B%o*0nCE5f^Z{mIo㞝?x)Vi`HyzRji/:Wz𺵾r\k_y>|< (gBH9`)~8U1t%;=to3vA|ʈ 8#8$fj1 FQ!xӕgґIGʕZʎm_z9\?w~eO KWs BF^ƈ]۞}=s"8ƶ,:Ӥ"rQ7qm pu ׅm/{/~N;ն`*8tg@|~1 ~MY 샬=̝k,PzJ+U,\vYlX[> r|?+:uzK;,:g_^ 4'Yv1V'i)iKrq3Yp=[7?R,Q)1QT\sċlX[> rO+G_x9;܋Npvl'HnR:VUNDp9i:U27>.i`KE2&~Akԏ_]rۗJA9UXČ98I{J틷\;ZE{t:K]O$q 0#ͅ`d4WĬdmZʹ\iƦ~|TnRiX~M#?n<pap j+A]Ƕo,ZzF^hdW "8"c$&I$!MөZU^^i~.&+W ה/^y'>`Q& 6ml^`:TQuFg6O]grtu?Z>eX_[бy/z^<3hwF L06v9%M:RTISY%M$Rш,q!RɾP*8̀xRBPr{y<a-8u1$IhoN .M1f’-E>Lof384eE&I}c97B#>h lŹ 6USJ.Y&j0G|< 0D+x*T)z6bS:;Wଂz銪b#Jo O]IugAy:zAx&G8g F,9ᐮ7"_:&RUA$I P8PSSelrp:g2DegP,,#.*o#Mj1:lS"P1r-/5sbL% 9:G#(仰.EQ|=;q RkI7O<c^^o>a}ޚgq͌Bq)q䲭:iU*} ƥWw=DzIYklmJh>4RjV^yuucf{6]pL'~4,sRxf0YO$ed8HQ5[̦PU'"rѽ {Y#_܏Iňg}g,Ti7 /cїہ"6U[G P';K mٳRMsTM䷚/##C wi1@y p /y`1Povd8e0w*""?)p]?ЅqIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-download.png0000644000000000000000000000473411141035702023277 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< YIDAThY{pU}{ι$AUP)RQimiPG%FvuSL3a,::b5bPA"!!!}spo HEgf9{v7~}\bf|Ei+8=3-8'NqyY0K'- D{`o+K^޲d P_Vhnjѹ]Z4‰ !MR 2 (B*@ aB*L2@Ռd ]$c\W/6%Zϙ&P^ -a;gUzԸ!C`itK"H = HqzbH !{5n tQӐmMLOݶQ2=2 9s͏8_\Wx3嶓Ђ]AfsI  &oH.#HE4  cAwq'CĎ|ASE9U!hX*/ Q ˔}NATb 8i FNϰBf$?};*]*]^&XhD`AwNUwb"} :ل=|c "H>%AR6_2l≀?#vo[[ a$.ZY-s#4e_`ihyH6a̸i -3!,T`e@ $ W $axy x=Y B[Aݱx.~:{y](/^! bm d7f<#AY*?3wQS_fQ|!nۄo@4l BV qq,kmWҰ^x܂XDknLEp[4HȐ |90p L!mT3CLW@+ SF`.!-Z;m{Cd WG9QnfEdTyشtN2NB4." a=ةg?eLCadZMn&Gm2:]-c|cA!e .Ni5 ,S,Zʵwh,n@]љchha7n\ vWZrۗ49C#:b +p@)F6*Vݛl9K~JHLH' 7nHa fO535X%ZpѤkia.Gl| aE'zHly uH`ZR p4l7 [g?d$LI{x:=k=㜰<|"^ӂa:7;mDhM5BM!xqH9 M&I,끆2~'Mv?}p^ H`ob4#'C}^ )~e2 M=K<\ FMi>X@A q̮2ځ<)3$d>0NufT OEMAR+hrbpЖnM H 8hi3SSQ{'@ ǡdHV/gp..Z3ugBCYAhIQcKGؽX tgϢ]P@FL"/"gjN] }5Qc.=JHE A+43Pbk޷٩] " "Aec}f}+\| 3Tt9a[Q掊`J}%w@.²p{ӫn1W;vg du @/Ծ!ߕ8\s`%1۩=E)\ >9_BH4 °x+۾^b'l( k@^mcKa̾amE40ƚ/{k7h9./w(|v?c︊oՍUi G_{d$svڏN;EXs_,\9ƛG7u*g$M;k>>BD TJ DUu{O~ͪSf& dg?Hf3 p<8] 6 Z +kf]H8Y.7go@OBw||f]^IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-resolve.png0000644000000000000000000000664111141040213023137 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< IDATh{pUս?ky䜐BG$(A *^;UJ-Uz8ν3u;ةVīV :# *䜜k98esk}kc _d7U$y˗>o-_xL^$jwZv'W @)  H @Rh'/q.wKRY i=rQה. e!TXRY mtPr~~/L|X'/L`咨k֟t傰wކp1%s+!P ,%OJ s4H tVqlɎL:u}aįYzX!d9Luw{0X1;h:LW $RRH!AH0 9A n6+6EY}OYR9z!<|&#&?E86U8X1'F+]e%*#%z( zx#N(ta wmU8Jׇs bROT>0u3?V<T7s=y-)E@rhJ Qn R2U'cfщ͸!SLeo^"V.l9W?<k"⣷_ʛ^`ħ[B@XHea,),aZYjK0t J릎}gQU ytOg|'R%ѫt= cٽyemcQ]??6Ox09t4A=j*B@ :|h$ x2}EOp KS6u}Lb;o拧]pA} FLʝN]=" _p8eY5lD"[h_"0$a|mc.T\נ\T4Xvp1~?5tUd: eʸKϞ̾kEOp{¯b$MTw ]ںv r,o|H1=KˀFޢߤY-|oEX'Lx% D`8/@5wfrĉy#n;-qii&@^8e]_9߭`sO};GW-[m8%\s1iΐw۹3| ߙ;kql hcp]5q 9}76:}k׬fU.\Obσ ?;xG eyLoU|%Ęo^p=I~~3Lu ^>xEb@P$_tхv4̝7ϟ,%R-yuO/Bee }TulyrDq^fLERoF#XP,U3zL'6qlǩlo< U{9=C?anMKVv 8"f*Zk>KqIK8B>[5EEBЇ-mb);RCر,I<#Y4B*,;0옏$Z݈뺤29 QDhQ=|=ßE""Q(刪N#-{=ϛ3~he 5u1RciG0#ٕ $ m\kDQjlR 8Y H=5GY,BY|- iBc%yX R%@RB<~ǹX.sXaw}J>& H! mC<òR`s5B,f4.Ry¶&@)!b(,.oeYtucFXc9g}"¶#joΚHO6@V(0~,lec[v)TI3C"_@&!uh'e9(.q2F~ypߺler@ Y< BpxKnm! q\{Qn p@JG`С-[Ig^3p8|D0ZFTp?hHgg'ǎaAXve[Bas@\=÷X3J}ǡV冫2k>`gG/h%|ylVIRxDŽI^C Ĕh PB䀌\s2!DĀgUc{yLfϙO^C6=;pWL7p8DP`Æ L6vRLwx1P"P PB`Ù6uc!ɣՁ5Ëȧ'>9¤Kɍ5LkX,ik)¶-"UUUضMoo/^w2._ p ~.Zl@~ue\{U4\0Tc7t5i7HebU!alKh6@ yhꢲ}W{ ) i9a͡d|%gv-wgtE`Bv$'gܴ؎r9lۦH$B"0k׮}lϕ c(ѲF0ќ T81HGYfs]w}Ad2B!$֭{|ƍ 11Y!#.H2ZA% jjjm2H ݲe n)St:MCC]]]̚5㼶~? xhɔV8'AO|^xq8jB(R|>J%oe˖xwyށ?룥ZY~? !֙Aa3b/)[^Jژ3gH44Xxg{XٚHrx[~LZ=lY4k#P(&RR&?,5zJm4I3Qvr%k CHWTNq5_a,U]rCv@ ?VRɥ!AHP ^kdj^rm*Wxx'[' :&S߮qYŤۮ'ed5HC[鞙;5,3jF4f5'"{7+wV}Hu$dtn B3@a)RH#Lm=֧QM\?w%5ufD^++Ğu+ͮ7W4@XW4k5N{'= 5s9m5mo=N*ˢ1rA\1VfkFݹS,c(ݴKn[7ȰJ2ytuh; =YACU ~%>}unބRRji )~>t@]3?S@{Q*=_~n;Jd @qzaKKG"n&47Gz =\lAsSNjÆx_&O_4p_CumzlB3V)Ey>ccw;/hB@a; Qm̹yԎeYr9|'SׯxJ,[e+Xz$MH{Kyu]Ni|RH!R .j+ٴy=s:RJln,Ϗ<( ip]w NXm.lAHO yyw/fxŝ\{l*R͟s 7u#&uHp-MMSGlܼ nD9RaBQ|54dZ^ލuY09溩K< 5 =r01t+&չpVۧ< )p=iZZ`K 'qشe'ona;ߝ )-Ũ)!La9.BR$@>3iʸRaRWkf۾ns)2d^Ͽݎ(p=)|+aԍku]7OHd1)H@Ø26;NKCKYԩArYˆDpt}?r)ǡar-}!5MXxvb9`)HF=m*h^]1Åֵ)i5rqK3ea60ޡ-\q RPͪw( 1m1sz[WB:Ub4?Km[ /iXeYf9QG`W4gb!D먀05M?o7'?0DKUE>n~.&t/6=CGڡX,R,1M4yg_!(f2]i\BυNZmYf :Nנž΃=UEy4Mj:LƐp ҇z8PvC g55&TXD:h]1yR-!d(_#aخx#I b4e2;xp1Bh/tδ{}ə*ya J:T-kz-qz8zc7lvTwSiQ_HwOitl=ks !J)g T wFB,tpk@/0P~K)U<'RYT76N}EyٵuuU5udEJy~k/vu{w1 S2JsD%PA$bRX"1:Kg!C@. pL)eCD:{`ax`t35B:`~+B#0~,>JfSӵIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-upgrade.png0000644000000000000000000000641011141035702023110 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< IDAThYyUՙ}.oFh@ 0 JČ1ҰJʎ3Ԍ5SefIR:85SS3C):jh0jHq@-ڂ,~7Mw ݣUV;s߷|3㏙W-|5U=u0WW4S5Ӷm0 `{fH0AC?^RG`@2quUH($5L-5_"@(:HUAA(:  $t(Ru@"#t {XcguG>kKof60ꪐu,e7Ȗ7O/r ط-XUBEpq+~b(gJpbgQKd2cIbO7u]H}?/2s~ Fqnv")qYNG  qseyrpg(q.ƪpoyd F?AΟGA "xtco tU,DǃZ`Tlq>}h'#lш>a]+ n ?߸kb`h+]PCy w.Sn<0d_pvòiD%?d} ݭ 1&޷P1n.TE  $47zwDS- ATFCk2 .~)OU9GJplwuYECGrMY*@^k^cDD=GwP =ެ5NJ),{)uxEL4o8;Yi 8 3h!.CH ^hCf7+g>S|B(T6P/{<ІǃT{YƈDZ˲~ -\)KFm#dƤv'@@ocLԀ&d,/,`g V1Ϡ6%iӪw-m듹_.:DK8]m 9AMc)F!+D42&RT pZ0( " Vd_(OĽOϡ_Yb⛪c?оt}[>O,(+cgrpO7&3!!%!ZPq#`>؀{.K3yƎ~H4#BЩ{sJApjR2$R* /kspy'QŽȮo^qs'l{pk+,#ytv 0.yEaBQRU[Vvt7d׊d6$’)xyag~Y7sִIe%o֧nXN^ yG [%PUfFCk g/֣#QQZRhap:!2 rZS&F@ǐiZ' d Gf3 ݤhg&@Fq篴b(DBJA|C:CqA$6lS&R G2 MBϡ0[ݸ!@<P#cggQx* $$ uw82k*ڹp1$p~=`҆Dv !E[hT8{`@ᘑz+o_) 愑w:'@@n~:=PՁncu]|~ c8]Q BAPP55#cw܌3q%C[zAܛB xLԘ9eLLFt>? aboQILBY(+)D&g(|uAnQc$jadLV02ư`PBmqIAG[# fh`@B;|paZPZ9kOس(Oj/> Jx~qhfQpӰ$|9jԷ͸."g#=n+ϿH(S!On `B^?T"޾E ED}}m9*&ܹ0hJo9t$"w-+xxha n4 1`oO=ڿE޾M2t>՗j}[1x*X u+jO$4>@G:NarӆYΡbhoA,e0= A5L94g+714fF2gc԰b|v ԆLs֖:Ά/M(I{H̵ {^@f~OI_Tȣ_u;󻖭N0%aIt Wfmz)#gʇ'3S[M5ol/xjb0:`AȗK3K"2hh-[@>\OgRN-/w kh4q|P7;5$k<{Wӱf<4tclf[A,I%3)r6 "CD {g =K4!g90lF2k\S %A78zS:UrJ'k3K>d^[W# L2ȃHQ7= z ̈=][]ikּ[Uc6@ڰ̂±HaIqX%k#a9n'2 ڰ"cۀTRTGO:ro>^cGZ98mI$3vWIM,ٚ{pfxK˧Y+JD栾@xQpyWW0fΦώ9t܈JB6RYw D#on=?{=.*)$"i)\̴^zk.[/@5܅u~$ wvzv[ys@K`f^t [p%ϻklo v@m?8G__-3"IENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-wait.png0000644000000000000000000000531511141035702022430 0ustar 00000000000000PNG  IHDR0%jsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< JIDATX{\}?9νX넧6 PDh%mʣJ$miiـڰR#JUTR+E)RL*5 EJ$( `Co>fg{gfמ]vi#;ιw~sF̌ն㍆s1)~R)F@90?wo !}'_[/w` P ǃ+qws0btwu1ޱmg!IcKQ^~,{rN.-eZߝw'ueɖ`mͅ %Tjn}쮇0sgK,hgܩV#W.޵e$gU yK|Kct~>s!ej.({~ mMG~@ɹx\|P5MȗV7;x?,洦_w}_ iOsR3f(㜡w'1t>;|K%_fC8X${^| 0ä!"( ("Ȩ "8+d(d0 ۙz;ܘmqLcۚ_]J/gC73s0/=\~c EκA] E2ЋL#>2"TL}<}3:b"[86uG#/k#G2nmU9K`MbyT0'@;ó|wy*_6c֜ڝSn\J|۴9\wx;~q,ocQ<y4X4,17?'vKZۭq`jl[slןNm NgjzR2C,5yrn1rXy8#GbV3?y۹/6 }|shhͫBrZ^T["i []z-Y-#sR?|bܠJeY_ovgTSQul[92{9`yyb#фɹ u"UfePl {߼ZYyE-w>&3 JI0ezH326H4 4!PdZ,R٧0JJ%UבVk"Uqa.]' $K@ h>IDa,O0,{B%û~$`q **xS*k"PTfe K73 xK K-:"ӗ>Y#u";LШw$iJRx"="r>09U 8KRXYB 1B(MC"Z x|Xu_T`HN)!TkA I!i0mbsbiJZI >-N 8 +5*UU!,!;Nc#)2 5;q$qv 01F̌Z:GH*`I)|/NMdHىlaa}eUET0XO*$ =IBhg$ i:T"Nh5wMk&/Oq8urucI*R$3),J(?B*g8C@8|">;?qwi%[-b>BrpV(rhpdBsQ1"F:k(i4LN#H ~(Wف>aOv٪kjMj_s"D 2Bޟ|s][m <)c\7K",ܵ]0k8X-sʮ.*LYwmηsSSz_1|꯭~Q²y`]ꜘZ9'Z-<39 #zaFE/zυ! =X70)%dE>%"- $V}ne˖,Zc’P.:U֝޲eݻ^|{S%MBXhW@H hDHIlUG±cGI+^ /fe,H4O7eٝ;wa+o (@30"DAZVyЁ :qtxrG&&RjwV>_mUмgz."0t\-Lh_lT{IIENDB`aptdaemon-1.1.1+bzr982/data/icons/48x48/status/aptdaemon-working.png0000644000000000000000000000625511311115757023160 0ustar 00000000000000PNG  IHDR00WsBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< *IDATh}p՝?< KQԘ60hrlQ* ؂e}3};\O?z f*C/ܰذ;?=-̑g9@p?7B 8@hb lHSxP?qwb;xDg$<%k"\u7w.xTn}WϺ5n #5H# zZHd;; XU"]RƄ|(Cgo4_>Rd׈֯ ߎ|@OwO<?A)Tׅ dV# b.-iL\an.t_"KxUA_0'-޾xK_5 ~Exf¾Ζx{󇞧ܝ[hUGA$)PC^ag{11*fV=[vA0RjdBsmGCUX)o_ڶfp쾅m ItdT#ǻ=̙P]*=s Mu˲h6Wf/,e󦍎7vN7W7*tzif,{5ڭkoƙH$|>tM{v:izeY|/Hy.@e[osԩSC92( ~QI^$ hd{MLR M0M@ R ) u]0 xR8:\㱟? A[ Mw~MBH˓~>;r}8x7H|y^(<uٱWZ+A tM|kDA'~ q^6Auʹ>$_EJICCCs;Ǟt6sKשk2n0|a,e躞67M)%!; PSSnmmf\)Dg%h>~/'M!L`oaT$MyU8~BLD>?:r9Lێfiuv˲sϽmY8T__o]4tZYCc(OUu9躎X,,yPmvVku]lqǡ2|]wF֖~ꩧn4)GE]čQQQ2C6}]p*3: X0u] kkk> )7,h Hh_CG3$`vN|onB(<'`uQJnQ^9"lj$ )SF"ixeYNOOD/@>&])$|r2vL2+\OpLuu˲:R p޽RjL@nM2_]NeƞjqX`m~d3|q'E bM/tۡa+8>LGt.dD$I,!]]]O>dH<fԄikma|U / zBT&Mu]8ֶm4HCPQy(TN`(!b}gJ}ʼCƏ9+?45d|n{8B#"Ah9cm˯ Vg: J\̥,gzu e ZFR6q4MCJD"YGїɟrV=5f_)~>Z^ 2Nn4M#JNa(Āf̘qO<R" /xې 2J;wn<~R|ǻwknnn3fL5\SVZZgz.D"gϞ=]mmmۋjfϞ=2(qs TBd̥HVh466vWUU-^1cFyCC۷Ö-[ŋ3uΝ[뺮a6%%%466>|xMI$ W\p̙?܎=3'i!$\8mɒ%7,[z===ٽ9y7qٶm~J.\Ȳ*-%7lذ9 xSokkKE"kҤI(mfoQS@lr:{_UY_~bQ )D8X,>rNCTm.h% Md2C)|۶mIq{([ْΖSJ'/"Y:d'&)LIV>_8iWPdX2*Ů?/f{IENDB`aptdaemon-1.1.1+bzr982/data/icons/scalable/status/0000755000000000000000000000000011141032573017756 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-add.svg0000644000000000000000000003651511141035702023204 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-cleanup.svg0000644000000000000000000006316711141035702024106 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-delete.svg0000644000000000000000000007034611141035702023716 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-download.svg0000644000000000000000000003730011141035702024254 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-resolve.svg0000644000000000000000000005510411141040213024117 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-setup.svg0000644000000000000000000004437611141035702023620 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-update-cache.svg0000644000000000000000000015116611141035702024777 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-upgrade.svg0000644000000000000000000006047111141035702024101 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/icons/scalable/status/aptdaemon-wait.svg0000644000000000000000000005030411141035702023410 0ustar 00000000000000 aptdaemon-1.1.1+bzr982/data/lintian/debian/0000755000000000000000000000000011764346465016455 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/lintian/ubuntu/0000755000000000000000000000000011764346465016555 5ustar 00000000000000aptdaemon-1.1.1+bzr982/data/lintian/debian/aptdaemon.profile0000644000000000000000000000034611764346465022012 0ustar 00000000000000# The default profile installing local software packages used by aptdaemon Profile: debian/aptdaemon Extends: debian/ftp-master-auto-reject Disable-Tags: dir-or-file-in-opt, missing-dependency-on-libc, statically-linked-binary aptdaemon-1.1.1+bzr982/data/lintian/ubuntu/aptdaemon.profile0000644000000000000000000000257412154025611022074 0ustar 00000000000000# The default profile installing local software packages used by aptdaemon Profile: ubuntu/aptdaemon Extends: debian/aptdaemon Disable-Tags: FSSTND-dir-in-usr, FSSTND-dir-in-var, arch-dependent-file-in-usr-share, binary-file-compressed-with-upx, binary-or-shlib-defines-rpath, control-interpreter-in-usr-local, copyright-contains-dh_make-todo-boilerplate, copyright-file-compressed, copyright-file-is-symlink, copyright-refers-to-incorrect-directory, copyright-refers-to-old-directory, debian-rules-missing-required-target, debian-rules-not-a-makefile, description-is-dh_make-template, description-synopsis-is-empty, dir-or-file-in-srv, dir-or-file-in-var-www, embedded-library, extended-description-is-empty, file-in-etc-not-marked-as-conffile, file-in-usr-marked-as-conffile, install-info-used-in-maintainer-script, library-in-debug-or-profile-should-not-be-stripped, magic-arch-in-arch-list, missing-build-dependency, mknod-in-maintainer-script, no-architecture-field, no-copyright-file, no-maintainer-field, no-shlibs-control-file, package-installs-python-bytecode, section-is-dh_make-template, statically-linked-binary, udeb-uses-unsupported-compression-for-data-tarball, uploader-address-is-on-localhost, uploader-address-malformed, uploader-name-missing, usr-share-doc-symlink-to-foreign-package, usr-share-doc-symlink-without-dependency, aptdaemon-1.1.1+bzr982/doc/aptd.10000644000000000000000000000414511367227626014443 0ustar 00000000000000.\" groff -man -Tascii foo.1 .TH APTD 1 "December 2009" aptdaemon "User manual" .SH NAME aptd \- package managing daemon proving a D-Bus interface .SH SYNOPSIS .B aptd .RI [ OPTIONS ] .SH DESCRIPTION .B aptd allows to perform package management tasks, e.g. installing or removing software, using a D-Bus interface. The privileges are handled by PolicyKit so the client application doesn't need to run as root. Furthermore aptd is started by D-Bus activation only when an user calls a method. .SH OPTIONS .IP "-d, --debug" Show additional information on the command line. .IP "-h, --help" Show information about the usage of the command. .IP "-r, --replace" Replace another aptd instance if it is running. .IP "-p PROFILE_FILE" Write profiling data to .I PROFILE_FILE using Python's profiler. This is only of use to developers. .IP "-t, --disable-timeout" Do not shutdown the daemon after an idle time. .IP "--dummy" Instead of applying the changes to the system only show a progress. This option is only usable for developers to locate problems in client applications. .SH FILES .TP .I /etc/apt/apt.conf.d/20dbus Adds a small post update hook which will emit the org.debian.apt.CacheChanged signal on the system D-Bus to indicate that the cache has been changed and a possible running aptd instance should reloade its internal cache. .TP .I /usr/share/polkit-1/actions/org.debian.apt.policy The PolicyKit definitions of the privileges used by aptdaemon, e.g. to install packages. To change the privileges please have a look at .BR PolicyKit.conf (1). .TP .I /etc/dbus-1/system.d/org.debian.apt.conf The D-Bus configuration of the org.debian.apt name space. .SH DIAGNOSTICS By default aptdaemon logs to the syslog facility AptDaemon. Furthermore you can use the -d option to get additional information on the command line. .SH HOMEPAGE https://launchpad.net/aptdaemon .SH BUGS You can report bugs at the Launchpad site of aptdaemon: https://bugs.launchpad.net/aptdaemon/+filebug .SH AUTHOR Sebastian Heinlein .SH SEE ALSO .BR aptdcon (1), .BR org.debian.apt (7), .BR org.debian.apt.transaction (7), .BR PolicyKit.conf (7) aptdaemon-1.1.1+bzr982/doc/aptdcon.10000644000000000000000000000764411417262360015140 0ustar 00000000000000.\" groff -man -Tascii foo.1 .TH APTDCON 1 "December 2009" aptdaemon "User manual" .SH NAME aptdcon \- command line client for aptdaemon .SH SYNOPSIS .B aptdcon .RI [ OPTIONS ] .SH DESCRIPTION .B aptdcon allows to perform package management tasks, e.g. installing or removing software, using aptdaemon. There isn't any need to be root to run this programme. .SH OPTIONS .IP "-v, --version" Show the version number of the aptdcon. .IP "-h, --help" Show information about the usage of the command. .IP "-d, --debug" Show additional information on the command line. .IP "-i, --install PACKAGES" Install the list of PACKAGES. If you want to install more than one package you have to put the package names into quotation marks. .IP "--reinstall PACKAGES" Reinstall the list of PACKAGES. If you want to reinstall more than one package you have to put the package names into quotation marks. .IP "-r, --remove PACKAGES" Remove the list of PACKAGES. If you want to remove more than one package you have to put the package names into quotation marks. .IP "-p, --purge PACKAGES" Purge the list of PACKAGES. If you want to purge more than one package you have to put the package names into quotation marks. .IP "-u, --upgrade PACKAGES" Upgrade the list of PACKAGES. If you want to upgrade more than one package you have to put the package names into quotation marks. .IP --upgrade-system Upgrade the whole system. .IP --fix-install Try to complete a previously cancelled installation by calling "dpkg --configure -a". .IP --fix-depends Try to resolve unsatisified dependencies. Attention: Currently you don't get a confirmation of the changes, which makes this method quite dangerous since it could remove a lot of packages. .IP "--add-vendor-key PUBLIC_KEY_FILE" Install the PUBLIC_KEY_FILE to authenticate and trust packages singed by the vendor. .IP "--add-vendor-key-from-keyserver PUBLIC_KEY_ID" Download and install the PUBLIC_KEY_ID to authenticate and trust packages singed by the vendor. Requires the --keyserver to be set. .IP "--key-server KEYSERVER" Download vendor keys from the given KEYSERVER. .IP "--remove-vendor-key FINGERPRINT" Remove the vendor key of the given FINGERPRINT to no longer trust packages from this vendor. .IP "--add-repository \'DEB_LINE\'" Allow to install software from the repository specified by the given DEB_LINE. You have to put quotation marks around the DEB_LINE since it normally contains spaces: .I \'deb http://ftp.de.debian.org/debian unstable main\' .IP "--sources-file SOURCES_FILE" Specify an alternative sources file to which the new repository should be written. SOURCES_FILE should be only the basename: .I backports.list .IP --list-trusted-vendors Show all trusted software vendors and theirs keys. .IP --hide-terminal Do not attach to the interactive terminal of the underlying dpkg call. .IP --allow-unauthenticated Allow to install packages which are not from a trusted vendor. .SH EXAMPLES The following command will install the package xterm and remove the package eterm in the same run: .RS $ aptdcon --install "xterm" --remove "eterm" .RE .PP To handle more than one package the names have to be put into quotation marks. The following command will install xterm and eterm: .RS $ aptdcon --install "xterm eterm" .RE .PP The following command will add the backport repository to the sources.list in a separate file .I /etc/apt/sources.list.d/backports.list : .RS $ aptdcon --sources-file backports.list \\ .br --add-repostiry "deb http://archive.backports.org/debian stable main" .RE .SH DIAGNOSTICS By default aptdaemon logs to the syslog facility AptDaemon. Furthermore you can use the -d option to get additional information on the command line. .SH HOMEPAGE https://launchpad.net/aptdaemon .SH BUGS You can report bugs at the Launchpad site of aptdaemon: https://bugs.launchpad.net/aptdaemon/+filebug .SH AUTHOR Sebastian Heinlein .SH SEE ALSO .BR aptd (1), .BR org.debian.apt (7), .BR org.debian.apt.transaction (7) aptdaemon-1.1.1+bzr982/doc/examples/0000755000000000000000000000000011442144104015222 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/org.debian.apt.70000644000000000000000000001545012116740534016304 0ustar 00000000000000.\" groff -man -Tascii foo.1 .TH org.debian.apt 7 "December 2009" "aptdaemon" "D-Bus Interface" .SH NAME org.debian.apt \- the main interface of aptdaemon .SH SYNOPSIS The daemon is accessed through the D-Bus object at .IR /org/debian/apt . Which provides the following interface. .SH DESCRIPTION .SS METHODS .TP .B AddRepository .BI "AddRepository\t(in 's' " type "," .br .BI "\t\tin 's' " uri "," .br .BI "\t\tin 's' " dist "," .br .BI "\t\tin 'as' " comps "," .br .BI "\t\tin 's' " comment "," .br .BI "\t\tin 's' " sourcesfile ")" .RS .PP Add a new repository to the sources list file. The repository has to define the type (e.g. deb or deb-src), uri (e.g. http://archive.debian.org/debian), the distribution (e.g. stable) and a list of components (e.g. main). .PP Optionally a comment and an alternative sources.list file can be specified. .RE .TP .B EnableDistroComponent .BI "EnableDistroComponent\t(in 's' " comp ")" .RS .PP Enable a component for all distro repositories, e.g. main or universe. .RE .TP .B GetTrustedVendorKeys .BI "GetTrustedVendorKeys\t(out 'as' " keys ) .RS .PP Return the GnuPG keys which are used to authenticate packages. .RE .TP .B GetAtiveTransactions .BI "GetActiveTransactions\t(out 'as' " tids ) .RS .PP Return an array of the currently queued transactions. .RE .TP .B Quit .br .BI "Quit\t()" .RS .PP Request the shutdown of the daemon. The daemon will finish a currently running transaction before. .RE .SS TRANSACTION BASED METHODS The following methods are handled by transactions. By calling the methods a new transaction will be created for the task. The return value of the method is the D-Bus object path of the corresponding transaction. The transaction can be modified, to use an http proxy or to run in a specific language by setting the corresponding properties on the .BR org.debian.apt.transaction (7) interface. Afterwards the transaction has to be queued for processing by calling its Run method on the .BR org.debian.apt.transaction (7) interface. .TP .B UpdateCache .BI "UpdateCache\t(out 's' " tid ) .RS .PP Return the id of a newly created transaction which will fetch the latest meta data from the repositories and rebuild the cache of available and installed packages. .RE .TP .B UpdateCachePartially .BI "UpdateCachePartially\t(in 's' " sources_list , .br .BI "\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will fetch the latest meta data from the repositories specified in the given sources.list snippet only and rebuild the cache of available and installed packages. .RE .TP .B InstallPackages .BI "InstallPackages\t(in 'as' " package_names , .br .BI "\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will install the packages of the given names. .PP Optionally the to be installed version can be specified by appending a "=" and the version to the package name, e.g. "xterm=256-1". .RE .TP .B InstallFile .BI "InstallFile\t(in 's' " path , .br .BI "\t\tout 's' " tid ) .RS .PP Return the id of a newly create transaction which will install a local *.deb package file at the given .IR path . .RE .TP .B UpgradePackages .BI "UpgradePackages\t(in 'as' " package_names , .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will upgrade the packages of the given names to their latest version. .PP Optionally the to be installed version can be specified by appending a "=" and the version to the package name, e.g. "xterm=256-1". .RE .TP .B RemovePackages .BI "RemovePackages\t(in 'as' " package_names , .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will remove the packages of the given names. .PP Optionally the version of the to be removed packages can be specified by appending a "=" and the version to the package name, e.g. "xterm=256-1". .RE .TP .B UpgradeSystem .BI "UpgradeSystem\t(in 'b' " safe_mode , .br .BI "\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will upgrade the whole system. .PP If in safe mode only already installed packages will be updated. Updates which require to remove installed packages or to install additional packages will be skipped. .RE .TP .B CommitPackages .BI "CommitPackages\t(in 'as' " install , .br .BI "\t\t\tin 'as' " reinstall, .br .BI "\t\t\tin 'as' " remove, .br .BI "\t\t\tin 'as' " purge, .br .BI "\t\t\tin 'as' " upgrade , .br .BI "\t\t\tin 'as' " downgrade , .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will perform a complex install/removal task at once. .IR Install ", " reinstall ", " remove ", " purge " and " upgrade are lists of package names. .PP Optionally the version of the to be removed packages or the version of the package which should be installed can be specified by appending a "=" and the version to the package name, e.g. "xterm=256-1". .RE .TP .B AddVendorKeyFromFile .BI "AddVendorKeyFromFile\t(in 's' " path , .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will install the public GnuPG key at the given .I path to the list of trusted software vendors. The list will be used to authenticate packages. .RE .TP .B AddVendorKeyFromKeyserver .BI "AddVendorKeyFromKeyserver\t(in 's' " keyid , .br .BI "\t\t\tin 's' " keyserver, .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will download and install the public GnuPG key of the .I keyid from the given .I keyserver to the list of trusted software vendors. The list will be used to authenticate packages. .RE .TP .B RemoveVendorKey .BI "RemoveVendorKey\t(in 's' " fingerprint , .br .BI "\t\t\tout 's' " tid ) .RS .PP Return the id of a newly created transaction which will remove the public GnuPG key with the given .I fingerprint from the list of trusted software vendors. The list will be used to authenticate packages. .RE .TP .B FixBrokenDepends .BI "FixBrokenDepends\t(out 's' " tid ) .RS .PP Return the id of a newly created transaction which will try to resolve unsatisfied dependencies by installing required packages or removing conflicting ones. .RE .TP .B FixIncompleteInstall .BI "FixIncompleteInstall\t(out 's' " tid ) .RS .PP Return the id of a newly created transaction which will try to complete previously failed installations by calling "dpkg --configure -a". .RE .SS SIGNALS .TP .B ActiveTransactionsChanged .BI "ActiveTransactionsChanged\t('s' " active , .br .BI "\t\t\t\t'as' " queued ) .RS .PP The signal is used to report changes of the currently running or queued transactions. If there's any active transaction active will be an empty string. .RE .SH HOMEPAGE https://launchpad.net/aptdaemon .SH BUGS You can report bugs at the Launchpad site of aptdaemon: https://bugs.launchpad.net/aptdaemon/+filebug .SH AUTHOR Sebastian Heinlein .SH SEE ALSO .BR org.debian.apt.transaction (7), .BR aptd (2), .BR aptdcon (2) aptdaemon-1.1.1+bzr982/doc/org.debian.apt.transaction.70000644000000000000000000001612011450414462020621 0ustar 00000000000000.\" groff -man -Tascii foo.1 .TH org.debian.apt.transaction 7 "December 2009" "aptdaemon" "D-Bus Interface" .SH NAME org.debian.apt.transaction \- the main interface of an aptdaemon transaction .SH SYNOPSIS Each transaction is represented as an unique D-Bus object, e.g. at the D-Bus path .IR /or/debian/apt/transaction/12123-123-123213 . Which provides the following interface. .SH DESCRIPTION .SS METHODS .TP .B ProvideMedium .BI "ProvideMedium\t(in 's' " medium ) .RS .PP Continue a paused transaction which is waiting for the given .IR medium . .PP If a media change is required to e.g. install packages from a CD/DVD the transaction will be paused and the RequiredMedium property changed to an array of the .IR "medium label" " and its " "mount point" . Furthermore the MediumRequired signal will be emitted. .RE .TP .B ResolveConfigFileConflict .BI "ResolveConfigFilePrompt\t(in 's' " config , .br .BI "\t\t\t\tin 's' " answer ) .RS .PP Continue a paused transaction which is waiting for an answer to handle a configuration file conflict. .I Config is the path to the current configuration file and .I answer can be either "replace" or "keep". .PP If a later config file is shipped in a package which overrides some user modifications the transaction will be paused and the ConfigFileConflict property of the transaction will be set to an array of the old and new configuration file path. The later one is supposed to replace the former one. Furthermore the ConfigFileConflict signal will be emitted. .RE .TP .B Simulate .BI "Simulate\t()" .RS .PP Simulate the transaction and calculate dependencies, required disk space and download size. If a transaction would fail the corresponding error will be raised. .RE .TP .B Run .BI "Run\t()" .RS .PP Queue the transaction for processing. Afterwards there cannot be made any further changes to the transaction, e.g. modifing the http proxy. .RE .TP .B Cancel .BI "Cancel\t()" .RS .PP Cancel the transaction if possible. .RE .SS SIGNALS .TP .B Finished .BI "Finished\t('s' " exit_state ) .RS .PP The signal will be emitted when the transaction has been processed. The .I exit_state indicates if the transaction was completed, cancelled or failed. .RE .TP .B MediumRequired .BI "MediumRequired\t('s' " label , .br .BI "\t\t\t's' " mount_point ) .RS .PP The signal will be emitted if the transaction has been paused and waits for a media change to install packages. .RE .TP .B ConfigFileConflict .BI "ConfigFileConflict\t('s' " old , .br .BI "\t\t\t's' " new ) .RS .PP The signal will be emitted if the transaction has been paused because a .I new configuration file is shipped in a package which would override changes by the user in the .I old configuration file. .RE .TP .B PropertyChanged .BI PropertyChanged\t('s' " property_name , .br .BI "\t\t\t'v' " value ) .RS .PP The signal will be emitted if one of the following properties has changed. .RE .SS PROPERTIES The properties of the transaction are available through the Get And GetAll methods of the D-Bus properties interface and can be changed using the Set method. .TP .BR Role " read 's'" The role enum of the transaction, e.g. update-cache. .TP .BR Status " read 's'" The current status enum of the transaction, e.g. downloading .TP .BR StatusDetails " read 's'" A clear text message describing the current status. .TP .BR Progress " read 'i'" The progress of the transaction in percent. .TP .BR ProgressDownload " read 'sssiis'" The last download progress information recieved from APT. It is an array of the URI, status enum, short description, full size, already downloaded size and an error or status message. .TP .BR Space " read 'i'" The additional disk space in Bytes which will be required by the transaction. The .B Simulate method has to be called to calculate the download size. .TP .BR Download " read 'i'" The required download size in Bytes of the transaction. The .B Simulate method has to be called to calculate the download size. .TP .BR Packages " read 'a(a(s)a(s)a(s)a(s)a(s)a(s)a(s))'" The lists of packages which are initially queued to be installed, reinstalled, removed, purged, upgraded, downgraded or skipped from upgrading. .TP .BR Dependenciens " read 'a(a(s)a(s)a(s)a(s)a(s)a(s)a(s))'" The lists of packages which are additionally required to be installed, reinstalled, removed, purged, upgraded, downgraded or skipped from upgrading. The .B Simulate method has to be called to calculate the dependencies. .TP .BR Cancellable " read 'b'" If the transaction can be cancelled. .TP .BR TerminalAttached " read 'b'" If the master pty which has to be set using the Terminal property is attached as controlling terminal to the underlying dpkg call. .TP .BR RequiredMedium " read 'a(ss)'" The transaction will be stopped if a media change is required to install packages. This property provides the .I label and the .I mount point of the requested medium. .TP .BR ConfigFileConflict " read 'a(ss)'" The transaction will be stopped if a configuration file shipped in the package overrides changes of the user. This property provides the path to .I current and the path to the .I new configuration file. .TP .BR ExitState " read 's'" The exit state enum of the transaction. .TP .BR Error " read 'a(ss)'" If an error occured this property provides the .I error enum and the .I error message. .TP .BR Locale " read-write 's'" This is the locale which will be used for translating status and error messages of apt, e.g. de_DE@utf-8. .TP .BR Terminal " read-write 's'" The path to the master pty which will be the controlling terminal of the underlying dpkg call. This allows to have an interactive terminal session. .TP .BR DebconfSocket " read-write 's'" The path to the socket which will be used by the debconf passthrough backend to forward the debconf communication to the user session. .TP .BR Paused " read 'b'" If the transaction is paused, e.g. waiting for a conflict file resolution or media change. .TP .BR Unauthenticated " read 'as'" List of unauthenticated packages which are going to be installed. .TP .BR RemoveObsoletedDepends " read-write 'b'" If obsoleted dependencies of to be removed packages which have been installed automatically should be removed too. .TP .BR AllowUnauthenticated " read-write 'b'" If it is allowed to install not authenticated software packages. .TP .BR HttpProxy " read-write 's'" The URL of an http proxy which should be used to download repository meta data and package files, e.g. http://myproxy.athome:8080. You should set the system wide proxy if you use this feature regularly. .BR MetaData " read-write 'a{ss}'" A dictonary which allows client application to store additional data in the transaction. The key name has to include an identifier of the client application separated by an unterscore from the key name, e.g. sc_icon for the application icon name stored by software-center. The property cannot be changed anymore after the transaction has been queued. .SH HOMEPAGE https://launchpad.net/aptdaemon .SH BUGS You can report bugs at the Launchpad site of aptdaemon: https://bugs.launchpad.net/aptdaemon/+filebug .SH AUTHOR Sebastian Heinlein .SH SEE ALSO .BR org.debian.apt.transaction (7), .BR aptd (2), .BR aptdcon (2) aptdaemon-1.1.1+bzr982/doc/source/0000755000000000000000000000000011435435716014722 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/examples/chained.py0000644000000000000000000000265012375366203017206 0ustar 00000000000000#!/usr/bin/python import dbus from gi.repository import GLib from aptdaemon.client import AptClient from aptdaemon.defer import inline_callbacks from aptdaemon import policykit1 loop = GLib.MainLoop() def on_finished(trans, exit): loop.quit() print exit @inline_callbacks def main(): repo = ["deb", "http://packages.glatzor.de/silly-packages", "sid", ["main"], "Silly packages", "silly.list"] aptclient = AptClient() bus = dbus.SystemBus() name = bus.get_unique_name() # high level auth try: # Preauthentication action = policykit1.PK_ACTION_INSTALL_PURCHASED_PACKAGES flags = policykit1.CHECK_AUTH_ALLOW_USER_INTERACTION yield policykit1.check_authorization_by_name(name, action, flags=flags) # Setting up transactions trans_add = yield aptclient.add_repository(*repo) trans_update = yield aptclient.update_cache("silly.list") trans_inst = yield aptclient.install_packages(["silly-base"]) yield trans_inst.set_allow_unauthenticated(True) # Check when the last transaction was done trans_inst.connect("finished", on_finished) # Chaining transactions yield trans_update.run_after(trans_add) yield trans_inst.run_after(trans_update) yield trans_add.run() except Exception as error: print error loop.quit() if __name__ == "__main__": main() loop.run() aptdaemon-1.1.1+bzr982/doc/source/_ext/0000755000000000000000000000000011437534042015653 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/source/_static/0000755000000000000000000000000011435435716016350 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/source/_templates/0000755000000000000000000000000011435435716017057 5ustar 00000000000000aptdaemon-1.1.1+bzr982/doc/source/aptdaemon.client.rst0000644000000000000000000000764211447324167020712 0ustar 00000000000000:mod:`aptdaemon.client` --- The client module ============================================= Introduction ------------ Aptdaemon comes with a client module which provides a smoother interface on top of the D-Bus interface. It provides GObjects of the daemon and each transaction. .. _life_cycle: Life cycle of a transaction based action ---------------------------------------- At first you initialize an AptClient instance. >>> from aptdaemon import client >>> >>> apt_client = client.AptClient() Secondly you call the whished action, e.g. updating the package cache. It will give you a new transaction instance. >>> transaction = apt_client.update() The transaction has not been started yet. So you can make some further adjustements to it, e.g. setting a different language: >>> transaction.set_locale("de_DE") ... or setup the monitoring of the transaction: >>> transaction.connect("finished", on_transaction_finished) You can then put the transaction on the queue by calling its :meth:`run()` method: >>> transaction.run() If you don't need the underlying transcation instance of an action, you can alternatively set the wait argument to True. The AptClient method will return after the transaction is done: >>> apt_client.update_cache(wait=True) This can also be used with asynchronous programming, see below. Asynchronous programming ------------------------ In the above examples simple synchronous calls have been made to the D-Bus. Until these calls return your whole application is blocked/frozen. In the case of password prompts this can be quite long. So aptdaemon supports the following asynchronous styles: D-Bus style callbacks ^^^^^^^^^^^^^^^^^^^^^ Since the client module is basically a wrapper around D-Bus calls, it provides a pair of reply_handler and error_handler for each method. You are perhaps already familiar with those if you have written a Python D-Bus client before: >>> def run(trans): ... trans.run(reply_handler=trans_has_started, error_handler=on_error) ... >>> def trans_has_started(): ... pass ... >>> def on_error(error): ... raise error ... >>> client = AptClient() >>> client.update(reply_handler=run, error_handler=on_error) Deferred callbacks ^^^^^^^^^^^^^^^^^^ Aptdaemon uses a simplified version of Twisted deferreds internally, called python-defer. But you can also make use of them in your application. The inline_callbacks decorator of python-defer allows to write asynchronous code in a synchronous way: >>> @defer.inline_callbacks ... def update_cache(): ... apt_client = client.AptClient() ... try: ... transaction = yield apt_client.update() ... except errors.NotAuthorizedError: ... print "You are not allowed to update the cache!" ... raise StopIteration ... yield transaction.set_locale("de_DE") ... yield transaction.run() ... print "Transaction has started" .. _chaining: Chaining Transactions --------------------- It is possible to chain transactions. This allows to add a simple dependency relation, e.g. you want to add a new repository, update the cache and finally install a new package. >>> client = aptdaemon.client.AptClient() >>> trans1 = client.add_repository("deb", [...]) >>> trans2 = client.update_cache() >>> trans3 = client.install_packages(["new-package"]) >>> trans2.run_after(trans1) >>> trans3.run_after(trans2) >>> trans1.run() If a transaction in a chain fails all other ones which follow will fail too with the :data:`enums.EXIT_PREVIOUS_FAILED` exit state. Class Reference --------------- .. autoclass:: aptdaemon.client.AptClient :members: .. autoclass:: aptdaemon.client.AptTransaction :members: Function Reference ------------------ .. autofunction:: aptdaemon.client.get_transaction .. autofunction:: aptdaemon.client.get_aptdaemon aptdaemon-1.1.1+bzr982/doc/source/aptdaemon.enums.rst0000644000000000000000000000020711435435716020551 0ustar 00000000000000:mod:`aptdaemon.enums` --- The enums module =========================================== .. automodule:: aptdaemon.enums :members: aptdaemon-1.1.1+bzr982/doc/source/aptdaemon.gtk3widgets.rst0000644000000000000000000000024311763060771021660 0ustar 00000000000000:mod:`aptdaemon.gtk3widgets` --- The gtk3widgets module ===================================================== .. automodule:: aptdaemon.gtk3widgets :members: aptdaemon-1.1.1+bzr982/doc/source/conf.py0000644000000000000000000001473511437534042016225 0ustar 00000000000000# -*- coding: utf-8 -*- # # aptdaemon documentation build configuration file, created by # sphinx-quickstart on Thu Aug 26 06:52:32 2010. # # This file is execfile()d with the current directory set to its containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import sys, os # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath('../../')) sys.path.insert(0, os.path.abspath('_ext/')) # -- General configuration ----------------------------------------------------- # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.intersphinx', 'sphinx.ext.coverage', 'sphinx.ext.ifconfig', 'signals'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8' # The master toctree document. master_doc = 'index' # General information about the project. project = u'aptdaemon' copyright = u'2010, Sebastian Heinlein' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = '0.4' # The full version, including alpha/beta/rc tags. release = '0.4.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of documents that shouldn't be included in the build. #unused_docs = [] # List of directories, relative to source directory, that shouldn't be searched # for source files. exclude_trees = [] # The reST default role (used for this markup: `text`) to use for all documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # -- Options for HTML output --------------------------------------------------- # The theme to use for HTML and HTML Help pages. Major themes that come with # Sphinx are currently 'default' and 'sphinxdoc'. html_theme = 'default' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_use_modindex = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = '' # Output file base name for HTML help builder. htmlhelp_basename = 'aptdaemondoc' # -- Options for LaTeX output -------------------------------------------------- # The paper size ('letter' or 'a4'). #latex_paper_size = 'letter' # The font size ('10pt', '11pt' or '12pt'). #latex_font_size = '10pt' # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('index', 'aptdaemon.tex', u'aptdaemon Documentation', u'Sebastian Heinlein', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # Additional stuff for the LaTeX preamble. #latex_preamble = '' # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_use_modindex = True # Example configuration for intersphinx: refer to the Python standard library. intersphinx_mapping = {'http://docs.python.org/': None} aptdaemon-1.1.1+bzr982/doc/source/dbus.rst0000644000000000000000000003116111625663631016413 0ustar 00000000000000The D-Bus API of the aptdaemon ============================== Aptdaemon provides two D-Bus interfaces on the system bus. org.debian.apt --- The aptdaemon interface ------------------------------------------ This is the main interface which allows you to perform package managing tasks. It is proivded by the aptdaemon object at ``/org/debian/apt``. There are two kind of tasks: ones which are performed immediately and ones which are queued up in transaction and performed in a sequence. Non-transaction based methods ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automethod:: aptdaemon.core.AptDaemon.GetTrustedVendorKeys() -> array(string) .. automethod:: aptdaemon.core.AptDaemon.Quit() Transaction based methos ^^^^^^^^^^^^^^^^^^^^^^^^ Instead of performing the task immediately, a new transaction will be created and the method will return the D-Bus path of it. Afterwards you can simulate the transaction or put it on the queue. :ref:`life_cycle` and :ref:`chaining` are described in the Python client documentation with code examples. .. automethod:: aptdaemon.core.AptDaemon.UpdateCache() -> string .. automethod:: aptdaemon.core.AptDaemon.UpdateCachePartially(sources_list : string) -> string .. automethod:: aptdaemon.core.AptDaemon.AddRepository(src_type : string, uri : string, dist : string, comps : array(string), comment : string, sourcesfile : string) -> string .. automethod:: aptdaemon.core.AptDaemon.EnableDistroComponent(component : string) -> string .. automethod:: aptdaemon.core.AptDaemon.InstallFile(path : string, force : boolean) -> string .. automethod:: aptdaemon.core.AptDaemon.InstallPackages(package_names : array(string)) -> string .. automethod:: aptdaemon.core.AptDaemon.RemovePackages(package_names : array(string)) -> string .. automethod:: aptdaemon.core.AptDaemon.UpgradePackages(package_names : array(string)) -> string .. automethod:: aptdaemon.core.AptDaemon.CommitPackages(install : array(string), reinstall : array(string), remove : array(string), purge : array(string), upgrade : array(string), downgrade : array(string)) -> string .. automethod:: aptdaemon.core.AptDaemon.UpgradeSystem(safe_mode : boolean) -> string .. automethod:: aptdaemon.core.AptDaemon.FixIncompleteInstall() -> string .. automethod:: aptdaemon.core.AptDaemon.FixBrokenDepends() -> string .. automethod:: aptdaemon.core.AptDaemon.AddVendorKeyFromKeyserver(keyid : string, keyserver : string) -> string .. automethod:: aptdaemon.core.AptDaemon.AddVendorKeyFromFile(path : string) -> string Signals ^^^^^^^ The following singal can be emitted on the org.debian.apt interface. .. automethod:: aptdaemon.core.AptDaemon.ActiveTransactionsChanged(current : string, queued : array(string)) Properties ^^^^^^^^^^ The daemon interface provides a set of properties which can be accessed and modified through :meth:`Set()`, :meth:`Get()` and :meth:`GetAll()` methods of the ``org.freedesktop.DBus.Properties`` interface. See the `D-Bus specification `_ for more details. The following properties are available: .. attribute:: AutoCleanInterval : i The interval in days in which the cache of downloaded packages should should be cleaned. A value of 0 disables this feature. *writable* .. attribute:: AutoDownload : b If available upgrades should be already downloaded in the background. The upgrades won't get installed automatically. *writable* .. attribute:: AutoUpdateInterval : i The interval in days in which the software repositories should be checked for updates. A value of 0 disables the automatic check. *writable* .. attribute:: PopConParticipation : b If statistics about installed software and how often it is used should be sent to the distribution anonymously. This helps to determine which software should be shipped on the first install CDROMs and to make software recommendations. *writable* .. attribute:: UnattendedUpgrade : i The interval in days in which updates should be installed automatically. A value of 0 disables this feature. *writable* .. attribute:: RebootRequired : b Set if a reboot is required in order to complete the update. *readonly* org.debian.apt.transaction --- The transaction interface -------------------------------------------------------- This is the main interface of a transaction object. It allows to control and monitor the transaction. Transactions are created by using the org.debian.apt interface of aptdaemon. The path of a transaction object consists of ``/org/debian/apt/transaction/`` and an unique identifier. Methods ^^^^^^^ .. automethod:: aptdaemon.core.Transaction.Run() .. automethod:: aptdaemon.core.Transaction.RunAfter(tid : string) .. automethod:: aptdaemon.core.Transaction.Cancel() .. automethod:: aptdaemon.core.Transaction.Simulate() .. automethod:: aptdaemon.core.Transaction.ProvideMedium(medium : string) .. automethod:: aptdaemon.core.Transaction.ResolveConfigFileConflict(config : string, answer : string) Signals ^^^^^^^ .. automethod:: aptdaemon.core.Transaction.Finished() -> string .. automethod:: aptdaemon.core.Transaction.PropertyChanged() -> string, variant Properties ^^^^^^^^^^ The transaction interface provides a set of properties which can be accessed and modified through :meth:`Set()`, :meth:`Get()` and :meth:`GetAll()` methods of the ``org.freedesktop.DBus.Properties`` interface. See the `D-Bus specification `_ for more details. For the documentation of the available string enumerations, see :mod:`aptdaemon.enums`. The following properties are available: .. attribute:: AllowUnauthenticated : b If it is allowed to install not authenticated packages by the transaction. Defaults to False. *writable* .. attribute:: Cancellable : b If the transaction can be cancelled at the moment. *read-only* .. attribute:: ConfigFileConflict : (ss) If the transaction waits for the resolution of a configuration file conflict, this property contains an array of the path to the old and the path to the new configuration file. See :meth:`ResolveConfigFileConflict()`. *read-only* .. attribute:: DebconfSocket : s The path to the socket which should be used to proxy debconf communication to the user. *writable* .. attribute:: Dependencies : (asasasasasasas) Array of package groups which will be modified as dependencies: * array of the packages to install * array of the packages to re-install * array of the packages to remove * array of the packages to purge * array of the packages to upgrade * array of the packages to downgrade * array of the packages to not upgrade (keep) The packages are specified by their name and a version number separated by an "=", e.g. "xterm=261-1". The dependencies are calculated after :meth:`Simulate()` or :meth:`Run()` was called. *read-only* .. attribute:: Download : x The required download size in Bytes. The property is available after :meth:`Simulate()` or :meth:`Run()` has been called. *read-only* .. attribute:: Error : (ss) If the transaction failed this property contains an array of the error code, e.g. ``error-no-lock`` and a detailed error message. *read-only* .. attribute:: ExitState : s If the transaction is completed it contains the exit status enum of the transaction, e.g. ``exit-failed``. If the transaction has not yet been completed it is ``exit-unfinished``. *read-only* .. attribute:: HttpProxy : s The URL of an http proxy which should be used for downloads by the transaction, e.g. ``http://proxy:8080``. *writable* .. attribute:: Locale : s The locale which is used to translate messages, e.g. ``de_DE@UTF-8``. *writable* .. attribute:: MetaData : a{sv} The meta data dictionary allows client applications to store additional data persistently in the transaction object. The key has to be a string and be prefixed by an underscore separated identifier of the client application, e.g. Software Center uses ``sc_app`` to store the application corresponding to the transaction. If a dict is written to the property it will be merged with the existing one. It is not allowed to override already existing keys. *writable* .. attribute:: Progress : i The progress in percent of the transaction. *read-only* .. attribute:: Packages : (asasasasasas) Array of package groups which have been specified by the user intially to be modified: * array of the packages to install * array of the packages to re-install * array of the packages to remove * array of the packages to purge * array of the packages to upgrade * array of the packages to downgrade The packages are specified by their name and an optional version number separated by an "=", e.g. "xterm=261-1". Furthermore if specified the target release of the package will be separated by a "/", e.g. "xterm/experimental". *read-only* .. attribute:: Paused : b If the transaction is paused, e.g. it is waiting for a medium or the resolution of a configuration file conflict. *read-only* .. attribute:: ProgressDetails : (iixxdx) A list with detailed progress information: * number of already processed items * number of total items * number of already downloaded bytes * number of total bytes which have to be downloaded * number of bytes downloaded per second * remaining time in seconds *read-only* .. attribute:: ProgressDownload : (sssxxs) The last progress information update of a currently running download. A list of .. * URL of the download * status enum of the download, e.g. ``download-fetching``. * short description of the download * number of already downloaded bytes * number of total bytes which have to be downloaded * Status message *read-only* .. attribute:: RemoveObsoletedDepends : b If in the case of a removal obsolete dependencies which have been installed automatically before should be removed, too. *writable* .. attribute:: RequiredMedium : (ss) If the transaction waits for a medium to be inserted this property contains an array of the medium name and the path to the drive in which it should be inserted. *read-only* .. attribute:: Role : s The enum representing the type of action performed by the transaction e.g. ``role-install-packages``. *read-only* .. attribute:: Space : x The required disk space in Bytes. If disk spaces is freed the value will be negative. The property is available after :meth:`Simulate()` or :meth:`Run()` has been called. *read-only* .. attribute:: Status : s The status enum of the transaction, e.g. ``status-loading-cache``. *read-only* .. attribute:: StatusDetails : s A human readable string with additional download information. *read-only* .. attribute:: Terminal : s The path to the slave end of the controlling terminal which should be used to controll the underlying :command:`dpkg` call. *writable* .. attribute:: TerminalAttached : b If the controlling terminal can be used to control the underlying :command:`dpkg` call. *read-only* .. attribute:: Unauthenticated : as List of packages which are going to be installed but are not from an authenticated repository. *read-only* .. _policykit: PolicyKit privileges -------------------- Most actions require the user to authenticate. The PolicyKit framework is used by aptdaemon for the authentication process. This allows to run aptdaemon as root and the client application as normal user. For non-transaction based actions the authentication will happen immediately. For transaction based actions the privilege will be checked after :meth:`Run()` has been called. If the privilege has not yet been granted the user will be requested to authenticate interactively. This allows the user to simulate a transaction before having to authenticate. Aptdaemon supports so called high level privileges which allow to perform a specified set of actions in a row without having to authenticate for each one separately. This only works if the client application authenticates for the high level privilge before running the transactions and the authentication is cached. There are two high level privileges ``install-packages-from-new-repo`` and ``install-purchased-software``. Both allow to add a repository, install the key of vendor from a keyserver, update the cache and to install packages. .. literalinclude:: ../examples/chained.py aptdaemon-1.1.1+bzr982/doc/source/index.rst0000644000000000000000000000041311763060771016560 0ustar 00000000000000Aptdaemon documentation ======================= Contents: .. toctree:: :maxdepth: 2 aptdaemon.client aptdaemon.enums aptdaemon.gtk3widgets dbus plugins Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` aptdaemon-1.1.1+bzr982/doc/source/plugins.rst0000644000000000000000000000436411661434560017141 0ustar 00000000000000Plugins ======= Aptdaemon provides a plugin mechanism by making use of setuptools' entry points. The group name is ``aptdaemon.plugins``. Cache modifiers --------------- Currently there are two types of plugins available which allow you to modify the marked changes of a transaction. Each plugin can be a function which accepts the resolver (apt.cache.ProblemResolver) and the cache (apt.cache.Cache) as arguments: * *modify_cache_before* The plugged-in function is called after the intentional changes of the transaction have been marked, but before the dependencies have been resolved. * *modify_cache_after* The plugged-in function is called after the dependency resolution of the transaction. The resolver will be called again afterwards. A short overview of the steps required to process a transaction: 1. Mark intentional changes (e.g. the to be installed packages of a InstallPackages transaction) 2. Call all modify_cache_before plugins 3. Run the dependency resolver 4. Call all modify_cache_after_plugins and re-run the resolver 5. Commit changes External helpers ---------------- There is also the *get_license_key* plugin which allows to retrieve the license key content and path to store. License keys are required by propriatary software. The plugged-in function gets called with uid of the user who started the transaction, the package name, a JSON OAuth tocken and the name of a server to query. Example ------- Here is an example which would install language packages :file:`./plugins/aptd.py`: >>> def install_language_packs(resolver, cache): >>> """Marks the required language packs for installation.""" >>> #... do the magic here ... >>> language_pack.mark_install(False, True) >>> # Only protect your changes if they are mantadory. If they cannot be >>> # be installed the transaction will fail. >>> resolver.clear(language_pack) >>> resolver.protect(language_pack) Finally you would have to register your function as entry point in :file:`setup.py`: >>> setup( >>> ... >>> entry_points="""[aptdaemon.plugins] >>> modify_cache_after=plugins.aptd:install_language_packs >>> """, >>> ... >>> ) .. note:: Keep in mind that you can only register one entry point per name/plugin per distribution. aptdaemon-1.1.1+bzr982/doc/source/_ext/signals.py0000644000000000000000000000105311437656222017671 0ustar 00000000000000"""Adds a new directive signal for GObject signals""" import re from sphinx import addnodes signal_re = re.compile(r"([a-zA-Z-]+)\s->(.*)") def parse_signal(env, sig, signode): match = signal_re.match(sig) if not match: signode += addnodes.desc_name(sig, sig) return sig name, args = match.groups() signode += addnodes.desc_name(name, name) signode += addnodes.desc_returns(args.strip(), args.strip()) return name def setup(app): app.add_description_unit("signal", "sig", "pair: %s; signal", parse_signal) aptdaemon-1.1.1+bzr982/po/POTFILES.in0000644000000000000000000000034612375372722015054 0ustar 00000000000000[encoding: UTF-8] data/org.debian.apt.policy.in aptdaemon/console.py aptdaemon/core.py aptdaemon/enums.py aptdaemon/gtk3widgets.py aptdaemon/lock.py aptdaemon/progress.py aptdaemon/worker/aptworker.py aptdaemon/worker/pkworker.py aptdaemon-1.1.1+bzr982/po/af.po0000644000000000000000000011112112375372771014223 0ustar 00000000000000# Afrikaans translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:40+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: Afrikaans \n" "Language: af\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installeer pakketlêer" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Opdateer pakketinformasie" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Opgradeer pakkette" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Kanselleer die taak van 'n ander gebruiker" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB van %sB by %sB/s afgelaai" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB van %sB afgelaai" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Los afhanklikhede op" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Moet nie die daemoon afskakel weens onaktiwiteit nie" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Vertoon die interne verwerkingsinligting" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Beeindig en vervang 'n reeds hardlopende daemoon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Stoor profielstatistieke in die gespesifiseerde lêer" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Moenie veranderings maak op die stelsel nie (Slegs van nut vir " "programmeerders)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Geïnstalleerde lêer" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Geïnstalleerde pakkette" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Sleutel bygevoeg vanuit lêer" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Opgedateerde kas" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Betroubare sleutel verwyder" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Verwyderde pakkette" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Opgedateerde pakkette" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Opgegradeerde stelsel" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Toegepaste veranderings" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Onvoltooide installasie herstel" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Gebroke afhanklikhede herstel" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Suksesvol" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Gekanselleer" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Gefaal" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installeer lêer" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installeer pakkette" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Voeg sleutel by vanuit lêer" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Opdateer kas" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Verwyder betroubare sleutel" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Verwyder pakkette" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Opdateer pakkette" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Opgradeer stelsel" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Pas veranderings toe" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Herstel onvolledige installasie" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installasie van die pakketlêer het misluk" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installasie van die sagteware het misluk" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Verfrissing van die sagteware lys het misluk" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Verwydering van die handelaar vanuit die lys van betroubare handelaars het " "misluk" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Verwydering van sagteware het misluk" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Opdatering van sagteware het misluk" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Opgradering van stelsel het misluk" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Toepas van die sagteware veranderinge het misluk" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Herstel van onvolledige installasie het misluk" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Herstel van gebroke afhanklikhede het misluk" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Gaan jou internetkonneksie na" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontroleer of jy derdeparty sagtwarebronne gebruik. Indien wel, skakel dit " "uit aangesien dit 'n algemene bron van probleme is.\n" "Verder hardloop die volgende bevel in 'n terminaal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Die gekose lêer mag dalk nie 'n GPG sleutel lêer wees nie of is dalk " "beskadig." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Hierdie is 'n ernstige probleem. Probeer weer later. As die probleem weer " "voorkom, rapporteer die fout aan die programmeerders." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Daar is geen behoefte vir 'n opdatering nie." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Daar is geen behoefte vir 'n installasie nie" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Daar is geen behoefte vir 'n verwydering nie" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Jy het versoek dat 'n pakket, wat 'n noodsaaklike deel van jou stelsel is, " "verwyder word" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Die konneksie tot die daemoon is gebreek. Heel moontlik omdat die " "agtergronddaemoon gefaal het." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Die installasie of verwydering van 'n sagtewarepakket het misluk" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Die installasie kon misluk het as gevolg van 'n fout in die ooreenstemmende " "sagtewarepakket, of dit was gekanselleer op 'n ongeldige manier. Jy sal dit " "moet herstel alvorens jy enige verdere sagteware kan installeer of verwyder." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Aflaai van pakketlêers het misluk" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Aflaai van sagtewarebron informasie het misluk" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakketafhanklikhede kon nie opgelos word nie" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Die pakketstelsel is gebreek" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Sleutel was nie geïnstalleer nie" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Sleutel is nie verwyder nie" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Kon nie die pakketbestuurder sluit nie" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Kon nie die pakketlys laai nie" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakket bestaan nie" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakket is reeds geïnstalleer" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakket is nie geïnstalleer nie" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Kon nie die noodsaaklike stelselpakket verwyder nie" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Taak kan nie gemonitor of uitgevoer word nie" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakket operasie het misluk" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Vereis die installasie van onbetroubare pakkette" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Vorige installasie is onvoltooid" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Wag vir die diens om aan te skakel" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Wag tans" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Wag tans op die vereiste medium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Wag tans vir die ander sagtewarebestuurders om af te sluit" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Wag tans op die por vanaf die verstellingslêer" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Aktiewe taak" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Besig om af te laai" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Opruim" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Afgehandel" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Kanselleer" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Laai van sagteware lys" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installeer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Verstel %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Verwyder %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Hardloop postinstallasie sneller %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Opgradeer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB van %sB by %sB/s afgelaai" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB van %sB afgelaai" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' word benodig" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Gaan v_oort" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Vervang jou veranderings in '%s' met 'n latere weergawe van die " "verstellingslêer" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Indien jy onseker is hoekom die lêer reeds daar voorkom is dit gewoonlik " "veilig om te vervang." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Veranderings" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Behou" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Ve_rvang" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Die byvoeging van die sleutel tot die lys van vertroude " #~ "sagtewarehandelaars het misluk" aptdaemon-1.1.1+bzr982/po/am.po0000644000000000000000000011030512375372771014235 0ustar 00000000000000# Amharic translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-09-20 00:25+0000\n" "Last-Translator: samson \n" "Language-Team: Amharic \n" "Language: am\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "የወረዱ ጥቅል ፋይሎችን ማስወገጃ" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "የሶፍትዌር ማጠራቀሚያ ማሰናጃን ለመቀየር ማረጋገጫ ያስፈልጋል" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "የጥቅል ፋይልን መግጠም" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "ይህን ጥቅል ለመግጠም ማረጋገጫ ያስፈልጋል" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "የጥቅል መረጃዎችን ማሻሻል" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "ጥቅሎችን መግጠሚያ ወይም ማስወገጃ" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "ሶፍትዌርን ለመግጠም ወይም ለማስወገድ ማረጋገጫ ያስፈልጋል" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "ሶፍትዌርን ከሌላ ምንጭ ለመግጠም ማረጋገጫ ያስፈልጋል" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "የተገዛ ሶፍትዌርን ለመግጠም ማረጋገጫ ያስፈልጋል" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "ጥቅሎችን ማሻሻል" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "የተሻሻሉ ሶፍትዌሮችን ለመግጠም ማረጋገጫ ያስፈልጋል" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "መሰረዝ የሌላ ተጠቃሚን ስራዎች" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "የሌላ ተጠቃሚን ሶፍትዌር ለመሰረዝ ማረጋገጫ ያስፈልጋል" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ስህተት" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "ወርዷል %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "ወርዷል %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ስህተት :" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "ይህን ተግባር ለመፈጸም አይችሉም" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "መቀጠል ይፈልጋሉ [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "የተሰጠውን ጥቅል መግጠሚያ" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "የውስጥ ሂደቱን መረጃ ማሳያ" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "የተገጠመው ፋይል" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "የተገጠሙት ጥቅሎች" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "ከፋይል የተጨመረ ቁልፍ" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "የተወገዱ ጥቅሎች" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "ጥቅሎችን ማሻሻል" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "ስርአቱን ማሻሻል" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "የተተገበሩ ለውጦች" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "ተሳክቷል" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "የተሰረዘ" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "ወድቋል" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ፋይል በመግጠም ላይ" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "ጥቅሎችን በመግጠም ላይ" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ከፋይል ቁልፍ በመጨመር ላይ" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "ጥቅሎችን በማስወገድ ላይ" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "ጥቅሎችን በማሻሻል ላይ" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "ስርአቱን በማሻሻል ላይ" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "ለውጦችን በመተግበር ላይ" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "የጥቅሉን ፋይል መግጠም አልተሳካም" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "ሶፍትዌሩን መግጠም አልተሳካም" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "ሶፍትዌሩን ማነቃቃት አልተሳካም" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "ሶፍትዌሩን ማስወገድ አልተሳካም" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "ሶፍትዌሩን ማሻሻል አልተሳካም" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "ስርአቱን ማሻሻል አልተሳካም" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "የሶፍትዌር ለውጦቹን መተግበር አልተሳካም" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "የኢንተርኔት ግንኙነቶን ይመርምሩ" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "የተመረጠው ፋይል ምናልባት የጂፒጂ ቁልፍ ፋይል አይደለም ወይም የተበከለ ነው" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "ማሻሻል አይስፈልጎትም" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "መግጠም አይስፈልጎትም" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "ማስወገድ አይስፈልጎትም" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "የሶፍትዌር ጥቅል መግጠም ወይም ማስወገድ ወድቋል" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "ይህን ተግባር ለመፈጸም አይችሉም" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "የጥቅል ፋይሎችን ማውረድ ወድቋል" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "የማስቀመጫ መረጃ ማውረድ ወድቋል" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "ቁልፍ አልተገጠመም" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "ቅልፍ አልተወገደም" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "የጥቅል አስተዳዳሪውን መቆለፍ ወድቋል" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "የጥቅል ዝርዝር መጫን ወድቋል" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "ጥቅሉ አልተገኘም" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "ጥቅሉ ቀደም ብሎ ተገጥሟል" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "ጥቅሉ አልተገጠመም" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "ስራዎቹን መመልከት ወይም መቆጣጠር አልተቻለም" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "ያልታመኑ ጥቅሎችን መግጠም ያስፈልጋል" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "ግልጋሎቱን ለመጀመር በመጠበቅ ላይ" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "ስራዎችን በማስኬድ ላይ" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "በማውረድ ላይ" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "በማጽዳት ላይ" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "ጨርሷል" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "በመሰረዝ ላይ" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "የሶፍትዌር ዝርዝሮችን በመጫን ላይ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "በመግጠም ላይ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "በማዋቀር ላይ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "በማስወገድ ላይ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "በማሻሻል ላይ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "ወርዷል %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "ወርዷል %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "ዝርዝሮች" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "ሲዲ/ዲቪዲ '%s' ያስፈልጋል" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_ማስቀመጥ" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_መተካት" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_ዝርዝሮች" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ar.po0000644000000000000000000012053512375372771014250 0ustar 00000000000000# Arabic translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-29 13:50+0000\n" "Last-Translator: Ibrahim Saed \n" "Language-Team: Arabic \n" "Language: ar\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n % 100 >= " "3 && n % 100 <= 10 ? 3 : n % 100 >= 11 && n % 100 <= 99 ? 4 : 5;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "قائمه بمفاتيح البائعين الموثوقين" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "لعرض قائمه بالمفاتيح الموثوقة، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "إزالة ملفات الحزم المنزّلة" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "لمسح ملفات الحزم المنزّلة، تحتاج للاستيثاق" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "لتغيير إعدادات البرنامج، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "لتغيير إعدادات مستودعات البرمجيات، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "لتثبيت هذه الحزمة، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "تحديث معلومات الحزم" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "لتحديث فهرس البرمجيات, تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "تثبيت أو إزالة حزم" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "لتثبيت أو إزالة البرمجيات، تحتاج للاستيثاق." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "لتثبيت برنامج، تحتاج للاستيثاق." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "أضِف مصدرا جديدا وثبّت الحزم من خلاله" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "لتثبيت برمجيات من مصادر جديدة، تحتاج للاستيثاق." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "أضِف مستودعا جديدا للبرمجيات المشتراة وثبّت الحزم من خلاله" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "لتثبيت البرمجيات المشتراة، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "ترقية الحزم" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "لتثبيت البرمجيات المُحدّثة، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "إلغاء المهمة لمستخدم آخر" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "لإلغاء التغيرات البرمجية لشخص آخر، تحتاج للاستيثاق." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "لاستخدام خادوم وسيط لتنزيل البرمجيات، تحتاج للاستيثاق." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "خطأ" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "تم تنزيل %sب من %sب بـ %sب/ث" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "تم تنزيل %sب من %sب" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "خطأ:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "غير مسموح لك بتنفيذ هذا الإجراء." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "سيتم تثبيت الحزم الجديدة التالية (%(count)s):" msgstr[1] "سيتم تثبيت الحزمة الجديدة التالية:" msgstr[2] "سيتم تثبيت الحزمتين الجديدتين التاليتين:" msgstr[3] "سيتم تثبيت الحزم الجديدة التالية (%(count)s):" msgstr[4] "سيتم تثبيت الحزم الجديدة التالية (%(count)s):" msgstr[5] "سيتم تثبيت الحزم الجديدة التالية (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "سيتم ترقية الحزم التالية (%(count)s):" msgstr[1] "سيتم ترقية الحزمة التالية:" msgstr[2] "سيتم ترقية الحزمتين التاليتين:" msgstr[3] "سيتم ترقية الحزم التالية (%(count)s):" msgstr[4] "سيتم ترقية الحزم التالية (%(count)s):" msgstr[5] "سيتم ترقية الحزم التالية (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "سيتم إزالة الحزم التالية (%(count)s):" msgstr[1] "سيتم إزالة الحزمة التالية:" msgstr[2] "سيتم إزالة الحزمتين التاليتين:" msgstr[3] "سيتم إزالة الحزم التالية (%(count)s):" msgstr[4] "سيتم إزالة الحزم التالية (%(count)s):" msgstr[5] "سيتم إزالة الحزم التالية (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "سيتم تثبيط الحزم التالية(%(count)s):" msgstr[1] "سيتم تثبيط الحزمة التالية:" msgstr[2] "سيتم تثبيط الحزمتين التاليتين:" msgstr[3] "سيتم تثبيط الحزم التالية(%(count)s):" msgstr[4] "سيتم تثبيط الحزم التالية(%(count)s):" msgstr[5] "سيتم تثبيط الحزم التالية(%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "سيعاد تثبيت الحزم التالية (%(count)s):" msgstr[1] "سيعاد تثبيت الحزمة التالية:" msgstr[2] "سيعاد تثبيت الحزمتين التاليتين:" msgstr[3] "سيعاد تثبيت الحزم التالية (%(count)s):" msgstr[4] "سيعاد تثبيت الحزم التالية (%(count)s):" msgstr[5] "سيعاد تثبيت الحزم التالية (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "يحتاج لجلب %sب من الأرشيفات." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "بعد هذه العملية، سوف تُستخدم %sب من المساحة الإضافية على القرص." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "بعد هذه العملية، سوف تُفرّغ %sب من المساحة على القرص." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "حاول إنهاء التثبيت السابق الغير مكتمل" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "في انتظار الاستيثاق" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "ملف مُثبّت" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "حزم مُثبّتة" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "أضف مفتاحا من ملف" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "حدّث الخبيئة" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "احذف مفتاحا غير موثوق" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "حزم محذوفة" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "حزم مُحدّثة" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "نظام مرقّى" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "ناجح" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "ملغى" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "فشل" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "يثبّت الملف" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "يثبّت الحزم" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "تحديث الخبيئة" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "يطبّق التغييرات" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "تفقّد اتصالك بالإنترنت." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "تحقق مما إذا كنت تستخدم مستودعات طرف ثالث .إذا كان كذلك عطلها، حيث أنها " "تعتبر مصدر شائع للأخطاء.\n" "علاوة على ذلك قم بتنفيذ الأمر التالي في الطرفية: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "تحقق مما إذا كان هناك برنامج إدارة برمجيات آخر يعمل (مثل: Synaptic أو " "aptitude). يُسمح لبرنامج إدارة برمجيات واحد فقط بإجراء تغييرات في نفس الوقت." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "ليس هناك أي حاجة للتحديث." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "فُقد الاتصال بالعفريت. على الأرجح فإن العفريت الذي يعمل في الخلفية قد انهار." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "فشل التثبيت أو الإزالة لحزمة برمجية." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "يبدو أن هناك خطأ برمجيا في aptdaemon، وهي البرمجية التي تتيح لك تثبيت وإزالة " "البرمجيات، وأداء مهام أخرى ذات صلة بإدارة الحزم." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "يتطلب ذلك تثبيت حزم من مصادر غير موثوقة." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "فشل التثبيت بسبب خطأ متعلق بحزمة البرمجية أو بسبب إلغاءه بطريقة غير ملائمة. " "عليك إصلاح ذلك قبل أن تتمكن من تثبيت أو إزالة أي برمجيات أخرى." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "لا يُسمح بتثبيت الحزم التي تنتهك معايير الجودة. قد يتسبب ذلك في حدوث مشكلات " "خطيرة على حاسوبك. رجاءً اتصل بالشخص أو المنظمة التي تقدم هذه الحزمة وضمّن " "التفاصيل أدناه." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "غير مسموح لك بتنفيذ هذا الإجراء." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "فشل في تنزيل ملفات الحزم" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "فشل في تنزيل معلومات المستودع" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "حزمة النظام معطوبة" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "فشل في تحميل قائمة الحزم" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "فشل في إزالة حزم نظام أساسية" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "تعذّر رصد المهمة أو التحكم بها" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "فشل عملية حزمة" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "يتطلب تثبيت حزم غير موثوقة" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "الحزمة ذات جودة سيئة" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "فشل في تنزيل مفتاح الترخيص" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "فشل في تثبيت مفتاح الترخيص" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "حدث خطأ لا يمكن التعامل معه" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "في انتظار بدء الخدمة" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "ينتظر" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "في انتظار الوسيط المطلوب" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "في انتظار مديرو البرمجيات الأخرى حتى تنتهي" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ينزّل" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "يستعلم عن مصادر البرمجيات" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "انتهى" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "يلغي" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "يحمّل قائمة البرمجيات" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "يثبّت %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "يُحضّر لتثبيت %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "يُحضّر لإعداد %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "يُحضّر لإزالة %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "يُحضّر لإزالة %s إزالة كاملة" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "فشل الاستيثاق" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "تم تنزيل %sب من %sب بـ %sب/ث" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "تم تنزيل %sب من %sب" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "تفاصيل" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "تم تنزيل %sب" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "سيتم تنزيل ما مجموعه %sب" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_تفاصيل" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "في انتظار %s حتى ينتهي" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "ينزّل %(files)s" msgstr[1] "ينزّل %(files)s" msgstr[2] "ينزّل %(files)s" msgstr[3] "ينزّل %(files)s" msgstr[4] "ينزّل %(files)s" msgstr[5] "ينزّل %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "ينزّل من %s" msgstr[1] "ينزّل من %s" msgstr[2] "ينزّل من %s" msgstr[3] "ينزّل من %s" msgstr[4] "ينزّل من %s" msgstr[5] "ينزّل من %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ast.po0000644000000000000000000013267112375372771014441 0ustar 00000000000000# Asturian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-02 12:54+0000\n" "Last-Translator: ivarela \n" "Language-Team: Asturian \n" "Language: ast\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Llistar les claves de vendedores de confianza" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Pa ver la llista de claves de confianza, tienes d'autentificate." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Desaniciar los ficheros de paquete descargaos" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Pa llimpiar los ficheros de paquetes descargaos, necesites autenticate." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Camudar la configuración del software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Pa camudar la configuración del software, necesites autenticate." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Camudar repositoriu de software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Pa camudar les preferencies de los repositorios de software, tienes " "d'autentificate." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalar ficheru de paquete" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Pa instalar esti paquete, necesites autenticate" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Anovar información de paquetes" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Pa instalar el catálogu de software, necesites autenticate" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalar o desaniciar paquetes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Pa instalar o desaniciar software, necesites autenticate" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalar software dende un repositoriu de llista blanca altamente confiable." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Pa instalar software, necesites autenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Amestar un repositoriu nuevu ya instalar paquetes d'él" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Pa instalar software d'un orixen nuevu, necesites identificate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Amestar un repositoriu nuevu de software mercáu ya instalar paquetes d'él" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Pa instalar software mercáu, necesites identificate." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Anovar paquetes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Pa instalar software anováu, necesites autenticate" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Encaboxar la xera d'otru usuariu" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Pa encaboxar los cambeos de software, necesites autenticate." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Afitar un proxy pa descargues de software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "Pa usar un sirvidor proxy y baxar software, necesites autenticate" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FALLU" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Descargando %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Descargando %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FALLU:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Nun tienes permisos pa facer esta aición." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Encolar" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Iguando dependencies" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Va instalase'l siguiente paquete NUEVU (%(count)s):" msgstr[1] "Van instalase los siguientes paquetes NUEVOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Va anovase'l siguiente paquete (%(count)s):" msgstr[1] "Van anovase los siguientes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "El siguiente paquete va DESANICIASE (%(count)s):" msgstr[1] "Los siguientes paquetes van DESANICIASE (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "El siguiente paquete va DESANOVASE (%(count)s):" msgstr[1] "Los siguientes paquetes van DESANOVASE (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Va reinstalase'l siguiente paquete (%(count)s):" msgstr[1] "Van reinstalase los siguientes paquetes (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Retúvose'l siguiente paquete (%(count)s):" msgstr[1] "Retuviéronse los siguientes paquetes (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Necesítase descargar %sB d'archivos." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Dempués d'esta operación, van usase %sB d'espaciu adicional nel discu." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Dempués d'esta operación, van lliberase %sB d'espaciu nel discu." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "¿Quies siguir [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Pa operar con más d'un paquete tienes d'allugar los nomes de los paquetes " "ente comines:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refrescar la caché" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Intentar iguar dependencies frañaes. Operación potencialmente peligrosa, " "porque podría intentar desaniciar munchos paquetes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Intentar finar una instalación previa incompleta" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalar los paquetes proporcionaos" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalar los paquetes proporcionaos" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Desaniciar los paquetes proporcionaos" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Desaniciar los paquetes proporcionaos incluyendo los ficheros de " "configuración" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Desanovar los paquetes daos" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsoletu: Por favor usa --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Anovar el sistema en mou seguru" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Anovar el sistema, dablemente instalando y desaniciando paquetes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Amestar al fabricante como confiable" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Amestar el keyid del fornidor (tamién necesita --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Usa'l sirvidor de claves dau pa guetar les claves" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Amestar repositoriu nuevu dende'l deb-line proporcionáu" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especifica un ficheru sources.list.d alternativu al que tendríen d'amestase " "los repositorios." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Llista de claves de fornidores de confianza" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Desaniciar la clave autenticada de la buelga proporcionada" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurar paquetes instalaos. Opcionalmente pue especificase la prioridá " "mínima de les entrugues" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La prioridá mínima d'entruga de debconf que va amosase" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Nun axuntar a la terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permitir paquetes dende fontes ensin autentificar" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Amosar información adicional tocante a los paquetes. Anguaño, namái el " "númberu de versión" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Esperando por autentificación" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Nun parar el degorriu en casu d'inactividá" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Nun cargar complementos" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Amosar información del procesamientu internu" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Salir y camudar un degorriu que yá tea executándose" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escuchar nel bus de sesión de DBus (necesariu namái pa pruebes" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Fai operaciones nel chroot dau" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Guardar estadístiques de perfil nel ficheru especificáu" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Nun facer cambeos al sistema (Namái pa usu de desendolcadores)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Ficheru instaláu" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquetes instalaos" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Clave amestada dende ficheru" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Caché anovada" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Gueta fecha" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Clave de confianza desaniciada" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paquetes desaniciaos" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paquetes anovaos" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema anováu" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Cambeos aplicaos" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instalación incompleta iguada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependencies frañaes iguaes" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Orixen de software amestáu" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Componente de la distribución activáu" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Desaniciáronse los paquetes descargaos" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfiguráronse los paquetes instalaos" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Completáu" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Encaboxáu" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Falló" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalando ficheru" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalando paquetes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Amestando clave dende ficheru" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Anovando caché" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Desaniciando clave de confianza" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Desaniciando paquetes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Anovando paquetes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Anovando sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplicando cambeos" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Iguando instalación incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Iguando software instaláu" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Amestando orixen de software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Activando componente de la distribución" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Desaniciando los ficheros de paquetes descargaos" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfigurando paquetes instalaos" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Guetando" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Falló la instalación del ficheru de paquete" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Falló la instalación de software" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Fallu al amestar la clave a la llista de fornidores de software de confianza" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Falló l'anovamientu de la llista de software" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Hebo un fallu al desaniciar el fornidor de la llista de confianza" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Falló'l desaniciu de software" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Falló l'anovamientu de software" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Falló l'anovamientu del sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Falló l'aplicación de cambeos de software" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Falló la igua de la instalación incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Falló la igua de les dependencies frañaes" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Falló amestar orixen de software" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Falló activar componente de la distribución" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Falló'l desaniciu de ficheros de paquetes descargaos" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Falló la gueta" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Amestando clave de llicencia" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Compruebe la so conexón a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Mira a ver si tas usando repositorios de terceros. Nesi casu, desactívalos, " "porque son fonte de problemes.\n" "Darréu, executa'l siguiente comandu nuna terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "El ficheru esbilláu puede que nun seya una clave de ficheru GPG o puede que " "tea frañáu." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "La clave esbillada nun puede desaniciase. Comprueba que disti una buelga " "válida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Comprueba si tas executando anguaño otra ferramientas de xestión de " "software, por exemplu Synaptic o aptitude. Namái puede usase una ferramienta " "cada vegada." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Esti ye un problema seriu. Inténtalo otra vegada más sero. Si'l problema " "sigui apareciendo, informa del fallu a los desendolcadores." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Verifica'l nome del paquete, y que'l repositoriu apropiáu ta activáu." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nun fai falta dengún anovamientu." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nun hai necesidá d'anovar" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nun hai necesidá d'una desinstalación." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Solicitasti desinstalar un paquete que ye parte esencial del sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Perdióse la conexón col degorriu. Dablemente'l degorriu de segundu planu " "dexó de furrular." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Falló al instalar o desinstalar un paquete de software." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La carauterística solicitada nun ta permitida." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Paez que hai un fallu de programación en aptdaemon, el software que permite " "instalar o desaniciar software y facer otres xeres de xestión de paquetes " "rellacionaes." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Esti fallu podría debese a que se necesiten paquetes de software adicionales " "que falten o que nun son instalables. Tamién podría ser un conflictu ente " "paquetes de software que nun pueden instalase xuntos." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Los paquetes a instalar necesarios de fontes non autenticaes." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "La instalación pudo tener fallao por un fallu nos paquetes correspondientes " "de software o encaboxóse d'un mou incorreutu. Tienes d'iguar esto enantes de " "poder instalar o desaniciar cualesquier otru software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Copia'l ficheru al to equipu llocal y comprueba los servicios." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Nun se permite la instalación de cualquier paquete que viole los estándares " "de calidá. Eso podría causar problemes serios nel equipu. Contauta cola " "persona u organización que t'apurrió esti ficheru de paquete ya inclúi los " "detalles a continuación." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clave de la llicencia descargada requerida pa executar esti software nun " "ye válida o nun pudo instalase correcho.\n" "Llei los detalles pa tener más información." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Tolos anovamientos disponibles yá foron instalaos." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Nun pudo descargase la clave de llicencia que permite l'usu d'esti software. " "Comprueba la to conexón de rede." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Nun tienes los privilexos necesarios pa facer esta aición." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "O bien disti una contraseña incorreuta o encaboxasti l'autorización.\n" "Pue ser qu'heba una razón téunica pa esti fallu si nun visti un diálogu pa " "la contraseña: el to entornu d'escritoriu nun proporciona un axente de " "sesión de PolicyKit" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Falló al descargar los ficheros de paquetes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Falló al descargar la información del repositoriu" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Les dependencies del paquete nun pudieron iguase" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "El paquete de sistema ta frañáu" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "La clave nun s'instaló" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "La clave nun se desanició" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Falló al bloquiar el xestor de paquetes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Falló al cargar la llista de paquetes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "El paquete nun existe" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "El paquete yá ta anováu a la data" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "El paquete yá ta instaláu" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "El paquete nun s'instaló" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Falló al desinstalar un paquete esencial del sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "La xera nun pudo monitorizase o controlase" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Falló la operación col paquete" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requierse la instalación de paquetes non confiables" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Una instalación previa nun se completó" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "El paquete ye de mala calidá" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "El ficheru de paquete nun pue abrise" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Carauterística non permitida" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Falló la descarga de la clave de llicencia" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Fallu na instalación de la clave de llicencia" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "El sistema yá ta anováu" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Nun se te pudo autorizar" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Nun se te permite facer esta aición" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Hebo un fallu que nun puede remanase." #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Esperando l'aniciu del serviciu" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Aguardando" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Esperando'l soporte requeríu" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Esperando que los demás xestores de paquetes se zarren" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Esperando la solicitú del ficheru de configuración" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Executando xera" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Baxando" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Consultando los oríxenes del software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Llimpiando" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Fináu" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Encaboxando" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Cargando la llista de software" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configurando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Desaniciando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Desaniciando dafechu %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Anotando desaniciáu de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Executando activador de post-instalación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Anovando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Desempaquetando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparando la instalación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparando la configuración %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparando'l desaniciu de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparando pa desaniciar %s dafechu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instaláu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s desinstalóse dafechu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s desinstaláu" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fecho" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Falló l'autenticación" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Descargando" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactivu" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "La rede nun ta disponible" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Procesando %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Descargando %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Descargando %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalles" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Ficheru" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Descargáu %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Descargáu" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Necesítase'l CD/DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Inxerta' CD/DVD na unidá '%s' pa instalar los paquetes de software dende él." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Continuar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Desaniciar" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purgar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Anovar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Desanovar" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Omitir anovamientu" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Écha-y un güeyu a la llista de cambeos." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Hai d'instalar software adicional" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Hai de reinstalar software adicional" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Hai de desinstalar software adicional" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Hai de desaniciar ensembre software adicional" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Hai d'anovar software adicional" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Hai de desanovar software adicional" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Van omitise los anovamientos" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Necesítense cambeos adicionales" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Van descargase %sB en total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Va lliberase %sB d'espaciu en discu." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Van usase %sB más d'espaciu en discu" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "¿Trocar los tos cambeos en «%s» cola cabera versión del ficheru de " "configuración?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Si nun sabes por qué'l ficheru yá ta ellí, xeneralmente ye seguro trocalu." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Cambeos" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Caltener" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Trocar" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalles" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Esperando a %s pa colar" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Descargando %(files)s" msgstr[1] "Descargando %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositoriu llocal" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Descargando de %s" msgstr[1] "Descargando de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estructura de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descripción de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Robla de descripción de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquetes disponibles de %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Oríxenes disponibles de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Tornes disponibles de %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Tornes pa %s (%s) de %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Tornes pa %s de %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traducciones (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "El paquete %s nun ta disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "El paquete %s nun ta instaláu" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versión %s de %s nun ta instalada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "El paquete %s yá ta instaláu" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versión %s de %s nun ta disponible." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "El URL del sirvidor de claves nun ye válidu: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "El protocolu del sirvidor nun ye válidu: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Id de clave inválidu: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Falló al descargar ya instalar la clave %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "El ficheru clave file %s nun pue instalase: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "La clave cola buelga %s nun pue desaniciase: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "El paquete %s nun pue desaniciase." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versión %s de %s nun ta instalada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "L'antigua versión %s de %s yá ta instalada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versión %s de %s yá ta instalada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versión %s de %s nun ta disponible" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Necesites especificar una versión a la que desanovar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "La cabera versión %s de %s yá ta instalada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "El paquete %s nun ta disponible na distribución %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "El paquete %s nun pue desaniciase" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "El paquete nun proporciona un campu de control del tamañu d'instalación " "válidu. Llei la política de Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clave de la llicencia ta balera." #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clave de la llicencia nun pue contener códigu executable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "La ruta %s de la clave de llicencia ye invalida" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clave de llicencia yá esiste: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "L'allugamientu de la clave de llicencia nun ye seguru, yá que contién " "enllaces simbólicos. La ruta %s asigna a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "El direutoriu pa instalar la clave aínda nun esiste: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Fallu al escribir el ficheru de clave a: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Los siguientes paquetes tienen dependencies ensin cubrir:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "pero ye un paquete virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "pero nun ta instaláu" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "pero nun va instalase" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "pero %s ta instaláu" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "pero %s nun ta instaláu" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Hebo un fallu al amestar la clave a la llista de fornidores de software " #~ "de confianza" aptdaemon-1.1.1+bzr982/po/az.po0000644000000000000000000010233312375372771014254 0ustar 00000000000000# Azerbaijani translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-08-28 18:25+0000\n" "Last-Translator: Ali Ismayilov \n" "Language-Team: Azerbaijani \n" "Language: az\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "İnanılmış vendorların açar siyahısı" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Yüklənmiş paket fayllarını sil" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Proqram təminatının konfiqurasiyasını dəyiş" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Proqram təminatı repositorunu dəyiş" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Paket faylını yüklə" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Paketləri yüklə və ya sil" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Yeni repositor əlavə et və ordan paketlər yüklə" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Alınmış proqramların yeni repositorun əlavə et və ordan paketləri yüklə" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Başqa istifadəçinin işini dayandır" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Proqram təminatını yükləmək üçün proxy müəyyən et" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/be.po0000644000000000000000000015433512375372771014241 0ustar 00000000000000# Belarusian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-14 16:03+0000\n" "Last-Translator: Mikhail_SaTuRn \n" "Language-Team: Belarusian \n" "Language: be\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Спіс ключоў давераных пастаўшчыкоў" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Для прагляду спісу давераных ключоў патрабуецца аўтэнтыфікацыя." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Выдаліць файлы загружаных пакетаў" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Вам неабходна аўтарызавацца для ачысткі файлаў загружаных пакетаў." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Змяніць сховішча з праграмамі" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Вам трэба аўтарызавацца для змены налад праграмнага забеспячэння." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Змяніць сховішча праграмнага забеспячэння" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Каб змяніць налады сховішча, вы павінны аўтарызавацца." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Усталёўка файла пакета" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Каб усталяваць гэты пакет, вы павінны аўтарызавацца." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Абнаўленне інфармацыі аб пакетах" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Для абнаўлення каталога праграмнага забеспячэння патрабуецца аўтэнтыфікацыя." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Усталяваць ці выдаліць пакеты" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Каб усталяваць ці выдаліць праграму, вы павінны аўтарызавацца." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Дадаць новае сховішча і ўсталяваць пакеты з яго" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Каб усталяваць праграмы з новай крыніцы, вы павінны аўтарызавацца." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Дадаць новае сховішча платнага праграмнага забеспячэння і ўсталяваць пакеты " "з яго" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Каб усталяваць набытыя праграмы, вы павінны аўтарызавацца." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Абнаўленне пакетаў" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Для ўсталёўкі абнаўленняў патрабуецца аўтэнтыфікацыя." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Адмяніць задачу іншага карыстальніка" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Для скасавання не сваіх змен у праграмным забеспячэнні патрабуецца " "аўтэнтыфікацыя." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Усталяваць проксі-сервер для загрузак праграм" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Для карыстання з проксі сервера для загрузкі праграмнага забеспячэння " "патрабуецца аўтэнтыфікацыя." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ПАМЫЛКА" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Загружана %sB з %sB на хуткасці %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Загружана %sB з %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ПАМЫЛКА:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Вам не дазволена выконваць гэтае дзеянне." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Арганізацыя чаргі" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Вырашэнне залежнасцяў" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Наступны НОВЫ пакет будзе ўсталяваны (%(count)s):" msgstr[1] "Наступныя НОВЫЯ пакеты будуць усталяваныя (%(count)s):" msgstr[2] "Наступныя НОВЫЯ пакеты будуць усталяваныя (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Наступны пакет будзе абноўлены (%(count)s):" msgstr[1] "Наступныя пакеты будуць абноўленыя (%(count)s):" msgstr[2] "Наступныя пакеты будуць абноўленыя (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Наступны пакет будзе выдалены (%(count)s):" msgstr[1] "Наступныя пакеты будуць выдаленыя (%(count)s):" msgstr[2] "Наступныя пакеты будуць выдаленыя (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Для наступнага пакета будзе праведзены АДКАТ (%(count)s):" msgstr[1] "Для наступных пакетаў будзе праведзены АДКАТ (%(count)s):" msgstr[2] "Для наступных пакетаў будзе праведзены АДКАТ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Наступны пакет будзе пераўсталяваны (%(count)s):" msgstr[1] "Наступныя пакеты будуць пераўсталяваныя (%(count)s):" msgstr[2] "Наступныя пакеты будуць пераўсталяваныя (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Наступны пакет быў адноўлены (%(count)s):" msgstr[1] "Наступныя пакеты былі адноўленыя (%(count)s):" msgstr[2] "Наступныя пакеты былі адноўленыя (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Патрабуецца атрымаць %sБ архіваў." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Пасля гэтай аперацыі будзе выкарастана %sБ дадатковага месца." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Пасля гэтай аперацыі будзе вызвалена %sБ дадатковага месца." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Вы хочаце працягнуць [Y - Так, N - Не]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Для правядзення аперацый над некалькімі пакетамі пастаўце іх імёны ў " "двукоссе:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Абнавіць кэш" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Паспрабаваць вырашыць сапсаваныя залежнасці. Гэта патэнцыйна небяспечная " "аперацыя, паколькі яна можа выдаліць шмат пакетаў." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Паспрабуйце скончыць папярэднюю ўсталёўку" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Усталяваць гэтыя пакеты" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Пераўсталяваць гэтыя пакеты" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Выдаліць гэтыя пакеты" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Выдаліць гэтыя пакеты разам з файламі канфігурацыі" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Адкат выбраных пакетаў" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Забаронена: калі ласка выкарыстоўвайце --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Абнавіць сістэму бяспечным чынам" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Абнавіць сістэму ўсталёўваючы і выдаляючы пакеты (калі магчыма)" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Дадаць пастаўніка ў давераныя" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Дадаць ідэнтыфікатар ключа пастаўніка (спатрэбіца опцыя - keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Выкарыстоўваць дадзены сервер для пошуку ключоў" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Дадаць сховішча з пазначанага deb-радка" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Пазначыць альтэрнатыўны файл sources.list.d, да якога неабходна дадаваць " "сховішчы" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Спіс давераных ключоў пастаўніка" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Выдаліць давераны ключ для дадзенага лічбавага подпісу" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Паўторная наладка ўсталяваных пакетаў. Дадаткова можа быць паказаны " "мінімальны прыярытэт пытанняў" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Мінімальны прыярытэт запыту debconf для адлюстравання" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Не падлучацца да тэрмінала apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Дазваляць пакеты з недавераных крыніц" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Паказаць дадатковую інфармацыю аб пакеце. У дадзены момант толькі нумар " "версіі" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Чаканне на аўтэнтыфікацыю" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Не выключайце дэман з-за яго неактыўнасці" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Не загружаць ніякія плагіны" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Паказваць інфармацыю аб унутранай апрацоўцы" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Выйсці і замяніць ужо запушчаны дэман" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Чакаць на сігнал DBus для агульнай шыны (Толькі для тэставання" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Праводзіць аперацыі ў дадзеным галоўным каталозе" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Захоўваць статыстыку ў пазначаным файле" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Не змяняць файлы ў сістэме (карысна толькі распрацоўнікам)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Усталяваны файл" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Усталяваныя пакеты" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Дададзены ключ з файла" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Кэш абноўлены" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Пошук завершаны" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Давяральны ключ выдалены" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Выдаленыя пакеты" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Абноўленыя пакеты" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Абноўленая сістэма" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Ужытыя змены" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Выпраўлена няскончаная ўсталёўка" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Выпраўлены зламаныя залежнасці" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Крыніца праграм дададзеная" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Падлучаны кампанент дыстрыбутыва" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Сцёртыя файлы загружаных пакетаў" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Нова наладжаныя пакеты" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Паспяхова" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Адменена" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Памылка" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Усталёўка файла" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Усталёўка пакетаў" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Даданне ключа з файла" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Абнаўленне кэша" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Выдаленне даверанага ключа" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Выдаленне пакетаў" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Абнаўленне пакетаў" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Абнаўленне сістэмы" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Ужыванне зменаў" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Выпраўленне няскончанай ўсталёўкі" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Аднаўленне усталяванага ПЗ" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Даданне крыніцы праграм" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Падлучэнне кампанента дыстрыбутыва" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Выдаленне файлаў загружаных пакетаў" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Пераналадка ўсталяваных пакетаў" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Выконваецца пошук" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Не атрымалася ўсталяваць файл пакета" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Не атрымалася ўсталяваць праграмнае забеспячэнне" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Не атрымалася абнавіць спіс праграм" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Не атрымалася выключыць пастаўніка праграм са спіса давераных" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Не атрымалася выдаліць праграмнае забеспячэнне" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Не атрымалася абнавіць праграмнае забеспячэнне" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Не атрымалася абнавіць сістэму" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Не атрымалася ўжыць змены ў праграмным забеспячэнні" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Не атрымалася выпраўленне няскончанай усталёўкі" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Не атрымалася выправіць зламаныя залежнасці" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Не атрымалася дадаць крыніцу праграм" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Не атрымалася далучыць кампанент дыстрыбутыва" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Пры выдаленні загружаных файлаў здарылася памылка" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Памылка пошуку" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Даданне ліцэнзійнага ключа" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Праверце інтэрнэт-злучэнне." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Калі Вы выкарыстоўваеце іншыя крыніцы праграм, адключыце іх, паколькі яны " "з'яўляюцца частай\n" "крыніцай праблем. Пасля гэтага выканайце ў тэрмінале наступную каманду: apt-" "get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Выбраны файл можа быць пашкоджаны, альбо не з'яўляецца ключом PGP." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Абраны ключ немагчыма выдаліць. Праверце, што Вы падалі дакладны лічбавы " "подпіс." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Праверце, ці не запушчана іншая праграма кіравання праграмамі, напрыклад " "Synaptic или aptitude. Толькі адна праграма можа ўносіць змены ў адзін і той " "жа час." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Гэта сур'ёзная праблема. Паспрабуйце паўтарыць пазней. Калі праблема " "паўстане зноў, калі ласка, адпраўце справаздачу аб памылцы распрацоўнікам." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Праверце ці правільна пазначана назва пакета і ці ўключаны адпаведны " "рэпазітар." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Няма неабходнасці абнаўлення." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Няма неабходнасці ўсталёўкі." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Няма неабходнасці выдалення." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Вы падалі запыт на выдаленне пакета, які з'яўляецца неад'емнай часткай вашай " "сістэмы." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Сувязь з дэманам страчана. Хутчэй за ўсё, яго праца нечакана скончылася." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Усталёўка ці выдаленне пакетаў праграм не атрымалася." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Магчымасць не падтрымліваецца." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Мяркуючы па ўсім, у aptdaemon, праграмным забеспячэнні, якое дазваляе вам " "усталёўваць / выдаляць праграмы і выконваць звязаныя з пакетамі задачы, " "прысутнічае праграмная памылка." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Гэтая памылка магла паўстаць з прычыны дадатковых пакетаў, якія немагчыма " "ўсталяваць ці якія адсутнічаюць. Да таго ж можа мець месца канфлікт паміж " "пакетамі, якія не могуць быць усталяваныя адначасова." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Усталёўка магла прайсці няўдала з-за памылкі ў адпаведным пакеце, альбо была " "няправільна спыненая. Вам варта выправіць гэта перш чым усталёўваць ці " "выдаляць іншыя праграмы." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Калі ласка, скапіруйце файл на ваш лакальны кампутар і праверце правы на " "файл." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Усталёўка пакета, які не адпавядае стандартам, не дазволена. Гэта можа " "прывесці да сур'ёзных памылак на вашым кампутары. Калі ласка, звяжыцеся з " "тымі, хто прапанаваў дадзены пакет, зазначыўшы падрабязнасці, змешчаныя " "ніжэй." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Атрыманы ліцэнзійны ключ, неабходны для выканання гэтага кампанента праграмы " "няправільны, або не можа быць усталяваны належным чынам.\n" "Для атрымання дадатковых звестак адчынеце падрабязнасці." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Усе даступныя абнаўленні ўжо ўсталяваныя." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Ліцэнзійны ключ, які дазволіць вам выкарыстоўваць гэты кампанент праграмы, " "не можа быць атрыманы. Калі ласка, пераканайцеся ў працаздольнасці сеткавага " "злучэння." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Вам не дазволена выконваць гэтае дзеянне." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Памылка загрузкі файлаў пакета" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Памылка пры загрузцы інфармацыі аб крыніцах праграмаў" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Залежнасці пакета ня могуць быць задаволены." #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Сістэма пакетаў пашкоджана." #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ключ ня быў усталяваны" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ключ быў ня выдалены" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Немагчыма заблакаваць мэнэджар пакетаў" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Ня ўдалося загрузіць спіс пакетаў" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакет не існуе" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Пакет у актуальным стане" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакет ужо ўсталяваны" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакет не ўсталяваны" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Памылка пры выдаленні важнага сістэмнага пакета" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Заданне ня можа быць пракантралявана" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Памылка пакетнай аперацыі" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Патрабуецца ўсталёўка нязнойдзеных пакетаў" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Папярэдняя ўсталёўка не была скончана" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Гэты пакет кепскай якасці" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Не атрымалася адкрыць пакет" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Гэтая магчымасць не падтрымліваецца" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Памылка атрымання ліцэнзійнага ключа" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Памылка ўсталёўкі ліцэнзійнага ключа" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Сістэма ў актуальным стане" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Здарылася непераадольная памылка" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Чаканне запуска службы" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Чаканне" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Чаканне на неабходны носьбіт інфармацыі" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Чаканне на сканчэнне працы іншых мэнэджараў праграмнага забеспячэння" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Чаканне на запыт канфігурацыйнага файла" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Запуск задачы" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Ідзе загрузка" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Запыт крыніц праграм" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Ачышчэнне" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Скончана" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Скасавана" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Загрузка спіса праграмаў" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Усталёўка %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Канфігураванне %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Выдаленне %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Выконваецца поўнае выдаленне %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Апавяшчэнне аб знікненні %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Выконваецца пасляўсталёвачны трыгер %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Абнаўленне %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Выманне %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Падрыхтоўка да ўсталёўкі %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Падрыхтоўка канфігурацыі %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Падрыхтоўка да выдалення%s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Падрыхтоўка да поўнага выдалення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s усталяваны" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s цалкам выдалены" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s выдалены" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Выканана" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Няўдалая ідэнтыфікацыя" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Атрыманне" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Чаканне" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Сетка недасяжная" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Апрацоўка %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Загружана %sB з %sB на хуткасці %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Загружана %sB з %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Падрабязна" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Файл" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Загружана %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Загружана" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Патрабуецца наяўнасць CD/DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Устаўце паказаны вышэй CD/DVD у прывад '%s' для ўсталёўкі пакетаў з яго." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Пра_цягнуць" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Усталяваць" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Пераўсталяваць" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Выдаліць" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Ачысціць" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Абнаўленне" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Панізіць версію" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Прапусціць абнаўленне" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Калі ласка, паглядзіце на спіс зменаў ніжэй." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Патрэбна ўсталёўка дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Патрэбна паўторная ўсталёўка дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Неабходна выдаленне дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Патрэбна ачыстка ад дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Неабходна абнаўленне дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Неабходна паніжэнне версіі дадатковых праграм" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Абнаўленні будуць прапушчаны" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Патрабуюцца дадатковыя змены" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sБ усяго будзе сцягнута" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sБ месца на цвёрдым дыску будзе вызвалена." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sБ дыскавай прасторы будзе занята." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "Замяніць файл «%s» з унесенымі Вамі зменамі больш позняй версіяй?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Калі Вы ня ведаеце, для чаго быў створаны гэты файл, то хутчэй за ўсё яго " "можна будзе бяспечна замяніць." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Змены" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Пакінуць" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Замяніць" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Падрабязнасці" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Чаканне на завяршэнне працы %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Загрузка %(files)s" msgstr[1] "Загрузка %(files)s" msgstr[2] "Загрузка %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "лакальны рэпазітар" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Загрузка з %s" msgstr[1] "Загрузка з %s" msgstr[2] "Загрузка з %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Структура «%s»" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Апісанне %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Подпіс апісання %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Даступныя пакеты з «%s»" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Даступныя крыніцы з %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Даступныя пераклады з %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Пераклады на %s (%s) з %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Пераклады на %s з %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Пераклад (%s) з %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Пакет %s не даступны" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Пакет %s не ўсталяваны" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Версія %s пакета %s не ўсталявана" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Пакет %s ужо ўсталяваны" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Версія %s пакета %s недаступная" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Не атрымалася загрузіць і ўсталяваць значэнне %s з %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Ключавы файл %s не можа быць усталяваны: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ключ з лічбавым подпісам %s не можа быць выдалены: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Пакет %s не можа быць выдалены." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Версія %s пакета %s не ўсталяваная" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Папярэдняя версія %s пакета %s ужо ўсталяваная" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Версія %s пакета %s ужо ўсталяваная" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Версія %s пакета %s недаступная" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Вам неабходна пазначыць версію, каб правесці адкат %s да" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Больш новая версія %s пакета %s ужо ўсталяваная" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Пакет %s недаступны ў рэлізе %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Пакет %s не можа быць выдалены" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "У пакеце не пазначана поле \"занятае месца пасля ўсталёўкі\". Гл. правілы " "Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Ліцэнзійны ключ не ўтрымлівае даных" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Ліцэнзійны ключ не павінен утрымоўваць выкананы код." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Недапушчальнае размяшчэнне ліцэнзійнага ключа %s" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Ліцэнзійны ключ ужо існуе: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Месцазнаходжанне ліцэнзійнага ключа не з'яўляецца бяспечным, так як змяшчае " "сімвалічныя спасылкі. Адрас %s спасылаецца на %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Папка у якую будзе выконвацца ўсталёўка ключа, яшчэ не існуе: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Памылка запісу файла ключа ў: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Пакеты, маючыя нездаволеныя залежнасці:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "але гэта віртуальны пакет" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "але ён не ўсталяваны" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "але ён не будзе ўсталяваны" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "але %s ужо ўсталяваны" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "але %s будзе ўсталяваны" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Не атрымалася дадаць ключ да спіса давераных пастаўнікоў праграм" aptdaemon-1.1.1+bzr982/po/bg.po0000644000000000000000000015161512375372771014241 0ustar 00000000000000# Bulgarian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-09-18 11:18+0000\n" "Last-Translator: Dimitar Dimitrov \n" "Language-Team: Bulgarian \n" "Language: bg\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Изброяване на ключове на доверени доставчици" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "За да видите списъка с доверени ключове, трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Премахване на инсталационните пакетни файлове" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "За да премахнете свалените инсталационни файлове, трябва да се " "идентифицирате." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Променяне на софтуерната конфигурация" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "За да променяте софтуерните настройки, трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Промяна на софтуерно хранилище" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "За да промените настройките на софтуерно хранилище, трябва да се " "идентифицирате." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Инсталиране на файл пакет" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "За да инсталирате този пакет, трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Актуализиране на информацията за пакетите" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "За да обновите софтуерния каталог, трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Инсталиране или премахване на пакети" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "За да инсталирате или премахнете софтуер, трябва да се идентифицирате." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Добавяне на ново хранилище и инсталиране на пакети от него." #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "За да инсталирате софтуер от нов източник, трябва да се идентифицирате." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Добавяне на ново хранилище на закупен софтуер и инсталиране на пакети от него" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "За да инсталирате поръчан трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Пакети за надграждане" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "За да инсталирате обновен софтуер, трябва да се идентифицирате." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Отказване на задачата на друг потребител" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "За да откажете софтуерните промени на друг потребител, трябва да се " "идентифицирате." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Задаване на сървър-посредник за изтегляне на софтуер" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "За да използвате сървър-посредник за да изтеглите софтуер, трябва да се " "идентифицирате." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ГРЕШКА" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Изтегляне на %sB от %sB с %sB/с" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Изтеглени %sB от %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ГРЕШКА:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Не Ви е позволено да извършвате това действие." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Добавяне в опашката" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Изчисляване на зависимостите" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Следният НОВ пакет ще бъде инсталиран (%(count)s):" msgstr[1] "Следните НОВИ пакети ще бъдат инсталирани (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Следният пакет ще бъде обновен (%(count)s):" msgstr[1] "Следните пакети ще бъдат обновени (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Следният пакет ще бъде ПРЕМАХНАТ: (%(count)s):" msgstr[1] "Следните пакети ще бъдат ПРЕМАХНАТИ: (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Следният пакет ще бъде ПОНИЖЕН: (%(count)s):" msgstr[1] "Следните пакети ще бъдат ПОНИЖЕНИ: (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Следният пакет ще бъде преинсталиран: (%(count)s):" msgstr[1] "Следните пакети ще бъдат преинсталирани (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Следният пакет е задържан (%(count)s):" msgstr[1] "Следните пакети са задържани (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Трябва да бъдат получени архиви в размер %sB." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "След тази операция, ще бъде използвано %sB допълнително пространство." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "След тази операция, ще бъде бъде освободено %sB пространство." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Желаете ли да продължите [y=Да/n=Не]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "За да работите с повече от един пакет, сложете името му в кавички:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Опресняване на кеша" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Опит за разрешаване на счупени зависимости. Това е потенциално опасно " "действие, тъй като може да се опита да премахне много пакети." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Опит за завършване на предходна незавършена инсталация" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Инсталиране на дадените пакети" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Преинсталиране на дадените пакети" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Премахване на дадените пакети" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Премахване на дадените пакети, включително конфигурационните им файлове" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Понижаване на версиите на дадените софтуерни пакети" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Остаряло: Моля използвайте --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Надграждане на системата по безопасен начин" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Надграждане на системата с евентуално инсталиране и премахване на пакети" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Добавяне на доставчик към доверените" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Добавяне на ключов идентификатор на доставчик (нуждае се и от --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Използване на даден сървър за търсене на ключове" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Добяване на ново хранилище от даден deb-ред" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Указване на алтернативен файл sources.list.d, към който да се добавят " "хранилища." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Изброяване на ключове от доверени доставчици" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Премахване на доверения ключ на даден идентификатор" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Пренастрой инсталираните пакети. По желание може да бъде определен минимален " "приоритет на въпроси." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Да бъде показан минималният debconf приоритет на въпроси" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Да се закача към терминала на apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Разрешаване на пакети от неидентифицирани източници" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Показване на допълнителна информация за пакетите. В момента се показва само " "версията." #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Изчакване за идентификация" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Не спирайте демона заради неактивност" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Показване на вътрешна информация за обработка" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Спиране и заменяне на вече работещ демон" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Слишайте DBus сесията (Изисквана само за тестване)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Изпълни операции във зададената chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Запазване на статистики за профила в упоменатия файл" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Без промени по системата (От полза само за разработчици)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Инсталиран файл" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Инсталирани пакети" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Добавен ключ от файл" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Актуализиран кеш" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Търсенето приключи" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Премахнат доверен ключ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Премахнати пакети" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Обновени пакети" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Надградена система" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Приложени промени" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Поправена непълна инсталация" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Поправени повредени зависимости" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Добавен източник на софтуер" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Включен компонент на дистрибуцията" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Премахнати са инсталационните пакетни файлове." #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Пренастроени инсталирани пакети" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Успешно" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Отменено" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Неуспешно" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Инсталиране на файл" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Инсталиране на пакети" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Добавяне на ключ от файл" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Актуализиране на кеша" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Премахване на доверен ключ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Премахване на пакети" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Актуализиране на пакети" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Надграждане на системата" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Прилагане на промените" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Поправяне на непълна инсталация" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Поправяне на инсталиран софтуер" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Добавяне на източник на софтуер" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Включване на компонент на дистрибуцията" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Премахване на инсталационните пакетни файлове" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Пренастройване на инсталираните пакети" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Търсене" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Инсталирането на пакета неуспешно" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Инсталирането на софтуера неуспешно" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Опресняването на софтуерния списък неуспешно" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Премахването на софтуерния доставчик от списъка със софтуерни доставчици " "неуспешно" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Премахването на софтуера неуспешно" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Обновяването на софтуер неуспешно" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Надграждането на системата неуспешно" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Прилагането на софтуерните промени неуспешно" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Поправянето на непълна инсталация неуспешно" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Поправянето на повредени зависимости неуспешно" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Добавянето на източник на софтуер е неуспешно" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Включването на компонент на дистрибуцията е неуспешно" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Премахването на инсталационните пакетни файлове е неуспешно" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Търсенето е неуспешно" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Проверете Интернет връзката." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Проверете дали използвате софтуерни хранилища на трети страни. Ако това е " "така, деактивирайте ги, защото те често са източник на проблеми.\n" "Допълнително изпълнете следната команда в Терминал: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Избраният файл може да не е GPG файл ключ или може да е повреден." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Избраният ключ не може да бъде премахнат. Проверете дали сте посочили " "валиден идентификатор." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Проверете дали в момента не работи друг инструмент за управление на софтуер, " "например Synaptic или aptitude. В даден момент само на един инструмент е " "позволено да прави промени." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Това е сериозен проблем. Опитайте отново по-късно. Ако проблемът се появи " "отново, съобщете го на разработчиците." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Проверете изписването на името на пакета, както и че съответно хранилище е " "включено." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Няма необходимост от обновяване." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Няма необходимост от инсталация" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Няма необходимост от премахване." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Поискахте да премахнете пакет който е основна част от вашата система." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Връзката с демона беше изгубена. Най-вероятно демонът, работещ във фонов " "режим е блокирал." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Инсталация или премахване на софтуерен пакет неуспешна." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Исканата функция не се поддържа." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Изглежда има програмна грешка в aptdaemon - софтуерът който ви позволява да " "инсталирате/деинсталирате софтуер и да изпълнявате други задачи от " "управлението на пакетите." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Тази грешка може да се дължи на необходими допълнителни софтуерни пакети, " "които липсват или не могат да бъдат инсталирани. Освен това, възможно е да " "има конфликт между софтуерни пакети, които не могат да бъдат едновременно " "инсталирани." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Инсталацията може да се е провалила, заради грешка в съответните софтуерни " "пакети или ако е била прекъсната по некоректен начин. Трябва да отстраните " "това преди да инсталирате или премахнете друг софтуер." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Моля копирайте файлът на вашия локален компютър и проверете разрешенията за " "файла." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Инсталирането на пакет, който нарушава качествените стандарти не е " "разрешено. Това може да причини сериозни повреди на вашия компютър. Моля " "свържете се с човека или организацията, която е осигурила този файл включващ " "следните детайли." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Всички налични актуализации са вече инсталирани." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Не Ви е позволено да извършвате това действие." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Неуспех при изтегляне на файловете от пакета" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Неуспех при изтегляне на информацията от хранилището" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Пакетните зависимости не могат да бъдат установени" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Пакетната система е повредена" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ключът не беше инсталиран" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ключът не беше премахнат" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Неуспех при заключването на пакетния мениджър" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Неуспех при зареждане на списъка с пакети" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакетът не съществува" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакетът вече е инсталиран" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакетът не е инсталиран" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Неуспех при премахването на основнен системен пакет" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Задачата не може да бъде наблюдавана или контролирана" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Пакетната операция неуспешна" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Изисква инсталация на недоверени пакети" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Предишната инсталация не е завършена" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Пакетът е с лошо качество" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Пакетният файл не може да бъде отворен" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Неподдържана функция" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Появи се неочаквана грешка" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Изчакване услугата да стартира" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Изчакване" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Изчакване на необходимата среда" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Изчакване на други софтуерни мениджъри да приключат работа" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Изчакване промпта на конфигурационния файл" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Текуща задача" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Изтегляне" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Почистване" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Завърши" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Отменяне" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Зареждане на списъка със софтуер" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Инсталиране на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Конфигуриране на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Премахване на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Окончателно премахване на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Отбелязване на изчезването на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Изпълнение на тригер след инсталиране %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Надграждане на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Разпакетиране на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Подготовка за инсталиране на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Подготовка за конфигуриране на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Подготовка за премахване на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Подготовка за окончателно премахване на %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s е инсталиран" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s е напълно премахнат" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s е премахнат" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Готово" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Неуспешна идентификация" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Получаване" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "В покой" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Мрежата не е достъпна" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Обработка на %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Изтегляне на %sB от %sB с %sB/с" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Изтеглени %sB от %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Подробности" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Файл" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Изтеглени %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Изтеглен" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Необходим е CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Моля поставете горния CD/DVD в устройството '%s', за да инсталирате " "софтуерни пакети от него." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Пр_одължаване" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Инсталиране" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Преинсталиране" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Премахване" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Прочистване" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Надграждане" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "По-стара версия" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Без надграждане" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Моля разгледайте списъка с промените по-долу." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Трябва да бъде инсталиран допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Трябва да бъде преинсталиран допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Трябва да бъде премамахнат допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Трябва да бъде прочистен допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Трябва да бъде надграден допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Трябва да бъде върнат към по-стара версия допълнителен софтуер" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Ще бъдат пропуснати обновления" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Необходими са допълнителни прочени" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Ще бъдат изтеглени %sB общо." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Ще бъде освободено %sB дисково пространство." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Ще бъде използвано %sB дисково пространство." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Замяна на вашите промени в '%s' с по-скорошна версия на конфигурационния " "файл?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "Ако не знаете защо файла е там, обикновенно е безопасно да го смените." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Промени" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Запазване" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Замяна" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Подробности" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Изчакване на %s за изход" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Изтегляне на %(files)s" msgstr[1] "Изтегляне на %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "локално хранилище" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Сваляне от %s" msgstr[1] "Сваляне от %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Структура на %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Описание на %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Налични пакети от %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Налични източници от %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Налични преводи от %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Превод на %s (%s) от %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Превод на %s от %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Пакетът %s не може да бъде намерен" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Пакетът %s не е инсталиран" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Версията %s на %s не е инсталирана" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Пакетът %s вече е инсталиран" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Версията %s на %s не е достъпна." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Неуспех да свали и инсталира ключът %s от %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Ключов файл %s не може да бъде инсталиран: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ключ със отпечатък %s не може да бъде премахнат: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Пакетът %s не може да бъде премахнат." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Версията %s на %s не е инсталирана" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Бившата версия %s на %s е вече инсталирана" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Версията %s на %s е вече инсталирана" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Версията %s на %s не е достъпна" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Трябва да посочите версия за понижаване %s на" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Късната версия %s на %s е вече инсталирана" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Пакетът %s не е достъпен във %s версия" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Пакетът %s не може да бъде премахнат" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Пакетът не предлага валиден Инстално-Размерно контролно поле. Вижте Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Следните пакети имат неудовлетворени зависимости:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "но е виртуален пакет" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "но не е инсталиран" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "но няма да бъде инсталиран" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "но %s е инсталиран" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "но %s ще бъде инсталиран" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Добавянето на ключа към списъка с доверени софтуерни доставчици неуспешно" aptdaemon-1.1.1+bzr982/po/bn.po0000644000000000000000000017556312375372771014260 0ustar 00000000000000# Bengali translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # Ayesha Akhtar , 2012. # Robin Mehdee , 2012. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-04 04:03+0000\n" "Last-Translator: Robin Mehdee \n" "Language-Team: Bengali \n" "Language: bn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "বিশ্বস্ত ভেন্ডরদের কী-সমূহের তালিকা কর" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "বিশ্বস্ত কী এর তালিকা প্রদর্শন করতে, আপনাকে পরিচয় দিতে হবে।" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "ডাউনলোড করা প্যাকেজ ফাইলসমূহ অপসারণ কর" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "ডাউনলোড করা প্যাকেজগুলো মুছে ফেলতে হলে আপনাকে পরিচয় দিতে হবে৷" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "সফটওয়্যার কনফিগারেশন পরিবর্তন করুন" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "সফটওয়্যার সেটিংস পরিবর্তন করতে হলে আপনাকে পরিচয় দিতে হবে৷" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "সফটওয়্যার রিপোজিটরী পরিবর্তন করুন" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "সফটওয়্যার রিপোজিটরী সেটিংস পরিবর্তন করতে আপনাকে আপনার পরিচয় দিতে হবে।" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "প্যাকেজ ফাইল ইন্সটল করুন" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "এই প্যাকেজটি ইন্সটল করতে হলে, আপনাকে পরিচয় দিতে হবে৷" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "প্যাকেজের তথ্য আপডেট করো" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "সফটওয়্যার ক্যাটালগ হালনাগাদ করতে, আপনাকে পরিচয় দিতে হবে।" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "প্যাকেজ ইন্সটল কিংবা অপসারণ করুন" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "কোন সফটওয়্যার ইন্সটল করতে বা মুছে ফেলতে হলে আপনাকে পরিচয় দিতে হবে৷" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "একটি নতুন রিপোজটরী যুক্ত করুন এবং এর থেকে প্যাকেজ ইন্সটল করুন" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "নতুন উৎস থেকে সফটওয়্যার ইনস্টল করতে, আপনাকে পরিচয় দিতে হবে।" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "কেনা সফটওয়্যারের একটি নতুন রিপোজটরী যুক্ত করুন এবং এর থেকে প্যাকেজ ইন্সটল করুন" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "ক্রয়কৃত সফটওয়্যার ইন্সটল করতে হলে আপনাকে পরিচয় দিতে হবে৷" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "প্যাকেজ সমূহ আপগ্রেড করো" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "হালনাগাদকৃত সফটওয়্যার ইনস্টল করতে, আপনাকে পরিচয় দিতে হবে।" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "অন্য ব্যবহারকারির কাজ বন্ধ করুন" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "অন্য কারও সফটওয়্যার পরিবর্তন বাতিল করতে আপনাকে আপনার পরিচয় দিতে হবে।" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "সফটওয়্যার ডাউনলোড করার জন্য একটি প্রক্সি নির্দিষ্ট করুন" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "সফটওয়্যার ডাউনলোডের জন্য প্রক্সি সার্ভার ব্যবহার করতে, আপনাকে পরিচয় দিতে হবে।" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ত্রুটি" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "ডাউনলোড করা হয়েছে %sB, %sB এর মধ্যে %sB/s গতিতে" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "ডাউনলোড করা হয়েছে %sB, %sB এর মধ্যে" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ত্রুটি:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "আপনি এই কাজ সম্পাদনের জন্য অনুমতিপ্রাপ্ত নন" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "সারিতে অনর্ভুক্ত করা হচ্ছে" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "ডিপেন্ডেসি ঠিক করা হচ্ছে" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "উল্লেখিত নতুন প্যাকেজ ইন্সটল করা হবে (%(count)s):" msgstr[1] "উল্লেখিত নতুন প্যাকেজ ইন্সটল করা হবে (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "উল্লেখিত প্যাকেজ উন্নীত করা হবে (%(count)s):" msgstr[1] "উল্লেখিত প্যাকেজ উন্নীত করা হবে (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "উল্লেখিত প্যাকেজ অপসারণ করা হবে (%(count)s):" msgstr[1] "উল্লেখিত প্যাকেজ অপসারণ করা হবে (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "উল্লেখিত প্যাকেজ অবনিত করা হবে (%(count)s):" msgstr[1] "উল্লেখিত প্যাকেজ অবনিত করা হবে (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "উল্লেখিত প্যাকেজ পুনরায় ইন্সটল করা হবে (%(count)s):" msgstr[1] "উল্লেখিত প্যাকেজ পুনরায় ইন্সটল করা হবে (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "উল্লেখিত প্যাকেজ পিছনে রাখা হয়েছে (%(count)s):" msgstr[1] "উল্লেখিত প্যাকেজ পিছনে রাখা হয়েছে (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "আর্কাইভের %sB পাওয়া প্রয়োজন।" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "এই অপারেশনের পরে, ডিস্কের অতিরিক্ত %sB জায়গা ব্যবহৃত হবে।" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "এই অপারেশনের পরে, ডিস্কের অতিরিক্ত %sB জায়গা খালি হবে।" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "আপনি কি চালিয়ে যেতে চান [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "একটির বেশি প্যাকেজ অপারেট করতে হলে প্যাকেজের নাম উদ্ধৃতি চিহ্নের মধ্যে রাখতে হবে:\n" "aptdcon --ইনস্টল \"ফু বার\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "ক্যাশ রিফ্রেশ করুন" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "ভাঙ্গা নির্ভরশীলতা পুনরায় ঠিক করতে চেষ্টা করুন। সম্ভাব্যরূপে বিপদজনক অপারেশন ইতোমধ্যে " "এটা অনেক প্যাকেজ অপসারণ করতে চেষ্টা করেছে।" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "পূর্ববর্তী অসম্পূর্ণ ইনস্টলেশন সম্পন্ন করতে চেষ্টা করুন" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "প্রদত্ত প্যাকেজ ইনস্টল" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "প্রদত্ত প্যাকেজ পুনরায় ইনস্টল" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "প্রদত্ত প্যাকেজ অপসারণ" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "কনফিগারেশন ফাইলসহ প্রদত্ত প্যাকেজ অপসারণ" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "প্রদত্ত প্যাকেজ অবনিতকরণ" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "অবলোপ করা: অনুগ্রহ করে ব্যবহার করুন --নিরাপদ-উন্নীত করুন" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "সিস্টেম নিরাপদে উন্নীত করুন" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "সিস্টেম উন্নীত করুন, সম্ভবত প্যাকেজ ইনস্টল এবং অপসারণ করা হচ্ছে" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "বিশ্বস্ত একজনকে ভেন্ডর সংযুক্ত করুন" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "ভেন্ডর কী আইডি সংযুক্ত করুন (আরও প্রয়োজন --কী সার্ভার)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "কী খুঁজতে প্রদত্ত কী সার্ভার ব্যবহার করুন" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "প্রদত্ত deb-line থেকে নতুন রিপোজিটরী যুক্ত করুন" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "বিকল্প sources.list.d file কোন রিপোজিটরিতে সংযুক্ত করা উচিত তা সুনির্দিষ্টভাবে " "উল্লেখ করুন।" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "বিশ্বস্ত ভেন্ডর কীর তালিকা" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "প্রদত্ত অাঙ্গুলের ছাপের বিশ্বস্ত কী অপসারণ" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "ইন্সটলকৃত প্যাকেজ পুনরায় কনফিগার করুন। বিকল্পরূপে প্রশ্নের সর্বনিম্ন অগ্রাধিকার উল্লেখিত " "হতে পারে" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "প্রশ্নের সর্বনিম্ন debconf অগ্রাধিকার প্রদর্শিত হবে" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "apt টার্মিনালে সংযুক্ত করবেন না" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "অপরিচিত উৎস থেকে প্যাকেজ অনুমোদন" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "প্যাকেজ সম্পর্কে অতিরিক্ত তথ্য প্রদর্শন। বর্তমানে শুধু সংস্করণ সংখ্যা" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "প্রমাণীকরণের জন্য অপেক্ষা করা হচ্ছে" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "ডিমন নিষ্ক্রিয় হলে তা বন্ধ করবেন না" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "কোন প্লাগইন লোড করা হবে না" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "অভ্যন্তরীন প্রসেসিং তথ্য দেখাও" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "বন্ধ করে কোন চালু থাকা ডিমন প্রতিস্থাপন করুন" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBus সেশন bus এ শুনুন (শুধু পরীক্ষার জন্য আবশ্যক" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "প্রদত্ত chroot এ অপারেশন সম্পাদন" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "প্রোফাইল-এর তথ্য নির্দিষ্ট ফাইলে রাখুন" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "সিস্টেমের কোন পরিবর্তন করবেন না (শুধুমাত্র ডেভেলপারের ব্যবহার)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "ইনস্টল করা ফাইল সমূহ" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "ইন্সটল করা প্যাকেজসমুহ" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "ফাইল থেকে কী যুক্ত হয়েছে" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "ক্যাশ আপগ্রেড করুন" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "অনুসন্ধান সম্পন্ন" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "বিশ্বস্ত কী মুছে ফেলুন" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "মুছে ফেলা হয়েছে এমন প্যাকেজসমূহ" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "আপগ্রেড করা প্যাকেজসমূহ" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "আপগ্রেড করা সিস্টেম" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "পরিবর্তন সমূহ প্রয়োগ করা হয়েছে" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "অসম্পূর্ণ ইনস্টলেশন সংস্কার করা হয়েছে" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "ভাঙ্গা নির্ভরশীলতা সংস্কার করা হয়েছে" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "সফটওয়্যারের উৎস সংযুক্ত করা হয়েছে" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "ডিসট্রিবিউশনের কম্পোনেন্ট সক্রিয়" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "ডাউনলোডকৃত প্যাকেজ ফাইল অপসারণ করা হয়েছে" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "ইন্সটলকৃত প্যাকেজ পুনরায় কনফিগার করা হয়েছে" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "সফল" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "বাতিল করা হয়েছে" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "ব্যর্থ হয়েছে" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ফাইল ইনস্টল করা হচ্ছে" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "প্যাকেজ ইনস্টল করা হচ্ছে" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ফাইল থেকে কী যোগ করা হচ্ছে" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "ক্যাশ হালনাগাদ করা হচ্ছে" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "বিশ্বস্ত কী অপসারণ করা হচ্ছে" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "প্যাকেজ অপসারণ করা হচ্ছে" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "প্যাকেজ হালনাগাদ করা হচ্ছে" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "সিস্টেম উন্নীত করা হচ্ছে" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "পরিবর্তনসমূহ প্রয়োগ করা হচ্ছে" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "অসম্পূর্ণ ইনস্টলেশন সংস্কার করা হচ্ছে" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "ইন্সটলকৃত সফটওয়্যার সংস্কার করা হচ্ছে" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "সফটওয়্যার উৎস সংযুক্ত করা হচ্ছে" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "ডিসট্রিবিউশনের কম্পোনেন্ট সক্রিয় করা হচ্ছে" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "ডাউনলোডকৃত প্যাকেজ ফাইল অপসারণ করা হচ্ছে" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "ইন্সটলকৃত প্যাকেজ পুনরায় কনফিগার করা হচ্ছে" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "অনুসন্ধান করা হচ্ছে" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "প্যাকেজ ফাইলের ইনস্টলেশন করতে ব্যর্থ" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "সফটওয়্যারের ইনস্টলেশন করতে ব্যর্থ" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "সফটওয়্যারের তালিকা রিফ্রেশ করতে ব্যর্থ" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "বিশ্বস্ত একজনের তালিকা থেকে ভেন্ডর অপসারণ করতে ব্যর্থ" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "সফটওয়্যার অপসারণ করতে ব্যর্থ" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "সফটওয়্যার হালনাগাদ করতে ব্যর্থ" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "সিস্টেম উন্নীত করতে ব্যর্থ" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "সফটওয়্যার পরিবর্তন প্রয়োগ করতে ব্যর্থ" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "অসম্পূর্ণ ইনস্টলেশন সংস্কার করতে ব্যর্থ" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "খন্ডিত নির্ভরশীলতা সংস্কার করতে ব্যর্থ" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "সফটওয়্যার উৎস সংযুক্ত করতে ব্যর্থ" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "ডিস্ট্রিবিউশনের কম্পোনেন্ট সক্রিয় করতে ব্যর্থ" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "ডাউনলোডকৃত প্যাকেজ ফাইল অপসারণ করতে ব্যর্থ" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "অনুসন্ধান ব্যর্থ হয়েছে" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "লাইসেন্স কী যোগ করা হচ্ছে" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "আপনার ইন্টারনেট সংযোগ পরীক্ষা করুন।" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "আপনি তৃতীয় পক্ষের কোন রিপোজিটরি ব্যবহার করেছেন কিনা পরীক্ষা করুন। যদি তাদের " "নিষ্ক্রিয় করা হয়, ইতোমধ্যে এটি সাধারণ সমস্যার উৎস।\n" "এছাড়াও টার্মিনালে উল্লেখিত কমান্ড চালান: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "নির্বাচিত ফাইলটি সম্ভবতঃ কোন GPG কী ফাইল নয় অথবা এটি ত্রুটিপূর্ন।" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "নির্বাচিত কী অপসারণ করা যায়নি। কার্যকর আঙ্গুলের ছাপ সরবরাহ করেছেন কিনা তা পরীক্ষা " "করুন।" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "পরীক্ষা করুন যদি আপনি বর্তমানে অন্য সফটওয়্যার ব্যবস্থাপক টুেল সচল থাকেন, উদাহরণ স্বরূপ " "সিন্যাপটিক অথবা এপটিটিউড। একটি মাত্র টুল একইসময়ে পরিবর্তন করতে অনুমতি দেয়।" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "এটি একটি কঠিন সমস্যা। পরবর্তীতে আবার চেষ্টা করুন। যদি এই সমস্যা আবার দৃষ্টিগোচর হয়, " "অনুগ্রহ করে ডেভেলপারকে ত্রুটির রিপোর্ট দিন।" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "প্যাকেজের নামের বানান এবং সঠিক রিপোজিটরি সক্রিয় হয়েছে কি না- তা পরীক্ষা করুন।" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "হালনাগাদ করার কোনো প্রয়োজন নেই।" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "ইনস্টলেশন করার কোনো প্রয়োজন নেই" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "অপসারণ করার কোনো প্রয়োজন নেই।" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "আপনি অনুরোধ করেছেন প্যাকেজ অপসারণ করতে যা আপনার সিস্টেমের অত্যাবশ্যক অংশ।" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "daemon এর সংযোগ বিচ্ছিন্ন হয়েছে। খুব সম্ভবত daemon এর পটভূমি ক্র্যাশ করেছে।" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "সফটওয়্যার প্যাকেজের ইনস্টলেশন অথবা অপসারণ ব্যর্থ।" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "অনুরোধকৃত বৈশিষ্ট্য সমর্থিত হয়েছে।" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "এপ্টডিমন, যে সফটওয়্যারটি আপনাকে অন্য সফটওয়্যার ইনস্টল/অপসারণ করতে দেয় ও অন্যান্য " "প্যাকেজ ব্যবস্থাপনা সম্পর্কিত কাজ করতে দেয়, তাতে কোন প্রোগ্রামিং ত্রুটি হয়ে থাকতে " "পারে।" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "অত্যাবশ্যক অতিরিক্ত সফটওয়্যার প্যাকেজ দিয়ে এই ত্রুটি ঘটতে পারে যা অনুপস্থিত অথবা " "ইন্সটলকৃত নয়। এছাড়াও দ্বন্দ্ব হতে পারে সফটওয়্যার প্যাকেজের মধ্যে যা একই সময়ে ইন্সটল " "হতে অনুমতি দেয়না।" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "ইনস্টলেশনটি ব্যর্থ হতে পারে কারণ সংগতিপূর্ণ সফটওয়্যার প্যাকেজের ত্রুটি অথবা প্রতিকূল " "ভাবে এটা বাতিল হয়েছে। আরো কোনো সফটওয়্যার ইনস্টল অথবা অপসারণ করার আগে এটা " "মেরামত করতে হবে।" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "অনুগ্রহ করে আপনার স্থানীয় কম্পিউটারে ফাইলটি অনুলিপি করুন এবং ফাইলটির অনুমতি পরীক্ষা " "করুন।" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "প্যাকেজের ইনস্টলেশনটি গুণগত মান লঙ্ঘন করা মেনে নেয়না। আপনার কম্পিউটারে এটা কঠিন " "সমস্যার কারণ হতে পারে। অনুগ্রহ করে এই প্যাকেজ ফাইল যে ব্যক্তি বা সংগঠন সরবরাহ " "করেছে তার সাথে যোগাযোগ করুন এবং নিচে বিস্তারিত তথ্য সংযুক্ত করুন।" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "ডাউনলোডকৃত লাইসেন্স কী যা আবশ্যক এই সফটওয়্যারের অংশ সচল করতে কার্যকর নয় অথবা " "সঠিকভাবে ইন্সটল করা যায়নি।\n" "আরও বিস্তারিত তথ্যের জন্য দেখুন।" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "সব বিদ্যমান উন্নীতকরণ ইতোমধ্যে ইন্সটল করা হয়েছে।" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "লাইসেন্স কী যা সফটওয়্যারের এই অংশ ডাউনলোড করা যায়নি ব্যবহার করতে আপনাকে অনুমতি " "দেয়। অনুগ্রহ করে আপনার নেটওয়ার্কের সংযোগ পরীক্ষা করুন।" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "আপনি এই কাজ সম্পাদনের জন্য অনুমতিপ্রাপ্ত নন" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "প্যাকেজ ফাইল ডাউনলোড করতে ব্যর্থ" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "রিপোজিটরি তথ্য ডাউনলোড করতে ব্যর্থ" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "প্যাকেজ নির্ভরশীলতা পুনরায় ঠিক করা হবেনা" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "প্যাকেজ সিস্টেমটি ভাঙ্গা হয়েছে" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "কী ইন্সটল করা হয়নি" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "কী অপসারণ করা হয়নি" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "প্যাকেজ ব্যবস্থাপক আবদ্ধ করতে ব্যর্থ" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "প্যাকেজ তালিকা লোড করতে ব্যর্থ" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "প্যাকেজ বিদ্যমান নয়" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "প্যাকেজ ইতোমধ্যে হালনাগাদ" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "প্যাকেজ ইতোমধ্যে ইন্সটল হয়েছে" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "প্যাকেজ ইন্সটল হয়নি" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "অপরিহার্য সিস্টেম প্যাকেজ অপসারণ করতে ব্যর্থ" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "টাস্ক লক্ষ্য বা নিয়ন্ত্রণ করতে পারছেনা" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "প্যাকেজ অপারেশন ব্যর্থ" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "অবিশ্বস্ত প্যাকেজের ইনস্টলেশন প্রয়োজন" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "পূর্ববর্তী ইনস্টলেশন সম্পন্ন করা হয়নি" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "প্যাকেজের গুণগত মান খারাপ" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "প্যাকেজ ফাইল খোলা যাচ্ছেনা" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "বৈশিষ্ট্য সমর্থিত নয়" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "লাইসেন্সের কী ডাউনলোড করতে ব্যর্থ হয়েছে" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "লাইসেন্সের কী ইনস্টল করতে ব্যর্থ হয়েছে" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "পদ্ধতি ইতোমধ্যে হালনাগাদ" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "সামলানো যায়না এমন ত্রুটি হয়েছে" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "সার্ভিস আরম্ভ করার জন্য অপেক্ষা করা হচ্ছে" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "অপেক্ষা করা হচ্ছে" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "প্রয়োজনীয় মাধ্যমের জন্য অপেক্ষা করা হচ্ছে" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "অন্যান্য সফটওয়্যার ব্যবস্থাপক শেষ করার জন্য অপেক্ষা করা হচ্ছে" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "কনফিগারেশন ফাইল প্রম্পটের জন্য অপেক্ষা করা হচ্ছে" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "টাস্ক চলছে" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ডাউনলোড করা হচ্ছে" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "সফটওয়্যারের উৎস কোয়েরি করা হচ্ছে" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "পরিষ্কার করা হচ্ছে" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "শেষ করা হচ্ছে" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "বাতিল করা হচ্ছে" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "সফটওয়্যারের তালিকা লোড করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s ইনস্টল করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s কনফিগার করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s অপসারণ করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s সম্পূর্ণরূপে অপসারণ করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s এ কোনো কিছুই অদর্শন নেই" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "%s পোস্ট-ইনস্টলেশন ট্রিগার চালু করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s উন্নীত করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s মোড়ক খোলা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s এর ইন্সটলেশন প্রস্তুত করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s এর কনফিগারেশন প্রস্তুত করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s এর অপসারণ প্রস্তুত করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s এর সম্পূর্ণ অপসারণ প্রস্তুত করা হচ্ছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s ইন্সটল করা হয়েছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s সম্পূর্ণরূপে অপসারণ করা হয়েছে" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s অপসারণ করা হয়েছে" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "সম্পন্ন" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "প্রমাণীকরণ ব্যর্থ" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "নিয়ে আসা হচ্ছে" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "নিষ্ক্রিয়" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "নেটওয়ার্ক বিদ্যমান নয়" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "প্রক্রিয়াধীন %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "ডাউনলোড করা হয়েছে %sB, %sB এর মধ্যে %sB/s গতিতে" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "ডাউনলোড করা হয়েছে %sB, %sB এর মধ্যে" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "বিস্তারিত তথ্য" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "ফাইল" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB ডাউনলোড করা হয়েছে" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "ডাউনলোড করা হয়েছে" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "সিডি/ডিভিডি '%s প্রয়োজন" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "অনুগ্রহ করে সফটওয়্যার প্যাকেজ ইনস্টল করতে ড্রাইভ '%s' তে উপর থেকে CD/DVD প্রবেশ " "করান।" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "চালিয়ে যাওয়া (_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "ইনস্টল" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "পুনরায় ইনস্টল" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "অপসারণ" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "শুদ্ধিকরণ" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "উন্নীত করা" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "অবনিত করা" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "উন্নীতকরণ বাদ দিয়ে যান" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "নিম্নের পরিবর্তনের দিকে লক্ষ্য করুন।" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "অতিরিক্ত সফটওয়্যার হালনাগাদ করা হবে" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "অতিরিক্ত সফটওয়্যার পুনরায় ইন্সটল করা হবে" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "অতিরিক্ত সফটওয়্যার অপসারণ করা হবে" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "অতিরিক্ত সফটওয়্যার বিশোধিত করা হবে" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "অতিরিক্ত সফটওয়্যার উন্নীত করা হবে" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "অতিরিক্ত সফটওয়্যার অবনিত করা হবে" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "হালনাগাদ এড়িয়ে যাওয়া হবে" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "অতিরিক্ত পরিবর্তন প্রয়োজন" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "সর্বমোট %sB ডাউনলোড করা হবে।" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB ডিস্কের জায়গা খালি থাকবে।" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "ডিস্কের আরও %sB জায়গা ব্যবহৃত হবে।" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "কনফিগারেশন ফাইলের পরবর্তী সংস্করণ '%s' তে আপনার পরিবর্তন প্রতিস্থাপন?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "যদি ফাইলটি ইতোমধ্যে এখানে কেন তা আপনি না জানেন, প্রতিস্থাপন করতে এটা সাধারণত " "নিরাপদ।" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "পরিবর্তন (_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "রাখা (_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "প্রতিস্থাপন (_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "বিস্তারিত তথ্য (_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "প্রস্থান করতে %s এর জন্য অপেক্ষা করা হচ্ছে" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s ডাউনলোড করা হচ্ছে" msgstr[1] "%(files)s ডাউনলোড করা হচ্ছে" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "স্থানীয় রিপোজিটরী" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "%s থেকে ডাউনলোড করা হচ্ছে" msgstr[1] "%s থেকে ডাউনলোড করা হচ্ছে" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s এর কাঠামো" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s এর বর্ণনা" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s এর স্বাক্ষর বর্ণনা" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s থেকে বিদ্যমান প্যাকেজ" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s থেকে বিদ্যমান উৎস" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s থেকে বিদ্যমান অনুবাদ" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) এর জন্য অনুবাদ, %s থেকে" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s এর জন্য অনুবাদ, %s থেকে" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "(%s) অনুবাদ %s থেকে" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "প্যাকেজ %s বিদ্যমান নয়" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "প্যাকেজ %s ইন্সটল করা হয়নি" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "সংস্করণ %s এর %s ইন্সটল করা হয়নি" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "প্যাকেজ %s ইতোমধ্যে ইন্সটল করা হয়েছে" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "সংস্করণ %s এর %s বিদ্যমান নয়।" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "%s থেকে %s কী ইনস্টল এবং ডাউনলোড করতে ব্যর্থ:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "কী ফাইল %s ইন্সটল করা যায়নি: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "আঙ্গুলের ছাপ %s সহ কী অপসারণ করা যায়নি: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "প্যাকেজ %s অপসারণ হতে পারেনা।" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "সংস্করণ %s এর %s ইন্সটল করা হয়নি" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "বিগত সংস্করণ %s এর %s ইতোমধ্যে ইন্সটল করা হয়েছে" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "সংস্করণ %s এর %s ইতোমধ্যে ইন্সটল করা হয়েছে" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "সংস্করণ %s এর %s বিদ্যমান নয়" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "%s তে অবনিত করতে সংস্করণ সুনির্দিষ্টভাবে উল্লেখ করা প্রয়োজন" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "পরবর্তী সংস্করণ %s এর %s ইতোমধ্যে ইনস্টল করা হয়েছে" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s রিলিজে প্যাকেজ %s বিদ্যমান নয়।" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "প্যাকেজ %s অপসারণ হতে পারেনা" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "প্যাকেজটি কার্যকর ইন্সটলকৃত-আকার কন্ট্রোল ক্ষেত্র সরবরাহ করেনা। ডেবিয়ান নীতিমালা " "৫.৬.২০ দেখুন।" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "লাইসেন্স কী খালি" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "লাইসেন্স কী এক্সিকিউটেবল কোড ধারণ করতে অনুমোদিত নয়।" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "লাইসেন্স কী এর পথ %s, অকার্যকর" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "লাইসেন্স কী ইতোমধ্যে বিদ্যমান: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "লাইসেন্স কী এর অবস্থান অনিরাপদ, কেননা এতে সাংকেতিক সংযুক্তিসুত্র রয়েছে। %s পথটি %s " "কে নির্দেশ করছে।" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "কী ইন্সটল হবার উপযোগী ডিরেক্টরীটি এখনো বিদ্যমান নয়: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "কী ফাইল লিখতে ব্যর্থ: %s তে" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "নিম্নলিখিত প্যাকেজসমূহের নির্ভরশীলতায় অপূর্নতা রয়েছে:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "কিন্তু এটা একটা পরাবাস্তব প্যাকেজ" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "কিন্তু এটা ইন্সটল অবস্থায় নেই।" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "কিন্তু এটা ইন্সটল করা সম্ভব হচ্ছে না" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "কিন্তু %s ইন্সটল করা রয়েছে" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "কিন্তু %s ইন্সটল করতে হবে" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "বিশ্বস্ত সফটওয়্যারের ভেন্ডরের তালিকার কী সংযুক্ত করতে ব্যর্থ" aptdaemon-1.1.1+bzr982/po/br.po0000644000000000000000000011121612375372771014245 0ustar 00000000000000# Breton translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:43+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: Breton \n" "Language: br\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Staliañ restr ar pakad" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Hizivaat stlennoù ar pakadoù" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Hizivaat ar pakadoù" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Dilezel trevell un arveriad all" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Pellgarget ez eus bet %sB eus %sB da %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Pellgarget ez eus bet %sB eus %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "O tiskoulmañ an amzalc'hoù" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Arabat lazhañ an daemon en abeg d'an diweredegezh" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Diskouez an titouroù a-zivout ar c'heweriañ diabarzh" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Kuitaat hag amsaviñ un daemon o labourat endeo" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Kadaviñ stadegoù an aelad er restr erspizet" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Arabat seveniñ kemmoù er reizhiad (evit an diorreourien nemetken)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Restr staliet" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pakadoù bet staliet" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Alc'hwez ouzhpennet diouzh ur restr" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Krubuilh hizivaet" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Alc'hwez hoc'h eus fiziañs enni dilamet" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pakadoù dilamet" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pakadoù hizivaet" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Reizhiad hizivaet" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Kemmoù sevenet" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Staliadu diglok ratreet" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Amzalc'hioù torr bet ratreet" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Gant berzh" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Dilezet" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "C'hwitet" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Staliadur ar restr" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Staliadur ar pakadoù" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Ouzhpennadur un alc'hwez diouzh ur restr" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Hizivadur ar grubuilh" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Dilamadur un alc'hwez hoc'h eus fiziañs enni" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Dilamadur ar pakadoù" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Hizivadur ar pakadoù" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Hizivadur ar reizhiad" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "O seveniñ ar c'hemmoù" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Ratreadur ur staliadur diglok" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "C'hwitadenn war staliañ restr ar pakad" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "C'hwitadenn war staliañ ar meziant" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "C'hwitadenn war azbevaat roll ar meziantoù" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "C'hwitadenn war dilemel ar gwerzher diwar roll ar re hoc'h eus fiziañs enno" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "C'hwitadenn war dilemel ar meziant" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "C'hwitadenn war hizivaat ar meziant" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "C'hwitadenn war hizivaat ar reizhiad" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "C'hwitadenn war seveniñ kemmoù ar meziant" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "C'hwitadenn war ratreañ ar staliadur diglok" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "C'hwitadenn war ratreañ an amzalc'hioù torr" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Gwiriañ ho kennask ouzh internet" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Gwiriañ hag emaoc'h oc'h ober gant mirlec'hioù un trede den. Mard eo evel-" "se, diweredekait i, rak drezo e teu kudennoù alies.\n" "Ha c'hoazh, lañsit an arc'had da heul en un dermenell : apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Ar restr dibabet n'eo ket ur restr alc'hwez GPG moarvat, pe neuze eo " "kontronet." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ur gudenn sirius eo homañ. Klaskit diwezhatoc'h. Mar tegouezho ar gudenn en-" "dro, gwell e vo sevel un danevell a-fet fazi evit an diorreourien." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "N'eus ket ezhomm eus un hizivadur." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "N'eus ket ezhomm eus ur staliadur." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "N'eus ket ezhomm dilemel." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Azgoulennet hoc'h eus da zilemel ur pakad a zo ul lod pouezus eus ho " "reizhiad." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Kollet eo bet ar c'hennask ouzh an daemon. Morvat eo sac'het drekva an " "daemon." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "C'hwitadenn war staliañ pe zistaliañ pakad ur meziant." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Marteze ez eo c'hwitet ar staliañ en abeg d'ur fazi e pakad ar meziant o " "klotañ gantañ pe rak dilezet eo bet gant un doare direizh. Ret eo vo deoc'h " "ratreañ an dra-se kent ma o trodeoc'h staliañ pe zilemel ur meziant bennak." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "C'hwitadenn war pellgargañ restroù ar pakad" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "C'hwitadenn war pellgargañ stlennoù ar mirlec'hioù" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Amzalc'hoù ar pakadoù n'hallont ket bezañ diskoulmet." #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Torret eo reizhiad ar pakadoù" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ne oa ket staliet an alc'hwez" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ne oa ket dilamet an alc'hwez" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "C'hwitadenn war prennañ merer ar pakadoù" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "C'hwitadenn war kargañ roll ar pakadoù" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Ar pakad n'eus ket anezhañ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Staliet eo ar pakad endeo" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "N'eo ket staliet ar pakad" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "C'hwitadenn war dilemel pakadoù pennañ ar reizhiad" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "N'haller ket evezhiañ pe wiriañ an drevell" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "C'hwitadenn war gwezhiadur evit ar pakad" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Azgoulenn a ra ma vo staliet pakadoù disfiziañs enno" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Ar staliadur kent n'eo ket bet echuet" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "O c'hortoz ma loc'ho ar gwezerezh" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "O c'hortoz" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "O c'hortoz ar media goulennet" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "O c'hortoz ma kuitao an ardoerioù meziantoù all" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "O c'hortoz kemenn ar restr kefluniañ" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Trevell o vont war-raok" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "O pellgargañ" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Naetadur" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Echu" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "O tilezel" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Kargadur roll ar meziantoù" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "O staliañ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "O kefluniañ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "O tilemel %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Goudestaliadur trigger %s o vont war-raok" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Oc'h hizivaat %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Pellgarget ez eus bet %sB eus %sB da %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Pellgarget ez eus bet %sB eus %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Munudoù" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Azgoulennet eo CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "K_enderc'hel" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Amsaviñ ho kemmoù e '%s' gant un handelv nevesoc'h eus ar restr kefluniañ ?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ma n'ouzit ket perak emañ ar restr amañ endeo ez eo gwell amsaviñ ar restr-" "mañ." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "K_emmoù" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Mirout" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Am_saviñ" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "Munu_doù" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "C'hwitadenn war ouzhpennañ an alc'hwez war roll gwezherion veziantoù " #~ "hoc'h eus fiziañs enno" aptdaemon-1.1.1+bzr982/po/bs.po0000644000000000000000000013276512375372771014262 0ustar 00000000000000# Bosnian translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-06 00:53+0000\n" "Last-Translator: Samir Ribić \n" "Language-Team: Bosnian \n" "Language: bs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista ključeva povjerljivih dobavljača" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Da vidite listu povjerljivih ključeva, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Ukloniti preuzete datoteke s paketima" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Da obrišete preuzete paketske datoteke, trebate proći kroz provjeru " "identiteta." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Promijeni softversku konfiguraciju" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Da promijenite softverske postavke, trebate proći kroz provjeru identiteta." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Promijeni softverski repozitorij" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Da promijenite postavke repozitorija, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instaliraj paketsku datoteku" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Da instalirate ovaj paket, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Ažuriraj podatke o paketu" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Da ažurirate katalog softvera, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instaliraj ili ukloni pakete" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Da instalirate ili uklanjate softver, trebate se prijaviti." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instaliraj softver s repozitorija bijele liste visokog povjerenja" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Za instalaciju softvera, potrebne je potvrda autentičnosti." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Dodaj novi repozitorij i instaliraj pakete iz njega." #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Da instalirate softver iz novog izvora, trebate se prijaviti." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Dodaj novi repozitorij kupljenog softvera i instaliraj pakete iz njega." #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Da instalirate kupljeni softver, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Nadogradi pakete" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Da instalirate ažurirani softver, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Otkaži zadatak drugog korisnika" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Da prekinete nečije promjene programa, trebate se prijaviti." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Postavi proksi za softverska preuzimanja" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Da koristite proksi server za preuzimanje softvera, trebate se prijaviti." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "GREŠKA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Preuzeto %sB od %sB na %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Preuzeto %sB od %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "GREŠKA" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Tu akciju vam nije dozvoljeno izvesti." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Stavljanje u red" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Rješavam zavisnosti" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Sljedeći novi paketi će biti instalirani (%(count)s):" msgstr[1] "Sljedeći novi paketi će biti instalirani (%(count)s):" msgstr[2] "Sljedeći novi paketi će biti instalirani (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Sljedeći paketi će biti nadograđeni (%(count)s):" msgstr[1] "Sljedeći paketi će biti nadograđeni (%(count)s):" msgstr[2] "Sljedeći paketi će biti nadograđeni (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Sljedeći paketi će biti uklonjeni (%(count)s):" msgstr[1] "Sljedeći paketi će biti uklonjeni (%(count)s):" msgstr[2] "Sljedeći paketi će biti uklonjeni (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Sljedeći paketi će biti snižene verzije (%(count)s):" msgstr[1] "Sljedeći paketi će biti snižene verzije (%(count)s):" msgstr[2] "Sljedeći paketi će biti snižene verzije (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Sljedeći paketi će biti reinstalirani (%(count)s):" msgstr[1] "Sljedeći paketi će biti reinstalirani (%(count)s):" msgstr[2] "Sljedeći paketi će biti reinstalirani (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Sljedeći paketi će biti sačuvani (%(count)s):" msgstr[1] "Sljedeći paketi će biti sačuvani (%(count)s):" msgstr[2] "Sljedeći paketi će biti sačuvani (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Treba preuzeti %sB arhiva." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Nakon ove operacije, %sB dodatnog disk prostora će biti korišteno." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Nakon ove operacije, %sB dodatnog disk prostora će biti oslobođeno." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Želite li nastaviti [D/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Da radite više od jednog paketa, stavite njihova imena u navodnike:\n" "aptdcon --install \"prvi drugi\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Osvježi keš" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Pokušaj razrješenja oštećenih zavisnosti. Potencijalno opasno, jer može " "ukloniti previše paketa." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Pokušaj završetka prethodne nekompletne instalacije" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instaliraj navedene pakete" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Ponovno instaliraj navedene pakete" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Ukloni navedene pakete" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Ukloni navedene pakete i konfiguracijku datoteku" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Smanjenje verzije navedenih paketa" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Zastarjelo: Koristite --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Ažuriraj sistem na siguran način" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Ažuriraj sistem instalacijom i uklanjanjem paketa" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Dodaj proizvođača u one s povjerenjem" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Dodaj identifikator ključa proizvođača (potreban --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Koristi navedeni server ključeva za pretragu ključeva" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Dodaj novi repozitorij iz navedene deb linije" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Navedi alternativnu datoteku sources.list.d gdje se trebaju dodati " "repozitoriji." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Lista ključeva proizvođača s povjerenjem." #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Ukloni povjerljivi ključ datog otiska." #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Ponovo će podesiti instalirane pakete. Opcionalno može biti naveden " "minimalni prioritet pitanja." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Minimalni prioritet pitanja deb podešavanja koja će biti prikazana" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ne prilaži uz apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Dopusti pakete iz neautentičnih izvora" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Prikazati dodatne informacije o paketima. Trenutno samo broj verzije" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Čekanje na prijavu" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ne gasi demon zbog neaktivnosti" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ne učitavaj nikakve priključke" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Prikaži interne procesneinformacije" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Napusti i zamijeni demon koji se već izvršava" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Osluškuje na magistrali DBus sesije (potrebno je samo za testiranje)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Izvršava operacije u datom chroot okruženju" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Postavi stanja profila u navedenoj datoteci" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ne mijenjaj izmjene sistema (Upotrebljivo samo za razvoj softvera)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Instalirana datoteka" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Instalirani paketi" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Dodan ključ iz datoteke" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Ažuriran keš" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Pretraga je obavljena" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Ukljonjen povjerljivi ključ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Uklonjeni paketi" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Ažurirani paketi" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Ažuriran sistem" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Primijenjene promjene" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Popravljena nekompletna instalacija" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Popravljene oštećene zavisnosti" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Dodan softverski izvor" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Omogućena komponenta distribucije" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Uklonjene preuzete datoteke paketa" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Ponovo podešeni instalirani paketi" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Uspješno" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Poništeno" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Neuspelo" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instaliranje datoteke" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instaliranje paketa" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Dodaje se ključ iz datoteke" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Osvježavam međuspremnik (cache)" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Uklanja se povjerljivi ključ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Uklanjanje paketa" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Ažuriranje paketa" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Nadogradnja sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Primjenjivanje promjena" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Popravak nekompletne instalacije" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Popravljam instaliran softver" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Dodaje se izvor softvera" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Omogućuje se komponenta distribucije" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Ponovo podešeni instalirani paketi" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Ponovo podešavam instalirane pakete" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Tražim" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalacija paketne datoteke nije uspjela" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalacija softvera nije uspjela" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Dodavanje ključa na listu prihvatljivih isporučilaca softvera neuspjelo" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Osvježavanje liste softvera nije uspjelo" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Uklanjanje proizvođača iz liste povjerljivih nije uspjelo" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Uklanjanje softvera nije uspjelo" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Ažuriranje softvera nije uspjelo" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Nadogradnja sistema nije uspjela" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Primjena softveskih izmjena neuspjela" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Popravak nekompletne instalacije neupio" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Popravak oštećenih ovisnosti neuspio" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Dodavanje softverskih izvora neuspjelo" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Omogućavanje komponente distribucije neuspjlo" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Nisam uspio da uklonim preuzete datoteke paketa" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Pretraga nije uspjela" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Dodajem ključ licence" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Provjerite vašu Internet konekciju." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Provjerite da li koristite repozitorije drugih proizvođača. Ako je to tačno, " "onemogućite ih, pošto su oni čest izvor problema.\n" "Dalje izvršite sljedeću komandu u terminalu: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Selektovana datoteka možda nije GPG key datoteka ili je možda pokvarena." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Izabrani ključ se ne može ukloniti. Provjerite da ste dali važeći otisak." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Provjerite da li izvršavate drugi alat za upravljavljanje softverom, npr. " "Synaptic ili aptitude. Samo jedan alat može da pravi promjene u jednom " "trenutku." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ovo je ozbiljan problem. Probajte ponovo kasnije. Ako se problem opet " "dogodi, javite grešku onome ko je razvijao softver." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Provjerite kako se tačno paket zove i da li je omogućen odgovarajući " "repozitorij." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nema nikakve potrebe za ažuriranjem." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nema nikakve potrebe za instaliranjem." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nema nikakve potrebe za uklanjanje." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Zahtijevali ste uklanjanje paketa koji je bitan dio vašeg sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Veza s demonom je izgubljena. Najvjerovatnije je pozadinski demon krahirao." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Instalacija ili uklanjanje softverskog paketa su neuspjeli." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Zatražena funkcija nije podržana." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Izgleda da postoji greška u programiranju aptdaemon, softvera koji vam " "omogućava da instalirate / uklanjate softver kao i da vrši druge poslove u " "vezi sa upravljanjem paketa." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ova greška može biti uzrokovana potrebnim dodatnim paketima koji nedostaju " "ili se ne mogu instalirati. Štaviše, može biti konflikt između softverskih " "paketa koji nisu dopušteni da budu instalirani u isto vrijeme." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Ovo zahtijeva instalaciju paketa s neautentičnih izvora" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Instalacija je možda neuspjela zbog greke u odgovarajućem softverskom paketu " "ili je prekinuto na neadekvatan način. Trebate to popraviti prije " "instalacije ili uklanjanja daljnjeg softvera." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Molim kopirajte datoteku na vaš lokalni računar i provjerite prava nad " "datotekom." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Instaliranje paketa koji krše standarde kvaliteta nije dozvoljeno. To može " "izazvati ozbiljne probleme na vašem računaru. Molim kontaktirajte osobu ili " "organizaciju koja je obezbjedila ovaj paket i uključite detalje ispod." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Preuzeti ključ licence koji je potreban za pokretanje ovog programa nije " "ispravan ili ne može biti ispravno instaliran.\n" "Pogledajte pojedinosti za više podataka." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Sve dostupne nadogradnje su već instalirane." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Ključ licence koji vam omogućava da koristite ovaj program ne može biti " "preuzet. Provjerite vašu mrežnu vezu." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Nemate potrebna prava da obavite ovu akciju." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Ili ste dali pogrešnu lozinku ili otkazali punomoć.\n" "Nadalje, također može biti tehnički razlog ove pogreške, ako niste vidjeli " "dijalog lozinki: vaše desktop okruženje ne pruža PolicyKit agenta sesije." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Neuspjeh u preuzimanju paketnih datoteka" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Neuspjeh u preuzimanju repozitorijskih informacija" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Paketske zavisnosti se ne mogu razriješiti" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Paketni sistem je oštećen" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ključ nije instaliran" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ključ nije uklonjen" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Neuspjeh u zaključavanju paketnog menadžera" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Neuspjeh u učitavanju liste paketa" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paket ne postoji" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paket je već ažuriran" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paket je već instaliran" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paket nije instaliran" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Neuspjelo uklanjanje bitnog sistemskog paketa" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Zadatak se ne može pratiti ili kontrolisati" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operacija nad paketom nije uspjela" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Zahtijeva instalaciju nepovjerljivih paketa" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Prethodna instalacija nije završena" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paket je lošeg kvaliteta" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Datoteka paketa ne može biti otvorena" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nepodržana funkcija" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Nisam uspio da preuzmem ključ licence" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Nisam uspio da instaliram ključ licence" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistem je već ažuriran" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Ne možete biti autorizirani" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Nije vam dopušteno da obavite ovu akciju" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Desila se greška koja se ne može obraditi" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Čeka se start servisa" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Čekam" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Čeka se potrebni medijum" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Čekaju se drugi softverski menadžeri za izlaz" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Čeka se odziv datoteke za konfiguraciju" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Izvršavajući zadatak" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Preuzimanje" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Propitujem izvore softvera" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Čišćenje" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Završeno" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Otkazujem" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Učitava se lista softvera" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instaliranje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Konfiguriranje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Uklanjanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Potpuno uklanjam %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Zabilježen nestanak %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Pokrećem post-instalacijski okidač %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Nadogradnja %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Raspakujem %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Pripremam instalaciju %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Pripremam konfiguraciju %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Pripremam uklanjanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Pripremam potpuno uklanjanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Instalirano %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Potpuno uklonjene %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Uklonjeno %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Završeno" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Provjera identiteta nije uspjela" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Dobavljanje" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Neaktivno" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Mreža nije raspoloživa" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Obrađujem %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Preuzeto %sB od %sB na %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Preuzeto %sB od %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalji" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Datoteka" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Preuzeto %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Preuzeto" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' je neophodan" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Ubacite gornji CD/DVD u uređaj '%s' da instalirate softverske pakete iz " "njega." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Nastavi" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instaliraj" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Instaliraj ponovo" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Ukloni" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Ukloni" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Nadogradi" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Degradiraj" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Preskoči nadogradnju" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Pogledajte dolje listu promjena" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Dodatni softver treba biti instaliran" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Dodatni softver treba biti reinstaliran" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Dodatni softver treba biti uklonjen" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Dodatni softver treba biti očišćen" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Dodatni softver treba biti unaprijeđen" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Dodatni softver treba biti spušten na nižu verziju" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Unaprjeđenja će biti preskočena" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Potrebne su dodatne promjene" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB će se ukupno učitati." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB disk prostora će biti oslobođeno." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB dodatnog disk prostora će biti korišteno." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Zamijeniti vaše izmjene u '%s' novijom verzijom konfiguracione datoteke?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "Ako ne znate zašto je datoteka tu, obično je bezbjedno zamijeniti je." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Izmjene" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Zadrži" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Zamijeni" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalji" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Čekam na „%s“ da završi" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Preuzimam „%(files)s“" msgstr[1] "Pruzimam „%(files)s“" msgstr[2] "Pruzimam „%(files)s“" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokalna riznica" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Preuzimam iz %s" msgstr[1] "Preuzimam iz %s" msgstr[2] "Preuzimam iz %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktura za %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Opis za %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Potpis opisa za %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Dostupni paketi iz %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Dostupni izvori iz %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Dostupni prevodi od %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Prevodi za %s (%s) od %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Prevodi za %s od %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Prijevodi (%s) iz %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paket „%s“ nije dostupan" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paket „%s“ nije instaliran" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Verzija %s „%s“ paketa nije instalirana" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paket „%s“ je već instaliran" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Verzija %s „%s“ paketa nije dostupna." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL servera ključ je neispravan: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "IPogrešan protokol servera: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Nevažeći IB ključa: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nisam uspio da preuzmem i da instaliram ključ „%s“ sa „%s“:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Datoteka ključa „%s“ ne može biti instalirana: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ključ sa otiskom „%s“ ne može biti uklonjen: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paket „%s“ ne može biti uklonjen." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Verzija %s „%s“ paketa nije instalirana" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Bivša verzija %s „%s“ paketa je već instalirana" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Verzija %s „%s“ paketa je već instalirana" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Verzija %s „%s“ paketa nije dostupna" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Treba da navedete verziju na koju će „%s“ biti spušten" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Kasnija verzija %s „%s“ paketa je već instalirana" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paket „%s“ nije dostupan u izdanju %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paket „%s“ ne može biti uklonjen" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paket ne obezbjeđuje ispravno polje za kontrolu instalirane veličine. " "Pogledajte Debian sigurnosna pravila 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Ključ licence je prazan" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Nije dozvoljeno da ključ licence sadrži izvršni kod." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Putanja ključa licence %s nije ispravna." #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Ključ licence već postoji: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Mjesto ključa licence nije bezbedno jer sadrži simbolične veze. Putanja %s " "ukaazuje na %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Direktorijum za instaliranje ključa ne postoji još uvijek: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Nisam uspeo da zapišem datoteku ključa u: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Sljedeći paketi imaju nezadovoljenje međuzavisnosti:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ali to je virtualni paket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ali nije instaliran" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ali neće biti instaliran" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ali instaliran je „%s“" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ali će %s biti instaliran" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Dodavanje ključa na listu povjerljivih proizvođača softvera nije uspjelo" aptdaemon-1.1.1+bzr982/po/ca.po0000644000000000000000000013645212375372771014236 0ustar 00000000000000# Catalan translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-03-02 12:03+0000\n" "Last-Translator: David Planella \n" "Language-Team: Catalan \n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Obtenció d'una llista de claus dels proveïdors de confiança" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Cal que us autentiqueu per obtenir la llista de claus de confiança." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Supressió dels fitxers de paquet baixats" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Cal que us autentiqueu per poder netejar els fitxers de paquet baixats." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Canvi de la configuració del programari" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Cal que us autentiqueu per poder canviar els paràmetres del programari." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Canvi de dipòsit de programari" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Cal que us autentiqueu per canviar els paràmetres dels dipòsits de " "programari." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instal·lació d'un fitxer de paquet" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Cal que us autentiqueu per instal·lar aquest paquet." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualització de la informació dels paquets" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Cal que us autentiqueu per actualitzar el catàleg de programari." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instal·lació o supressió de paquets" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Cal que us autentiqueu per instal·lar o suprimir programari." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instal·lació de programari d'un dipòsit de confiança alta." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Per instal·lar programari, cal autenticar-se." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Addició d'un dipòsit nou i instal·lació de paquets d'aquest" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Heu d'autenticar-vos per instal·lar programari d'una font nova." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Addició d'un dipòsit nou de programari que s'hagi comprat i instal·lació de " "paquets d'aquest" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Heu d'autenticar-vos per instal·lar programari que hàgiu comprat." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Actualització dels paquets" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Cal que us autentiqueu per instal·lar programari actualitzat." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancel·lació de la tasca d'un altre usuari" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Cal que us autentiqueu per cancel·lar els canvis que algú altre realitzi al " "programari." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Establiment d'un servidor intermediari per baixar programari" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Cal que us autentiqueu per utilitzar un servidor intermediari per baixar " "programari." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "S'han baixat %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "S'han baixat %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "No teniu permís per realitzar aquesta acció." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "S'està encuant" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "S'estan resolent les dependències" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "S'instal·larà el paquet següent NOU (%(count)s):" msgstr[1] "S'instal·laran els paquets següents NOUS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "S'actualitzarà el paquet següent (%(count)s):" msgstr[1] "S'actualitzaran els paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Se SUPRIMIRÀ el paquet següent (%(count)s):" msgstr[1] "Se SUPRIMIRAN els paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Es tornarà a una versió anterior del paquet següent (%(count)s):" msgstr[1] "Es tornarà a una versió anterior dels paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Es tornarà a instal·lar el paquet següent (%(count)s):" msgstr[1] "Es tornaran a instal·lar els paquets següents (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "S'ha retingut el paquet següent (%(count)s):" msgstr[1] "S'han retingut els paquets següents (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "S'han d'obtenir %sB de fitxers." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Després d'aquesta operació, s'utilitzaran %sB d'espai addicional del disc." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Un cop finalitzada aquesta operació s'alliberaran %sB d'espai addicional de " "disc." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Voleu continuar [S/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Per operar en més d'un paquet heu de posar els noms dels paquets entre " "cometes:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresca la memòria cau" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Intenta resoldre les dependències trencades. L'operació és potencialment " "perillosa ja que podria intentar suprimir molts paquets." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Intenta finalitzar una instal·lació prèvia no completada" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instal·la els paquets especificats" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Torna a instal·lar els paquets especificats" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Suprimeix els paquets especificats" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Suprimeix els paquets especificats, incloent-ne els fitxers de configuració" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Torna a una versió anterior dels paquets especificats" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsolet: utilitzeu --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Actualitza el sistema de manera segura" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Actualitza el sistema, segurament mitjançant la instal·lació i la supressió " "de paquets" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Afegeix el proveïdor als de confiança" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Afegeix l'identificador de la clau del proveïdor (també cal --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utilitza el servidor de claus proporcionat per cercar claus" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Afegeix un dipòsit nou d'una línia deb proporcionada" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especifiqueu un fitxer sources.list.d alternatiu on s'haurien d'afegir els " "dipòsits." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Mostra la llista de claus dels proveïdors de confiança" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Suprimeix la clau de confiança de l'empremta proporcionada" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Torna a configurar els paquets instal·lats. Opcionalment es pot especificar " "la prioritat mínima de les preguntes." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La prioritat mínima de la pregunta del debconf que es mostrarà" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "No t'adjuntis al terminal de l'apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permet paquets de fonts sense autenticar" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostra informació addicional sobre els paquets. Actualment només es mostra " "el número de la versió" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "S'està esperant l'autenticació" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "No aturis el dimoni per inactivitat" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "No carreguis cap connector" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostra la informació interna de processament" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Surt i reemplaça un dimoni que s'estigui executant" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escolta en el bus de sessió DBus (només cal per a proves)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realitza les operacions en el chroot especificat" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Desa estadístiques de perfil en el fitxer especificat" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "No facis cap canvi al sistema (només útil per als desenvolupadors)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fitxer instal·lat" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquets instal·lats" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "S'ha afegit la clau des d'un fitxer" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "S'ha actualitzat la memòria cau" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Ha finalitzat la cerca" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "S'ha suprimit la clau de confiança" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "S'han suprimit els paquets" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "S'han actualitzat els paquets" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "S'ha actualitzat el sistema" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "S'han aplicat els canvis" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instal·lació incompleta reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependències no vàlides reparades" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "S'ha afegit una font de programari" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "S'ha habilitant un component de la distribució" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "S'han suprimit els fitxers de paquets baixats" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "S'han tornat a configurar els paquets instal·lats" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Correcte" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancel·lat" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Ha fallat" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "S'està instal·lant un fitxer" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "S'estan instal·lant els paquets" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "S'està afegint la clau des del fitxer" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "S'està actualitzant la memòria cau" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "S'està suprimint la clau de confiança" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "S'estan suprimint els paquets" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "S'estan actualitzant els paquets" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "S'està actualitzant el sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "S'estan aplicant els canvis" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "S'està reparant la instal·lació incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "S'està reparant el programari instal·lat" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "S'està afegint la font de programari" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "S'està habilitant el component de la distribució" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "S'estan suprimint els fitxers de paquets baixats" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "S'estan tornant a configurar els paquets instal·lats" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "S'està cercant" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Ha fallat la instal·lació del paquet" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Ha fallat la instal·lació del programari" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "Ha fallat l'addició de proveïdors de programari de confiança" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Ha fallat l'actualització de la llista de programari" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "S'ha produït un error en eliminar el proveïdor de la llista de confiança" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Ha fallat la supressió del programari" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Ha fallat l'actualització del programari" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Ha fallat l'actualització del sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Ha fallat l'aplicació de canvis de programari" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Ha fallat la reparació de la instal·lació incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Ha fallat la reparació de dels dependències no vàlides" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Ha fallat l'addició de la font de programari" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Ha fallat l'habilitació del component de la distribució" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Ha fallat la supressió dels fitxers de paquets baixats" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Ha fallat la cerca" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "S'està afegint la clau de llicència" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Comproveu la connexió a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Comproveu si esteu utilitzant dipòsits de tercers. Si aquest és el cas, és " "recomanable que els inhabiliteu, ja que són una font habitual de problemes.\n" "Addicionalment, hauríeu d'executar l'ordre següent en un terminal: apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Pot ser que el fitxer que heu seleccionat no sigui un fitxer de clau GPG o " "que estigui malmès." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "No s'ha pogut suprimir la clau seleccionada. Comproveu que hàgiu " "proporcionat una empremta vàlida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Comproveu si actualment esteu executant una altra eina de gestió del " "programari, com ara el Synaptic o l'aptitude. Només es permet utilitzar una " "eina a la vegada per fer canvis." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Aquest es un problema seriós. Torneu a intentar-ho més tard. Si el problema " "reapareix, informeu-ne els desenvolupadors." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Comproveu l'ortografia del nom del paquet i que el dipòsit apropiat estigui " "activat." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "No cal fer cap actualització." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "No cal fer cap instal·lació." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "No cal fer cap supressió." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Heu sol·licitat la supressió d'un paquet que és una part essencial del " "sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "S'ha perdut la connexió amb el dimoni. Segurament el dimoni en segon pla ha " "tingut una fallada." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Ha fallat la instal·lació o supressió d'un paquet de programari." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La funció que s'ha sol·licitat no està implementada." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Sembla que s'ha produït un error de programació a l'Aptdaemon, l'aplicació " "que us permet insta·lar i suprimir programari i realitzar altres tasques " "relacionades amb la gestió de paquets." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Pot ser que aquest error sigui degut al fet que calguin paquets de " "programari addicionals que no estan disponibles o no es poden instal·lar. " "També podria ser un conflicte entre paquets de programari que no es poden " "instal·lar simultàniament." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Aquesta acció requereix la instal·lació de fonts no identificades." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Pot ser que la instal·lació hagi fallat degut a un error en el paquet de " "programari corresponent o que fou cancel·lada d'una manera incorrecta. " "Haureu de reparar-ho abans de poder instal·lar o eliminar qualsevol " "programari." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Copieu el fitxer a l'ordinador local i comproveu els permisos del fitxer." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "No es permet la instal·lació d'un paquet que no compleix els estàndards de " "qualitat. Això podria causar problemes seriosos a l'ordinador. Contacteu amb " "la persona o organització que us ha proporcionat aquest fitxer de paquet i " "incloeu el detalls de sota." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clau de llicència que s'ha baixat i que és necessària per executar " "aquesta aplicació no és vàlida o no s'ha pogut instal·lar correctament.\n" "Vegeu els detalls per obtenir més informació." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Ja s'han instal·lat totes les actualitzacions disponibles." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "La clau de llicència que és necessaria per executar aquesta aplicació no " "s'ha pogut baixar. Comproveu la connexió de xarxa." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "No teniu els permisos necessaris per dur a terme aquesta acció." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Heu introduït una contrasenya incorrecta o bé heu cancel·lat " "l'autorització.\n" "Si no heu vist cap diàleg d'autorització, pot ser que sigui degut a un error " "tècnic: en concret, el vostre entorn d'escriptori no proporciona un agent de " "sessió del PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Ha fallat la baixada de fitxers de paquets" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Ha fallat la baixada de la informació del dipòsit" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "No es poden resoldre les dependències dels paquets" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "El sistema de paquets està malmès" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "No s'ha instal·lat la clau" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "No s'ha suprimit la clau" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Ha fallat el blocatge del gestor de paquets" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Ha fallat la càrrega de la llista de paquets" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "El paquet no existeix" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "El paquet ja està actualitzat" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "El paquet ja està instal·lat" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "El paquet no està instal·lat" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Ha fallat la supressió d'un paquet essencial del sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "No es pot fer un seguiment o control de la tasca" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Ha fallat l'operació amb el paquet" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requereix la instal·lació de paquets que no són de confiança" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "No s'ha completat la instal·lació anterior" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "El paquet és de mala qualitat" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "No s'ha pogut obrir el fitxer de paquet" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "La funció no està implementada" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Ha fallat la baixada de la clau de llicència" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Ha fallat la instal·lació de la clau de llicència" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "El sistema ja està actualitzat" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "No ha estat possible donar-vos l'autorització" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "No teniu permís per dur a terme aquesta acció" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "S'ha produit un error que no es pot gestionar" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "S'està esperant que comenci el servei" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "En espera" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "S'està esperant el suport necessari" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "S'està esperant que altres gestors de programari surtin" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "S'està esperant el diàleg del fitxer de configuració." #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "S'està executant la tasca" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "S'està baixant" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "S'estan consultant les fonts de programari" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "S'està netejant" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "S'ha finalitzat" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "S'està cancel·lant" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "S'està carregant la llista de programari" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "S'està instal·lant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "S'està configurant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "S'està suprimint %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "S'està suprimint completament el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "S'està anotant la desaparició del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "S'està executant l'activador de postinstal·lació %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "S'està actualitzant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "S'està desempaquetant el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "S'està preparant la instal·lació del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "S'està preparant la configuració del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "S'està preparant la supressió del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "S'està preparant la supressió completa del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "S'ha instaŀlat el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "S'ha suprimit completament el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "S'ha suprimit el paquet %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fet" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Ha fallat l'autenticació" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "S'està recollint" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactiu" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "La xarxa no es troba disponible" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "S'està processant %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "S'han baixat %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "S'han baixat %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalls" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fitxer" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "S'han baixat %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Baixat" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Cal el CD o DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "Inseriu el CD/DVD a la unitat «%s» per instal·lar-ne els paquets." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinua" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instal·la" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstal·la" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Suprimeix" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Neteja" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Actualitza" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Torna a una versió anterior" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Omet l'actualització" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Comproveu la llista de canvis de més avall." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Cal instal·lar programari addicional" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Cal tornar a instal·lar programari addicional" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Cal suprimir programari addicional" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "S'ha de netejar el programari addicional" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Cal actualitzar programari addicional" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Cal tornar a una versió anterior de programari addicional" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "S'ometran les actualitzacions" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Calen canvis addicionals" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Es baixaran %sB en total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "S'alliberaran %sB d'espai de disc." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "S'utilitzaran %sB més d'espai de disc." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Voleu reemplaçar els vostres canvis a «%s» amb l'última versió del fitxer de " "configuració?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Si no sabeu com és que el fitxer ja es troba allí, és més segur que el " "reemplaceu." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Canvis" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Manté" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Reemplaça" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalls" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "S'està esperant al %s per sortir" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "S'està baixant %(files)s" msgstr[1] "S'estan baixant %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "dipòsit local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "S'està baixant de %s" msgstr[1] "S'estan baixant de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estructura del dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descripció del dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Signatura de la descripció del dipòsit %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquets disponibles al dipòsit %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Fonts disponibles al dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduccions disponibles al dipòsit %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduccions en %s (%s) del dipòsit %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduccions en %s del dipòsit %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduccions (%s) del dipòsit %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "El paquet %s no està disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "El paquet %s no està instal·lat" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versió %s de %s no està instal·lada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "El paquet %s ja està instal·lat" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versió %s de %s no està disponible." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "L'URL del servidor de claus no és vàlid: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "El protocol del servidor no és vàlid: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "L'identificador de la clau no és vàlid: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "No s'ha pogut baixar i instal·lar la clau %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "No s'ha pogut instal·lar el fitxer clau %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "No s'ha pogut suprimir la clau amb empremta dactilar %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "No es pot suprimir el paquet %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versió %s de %s no està instal·lada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "L'antiga versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versió %s de %s no està disponible" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Heu d'especificar la versió anterior a la qual ha de tornar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "L'última versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "El paquet %s no està disponible en la versió %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "No es pot suprimir el paquet %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "El paquet no proporciona un camp de control de mida d'instal·lació vàlid. " "Vegeu la política de Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clau de llicència és buida" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clau de llicència no pot contenir codi executable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "El camí %s de la clau de llicència no és vàlid" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clau de llicència ja existeix: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "La ubicació de la clau de llicència no és segura perquè conté enllaços " "simbòlics. El camí %s correspon a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "El directori on s'ha d'instal·lar la clau encara no existeix: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Ha fallat l'escriptura del fitxer de clau a: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Els paquets següents tenen dependències sense satisfer:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "però és un paquet virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "però no està instal·lat" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "però no s'instal·larà" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "però %s està instal·lat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "però %s s'instal·larà" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "S'ha produït un error en afegir la clau a la llista de proveïdors de " #~ "programari de confiança" aptdaemon-1.1.1+bzr982/po/ca@valencia.po0000644000000000000000000013546312375372771016042 0ustar 00000000000000# Catalan translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-19 09:16+0000\n" "Last-Translator: Joan Duran \n" "Language-Team: Catalan \n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Obtenció d'una llista de claus dels proveïdors de confiança" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Cal que vos autentiqueu per obtindre la llista de claus de confiança." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Supressió dels fitxers de paquet baixats" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Cal que vos autentiqueu per poder netejar els fitxers de paquet baixats." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Canvi de la configuració del programari" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Cal que vos autentiqueu per poder canviar els paràmetres del programari." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Canvi de dipòsit de programari" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Cal que vos autentiqueu per canviar els paràmetres dels dipòsits de " "programari." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instal·lació d'un fitxer de paquet" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Cal que vos autentiqueu per instal·lar este paquet." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualització de la informació dels paquets" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Cal que vos autentiqueu per actualitzar el catàleg de programari." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instal·lació o supressió de paquets" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Cal que vos autentiqueu per instal·lar o suprimir programari." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instal·lació de programari d'un dipòsit de confiança alta." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Per instal·lar programari, cal autenticar-se." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Addició d'un dipòsit nou i instal·lació de paquets d'este" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Heu d'autenticar-vos per instal·lar programari d'una font nova." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Addició d'un dipòsit nou de programari que s'haja comprat i instal·lació de " "paquets d'este" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Heu d'autenticar-vos per instal·lar programari que hàgeu comprat." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Actualització dels paquets" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Cal que vos autentiqueu per instal·lar programari actualitzat." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancel·lació de la tasca d'un altre usuari" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Cal que vos autentiqueu per cancel·lar els canvis que algú altre realitzi al " "programari." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Establiment d'un servidor intermediari per baixar programari" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Cal que vos autentiqueu per utilitzar un servidor intermediari per baixar " "programari." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "S'han baixat %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "S'han baixat %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "No teniu permís per realitzar esta acció." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "S'està encuant" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "S'estan resolent les dependències" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "S'instal·larà el paquet següent NOU (%(count)s):" msgstr[1] "S'instal·laran els paquets següents NOUS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "S'actualitzarà el paquet següent (%(count)s):" msgstr[1] "S'actualitzaran els paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Se SUPRIMIRÀ el paquet següent (%(count)s):" msgstr[1] "Se SUPRIMIRAN els paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Es tornarà a una versió anterior del paquet següent (%(count)s):" msgstr[1] "Es tornarà a una versió anterior dels paquets següents (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Es tornarà a instal·lar el paquet següent (%(count)s):" msgstr[1] "Es tornaran a instal·lar els paquets següents (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "S'ha retingut el paquet següent (%(count)s):" msgstr[1] "S'han retingut els paquets següents (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "S'han d'obtindre %sB de fitxers." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Després d'esta operació, s'utilitzaran %sB d'espai addicional del disc." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Un cop finalitzada esta operació s'alliberaran %sB d'espai addicional de " "disc." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Voleu continuar [S/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Per operar en més d'un paquet heu de posar els noms dels paquets entre " "cometes:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresca la memòria cau" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Intenta resoldre les dependències trencades. L'operació és potencialment " "perillosa ja que podria intentar suprimir molts paquets." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Intenta finalitzar una instal·lació prèvia no completada" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instal·la els paquets especificats" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Torna a instal·lar els paquets especificats" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Suprimeix els paquets especificats" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Suprimeix els paquets especificats, incloent-ne els fitxers de configuració" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Torna a una versió anterior dels paquets especificats" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsolet: utilitzeu --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Actualitza el sistema de manera segura" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Actualitza el sistema, segurament mitjançant la instal·lació i la supressió " "de paquets" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Afig el proveïdor als de confiança" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Afig l'identificador de la clau del proveïdor (també cal --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utilitza el servidor de claus proporcionat per cercar claus" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Afig un dipòsit nou d'una línia deb proporcionada" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especifiqueu un fitxer sources.list.d alternatiu on s'haurien d'afegir els " "dipòsits." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Mostra la llista de claus dels proveïdors de confiança" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Suprimeix la clau de confiança de l'empremta proporcionada" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Torna a configurar els paquets instal·lats. Opcionalment es pot especificar " "la prioritat mínima de les preguntes." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La prioritat mínima de la pregunta del debconf que es mostrarà" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "No t'adjuntis al terminal de l'apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permet paquets de fonts sense autenticar" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostra informació addicional sobre els paquets. Actualment només es mostra " "el número de la versió" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "S'està esperant l'autenticació" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "No atures el dimoni per inactivitat" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "No carregues cap connector" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostra la informació interna de processament" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Ix i reemplaça un dimoni que s'estiga executant" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escolta en el bus de sessió DBus (només cal per a proves)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realitza les operacions en el chroot especificat" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Alça estadístiques de perfil en el fitxer especificat" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "No faces cap canvi al sistema (només útil per als desenvolupadors)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fitxer instal·lat" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquets instal·lats" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "S'ha afegit la clau des d'un fitxer" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "S'ha actualitzat la memòria cau" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Ha finalitzat la cerca" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "S'ha suprimit la clau de confiança" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "S'han suprimit els paquets" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "S'han actualitzat els paquets" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "S'ha actualitzat el sistema" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "S'han aplicat els canvis" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instal·lació incompleta reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependències no vàlides reparades" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "S'ha afegit una font de programari" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "S'ha habilitant un component de la distribució" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "S'han suprimit els fitxers de paquets baixats" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "S'han tornat a configurar els paquets instal·lats" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Correcte" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancel·lat" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Ha fallat" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "S'està instal·lant un fitxer" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "S'estan instal·lant els paquets" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "S'està afegint la clau des del fitxer" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "S'està actualitzant la memòria cau" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "S'està suprimint la clau de confiança" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "S'estan suprimint els paquets" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "S'estan actualitzant els paquets" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "S'està actualitzant el sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "S'estan aplicant els canvis" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "S'està reparant la instal·lació incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "S'està reparant el programari instal·lat" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "S'està afegint la font de programari" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "S'està habilitant el component de la distribució" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "S'estan suprimint els fitxers de paquets baixats" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "S'estan tornant a configurar els paquets instal·lats" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "S'està cercant" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Ha fallat la instal·lació del paquet" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Ha fallat la instal·lació del programari" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Ha fallat l'actualització de la llista de programari" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "S'ha produït un error en eliminar el proveïdor de la llista de confiança" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Ha fallat la supressió del programari" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Ha fallat l'actualització del programari" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Ha fallat l'actualització del sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Ha fallat l'aplicació de canvis de programari" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Ha fallat la reparació de la instal·lació incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Ha fallat la reparació de dels dependències no vàlides" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Ha fallat l'addició de la font de programari" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Ha fallat l'habilitació del component de la distribució" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Ha fallat la supressió dels fitxers de paquets baixats" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Ha fallat la cerca" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "S'està afegint la clau de llicència" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Comproveu la connexió a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Comproveu si esteu utilitzant dipòsits de tercers. Si este és el cas, és " "recomanable que els inhabiliteu, ja que són una font habitual de problemes.\n" "Addicionalment, hauríeu d'executar l'orde següent en un terminal: apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Pot ser que el fitxer que heu seleccionat no siga un fitxer de clau GPG o " "que estiga malmés." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "No s'ha pogut suprimir la clau seleccionada. Comproveu que hàgeu " "proporcionat una empremta vàlida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Comproveu si actualment esteu executant una altra eina de gestió del " "programari, com ara el Synaptic o l'aptitude. Només es permet utilitzar una " "eina a la vegada per fer canvis." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Este s'un problema seriós. Torneu a intentar-ho més tard. Si el problema " "reapareix, informeu-ne els desenvolupadors." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Comproveu l'ortografia del nom del paquet i que el dipòsit apropiat estiga " "activat." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "No cal fer cap actualització." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "No cal fer cap instal·lació." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "No cal fer cap supressió." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Heu sol·licitat la supressió d'un paquet que és una part essencial del " "sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "S'ha perdut la connexió amb el dimoni. Segurament el dimoni en segon pla ha " "tingut una fallada." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Ha fallat la instal·lació o supressió d'un paquet de programari." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La funció que s'ha sol·licitat no està implementada." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Pareix que s'ha produït un error de programació a l'Aptdaemon, l'aplicació " "que vos permet insta·lar i suprimir programari i realitzar altres tasques " "relacionades amb la gestió de paquets." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Pot ser que este error siga degut al fet que calguen paquets de programari " "addicionals que no estan disponibles o no es poden instal·lar. També podria " "ser un conflicte entre paquets de programari que no es poden instal·lar " "simultàniament." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Esta acció requereix la instal·lació de fonts no identificades." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Pot ser que la instal·lació haja fallat degut a un error en el paquet de " "programari corresponent o que fou cancel·lada d'una manera incorrecta. " "Haureu de reparar-ho abans de poder instal·lar o eliminar qualsevol " "programari." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Copieu el fitxer a l'ordinador local i comproveu els permisos del fitxer." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "No es permet la instal·lació d'un paquet que no compleix els estàndards de " "qualitat. Això podria causar problemes seriosos a l'ordinador. Contacteu amb " "la persona o organització que vos ha proporcionat este fitxer de paquet i " "incloeu el detalls de sota." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clau de llicència que s'ha baixat i que és necessària per executar esta " "aplicació no és vàlida o no s'ha pogut instal·lar correctament.\n" "Vegeu els detalls per obtindre més informació." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Ja s'han instal·lat totes les actualitzacions disponibles." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "La clau de llicència que és necessaria per executar esta aplicació no s'ha " "pogut baixar. Comproveu la connexió de xarxa." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "No teniu permís per realitzar esta acció." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Ha fallat la baixada de fitxers de paquets" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Ha fallat la baixada de la informació del dipòsit" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "No es poden resoldre les dependències dels paquets" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "El sistema de paquets està malmés" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "No s'ha instal·lat la clau" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "No s'ha suprimit la clau" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Ha fallat el blocatge del gestor de paquets" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Ha fallat la càrrega de la llista de paquets" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "El paquet no existeix" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "El paquet ja està actualitzat" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "El paquet ja està instal·lat" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "El paquet no està instal·lat" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Ha fallat la supressió d'un paquet essencial del sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "No es pot fer un seguiment o control de la tasca" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Ha fallat l'operació amb el paquet" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requereix la instal·lació de paquets que no són de confiança" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "No s'ha completat la instal·lació anterior" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "El paquet és de mala qualitat" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "No s'ha pogut obrir el fitxer de paquet" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "La funció no està implementada" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Ha fallat la baixada de la clau de llicència" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Ha fallat la instal·lació de la clau de llicència" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "El sistema ja està actualitzat" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "S'ha produit un error que no es pot gestionar" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "S'està esperant que comence el servei" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "En espera" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "S'està esperant el suport necessari" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "S'està esperant que altres gestors de programari isquen" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "S'està esperant el diàleg del fitxer de configuració." #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "S'està executant la tasca" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "S'està baixant" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "S'estan consultant les fonts de programari" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "S'està netejant" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "S'ha finalitzat" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "S'està cancel·lant" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "S'està carregant la llista de programari" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "S'està instal·lant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "S'està configurant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "S'està suprimint %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "S'està suprimint completament el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "S'està anotant la desaparició del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "S'està executant l'activador de postinstal·lació %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "S'està actualitzant %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "S'està desempaquetant el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "S'està preparant la instal·lació del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "S'està preparant la configuració del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "S'està preparant la supressió del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "S'està preparant la supressió completa del paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "S'ha instaŀlat el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "S'ha suprimit completament el paquet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "S'ha suprimit el paquet %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fet" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Ha fallat l'autenticació" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "S'està recollint" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactiu" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "La xarxa no es troba disponible" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "S'està processant %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "S'han baixat %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "S'han baixat %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalls" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fitxer" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "S'han baixat %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Baixat" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Cal el CD o DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "Inseriu el CD/DVD a la unitat «%s» per instal·lar-ne els paquets." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinua" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instal·la" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstal·la" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Suprimeix" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Neteja" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Actualitza" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Torna a una versió anterior" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Omet l'actualització" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Comproveu la llista de canvis de més avall." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Cal instal·lar programari addicional" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Cal tornar a instal·lar programari addicional" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Cal suprimir programari addicional" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "S'ha de netejar el programari addicional" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Cal actualitzar programari addicional" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Cal tornar a una versió anterior de programari addicional" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "S'ometran les actualitzacions" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Calen canvis addicionals" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Es baixaran %sB en total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "S'alliberaran %sB d'espai de disc." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "S'utilitzaran %sB més d'espai de disc." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Voleu reemplaçar els vostres canvis a «%s» amb l'última versió del fitxer de " "configuració?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Si no sabeu com és que el fitxer ja es troba allí, és més segur que el " "reemplaceu." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Canvis" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Manté" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Reemplaça" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalls" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "S'està esperant al %s per eixir" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "S'està baixant %(files)s" msgstr[1] "S'estan baixant %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "dipòsit local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "S'està baixant de %s" msgstr[1] "S'estan baixant de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estructura del dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descripció del dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Signatura de la descripció del dipòsit %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquets disponibles al dipòsit %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Fonts disponibles al dipòsit %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduccions disponibles al dipòsit %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduccions en %s (%s) del dipòsit %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduccions en %s del dipòsit %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduccions (%s) del dipòsit %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "El paquet %s no està disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "El paquet %s no està instal·lat" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versió %s de %s no està instal·lada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "El paquet %s ja està instal·lat" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versió %s de %s no està disponible." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "L'URL del servidor de claus no és vàlid: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "El protocol del servidor no és vàlid: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "L'identificador de la clau no és vàlid: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "No s'ha pogut baixar i instal·lar la clau %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "No s'ha pogut instal·lar el fitxer clau %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "No s'ha pogut suprimir la clau amb empremta dactilar %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "No es pot suprimir el paquet %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versió %s de %s no està instal·lada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "L'antiga versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versió %s de %s no està disponible" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Heu d'especificar la versió anterior a la qual ha de tornar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "L'última versió %s de %s ja està instal·lada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "El paquet %s no està disponible en la versió %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "No es pot suprimir el paquet %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "El paquet no proporciona un camp de control de mida d'instal·lació vàlid. " "Vegeu la política de Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clau de llicència és buida" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clau de llicència no pot contindre codi executable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "El camí %s de la clau de llicència no és vàlid" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clau de llicència ja existeix: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "La ubicació de la clau de llicència no és segura perquè conté enllaços " "simbòlics. El camí %s correspon a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "El directori on s'ha d'instal·lar la clau encara no existeix: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Ha fallat l'escriptura del fitxer de clau a: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Els paquets següents tenen dependències sense satisfer:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "però és un paquet virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "però no està instal·lat" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "però no s'instal·larà" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "però %s està instal·lat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "però %s s'instal·larà" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "S'ha produït un error en afegir la clau a la llista de proveïdors de " #~ "programari de confiança" aptdaemon-1.1.1+bzr982/po/crh.po0000644000000000000000000010170612375372771014421 0ustar 00000000000000# Crimean Turkish; Crimean Tatar translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-05-05 10:26+0000\n" "Last-Translator: Reşat SABIQ \n" "Language-Team: Crimean Turkish; Crimean Tatar \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Yazılım qurmaq ya da çetleştirmek içün sahihlenmeñiz kerek." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Muvafaqiyetli" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Vazgeçilgen" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Muvafaqiyetsiz" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Tafsilât" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_İvaz Et" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Tafsilât" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/cs.po0000644000000000000000000013265312375372771014257 0ustar 00000000000000# Czech translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-09-16 06:20+0000\n" "Last-Translator: Vojtěch Trefný \n" "Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Seznam klíčů důvěryhodných poskytovatelů" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Pro zobrazení důvěryhodných klíčů je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Odstranit stažené soubory s balíky" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Pro vyčištění stažených souborů s balíky je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Změnit nastavení softwaru" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Pro změnu nastavení softwaru je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Změnit zdroj softwaru" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Pro změnu nastavení zdrojů softwaru je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Nainstalovat balík" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Pro instalaci tohoto balíku je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Aktualizovat informace o balících" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Pro obnovení katalogu softwaru je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Nainstalovat nebo odstranit balíky" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Pro instalaci nebo odstranění softwaru je vyžadováno ověření." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instalace softwaru z důvěryhodného zdroje." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Pro instalaci softwaru je vyžadováno ověření." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Přidat nový zdroj a instalovat z něj balíky" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Pro instalaci softwaru z nového zdroje je vyžadováno ověření." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Přidat nový zdroj s placeným softwarem a instalovat z něj balíky" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Pro instalaci placeného softwaru je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Aktualizovat balíky" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Pro instalaci aktualizací je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Zrušit úlohu jiného uživatele" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Pro zrušení oprávnění k úpravě softwaru někým jiným je vyžadováno ověření." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Nastavit proxy pro stahování softwaru" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Pro použití proxy serveru při stahování softwaru je vyžadováno ověření." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "CHYBA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Staženo %sB z %sB při %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Staženo %sB z %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "CHYBA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Nemáte dovoleno provést tuto akci." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Řazení do fronty" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Řeší se závislosti" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Následující NOVÝ balík bude nainstalován (%(count)s):" msgstr[1] "Následující NOVÉ balíky budou nainstalovány (%(count)s):" msgstr[2] "Následující NOVÉ balíky budou nainstalovány (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Následující balík bude aktualizován (%(count)s):" msgstr[1] "Následující balíky budou aktualizovány (%(count)s):" msgstr[2] "Následující balíky budou aktualizovány (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Následující balík bude odstraněn (%(count)s):" msgstr[1] "Následující balíky budou odstraněny (%(count)s):" msgstr[2] "Následující balíky budou odstraněny (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Následující balík bude ponížen (%(count)s):" msgstr[1] "Následující balíky budou poníženy (%(count)s):" msgstr[2] "Následující balíky budou poníženy (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Následující balík bude přeinstalován (%(count)s):" msgstr[1] "Následující balíky budou přeinstalovány (%(count)s):" msgstr[2] "Následující balíky budou přeinstalovány (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Následující balík byl ponechán (%(count)s):" msgstr[1] "Následující balíky byly ponechány (%(count)s):" msgstr[2] "Následující balíky byly ponechány (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Je třeba stáhnout %sB archivů." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Po této operaci bude navíc použito %sB místa na disku." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Po této operaci bude uvolněno %sB místa na disku." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Přejete si pokračovat [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Při práci na více jak jednom balíku vložte názvy balíků do uvozovek:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Obnovit mezipaměť" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Pokusit se vyřešit porušené závislosti. Jedná se o potenciálně nebezpečnou " "operaci, jelikož může dojít k odstranění mnoha balíků." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Pokusit se dokončit předchozí neúplnou instalaci" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Nainstalovat určené balíky" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Přeinstalovat určené balíky" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Odstranit určené balíky" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Odstranit určené balíky včetně konfiguračních souborů" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Ponížit verzi určených balíků" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Zastaralé: Použijte prosím --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Přejít na novější vydání bezpečným způsobem" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Přejít na novější vydání, eventuálně provést instalaci a odstranění balíků" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Přidat poskytovatele mezi důvěryhodné" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Přidat ID klíč poskytovatele (požadován také --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Použít daný server pro vyhledání klíčů" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Přidat nový zdroj z dané řádky deb" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specifikujte, prosím, alternativní soubor sources.list.d, do kterého se mají " "přidat repozitáře." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Vypsat klíče důvěryhodných poskytovatelů" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Odstranit důvěryhodné klíče dle zadaného otisku" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Překonfigurovat instalované balíky. Volitelně může být určena minimální " "priorita otázek" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Minimální debconf priorita otázek, které mají být zobrazeny" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Nepřipojovat se k terminálu apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Povolit balíky z neověřených zdrojů" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Zobrazit dodatečné informace o balících. Momentálně pouze číslo verze" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Čeká se na ověření" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Neukončovat démona z důvodu neaktivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Nenačítat žádné zásuvné moduly" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Zobrazit informace o vnitřních procesech" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Ukončit a nahradit již běžícího démona" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Poslouchat na sběrnici DBus (Vyžadováno pouze pro testování" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Provést operace v zadaném chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Ukládat statistiky profilu do zadaného souboru" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Neprovádět žádné změny v systému (určeno jen pro vývojáře)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Soubor nainstalován" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Balíky nainstalovány" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Přidán klíč ze souboru" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Mezipaměť aktualizována" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Hledání dokončeno" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Odstraněn důvěryhodný klíč" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Balíky odstraněny" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Balíky aktualizovány" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Systém povýšen" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Změny provedeny" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Neúplná instalace opravena" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Porušené závislosti opraveny" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Přidán zdroj softwaru" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Součást distribuce povolena" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Odstraněné soubory stažených balíků" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Překonfigurované instalované balíky" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Úspěšné" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Zrušeno" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Selhalo" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instaluje se soubor" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalují se balíky" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Přidává se klíč ze souboru" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Aktualizuje se mezipaměť" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Odstraňuje se důvěryhodný klíč" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Odstraňují se balíky" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Aktualizují se balíky" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Povyšuje se systém" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Provádějí se změny" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Opravuje se neúplná instalace" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Opravuje se instalovaný software" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Přidává se zdroj softwaru" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Povoluje se součást distribuce" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Odstraňování stažených balíků" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Překonfigurace instalovaných balíků" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Vyhledávání" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalace balíku selhala" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalace softwaru selhala" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Obnovování seznamu softwaru selhalo" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Odstranění poskytovatele ze seznamu důvěryhodných selhalo" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Odstranění softwaru selhalo" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Aktualizace softwaru selhala" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Povýšení systému selhalo" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Uplatnění změn softwaru selhalo" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Oprava neúplné instalace selhala" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Oprava porušených závislostí selhala" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Přidání zdroje softwaru selhalo" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Povolení součásti distribuce selhalo" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Odstraňování stažených balíků selhalo" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Vyhledávání selhalo" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Přidávání licenčního klíče" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Zkontrolujte svoje internetové připojení" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Zkontrolujte, zda nepoužíváte zdroje třetích stran. Pokud ano, zakažte je, " "protože jsou často zdrojem problémů.\n" "Dále spusťte v terminálu následující příkaz: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Vybraný soubor možná neobsahuje klíč GPG nebo může být poškozen." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Vybraný klíč nelze odstranit. Zkontrolujte, zda byl otisk prstu správně " "proveden." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Zkontrolujte, zda není spuštěn jiný nástroj pro správu softwaru, např. " "Synaptic nebo aptitude. Najednou smí běžet pouze jeden nástroj." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Toto je závažný problém. Zkuste akci opakovat později. Pokud se problém " "vyskytne znovu, oznamte to vývojářům." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Zkontrolujte pravopis v názvu balíku a zda je povolen příslušný zdroj." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Není nutná žádná aktualizace." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Není nutná žádná instalace." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Není nutné žádné odstraňování." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Požadujete odstranění balíku, který je nezbytnou součástí systému." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Spojení s démonem bylo ztraceno. Tento démon běžící na pozadí pravděpodobně " "spadl." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Instalace nebo odstraňování balíku selhalo." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Požadovaná funkce není podporována." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Zdá se, že při tvorbě aptdaemon - softwaru, který umožňuje instalaci/" "odstraňování softwaru a další úkoly související se správou softwaru - došlo " "k chybě." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Tato chyba mohla být způsobena požadovanými dodatečnými balíky, které chybí " "nebo nejsou instalovatelné. Dále může být konflikt mezi balíky, u kterých " "není povolena instalace ve stejnou dobu." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Tato akce vyžaduje instalaci balíků z neověřených zdrojů." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Instalace mohla selhat kvůli chybě v příslušném balíku nebo byla zrušena " "nevhodným způsobem. Tento problém musíte opravit před instalací nebo " "odstraněním dalšího softwaru." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Prosím, zkopírujte si soubor do počítače a zkontrolujte oprávnění k souboru." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Instalace balíku porušujícího standardy kvality není povolena. Mohla by na " "vašem počítači způsobit vážné problémy. Kontaktujte prosím osobu nebo " "organizaci, která tento balík poskytla a přiložte níže uvedené detaily." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Stažený licenční klíč, který je nutný pro běh tohoto softwaru, není správný " "nebo nemůže být správně nainstalován.\n" "Pro více informací vizte detaily." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Jsou nainstalovány všechny dostupné aktualizace." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Licenční klíč, umožňující používat tento software, nemohl být stažen. Prosím " "zkontrolujte svoje internetové připojení." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Nemáte dovoleno provést tuto akci." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Stahování balíků selhalo" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Stahování informací o zdroji selhalo" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Závislosti balíku nemohly být vyřešeny" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Balíčkovací systém je porušen" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Klíč nebyl nainstalován" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Klíč nebyl odstraněn" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Zamknutí správce balíků selhalo" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Nahrávání seznamu balíků selhalo" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Balík neexistuje" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Balík je aktuální." #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Balík je nainstalován" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Balík není nainstalován" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Odstranění nezbytného systémového balíku selhalo" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Úloha nemůže být sledována nebo kontrolována" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operace s balíkem selhala" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Je požadována instalace neprověřených balíků" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Předchozí instalace nebyla dokončena" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Balík má špatnou kvalitu" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Soubor balíku nelze otevřít" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nepodporovaná funkce" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Selhalo stažení licenčního klíče" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Selhala instalace licenčního klíče" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Systém je plně aktualizovaný" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Nastala neošetřená chyba" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Čeká se na spuštění služby" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Čeká se" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Čeká se na požadované médium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Čeká se na ukončení jiných správců softwaru" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Čeká se na výzvu konfiguračního souboru" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Běžící úloha" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Stahuje se" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Dotazování zdrojů softwaru" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Probíhá čištění" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Dokončeno" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Ruší se" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Nahrává se seznam software" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instaluje se %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Nastavuje se %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Odstraňuje se %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Kompletní odstraňování %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Označení zmizení %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Spouští se poinstalační spouštěč %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Probíhá povýšení %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Rozbalování %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Příprava instalace %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Příprava konfigurace %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Příprava odstranění %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Příprava úplného odstranění %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s je nainstalován" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s je kompletně odstraněn" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s je odstraněn" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Hotovo" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Ověření selhalo" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Získává se" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Nečinný" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Síť není dostupná" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Zpracovává se %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Staženo %sB z %sB při %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Staženo %sB z %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Podrobnosti" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Soubor" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Staženo %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Staženo" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Je požadováno CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "K instalaci balíků vložte prosím výše uvedené CD/DVD do mechaniky '%s'." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "P_okračovat" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Nainstalovat" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Přeinstalovat" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Odstranit" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Vyčistit" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Přejít na vyšší verzi" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Přejít na nižší verzi" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Vynechat povýšení" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Podívejte se prosím do seznam změn níže." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Dodatečný software musí být nainstalován" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Dodatečný software musí být přeinstalován" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Dodatečný software musí být odstraněn" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Dodatečný software musí být vyčištěn" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Dodatečný software musí přejít na vyšší verzi" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Dodatečný software musí přejít na nižší verzi" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Aktualizace budou vynechány" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Jsou požadovány dodatečné změny" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Celkem bude staženo %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Bude uvolněno %sB místa na disku." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Bude použito navíc %sB místa na disku." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Chcete nahradit vaše změny v '%s' novější verzí konfiguračního souboru?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Pokud nevíte, proč je již tento soubor zde, je obvykle bezpečné nahradit jej." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Změny" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Ponechat" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Nahradit" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "Po_drobnosti" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Čekání až bude %s ukončen" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Stahuje se soubor %(files)s" msgstr[1] "Stahují se soubory %(files)s" msgstr[2] "Stahují se soubory %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokální repozitář" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Stahování z %s" msgstr[1] "Stahování z %s" msgstr[2] "Stahování z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktura %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Popis %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Popis podpisu %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Dostupné balíky z %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Dostupné zdroje z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Dostupné překlady z %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Překlady pro %s (%s) z %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Překlady pro %s z %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Překlady (%s) z %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Balík %s není dostupný" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Balík %s není nainstalovaný" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Verze %s z %s není nainstalována" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Balík %s je již nainstalován" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Verze %s z %s není dostupná" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Adresa serveru s klíči je neplatná: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Neplatný protokol serveru: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Neplatné ID klíče: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nepodařilo se stáhnout a instalovat klíč %s z %s\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Soubor klíče %s nelze nainstalovat: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Klíč z otisku %s se nepodařilo odstranit: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Balík %s nelze odstranit." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Verze %s z %s není naistalována" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Stejná verze %s z %s je již nainstalována" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Verze %s z %s je již nainstalována" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Verze %s z %s není dostupná" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Musíte zadat verzi downgrade %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Novější verze %s z %s je již nainstalována" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Balíček %s není dostupný pro vydání %s" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Balík %s nelze odstranit" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Balík neposkytuje validní kontrolní pole \"Instalovaná velikost\". Pro více " "informací v Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licenční klíč není nastaven" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licenční klíč nesmí obsahovat spustitelný kód." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Cesta k licenčnímu klíči %s není platná." #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licenční klíč '%s' už existuje." #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Umístění licenčního klíče je nebezpečné, protože obsahuje symbolické odkazy. " "Cesta '%s' ukazuje na '%s'" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Adresář '%s' pro instalaci klíče ještě neexistuje." #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Selhalo uložení klíče do: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Následující balíky mají nesplněné závislosti:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ale je to virtuální balík" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ale není nainstalován" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ale nebude se instalovat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ale %s je nainstalován" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ale %s se bude instalovat" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Přidání klíče do seznamu důvěryhodných poskytovatelů softwaru selhalo" aptdaemon-1.1.1+bzr982/po/cy.po0000644000000000000000000010215212375372771014254 0ustar 00000000000000# Welsh translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2010-12-16 07:15+0000\n" "Last-Translator: David Jones \n" "Language-Team: Welsh \n" "Language: cy\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : (n != 8 && n != 11) ? " "2 : 3;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Newid cronfa meddalwedd" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Gosod ffeil pecyn" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Gosod neu dynnu pecynnau" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Ychwanegu cronfa newydd a gosod pecynnau ohoni" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Ychwanegu cronfa newydd o feddalwedd wedi prynu a gosod pecynnau ohoni" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Canslo tasg defnyddiwr arall" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "GWALL" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Llwythwyd %sB o %sB" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Llwythwyd %sB o %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "GWALL:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Wedi Methu" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Gosod ffeil" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Llwythwyd %sB o %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/da.po0000644000000000000000000013177712375372771014244 0ustar 00000000000000# Danish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-27 16:08+0000\n" "Last-Translator: Ask Hjorth Larsen \n" "Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lav en liste med nøgler fra betroede udbydere" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "For at se listen af betroede nøgler, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Fjern hentede pakkefiler" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Du skal godkende for at rense hentede pakkefiler." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ændr programopsætning" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Du skal godkende for at ændre programindstillinger." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Skift softwarearkiv" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "For at ændre indstillinger for softwarearkiver, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installér pakkefil" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "For at installere denne pakke, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Opdatér pakkeinformation" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "For at opdatere softwarekataloget, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installér eller fjern pakker" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "For at installere eller fjerne software, skal du først godkende." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Installér software fra et hvidlistet, højt pålideligt arkiv." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Der kræves godkendelse for at installere software." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Tilføj et nyt softwarearkiv og installér pakker fra det" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Du skal godkende for at kunne installere programmer fra en ny kilde." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Tilføj et nyt softwarearkiv med købte programmer og installér pakker fra det" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Du skal godkende for at kunne installere købte programmer." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Opgradér pakker" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "For at installere opdateret software, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Afbryd en anden brugers opgave" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "For at annullere en andens softwareændringer, skal du først godkende." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Sæt en proxy til indhentning af software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "For at bruge en proxyserver til at hente software, skal du først godkende." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FEJL" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Har hentet %sB af %sB med %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Har hentet %sB af %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FEJL:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Du har ikke lov til at udføre denne handling." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Sætter i kø" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Løser afhængigheder" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Følgende NYE pakke vil blive installeret (%(count)s):" msgstr[1] "Følgende NYE pakker vil blive installeret (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Følgende pakke vil blive opgraderet (%(count)s):" msgstr[1] "Følgende pakker vil blive opgraderet (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Følgende pakke vil blive FJERNET (%(count)s):" msgstr[1] "Følgende pakker vil blive FJERNET (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Følgende pakke vil blive NEDGRADERET (%(count)s):" msgstr[1] "Følgende pakker vil blive NEDGRADERET (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Følgende pakke vil blive geninstalleret (%(count)s):" msgstr[1] "Følgende pakker vil blive geninstalleret (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Følgende pakke blev holdt tilbage (%(count)s):" msgstr[1] "Følgende pakker blev holdt tilbage (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Skal hente %sB arkiver." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Efter denne operation vil der blive brugt yderligere %sB diskplads." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Efter denne operation vil der blive frigjort yderligere %sB diskplads." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Ønsker du at forsætte [J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Anbring pakkenavnene i citationstegn for at behandle mere end en pakke:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Genopfrisk cachen" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Forsøg at rette beskadigede afhængigheder. Dette kan være en farlig " "operation, da den kan forsøge at fjerne mange pakker." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Prøv at færdiggøre en tidligere ufuldført installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installér de givne pakker" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Geninstallér de givne pakker" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Fjern de givne pakker" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Fjern de givne pakker inklusive konfigurationsfiler" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Nedgrader de angivne pakker" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Forældet: Brug --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Opgrader systemet på sikker vis" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Opgrader systemet, muligvis ved at installere og fjerne pakker" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Hav tillid til udbyderen" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Tilføj udbyderes nøgle-id (kræver også --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Brug den angivne nøgleserver til at slå nøgler op" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Tilføj nyt arkiv fra den givne deb-linje" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "Angiv en alternativ sources.list.d-fil hvor arkiver skal tilføjes." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Vis betroede udbydernøgler" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Fjern den betroede nøgle for det givne fingeraftryk" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Omkonfigurer installerede pakker. En minimal prioritet af spørgsmål kan " "angives efter behag." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Den mindste debconf-prioritet, der vises spørgsmål for" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Kobl ikke til apt-terminalen" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Tillad pakker fra ikke-godkendte kilder" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Vis yderligere information om pakkerne. I øjeblikket kun versionsnummeret" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Venter på godkendelse" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Luk ikke dæmonen ned på grund af inaktivitet" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Indlæs ingen udvidelsesmoduler" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Vis intern arbejdsinformation" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Afslut og erstat en allerede kørende dæmon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Lyt til DBus-sessionsbussen (kun påkrævet til test)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Udfør handlinger i den givne chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Gem profilstatistik i den angivne fil" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Udfør ingen ændringer på systemet (kun til nytte for udviklere)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installeret fil" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installerede pakker" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Nøgle tilføjet fra fil" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Opdaterede mellemlager" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Søgning fuldført" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Fjernede betroet nøgle" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Fjernede pakker" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Opdaterede pakker" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Upgraderede systemet" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Anvendte ændringer" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Reparerede ufuldstændig installation" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Reparerede beskadigede afhængigheder" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Tilføjede softwarekilde" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Aktiverede komponent i distributionen" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Fjernede hentede pakkefiler" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Omkonfigurerede installerede pakker" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Fuldført" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Annulleret" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Mislykket" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installerer fil" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installerer pakker" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Tilføjer nøgle fra fil" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Opdaterer mellemlager" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Fjerner betroet nøgle" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Fjerner pakker" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Opdaterer pakker" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Opgraderer systemet" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Anvender ændringer" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparerer ufuldstændig installation" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparerer installeret software" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Tilføjer softwarekilde" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Aktiverer komponent i distributionen" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Fjerner hentede pakkefiler" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Omkonfigurerer installerede pakker" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Søger" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installation af pakkefilen mislykkedes" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Softwareinstallationen mislykkedes" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Det lykkedes ikke at tilføje nøglen i listen over betroede software-" "leverandører" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Opdatering af softwarelisten mislykkedes" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Fjernelse af leverandøren fra listen af betroede leverandører mislykkedes" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Fjernelse af software mislykkedes" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Opdatering af software mislykkedes" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Opgradering af systemet mislykkedes" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Udførelse af ændringer til software mislykkedes" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Reparation af ufuldstændig installation mislykkedes" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Reparation af beskadigede afhængigheder mislykkedes" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Tilføjelse af softwarekilde mislykkedes" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Aktivering af distributionskomponent mislykkedes" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Fejl ved fjernelse af hentede pakkefiler" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Søgning mislykkedes" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Tilføjer licensnøgle" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kontrollér din internetforbindelse" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontrollér om du anvender tredjepartsarkiver. Deaktiver dem hvis de " "benyttes, da de er en almindeligt kendt kilde til problemer.\n" "Kør derudover denne kommando i en terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Den valgte fil er måske ikke en GPG-nøglefil, eller den kan være beskadiget." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Den valgte nøgle kunne ikke fjernes. Kontroller at du har givet et korrekt " "fingeraftryk." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kontroller om der i øjeblikket kører et andet værktøj til håndtering af " "software, f.eks. Synaptic eller aptitude. Ændringer kan kun laves af et " "værktøj ad gangen." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Dette er et alvorligt problem. Prøv igen senere. Hvis problemet opstår igen, " "så rapportér det venligst til udviklerne." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Kontroller stavningen af pakkenavnet, og at det korrekte pakkearkiv er " "aktiveret." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Opdatering er ikke nødvendig." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Installation er ikke nødvendig" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Fjernelse er ikke nødvendig." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Du anmodede om at fjerne en pakke som er en essentiel del af dit system." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Forbindelsen til dæmonen blev afbrudt. Det er sandsynligt at " "baggrundsdæmonen er gået ned." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Installation eller fjernelse af en softwarepakke mislykkedes." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Den forespurgte funktion understøttes ikke." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Der ser ud til at være en programmeringsfejl i aptdaemon, programmet som gør " "dig i stand til at installere/fjerne programmer og udføre andre " "pakkehåndteringsopgaver." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Denne fejl kan skyldes at yderligere påkrævede softwarepakker mangler eller " "ikke kan installeres. Endvidere kan der være en konflikt mellem " "softwarepakker som ikke må være installeret samtidigt." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Dette kræver installation af pakker fra kilder som ikke er godkendte." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Installationen er måske slået fejl på grund af en fejl i den pågældende " "softwarepakke, eller fordi den blev afbrudt på en ubehagelig måde. Det vil " "være nødvendigt at reparere dette, før du kan installere eller fjerne " "yderligere software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Kopier filen til din lokale computer og kontroller rettighederne." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Installationen af en pakke som overtræder kvalitetskravene er ikke tilladt. " "Dette kan medføre alvorlige problemer på din computer. Kontakt personen " "eller organisationen, du hentede denne pakkefil og inkluder detaljerne " "nedenfor." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Den hentede licensnøgle, som kræves for at kunne køre dette program, er ikke " "gyldig eller kunne ikke installeres korrekt.\n" "Yderligere information kan findes i detaljerne." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Alle tilgængelige opgraderinger er allerede installeret." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Licensnøglen, som lader dig bruge dette program, kunne ikke hentes. " "Kontrollér venligst din netværksforbindelse." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Du har ikke de nødvendige rettigheder til at udføre denne handling." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Du angav enten en forkert adgangskode eller annullerede godkendelsen.\n" "Der kan i tillæg være tekniske årsager til denne fejl, hvis du ikke har set " "et vindue med adgangskode: dit skrivebordsmiljø tilbyder ikke en " "sessionsagent for PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Kunne ikke hente pakkefiler" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Kunne ikke hente information om softwarearkiv" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakkeafhængigheder kan ikke afklares" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakkesystemet er beskadiget" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Nøglen blev ikke installeret" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Nøglen blev ikke fjernet" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Kunne ikke låse pakkehåndteringen" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Kunne ikke indlæse pakkelisten" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakken findes ikke" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakken er allerede fuldt opdateret" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakken er allerede installeret" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakken er ikke installeret" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Kunne ikke fjerne essentiel systempakke" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Opgaven kan ikke overvåges eller kontrolleres" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakkehandling mislykkedes" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Kræver installation af ikke-betroede pakker" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Tidligere installation blev ikke fuldført" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Pakken er af dårlig kvalitet" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pakkefil kunne ikke åbnes" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Funktion understøttes ikke" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Kunne ikke hente licensnøglen" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Kunne ikke installere licensnøglen" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Systemet er allerede opdateret" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Du kunne ikke godkendes" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Du har ikke lov til at udføre denne handling" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Der opstod en fejl som ikke kunne håndteres" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Venter på at tjeneste starter" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Venter" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Venter på krævet medie" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Venter på at andre softwarehåndteringsprogrammer afslutter" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Venter på prompt for konfigurationsfil" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Kører opgave" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Henter" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Forespørger i softwarekilder" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Rydder op" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Fuldført" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Annullerer" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Henter softwareliste" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installerer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Sætter %s op" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Fjerner %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Fjerner %s helt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Bemærker forsvinding af %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Afvikler efterinstallationskode %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Opgraderer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Pakker %s ud" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Forbereder installation af %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Forbereder opsætning af %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Forbereder fjernelse af %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Forbereder fuldstændig fjernelse af %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Installerede %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Fjernede %s helt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Fjernede %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Færdig" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentifikation mislykkedes" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Henter" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "ledig" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Netværk ikke tilgængeligt" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Behandler %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Har hentet %sB af %sB med %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Har hentet %sB af %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detaljer" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fil" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Hentede %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Hentede" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Cd'en eller dvd'en \"%s\" skal bruges" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Indsæt venligst den ovenstående cd/dvd i drevet \"%s\" for at installere " "softwarepakker fra den." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "F_ortsæt" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installér" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Geninstallér" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Fjern" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Udrens" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Opgradér" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Nedgradér" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Spring opgradering over" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Se venligst listen af ændringer nedenfor." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Der skal installeres yderligere software" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Yderligere software skal geninstalleres" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Der skal fjernes yderligere software" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Der skal udrenses yderligere software" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Der skal opgraderes yderligere software" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Der skal nedgraderes yderligere software" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Opdateringer vil blive sprunget over" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Yderligere ændringer er påkrævet" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "I alt %sB vil blive hentet." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB diskplads vil blive frigjort." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB yderligere diskplads vil blive brugt." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Erstat dine ændringer i \"%s\" med en nyere udgave af konfigurationsfilen?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Hvis du ikke ved hvorfor filen allerede findes, er det normalt sikkert at " "erstatte den." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Ændringer" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Behold" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "E_rstat" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detailer" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Venter på at %s afslutter" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Henter %(files)s" msgstr[1] "Henter %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokalt arkiv" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Henter fra %s" msgstr[1] "Henter fra %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktur af %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Beskrivelse af %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Beskrivelsessignatur for %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Tilgængelige pakker fra %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Tilgængelige kilder fra %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Tilgængelige oversættelser fra %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Oversættelser for %s (%s) fra %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Oversættelser for %s fra %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Oversættelser (%s) fra %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakke %s er ikke tilgængelig" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakke %s er ikke installeret" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versionen %s af %s er ikke installeret" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakken %s er allerede installeret" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Version %s af %s er ikke tilgængelig" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL'en til nøgleserver er ugyldig: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Ugyldig protokol for serveren: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Ugyldig nøgle-ID: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Fejl under hentning og installering af nøglen %s fra %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Nøglefil %s kunne ikke installeres: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Nøgle med fingeraftryk %s kunne ikke fjernes: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakken %s kan ikke fjernes." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Version %s af %s er ikke installeret" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Den tidligere version %s af %s er allerede installeret" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Version %s af %s er allerede installeret" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Version %s af %s er ikke tilgængelig" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Du skal angive en version at nedgradere %s til" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Den seneste version %s af %s er allerede installeret" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakken %s er ikke tilgængelig i udgaven %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakken %s kan ikke fjernes" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Pakkens kontrolfelt Installed-Size er ugyldigt. Se Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licensnøglen er tom" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Det er ikke tilladt for licensnøglen at indeholde programkode." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Licensnøglestien %s er ugyldig" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licensnøglen findes allerede: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Placeringen af licensnøglen er usikker, da den indeholder symbolske lænker. " "Stien %s afbildes til %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Kataloget, hvor nøglen skal installeres, findes endnu ikke: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Kunne ikke skrive nøglefil til: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Følgende pakker har uopfyldte afhængigheder:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "men det er en virtuel pakke" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "men den er ikke installeret" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "men den vil ikke blive installeret" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "men %s er installeret" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "men %s vil blive installeret" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Tilføjelse af nøglen til listen af betroede softwareleverandører " #~ "mislykkedes" aptdaemon-1.1.1+bzr982/po/de.po0000644000000000000000000014063112375373057014233 0ustar 00000000000000# German translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-30 21:13+0000\n" "Last-Translator: Hendrik Knackstedt \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Schlüssel vertrauenswürdiger Anbieter anzeigen" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um die Schlüssel der vertrauenswürdigen " "Anbieter anzuzeigen." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Heruntergeladene Paketdateien entfernen" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um heruntergeladene Paketdateien zu " "entfernen." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Software-Konfiguration ändern" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Sie müssen Ihr Passwort eingeben, um Software-Einstellungen zu ändern." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Software-Paketquelle ändern" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um Einstellungen der Software-Paketquellen " "zu ändern." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Paketdatei installieren" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Sie müssen Ihr Passwort eingeben, um dieses Paket zu installieren." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Paketinformationen aktualisieren" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um die Paketinformationen zu aktualisieren." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Pakete installieren oder entfernen" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um Software zu installieren oder zu " "entfernen." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Anwendungen aus einer sehr vertrauenswürdigen Quelle installieren." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Um Anwendungen zu installieren, müssen Sie sich legitimieren." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" "Eine neue Software-Paketquelle hinzufügen und Pakete daraus installieren" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um Software aus einer neuen Software-" "Paketquelle zu installieren." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Eine neue Paketquelle für erworbene Software hinzufügen und Pakete daraus " "installieren" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um erworbene Software zu installieren." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Pakete aktualisieren" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Sie müssen Ihr Passwort eingeben, um Aktualisierungen zu installieren." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Prozess eines anderen Benutzers abbrechen" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um Änderungen anderer Benutzer an Software " "zu widerrufen." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Einen Proxy-Server für Software-Downloads benutzen" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Sie müssen Ihr Passwort eingeben, um einen Proxy-Server zum Herunterladen " "von Software einzurichten." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FEHLER" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%(cur)sB von %(total)sB heruntergeladen mit %(rate)sB/s" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%(cur)sB von %(total)sB heruntergeladen" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FEHLER:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Sie dürfen diese Aktion nicht ausführen." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Wird in Warteschlange gestellt" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Abhängigkeiten werden aufgelöst" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Das folgende NEUE Paket wird installiert (%(count)s):" msgstr[1] "Die folgenden NEUEN Pakete werden installiert (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Das folgende Paket wird aktualisiert (%(count)s):" msgstr[1] "Die folgenden Pakete werden aktualisiert (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Das folgende Paket wird ENTFERNT (%(count)s):" msgstr[1] "Die folgenden Pakete werden ENTFERNT (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" "Das folgende Paket wird DURCH EINE ÄLTERE VERSION ERSETZT (%(count)s):" msgstr[1] "" "Die folgenden Pakete werden DURCH EINE ÄLTERE VERSION ERSETZT (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Das folgende Paket wird neu installiert (%(count)s):" msgstr[1] "Die folgenden Pakete werden neu installiert (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Das folgende Paket wurde zurückgehalten (%(count)s):" msgstr[1] "Die folgenden Pakete wurden zurückgehalten (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Es müssen %sB an Paketen heruntergeladen werden." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Nach Abschluss dieses Vorgangs werden %sB Festplattenspeicher zusätzlich " "belegt sein." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Nach Abschluss dieses Vorgangs werden %sB Festplattenspeicher zusätzlich " "frei sein." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Möchten Sie fortfahren [J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Verwenden Sie Anführungszeichen, um den Befehl auf mehrere Pakete " "anzuwenden:\n" "aptdcon --install \"Paket1 Paket2\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Die Paketinformationen neu laden" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Nicht erfüllte Abhängigkeiten nach Möglichkeit reparieren. Dies ist " "potentiell gefährlich, weil »aptdcon« evtl. versuchen wird, viele Pakete zu " "entfernen." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Abgebrochene Installation nach Möglichkeit fortsetzen" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Die angegebenen Pakete installieren" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Die angegebenen Pakete erneut installieren" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Die angegebenen Pakete entfernen" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Die angegebenen Pakete mit den dazugehörigen Konfigurationsdateien entfernen" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Eine ältere Version der angegebenen Pakete installieren" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Veraltet – bitte verwenden Sie: --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Das System auf eine sichere Weise aktualisieren" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Das System aktualisieren – dabei werden eventuell Pakete automatisch " "installiert und entfernt" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Den Software-Anbieter als vertrauenswürdig einstufen" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Den Schlüssel des Software-Anbieters hinzufügen (erfordert auch die Angabe " "von --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" "Den angegebenen Schlüssel-Server bei der Suche nach Schlüsseln verwenden" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" "Die Software-Paketquelle aus der angegebenen APT-Zeile (deb-line) hinzufügen" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Eine alternative sources.list.d-Datei festlegen, zu welcher Software-" "Paketquellen hinzugefügt werden sollen." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Schlüssel vertrauenswürdiger Software-Anbieter zeigen" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" "Den vertrauenswürdigen Schlüssel mit dem angegebenen Fingerabdruck entfernen" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Installierte Pakete neu konfigurieren; die minimale Priorität der Fragen " "kann optional angegeben werden" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" "Die minimale debconf-Priorität der Fragen, welche angezeigt werden sollen" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Keine Ausgabe an das APT-Terminal senden" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Pakete aus nicht vertrauenswürdigen Quellen erlauben" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Zusätzliche Informationen zu Paketen anzeigen; aktuell ist das nur die " "Versionsnummer" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Es wird auf die Legitimation gewartet" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Den Dienst nicht aufgrund von Inaktivität beenden" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Keine Erweiterungen laden" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Interne Verarbeitungsinformationen anzeigen" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Einen bereits laufenden Dienst beenden und ersetzen" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Verbindung vom Sitzungs-D-Bus annehmen (Nur zum Testen nützlich)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Vorgänge in der angegebenen chroot-Umgebung ausführen" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Profilstatistiken in der angegebenen Datei speichern" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Keine Änderungen am System vornehmen (Nur für Entwickler nützlich)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Datei installiert" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pakete installiert" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Schlüssel aus Datei hinzugefügt" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Zwischenspeicher aktualisiert" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Suche abgeschlossen" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Vertrauenswürdigen Schlüssel entfernt" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pakete entfernt" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pakete aktualisiert" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "System aktualisiert" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Änderungen angewendet" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Unvollständige Installation repariert" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Nicht erfüllte Abhängigkeiten wurden repariert" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Software-Paketquelle hinzugefügt" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Distributionskomponente wurde aktiviert" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Heruntergeladene Paketdateien entfernt" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Installierte Pakete neu konfiguriert" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Erfolgreich" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Abgebrochen" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Gescheitert" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Datei wird installiert" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Pakete werden installiert" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Schlüssel aus Datei wird hinzugefügt" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Zwischenspeicher wird aktualisiert" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Vertrauenswürdiger Schlüssel wird entfernt" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Pakete werden entfernt" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Pakete werden aktualisiert" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "System wird aktualisiert" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Änderungen werden angewendet" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Unvollständige Installation wird repariert" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Installierte Anwendungen werden repariert" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Software-Paketquelle wird hinzugefügt" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Distributionskomponente wird aktiviert" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Heruntergeladene Paketdateien werden entfernt" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Installierte Pakete werden neu konfiguriert" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Suche läuft" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Die Installation der Paketdatei ist gescheitert" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Die Installation der Software ist gescheitert" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Das Hinzufügen des Schlüssels zur Liste vertrauenswürdiger Software-Anbieter " "ist gescheitert" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Das Aktualisieren der Software-Liste ist gescheitert" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Das Entfernen des Software-Anbieters aus der Liste der vertrauenswürdigen " "ist gescheitert" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Das Entfernen der Software ist gescheitert" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Das Aktualisieren der Software ist gescheitert" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Das Aktualisieren des Systems ist gescheitert" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Das Anwenden der Software-Änderungen ist gescheitert" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Das Reparieren der unvollständigen Installation ist gescheitert" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Das Reparieren nicht erfüllter Abhängigkeiten ist gescheitert" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Das Hinzufügen der Software-Paketquelle ist gescheitert" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Das Aktivieren der Distributionskomponente ist gescheitert" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Das Entfernen von heruntergeladenen Paketdateien ist gescheitert" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Suche fehlgeschlagen" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Lizenzschlüssel wird hinzugefügt" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Überprüfen Sie Ihre Internetverbindung." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Überprüfen Sie, ob Sie Software-Paketquellen von Drittanbietern nutzen. Wenn " "dies der Fall ist, so deaktivieren Sie diese, da sie häufig eine " "Fehlerquelle sind.\n" "Führen Sie außerdem in einem Terminal den folgenden Befehl aus: apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Die ausgewählte Datei ist möglicherweise keine GPG-Schlüsseldatei oder sie " "ist beschädigt." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Der angegebene Schlüssel konnte nicht entfernt werden. Überprüfen Sie, ob " "Sie den richtigen Fingerabdruck angegeben haben." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Bitte überprüfen Sie, ob gerade die Aktualisierungsverwaltung oder eine " "andere Software-Paketverwaltung läuft, z.B. Synaptic oder aptitude. Es kann " "immer nur eine Anwendung gleichzeitig Änderungen vornehmen." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Dies ist ein schwerwiegendes Problem. Versuchen Sie es später noch einmal. " "Falls das Problem erneut auftritt, melden Sie einen Fehler an die Entwickler." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Bitte überprüfen Sie die exakte Schreibweise des Paketnamens und stellen Sie " "sicher, dass die zugehörige Software-Paketquelle aktiviert ist." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Eine Aktualisierung ist unnötig." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Eine Installation ist unnötig." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Eine Deinstallation ist unnötig." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Sie versuchen ein Paket zu entfernen, das einen essenziellen Teil Ihres " "Systems darstellt." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Die Verbindung zum Hintergrunddienst wurde unterbrochen. " "Höchstwahrscheinlich ist der Dienst abgestürzt." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Das Installieren oder Entfernen eines Software-Pakets ist gescheitert." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Die angefordertete Funktion wird nicht unterstützt." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Anscheinend gibt es einen Programmfehler in aptdaemon, der Anwendung, die " "Ihnen das Installieren/Entfernen von Anwendungen und das Ausführen weiterer " "Paketverwaltungsaufgaben ermöglicht." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Dieser Fehler könnte durch weitere erforderliche Software-Pakete, die jedoch " "fehlen oder nicht installiert werden können, verursacht worden sein. " "Außerdem könnte es einen Konflikt zwischen Paketen geben, die nicht zur " "selben Zeit installiert sein dürfen." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Dieser Vorgang erfordert die Installation von Paketen aus nicht signierten " "Quellen." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Die Installation könnte aufgrund eines Fehlers im betreffenden Software-" "Paket gescheitert sein oder weil sie nicht ordnungsgemäß abgebrochen wurde. " "Dieser Zustand muss behoben werden, bevor weitere Software installiert oder " "entfernt werden kann." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Bitte Datei auf den lokalen Rechner kopieren und Zugriffsrechte überprüfen." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Die Installation eines Pakets, das gegen die Qualitätsstandards verstößt, " "ist nicht erlaubt. Dies könnte zu ernsthaften Problemen im System führen. " "Bitte kontaktieren Sie den Herausgeber der Paketdatei und melden Sie diesem " "die folgenden Angaben." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Der heruntergeladene Lizenzschlüssel, der zum Ausführen dieser Anwendung " "benötigt wird, ist ungültig oder konnte nicht installiert werden.\n" "Für weitere Informationen werfen Sie einen Blick in die Details." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Alle verfügbaren Aktualisierungen wurden bereits installiert." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Der Lizenzschlüssel, der Ihnen die Verwendung dieser Anwendung ermöglicht, " "konnte nicht heruntergeladen werden. Bitte überprüfen Sie Ihre " "Internetverbindung." #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "Sie besitzen für diese Aktion keine ausreichenden Berechtigungen." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Sie haben entweder ein falsches Passwort eingegeben oder die Legitimation " "abgebrochen.\n" "Darüber hinaus kann es auch eine technische Ursache für diesen Fehler geben, " "falls kein Passwort-Dialog angezeigt wurde: Ihre Arbeitsumgebung stellt " "keinen PolicyKit-Sitzungsagent bereit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Das Herunterladen der Paketdateien ist gescheitert" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" "Das Herunterladen von Informationen zu Software-Paketquellen ist gescheitert" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Die Paketabhängigkeiten können nicht aufgelöst werden" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Das Paketsystem ist beschädigt" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Der Schlüssel wurde nicht installiert" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Der Schlüssel wurde nicht entfernt" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Das Sperren der Paketverwaltung ist gescheitert" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Das Laden der Paketliste ist gescheitert" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paket existiert nicht" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paket ist bereits auf dem neuesten Stand" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paket ist bereits installiert" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paket ist nicht installiert" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Das Entfernen eines grundlegenden Systempakets ist gescheitert" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Der Vorgang kann nicht überwacht oder gesteuert werden" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Die Paketoperation ist gescheitert" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" "Installation von Paketen erforderlich, denen nicht vertraut werden kann" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Der letzte Installationsvorgang wurde nicht erfolgreich beendet" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Dieses Paket ist von schlechter Qualität" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Paketdatei konnte nicht geöffnet werden" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nicht unterstützte Funktion" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Herunterladen des Lizenzschlüssels fehlgeschlagen" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Installation des Lizenzschlüssels fehlgeschlagen" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "System ist bereits auf dem neuesten Stand" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Sie konnten nicht legitimiert werden" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Es ist Ihnen nicht gestattet diese Aktion durchzuführen" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ein unvorhergesehener Fehler ist aufgetreten" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Auf den Start des Dienstes wird gewartet" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Warten" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Auf das benötigte Medium wird gewartet" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Auf das Beenden anderer Software-Paketverwaltungen wird gewartet" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Auf den Auswahldialog für die Konfigurationsdatei wird gewartet" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Vorgang läuft" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Herunterladen" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Software-Paketquellen werden abgerufen" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Aufräumen" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Beendet" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Es wird abgebrochen" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Software-Liste wird geladen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s wird installiert" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s wird konfiguriert" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s wird entfernt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s wird vollständig entfernt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Verschwinden von %s festgestellt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Nach-Installations-Trigger %s wird aufgerufen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s wird aktualisiert" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s wird entpackt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Installation von %s wird vorbereitet" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Konfiguration von %s wird vorbereitet" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Entfernen von %s wird vorbereitet" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Vollständiges Entfernen von %s wird vorbereitet" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s wurde installiert" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s wurde vollständig entfernt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s wurde entfernt" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fertig" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Legitimierung gescheitert" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Es wird heruntergeladen" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Untätig" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Netzwerkverbindung nicht verfügbar" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s wird verarbeitet" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB von %sB heruntergeladen mit %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB von %sB heruntergeladen" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Datei" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB heruntergeladen" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Heruntergeladen" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD »%s« wird benötigt" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Bitte legen Sie die oben angegebene CD-ROM/DVD in das Laufwerk »%s« ein, um " "davon Software-Pakete zu installieren." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Fortfahren" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installieren" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Erneut installieren" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Entfernen" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Vollständig entfernen" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Aktualisieren" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Durch ältere Version ersetzen" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Aktualisierung überspringen" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Bitte beachten Sie unten stehende(s) Änderungsprotokoll(e)." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Zusätzliche Software muss installiert werden" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Zusätzliche Software muss erneut installiert werden" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Zusätzliche Software muss entfernt werden" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Zusätzliche Software muss vollständig entfernt werden" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Zusätzliche Software muss aktualisiert werden" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Zusätzliche Software muss durch eine ältere Version ersetzt werden" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Aktualisierungen werden übersprungen" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Zusätzliche Änderungen sind erforderlich" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB wird insgesamt heruntergeladen werden." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB Speicherplatz wird frei werden." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB mehr Speicherplatz wird belegt werden." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Ihre Änderungen in »%s« mit einer neueren Version der Konfigurationsdatei " "ersetzen?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Falls Sie nicht wissen, warum die Datei bereits vorhanden ist, kann die " "Datei normalerweise problemlos ersetzt werden." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "Ä_nderungen" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Beibehalten" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Ersetzen" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Warten auf Beenden von %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s wird heruntergeladen" msgstr[1] "%(files)s werden heruntergeladen" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "Lokale Paketquelle" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Herunterladen von %s" msgstr[1] "Herunterladen von %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktur von %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Beschreibung von %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Beschreibungssignatur von %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Verfügbare Pakete von %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Verfügbare Quelltexte von %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Verfügbare Übersetzungen von %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Übersetzungen für %s (%s) von %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Übersetzungen für %s von %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Übersetzungen (%s) von %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paket %s ist nicht verfügbar" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paket %s ist nicht installiert" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Die Version %s von %s ist nicht installiert" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paket %s ist bereits installiert" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Die Version %s von %s ist nicht verfügbar." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Die Schüsselserver-Adresse ist ungültig: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Ungültiges Protokol des Servers: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Ungültige Schlüsselkennung: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Das Herunterladen und Installieren des Schlüssels %s von %s ist " "gescheitert:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Schlüsseldatei %s konnte nicht installiert werden: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Schlüssel mit Fingerabdruck %s konnte nicht entfernt werden: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paket %s kann nicht entfernt werden" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Die Version %s von %s ist nicht installiert" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Die frühere Version %s von %s ist bereits installiert" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Die Version %s von %s ist bereits installiert" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Die Version %s von %s ist nicht verfügbar" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" "Sie müssen eine Version auswählen, auf die %s zurückgesetzt werden soll" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Die neuere Version %s von %s ist bereits installiert" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Das Paket %s ist in der Ubuntu-Version %s nicht verfügbar." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paket %s kann nicht entfernt werden" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Das Paket enthält kein gültiges Kontrollfeld für die Installationsgröße. " "Siehe Debian-Richtlinie (Debian Policy) 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Der Lizenzschlüssel ist leer" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Der Lizenzschlüssel darf keinen ausführbaren Quelltext enthalten." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Der Pfad %s zum Lizenzschlüssel ist ungültig" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Der Lizenzschlüssel existiert bereits: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Der Speicherort des Lizenzschlüssels ist unsicher, da er symbolische " "Verknüpfungen enthält. Der Pfad %s verweist auf %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" "Das Verzeichnis, in welches der Schlüssel installiert werden soll, existiert " "noch nicht: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Schreiben des Lizenzschlüssel nach %s fehlgeschlagen" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Die folgenden Pakete haben nicht erfüllte Abhängigkeiten:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "es ist jedoch ein virtuelles Paket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "aber es ist nicht installiert" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "aber es soll nicht installiert werden" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "aber %s ist bereits installiert" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "aber %s soll installiert werden" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Das Hinzufügen des Schlüssels zur Liste der vertrauenswürdigen Software-" #~ "Anbieter ist gescheitert" aptdaemon-1.1.1+bzr982/po/dv.po0000644000000000000000000010666412375372771014266 0ustar 00000000000000# Divehi translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:46+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: Divehi \n" "Language: dv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "އެތެރޭގައި ހިގަމުންދާ މައުލޫމާތުތައް ދައްކާ" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "އަޅާފައިވާ ޕެކޭޖުތައް" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "އަޕްޑޭޓްކުރެވިފައިވާ ކޭޗް" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "ފޮހެލެވިފައިވާ ޓްރަސްޓެޑް ކީ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "ފޮހެލެވިފައިވާ ޕެކޭޖުތައް" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "އަޕްޑޭޓްކުރެވިފައިވާ ޕެކޭޖުތައް" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "ތަރައްގީކުރެވިފައިވާ ނިޒާމު" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "ހުށައެޅިފައިވާ ބަދަލުތައް" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "ފުރިހަމަވެއްޖެ" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "ބާތިލުވެއްޖެ" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ފައިލު އެޅެމުންދަނީ" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "ޕެކޭޖުތައް އެޅެމުންދަނީ" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ފައިލުން ކީއެއް އިތުރުކުރުން" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "ކޭޗް އަޕްޑޭޓްވަނީ" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "ޓްރަސްޓެޑް ކީ ފޮހެވެމުންދަނީ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "ޕެކޭޖުތައް ފޮހެވެމުންދަނީ" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "ޕެކޭޖުތައް އަޕްޑޭޓްވަނީ" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "ނިޒާމު ތަރައްގީވަމުންދަނީ" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "ބަދަލުތައް ހުށައަޅަނީ" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "އިންޓަނެޓް ކަނެކްޝަން ރަގަޅުތޯ ބަލާ" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "މިއީ ސީރިއަސް މައްސަލައެއް. އިރުކޮޅަކުން މަސައްކަތްކުރޭ. މިމައްސަލަ ދެން ދިމާވެއްޖެނަމަ، މި އުފެއްދިފަރާތަށް މި މައްސަލަ ހުށައަޅާ." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "އެއްވެސް އަޕްޑޭޓެއް ބޭނުމެއްނުވޭ" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "އެއްވެސް އިންސްޓޯލެއް ބޭނުމެއްނުވޭ" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "އެއްވެސް ފޮހެލުމެއް ބޭނުމެއްނުވޭ" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "ޕެކޭޖް ފައިލުތައް ޑައުންލޯޑްކުރުން ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "ރިޕޮސިޓޮރީ މައުލޫމާތު ޑައުންލޯޑުކުރުން ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "ޕެކޭޖު ޑިޕެންޑެންސީތައް ހައްލެއްނުކުރެވުނު" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "ޕެކޭޖު ނިޒާމު ހަލާކުވެފައި" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "ކީ އެޅިފަކާއެއް ނެތް" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "ކީއެއް ނުފޮހެވުނު" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "ޕެކޭޖު މެނޭޖާ ތަޅުލުން ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "ޕެކޭޖު ލިސްޓް ލޯޑްކުރުން ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "ޕެކޭޖެއް ނުވޭ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "ޕެކޭޖު ކުރިންވެސް އިންސްޓޯލްކުރެވިފައި" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "ޕެކޭޖް އެޅިފަކާއެއް ނެތް" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "ފެކޭޖު ހިންގުން ފޭލްވެއްޖެ" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "ހިދުމަތް ފެށެންދެން މަޑުކުރަނީ" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "ޓާސްކް ހިނގަމުންދަނީ" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ޑައުންލޯޑް ވަމުންދަނީ" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "ސާފުކުރެވެމުންދަނީ" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "ނިމިއްޖެ" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "ކެންސެލްވަނީ" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "ސޮފްޓްވެއާ ލިސްޓް ލޯޑްވަނީ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s އެޅެމުންދަނީ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s ކޮންފިގާކުރަނީ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s ފޮހެލަނީ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s ތަރައްގީކުރަނ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "ތަފްޞީލްތައް" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_ބަހައްޓާ" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_ބަދަލުކުރޭ (ރިޕްލޭސް)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_ތަފްސީލްތައް" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/el.po0000644000000000000000000016312012375372771014243 0ustar 00000000000000# Greek translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # Fotis Tsamis , 2010. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-26 18:45+0000\n" "Last-Translator: Filippos Kolyvas \n" "Language-Team: Greek \n" "Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Κατάλογος κλειδιών έμπιστων προμηθευτών" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Για να δείτε την λίστα με κλειδιά που εμπιστεύεστε, πρέπει να γίνει " "ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Αφαίρεση ληφθέντων αρχείων πακέτων" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Χρειάζεται πιστοποίηση για να εκκαθαρίσετε τα ληφθέντα αρχεία πακέτων." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Αλλαγή παραμετροποίησης λογισμικού" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Χρειάζεται πιστοποίηση για να αλλάξετε τις ρυθμίσεις του λογισμικού." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Αλλάξτε αποθετήριο λογισμικού" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Για να αλλάξετε τις ρυθμίσεις για τα αποθετήρια λογισμικού, πρέπει να γίνει " "ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Εγκάτασταση αρχείου πακέτου" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Για να εγκαταστήσετε αυτό το πακέτο, πρέπει να γίνει ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Ενημέρωση πληροφοριών πακέτων" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Για να ενημερωθεί ο κατάλογος λογισμικού, πρέπει να γίνει ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Εγκαταστήστε ή αφαιρέστε πακέτα" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Για να εγκαταστήσετε ή να αφαιρέσετε λογισμικό, πρέπει να γίνει ταυτοποίηση." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Εγκατάσταση λογισμικού από ένα αποθετήριο που βρίσκεται σε λίστα υψηλής " "εμπιστοσύνης." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Για την εγκατάσταση λογισμικού, θα πρέπει να γίνει ταυτοποίηση." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Προσθέστε ένα καινούργιο αποθετήριο και εγκαταστήστε πακέτα από αυτό" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Για να εγκαταστήσετε λογισμικό από μια καινούργια πηγή, πρέπει να γίνει " "ταυτοποίηση." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Προσθέστε ένα καινούργιο αποθετήριο αγορασμένου λογισμικού και εγκατάσταση " "πακέτων από αυτό" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Για να εγκαταστήσετε αγορασμένο λογισμικό, πρέπει να γίνει ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Αναβάθμιση πακέτων" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Για να εγκαταστήσετε το ενημερωμένο λογισμικό, πρέπει να γίνει ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Ακύρωση της εργασίας άλλου χρήστη" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Για να καταργήσετε τις αλλαγές λογισμικού κάποιου άλλου, πρέπει να γίνει " "ταυτοποίηση." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Ρύθμιση εξυπηρετητή proxy για μεταφορτώσεις λογισμικού" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Για να χρησιμοποιήσετε εξυπηρετητή proxy για μεταφορτώσεις λογισμικού, " "χρειάζεται ταυτοποίηση." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ΣΦΑΛΜΑ" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Λήψη %sB από %sB στα %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Λήφθηκαν %sB από %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ΣΦΑΛΜΑ:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Δεν σας επιτρέπεται να εκτελέσετε αυτήν την ενέργεια." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Δημιουργία λίστας" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Επίλυση εξαρτήσεων" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Τo ακόλουθο ΝΕΟ πακέτο θα εγκατασταθεί (%(count)s):" msgstr[1] "Τα ακόλουθα ΝΕΑ πακέτα θα εγκατασταθούν (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Το ακόλουθο πακέτο θα αναβαθμιστεί (%(count)s):" msgstr[1] "Τα ακόλουθα πακέτα θα αναβαθμιστούν (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Το ακόλουθο πακέτο θα ΑΦΑΙΡΕΘΕΙ (%(count)s):" msgstr[1] "Τα ακόλουθα πακέτα θα ΑΦΑΙΡΕΘΟΥΝ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Το ακόλουθο πακέτο θα ΥΠΟΒΑΘΜΙΣΤΕΙ (%(count)s):" msgstr[1] "Τα ακόλουθα πακέτα θα ΥΠΟΒΑΘΜΙΣΤΟΥΝ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Το ακόλουθο πακέτο θα επανεγκατασταθεί (%(count)s):" msgstr[1] "Τα ακόλουθα πακέτα θα επανεγκατασταθούν (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Το ακόλουθο πακέτο έχει διατηρηθεί (%(count)s):" msgstr[1] "Τα ακόλουθα πακέτα έχουν διατηρηθεί (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Πρέπει να γίνει λήψη %sB αρχείων." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Μετά από αυτήν την διαδικασία, θα χρησιμοποιηθούν %sB επιπλέον χώρου στον " "δίσκο." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Μετά από αυτήν την διαδικασία, θα ελευθερωθούν %sB επιπλέον χώρου στον δίσκο." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Θέλετε να συνεχίσετε [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Για να εργασθείτε με περισσότερα πακέτα, βάλτε τις ονομασίες των πακέτων σε " "εισαγωγικά:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Ανανέωση λανθάνουσας μνήμης" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Προσπαθήστε να διορθώσετε τις κατεστραμμένες εξαρτήσεις. Δυνητικά επικίνδυνη " "λειτουργία επειδή μπορεί να προσπαθήσει να αφαιρέσει πολλά πακέτα." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Προσπαθήστε να ολοκληρώσετε μια ανεπιτυχή προηγούμενη εγκατάσταση" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Εγκαταστήστε τα συγκεκριμένα πακέτα" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Επανεγκαταστήστε τα συγκεκριμένα πακέτα" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Αφαιρέστε τα συγκεκριμένα πακέτα" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Αφαιρέστε τα συγκεκριμένα πακέτα μαζί με τα αρχεία διαμόρφωσης" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Υποβάθμιση αυτών των πακέτων" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Απαξιωμένο: Παρακαλούμε χρησιμοποιήστε --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Ενημερώστε το σύστημα με ασφαλή τρόπο" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Ενημερώστε το σύστημα, πιθανόν εγκαθιστώντας και αφαιρώντας πακέτα" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Προσθήκη προμηθευτή στους έμπιστους" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Προσθήκη keyid προμηθευτή (χρειάζεται επίσης ο --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Χρήση του συγκεκριμένου keyserver για αναζήτηση κλειδιών" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Προσθέστε ένα νέο αποθετήριο από την συγκεκριμένη deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Ορίστε ένα εναλλακτικό αρχείο sources.list.d στο οποίο θα προστεθούν τα " "αποθετήρια." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Λίστα έμπιστων κλειδιών προμηθευτή" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Αφαίρεση έμπιστων κλειδιών του συγκεκριμένου αποτυπώματος" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Επαναρύθμιση των εγκατεστημένων πακέτων. Προαιρετικά μπορεί να καθοριστεί ο " "ελάχιστος αριθμός ερωτήσεων" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Ελάχιστη εμφανιζόμενη προτεραιώτητα debconf" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Μην επισυνάπτετε στο apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Να επιτρέπονται πακέτα από μη-πιστοποιημένες πηγές" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Προβολη πρόσθετων πληροφοριών για τα πακέτα. Προς το παρόν μόνον τον αριθμό " "έκδοσης" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Αναμονή για πιστοποίηση" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Μην τερματίσετε τον δαίμονα λόγω αδράνειας" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Να μη γίνει φόρτωση κανενός πρόσθετου" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Εμφάνιση εσωτερικών πληροφοριών επεξεργασίας" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Τερματισμός και αντικατάσταση ήδη ενεργού δαίμονα" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Παρακολούθηση του DBus session bus (Απαιτείται μόνο για δοκιμές)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Εκτέλεση λειτουργιών στο δεδομένο chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Αποθήκευση στατιστικών προφίλ στο προσδιορισμένο αρχείο" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Να μην γίνουν αλλαγές στο σύστημα (Χρήσιμο μόνο για τους προγραμματιστές)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Εγκατεστημένο αρχείο" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Εγκατεστημένα πακέτα" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Έγινε εισαγωγή κλειδιού από αρχείο" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "H cache ενημερώθηκε" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Η αναζήτηση ολοκληρώθηκε" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Αφαιρέθηκε έμπιστο κλειδί" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Πακέτα που αφαιρέθηκαν" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Πακέτα που ενημερώθηκαν" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Το σύστημα αναβαθμίστηκε" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Οι αλλαγές πραγματοποιήθηκαν" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Η μη-ολοκληρωμένη εγκατάσταση διορθώθηκε" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Οι μη-επιλυμένες εξαρτήσεις διορθώθηκαν" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Προστέθηκε πηγή λογισμικού" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Ενεργοποιήθηκε συστατικό της διανομής" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Αφαιρέθηκαν τα ληφθέντα πακέτα αρχείων" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Επανρυθμισμένα εγκατεστημένα πακέτα" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Επιτυχία" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Ακυρώθηκε" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Απέτυχε" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Εγκατάσταση αρχείου" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Εγκατάσταση πακέτων" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Προσθήκη κλειδιού από αρχείο" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Ενημέρωση προσωρινής μνήμης" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Αφαίρεση έμπιστου κλειδιού" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Αφαίρεση πακέτων" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Ενημέρωση πακέτων" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Αναβάθμιση του συστήματος" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Εφαρμογή αλλαγών" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Διόρθωση μη-ολοκληρωμένης εγκατάστασης" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Επισκευάζεται το εγκατεστημένο λογισμικό" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Προσθήκη πηγής λογισμικού" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Ενεργοποίηση συστατικού της διανομής" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Αφαίρεση αρχείων λήψης πακέτων" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Επανρύθμιση εγκατεστημένων πακέτων" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Γίνεται αναζήτηση" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Η εγκατάσταση του πακέτου απέτυχε" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Η εγκατάσταση του λογισμικού απέτυχε" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Η προσθήκη του κλειδιού στη λίστα προμηθευτών πιστοποιημένου περιεχομένου " "απέτυχε" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Η ανανέωση της λίστας λογισμικού απέτυχε" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Η αφαίρεση του εκδότη από τη λίστα των έμπιστων απέτυχε" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Η αφαίρεση λογισμικού απέτυχε" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Η ενημέρωση λογισμικού απέτυχε" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Η αναβάθμιση του συστήματος απέτυχε" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Η εφαρμογή των αλλαγών λογισμικού απέτυχε" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Η διόρθωση της μη-ολοκληρωμένης εγκατάστασης απέτυχε" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Η διόρθωση των μη-επιλυμένων εξαρτήσεων απέτυχε" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Η προσθήκη πηγής λογισμικού απέτυχε" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Η ενεργοποίηση συστατικού της διανομής απέτυχε" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Αποτυχία αφαίρεσης αρχείων λήψης πακέτων" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Αποτυχία αναζήτησης" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Προσθήκη άδειας χρήσης" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Ελέγξτε τη σύνδεσή σας με το διαδίκτυο." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Ελέγξτε αν χρησιμοποιείτε αποθετήρια τρίτων. Αν χρησιμοποιείτε, " "απενεργοποιήστε τα, αφού είναι συχνά πηγή προβλημάτων.\n" "Επιπλέον εκτελέστε την ακόλουθη εντολή σε ένα Τερματικό: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Το επιλεγμένο αρχείο ίσως δεν είναι κλειδί GPG ή ίσως είναι κατεστραμμένο." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Αδυναμία αφαίρεσης επιλεγμένου κλειδιού. Βεβαιωθείτε ότι δώσατε έγκυρο " "αποτύπωμα." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Ελέγξτε εάν λειτουργεί αυτήν την στιγμή και κάποια άλλη εφαρμογή διαχείρισης " "λογισμικού, π.χ. Synaptic ή aptitude. Μόνο μία εφαρμογή επιτρέπεται να κάνει " "αλλαγές κάθε φορά." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Αυτό είναι ένα σοβαρό πρόβλημα. Δοκιμάστε ξανά αργότερα. Αν το πρόβλημα αυτό " "εμφανιστεί ξανά, παρακαλώ αναφέρατε το σφάλμα στους προγραμματιστές." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Ελέγξτε την ορθογραφία του ονόματος του πακέτου, και ότι το κατάλληλο " "αποθετήριο είναι ενεργοποιημένο." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Δεν χρειάζεται να γίνει ενημέρωση." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Δενχρειάζεται να γίνει εγκατάσταση" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Δεν χρειάζεται να γίνει αφαίρεση" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Ζητήσατε να αφαιρέσετε ένα πακέτο που είναι απαραίτητο μέρος του συστήματός " "σας." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Η σύνδεση με την υπηρεσία χάθηκε. Πιθανότατα η υπηρεσία παρασκηνίου να " "σταμάτησε να λειτουργεί." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Η εγκατάσταση ή αφαίρεση ενός πακέτου λογισμικού απέτυχε." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Η ζητούμενη λειτουργία δεν υποστηρίζεται." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Φαίνεται να υπάρχει ένα προγραμματιστικό σφάλμα στο aptdaemon, δηλ. το " "λογισμικό που επιτρέπει την εγκατάσταση/αφαίρεση και την εκτέλεση άλλων " "πράξεων διαχείρισης πακέτων" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Αυτό το σφάλμα μπορεί να προκλήθηκε από αναγκαία πρόσθετα πακέτα λογισμικού " "που είτε λείπουν είτε δεν μπορούν να εγκατασταθούν. Επιπλέον μπορεί να " "υπάρχει σύγκρουση ανάμεσα σε πακέτα που δεν επιτρέπεται να εγκατασταθούν " "ταυτόχρονα." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Αυτό απαιτεί την εγκατάσταση πακέτων από μη ταυτοποιημένες πηγές." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Η εγκατάσταση μπορεί να απέτυχε λόγω κάποιου σφάλματος στο αντίστοιχο πακέτο " "λογισμικού ή ακυρώθηκε με λάθος τρόπο. Πρέπει να το διορθώσετε πριν να " "μπορέσετε να εγκαταστήσετε ή να αφαιρέσετε επιπλέον λογισμικό." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Παρακαλώ αντιγράψτε το αρχείο στον τοπικό σας υπολογιστή και ελέγξτε τις " "άδειες αρχείων" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Δεν επιτρέπεται η εγκατάσταση πακέτων που παραβιάζουν τα πρότυπα ποιότητας. " "Αυτό μπορεί να προκαλέσει σοβαρά προβλήματα στον υπολογιστή σας. Παρακαλώ " "επικοινωνήστε με το άτομο ή την οργάνωση που προσφέρει αυτό το πακέτο " "συμπεριλαμβάνοντας τις ακόλουθες λεπτομέρειες:" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Η λήψη κλειδιού άδειας χρήσης που απαιτείται για να τρέξει αυτό το κομμάτι " "του λογισμικού δεν είναι έγκυρη ή δεν μπορεί να εγκατασταθεί σωστά.\n" "Δείτε τις λεπτομέρειες για περισσότερες πληροφορίες." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Όλα τα διαθέσιμα πακέτα αναβάθμισης έχουν ήδη εγκατασταθεί." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Το κλειδί άδειας χρήσης η οποία σάς επιτρέπει να χρησιμοποιήσετε αυτό το " "πακέτο λογισμικού δεν μπορεί να ληφθεί. Ελέγξτε τη σύνδεση του δικτύου σας." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Δεν έχετε τα απαιτούμενα δικαιώματα για να εκτελέσετε αυτή τη κίνηση." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Είτε δώσατε λάθος κωδικό ή ακυρώσατε την πιστοποίηση\n" "Επιπλέον θα μπορούσε επίσης να υπάρχει κάποιος τεχνικός λόγος για αυτό το " "σφάλμα αν δεν είδατε κάποιο διάλογο κωδικού: το περιβάλλον εργασίας σας δεν " "παρέχει κάποιον διαχειριστή συνεδρίας PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Η λήψη των αρχείων των πακέτων απέτυχε" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Αποτυχία λήψης πληροφοριών αποθετηρίου." #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Η εξαρτήσεις του πακέτου δεν είναι δυνατόν να επιλυθούν." #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Το σύστημα πακέτων είναι φθαρμένο." #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Το κλειδί δεν εγκαταστάθηκε" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Το κλειδί δεν αφαιρέθηκε" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Το κλείδωμα της διαχείρισης πακέτων απέτυχε" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Η φόρτωση της λίστας πακέτων απέτυχε" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Το πακέτο δεν υπάρχει" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Το πακέτο είναι ήδη ενημερωμένο" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Το πακέτο είναι ήδη εγκατεστημένο" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Το πακέτο δεν είναι εγκατεστημένο" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Αποτυχία αφαίρεσης απαραίτητου πακέτου συστήματος" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Η εργασία δεν μπορεί να παρακολουθηθεί ή να ελεγχθεί" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Η λειτουργία πακέτου απέτυχε" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Απαιτεί την εγκατάσταση μη-έμπιστων πακέτων" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Η προηγούμενη εγκατάσταση δεν έχει ολοκληρωθεί" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Το πακέτο είναι κακής ποιότητας" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Το αρχείο του πακέτο δεν μπόρεσε να ανοιχτεί" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Μη υποστηριζόμενη λειτουργία" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Αποτυχία λήψης του κλειδιού άδειας χρήσης" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Αποτυχία εγκατάστασης του κλειδιού άδειας χρήσης" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Το σύστημα είναι ήδη ενημερωμένο" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Δε μπορέσατε να πιστοποιηθείτε" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Δεν επιτρέπεται να εκτελέσετε αυτή την ενέργεια" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Παρουσιάστηκε ανεπανόρθωτο σφάλμα" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Αναμονή για να ξεκινήσει η υπηρεσία" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Αναμονή" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Αναμονή για το απαιτούμενο μέσο" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Αναμονή για τον τερματισμό άλλων διαχειριστών λογισμικού" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Αναμονή για την ζήτηση από το αρχείο ρυθμίσεων" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Εκτέλεση εργασίας" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Λήψη" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Επερωτήσεις στις πηγές λογισμικού" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Εκκαθάριση" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Ολοκληρώθηκε" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Έξοδος" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Φόρτωση λίστας λογισμικού" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Εγκατάσταση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Ρύθμιση %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Αφαίρεση %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Πλήρη διαγραφή του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Σημειώνεται η εξαφάνιση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Εκτελείται το σενάριο εντολών %s για την ολοκλήρωση της εγκατάστασης" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Αναβάθμιση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Εξαγωγή αρχείων από το %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Προετοιμασία για εγκατάσταση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Προετοιμασία για τη ρύθμιση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Προετοιμασία για την αφαίρεση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Προετοιμασία για την πλήρη αφαίρεση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Έγινε εγκατάσταση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Ολοκληρωτική απομάκρυνση του %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Έγινε η αφαίρεση του %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Ολοκληρώθηκε" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Αποτυχία πιστοποίησης" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Γίνεται λήψη" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Σε αδράνεια" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Το δίκτυο δεν είναι διαθέσιμο" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Γίνεται επεξεργασία του %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Λήψη %sB από %sB στα %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Λήφθηκαν %sB από %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Λεπτομέρειες" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Αρχείο" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Μεταφορτώθηκαν %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Ληφθέντα" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Απαιτείτε CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Παρακαλώ εισάγετε το παραπάνω CD/DVD στον οδηγό '%s' για να εγκαταστήσετε " "πακέτα από αυτό." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Σ_υνέχεια" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Εγκατάσταση" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Επανεγκατάσταση" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Αφαίρεση" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Απομάκρυνση μαζί με τα αρχεία ρυθμίσεων" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Αναβάθμιση" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Υποβάθμιση" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Παράλειψη αναβάθμισης" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Παρακαλώ ρίξτε μια ματιά στην λίστα με τις αλλαγές παρακάτω." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Πρέπει να εγκατασταθεί επιπλέον λογισμικό" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Πρέπει να επανεγκατασταθεί επιπλέον λογισμικό" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Πρέπει να αφαιρεθεί επιπλέον λογισμικό" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Πρέπει να αφαιρεθεί επιπλέον λογισμικό με τις ρυθμίσεις του" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Πρέπει να αναβαθμιστεί επιπλέον λογισμικό" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Πρέπει να υποβαθμιστεί επιπλέον λογισμικό" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Οι ενημερώσεις θα παραλειφθούν" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Απαιτούνται επιπλέον αλλαγές" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Θα μεταφορτωθούν συνολικά %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Θα ελευθερωθούν %sB χώρου στον δίσκο." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Θα χρησιμοποιηθούν %sB επιπλέον χώρου στον δίσκο." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Να αντικατασταθούν οι αλλαγές σας στο '%s' με μια νεότερη έκδοση του αρχείου " "ρυθμίσεων;" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Αν δεν γνωρίζετε γιατί το αρχείο υπάρχει ήδη, είναι συνήθως ασφαλές να το " "αντικαταστήσετε." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Αλλαγές" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "Δι_ατήρηση" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Α_ντικατάσταση" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Πληροφορίες" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Αναμονή για την ολοκλήρωση του %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Λήψη %(files)s" msgstr[1] "Λήψη %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "Τοπικό αποθετήριο" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Λήψη από το %s" msgstr[1] "Λήψη από τα %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Η δομή του %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Η περιγραφή του %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Υπογραφή περιγραφής του %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Διαθέσιμα πακέτα από %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Διαθέσιμες πηγές από %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Διαθέσιμες μεταφράσεις από %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Μεταφράσεις για %s (%s) από %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Μεταφράσεις για %s από %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Μεταφράσεις (%s) από %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Το πακέτο %s δεν είναι διαθέσιμο" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Το πακέτο %s δεν είναι εγκατεστημένο" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Η έκδοση %s του/της %s δεν είναι εγκατεστημένη" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Το πακέτο %s είναι ήδη εγκατεστημένο" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Η έκδοση %s του %s δεν είναι διαθέσιμη." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Το URL του διακομιστή κλειδιού (keyserver) δεν είναι έγκυρο: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Μη έγκυρο πρωτόκολλο διακομιστή: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Μη έγκυρη ταυτότητα (ID) κλειδιού: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Αποτυχία λήψης κι εγκατάσταση του κλειδιού to %s από %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Αποτυχία εγκατάστασης του αρχείου κλειδιού %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Αποτυχία αφαίρεσης κλειδιού αποτύμα %s couldn't be removed: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Το πακέτο %s δεν μπορεί να αφαιρεθεί." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Η έκδοση %s του/της %s δεν είναι εγκατεστημένη" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Η προηγούμενη έκδοση%s του/της %s είναι ήδη εγκατεστημένη" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Η έκδοση %s του/της %s είναι ήδη εγκατεστημένη" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Η έκδοση %s του/της %s δεν είναι διαθέσιμη" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Πρέπει να προσδιορίστε μια έκδοση υπαναχώρισης (downgrade) του/της %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Η μεταγενέστερη έκδοση του/της %s of %s είναι ήδη εγκατεστημένη" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Το πακέτο %s δεν είναι διαθέσιμο στην έκδοση %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Το πακέτο %s δεν μπορεί να αφαιρεθεί" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Το πακέτο δεν παρέχει ένα έγκυρο πεδίο ελέγχου Installed-Size. Δείτε την " "Πολιτική του Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Το κλειδί της άδειας χρήσης είναι κενό" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Το κλειδί άδειας χρήσης δεν επιτρέπεται να περιέχει εκτελέσιμο κώδικα." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Η διαδρομή του κλειδιού άδειας χρήσης %s δεν είναι έγκυρη" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Το κλειδί άδειας χρήσης υπάρχει ήδη: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Η τοποθεσία του κλειδιού της άδειας χρήσης δεν είναι ασφαλής, διότι " "περιέχει συμβολικούς συνδέσμους. Η διαδρομή %s δείχνει στο %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Ο κατάλογος για την εγκατάσταση του κλειδιού δεν υπάρχει ακόμη: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Αποτυχία εγγραφής του αρχείου κλειδιού στο: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Τα ακόλουθα πακέτα έχουν ανεπίλυτες εξαρτήσεις:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "αλλά είναι ένα εικονικό πακέτο" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "αλλά δεν είναι εγκατεστημένο" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "αλλά δεν πρόκειται να εγκατασταθεί" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "αλλά το %s είναι εγκατεστημένο" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "αλλά το %s πρόκειται να εγκατασταθεί" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Η προσθήκη του κλειδιού στη λίστα των έμπιστων εκδοτών λογισμικού απέτυχε" aptdaemon-1.1.1+bzr982/po/en_AU.po0000644000000000000000000013112312375372771014630 0ustar 00000000000000# English (Australia) translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-25 13:34+0000\n" "Last-Translator: Jared Norris \n" "Language-Team: English (Australia) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "List keys of trusted vendors" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "To view the list of trusted keys, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Remove downloaded package files" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "To clean downloaded package files, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Change software configuration" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "To change software settings, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Change software repository" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "To change software repository settings, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Install package file" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "To install this package, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Update package information" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "To update the software catalogue, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Install or remove packages" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "To install or remove software, you need to authenticate." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Install software from a high-trust whitelisted repository." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "To install software, you need to authenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Add a new repository and install packages from it" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "To install software from a new source, you need to authenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Add a new repository of purchased software and install packages from it" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "To install purchased software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Upgrade packages" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "To install updated software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancel the task of another user" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "To cancel someone else's software changes, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Set a proxy for software downloads" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "To use a proxy server for downloading software, you need to authenticate." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "You are not allowed to perform this action." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Queuing" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolving dependencies" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "The following NEW package will be installed (%(count)s):" msgstr[1] "The following NEW packages will be installed (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "The following package will be upgraded (%(count)s):" msgstr[1] "The following packages will be upgraded (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "The following package will be REMOVED (%(count)s):" msgstr[1] "The following packages will be REMOVED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "The following package will be DOWNGRADED (%(count)s):" msgstr[1] "The following packages will be DOWNGRADED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "The following package will be reinstalled (%(count)s):" msgstr[1] "The following packages will be reinstalled (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "The following package has been kept back (%(count)s):" msgstr[1] "The following packages have been kept back (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Need to get %sB of archives." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "After this operation, %sB of additional disk space will be used." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "After this operation, %sB of additional disk space will be freed." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Do you want to continue [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresh the cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Try to finish a previous incompleted installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Install the given packages" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstall the given packages" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Remove the given packages" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remove the given packages including configuration files" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Downgrade the given packages" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Deprecated: Please use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Upgrade the system in a safe way" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Upgrade the system, possibly installing and removing packages" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Add the vendor to the trusted ones" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Add the vendor keyid (also needs --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Use the given keyserver for looking up keys" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Add new repository from the given deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specify an alternative sources.list.d file to which repositories should be " "added." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "List trusted vendor keys" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remove the trusted key of the given fingerprint" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "The minimum debconf priority of question to be displayed" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Do not attach to the apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Allow packages from unauthenticated sources" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Show additional information about the packages. Currently only the version " "number" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Waiting for authentication" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Do not shutdown the daemon because of inactivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Do not load any plugins" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Show internal processing information" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Quit and replace an already running daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Listen on the DBus session bus (Only required for testing" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Perform operations in the given chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Store profile stats in the specified file" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Do not make any changes to the system (Only of use to developers)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installed file" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installed packages" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Added key from file" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Updated cache" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Search done" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Removed trusted key" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Removed packages" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Updated packages" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Upgraded system" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Applied changes" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Repaired incomplete installation" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Repaired broken dependencies" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Added software source" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Enabled component of the distribution" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Removed downloaded package files" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfigured installed packages" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Successful" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelled" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Failed" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installing file" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installing packages" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Adding key from file" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Updating cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Removing trusted key" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Removing packages" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Updating packages" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Upgrading system" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Applying changes" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Repairing incomplete installation" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Repairing installed software" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Adding software source" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Enabling component of the distribution" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Removing downloaded package files" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfiguring installed packages" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Searching" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installation of the package file failed" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installation of software failed" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "Adding the key to the list of trusted software vendors failed" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Refreshing the software list failed" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Removing the vendor from the list of trusted ones failed" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Removing software failed" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Updating software failed" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Upgrading the system failed" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Applying software changes failed" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Repairing incomplete installation failed" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Repairing broken dependencies failed" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Adding software source failed" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Enabling component of the distribution failed" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Removing downloaded package files failed" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Search failed" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Adding license key" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Check your Internet connection." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "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" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "The selected file may not be a GPG key file or it might be corrupt." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "There isn't any need for an update." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "There isn't any need for an installation" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "There isn't any need for a removal." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "You requested to remove a package which is an essential part of your system." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "The installation or removal of a software package failed." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "The requested feature is not supported." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "This requires installing packages from unauthenticated sources." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Please copy the file to your local computer and check the file permissions." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "All available upgrades have already been installed." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "You don't have got the required privileges to perform this action." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "You either provided a wrong password or cancelled the authorisation.\n" "Furthermore there could also be a technical reason for this error if you " "haven't seen a password dialogue: your desktop environment doesn't provide a " "PolicyKit session agent." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Failed to download package files" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Failed to download repository information" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Package dependencies cannot be resolved" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "The package system is broken" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Key was not installed" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Key was not removed" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Failed to lock the package manager" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Failed to load the package list" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Package does not exist" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Package is already up to date" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Package is already installed" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Package isn't installed" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Failed to remove essential system package" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Task cannot be monitored or controlled" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Package operation failed" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requires installation of untrusted packages" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Previous installation hasn't been completed" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "The package is of bad quality" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Package file could not be opened" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Not supported feature" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Failed to download the license key" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Failed to install the license key" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "The system is already up to date" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "You could not be authorised" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "You are not allowed to perform this action" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "An unhandleable error occured" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Waiting for service to start" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Waiting" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Waiting for required medium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Waiting for other software managers to quit" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Waiting for configuration file prompt" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Running task" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Downloading" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Querying software sources" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Cleaning up" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Finished" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelling" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Loading software list" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configuring %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Removing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Completely removing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Noting disappearance of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Running post-installation trigger %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Upgrading %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Unpacking %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparing installation of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparing configuration of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparing removal of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparing complete removal of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Installed %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Completely removed %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Removed %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Done" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Authentication failed" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Fetching" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Idle" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Network isn't available" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Processing %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "File" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Downloaded %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Downloaded" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' is required" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinue" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Install" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstall" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Remove" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purge" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Upgrade" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Downgrade" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Skip upgrade" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Please take a look at the list of changes below." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Additional software has to be installed" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Additional software has to be re-installed" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Additional software has to be removed" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Additional software has to be purged" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Additional software has to be upgraded" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Additional software has to be downgraded" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Updates will be skipped" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Additional changes are required" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB will be downloaded in total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB of disk space will be freed." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB more disk space will be used." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Replace your changes in '%s' with a later version of the configuration file?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "If you don't know why the file is there already, it is usually safe to " "replace it." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Changes" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Keep" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Replace" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Waiting for %s to exit" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Downloading %(files)s" msgstr[1] "Downloading %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "local repository" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Downloading from %s" msgstr[1] "Downloading from %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Structure of %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Description of %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Description signature of %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Available packages from %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Available sources from %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Available translations from %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Translations for %s (%s) from %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Translations for %s from %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Translations (%s) from %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Package %s isn't available" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Package %s isn't installed" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "The version %s of %s isn't installed" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Package %s is already installed" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "The version %s of %s isn't available." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "The keyserver URL is invalid: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Invalid protocol of the server: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Invalid key id: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Failed to download and install the key %s from %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Key file %s couldn't be installed: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Key with fingerprint %s couldn't be removed: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Package %s cannot be removed." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "The version %s of %s is not installed" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "The former version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "The version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "The version %s of %s isn't available" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "You need to specify a version to downgrade %s to" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "The later version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "The package %s isn't available in the %s release." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Package %s cannot be removed" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "The license key is empty" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "The license key is not allowed to contain executable code." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "The license key path %s is invalid" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "The license key already exists: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "The location of the license key is insecure since it contains symbolic " "links. The path %s maps to %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "The directory where to install the key to doesn't exist yet: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Failed to write key file to: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "The following packages have unmet dependencies:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "but it is a virtual package" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "but it is not installed" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "but it is not going to be installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "but %s is installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "but %s is to be installed" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Adding the key to the list of trused software vendors failed" aptdaemon-1.1.1+bzr982/po/en_CA.po0000644000000000000000000011715512375372771014617 0ustar 00000000000000# English (Canada) translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:47+0000\n" "Last-Translator: Daniel LeBlanc \n" "Language-Team: English (Canada) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "List keys of trusted vendors" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "To view the list of trusted keys, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Change software repository" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "To change software repository settings, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Install package file" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "To install this package, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Update package information" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "To update the software catalog, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Install or remove packages" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "To install or remove software, you need to authenticate." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Add a new repository and install packages from it" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "To install software from a new source, you need to authenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Add a new repository of purchased software and install packages from it" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "To install purchased software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Upgrade packages" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "To install updated software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancel the task of another user" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "To cancel someone else's software changes, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Set a proxy for software downloads" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "To use a proxy server for downloading software, you need to authenticate." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "You are not allowed to perform this action." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Queuing" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolving dependencies" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Need to get %sB of archives." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "After this operation, %sB of additional disk space will be used." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "After this operation, %sB of additional disk space will be freed." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Do you want to continue [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresh the cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Try to finish a previous incompleted installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Install the given packages" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstall the given packages" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Remove the given packages" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remove the given packages including configuration files" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Deprecated: Please use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Upgrade the system in a safe way" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Upgrade the system, possibly installing and removing packages" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Add the vendor to the trusted ones" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Add the vendor keyid (also needs --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Use the given keyserver for looking up keys" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Add new repository from the given deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specify an alternative sources.list.d file to which repositories should be " "added." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "List trusted vendor keys" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remove the trusted key of the given fingerprint" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Do not attach to the apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Allow packages from unauthenticated sources" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Waiting for authentication" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Do not shutdown the daemon because of inactivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Show internal processing information" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Quit and replace an already running daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Store profile stats in the specified file" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Do not make any changes to the system (Only of use to developers)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installed file" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installed packages" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Added key from file" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Updated cache" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Removed trusted key" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Removed packages" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Updated packages" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Upgraded system" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Applied changes" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Repaired incomplete installation" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Repaired broken dependencies" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Added software source" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Enabled component of the distribution" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Successful" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelled" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Failed" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installing file" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installing packages" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Adding key from file" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Updating cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Removing trusted key" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Removing packages" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Updating packages" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Upgrading system" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Applying changes" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Repairing incomplete installation" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Adding software source" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Enabling component of the distribution" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installation of the package file failed" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installation of software failed" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Refreshing the software list failed" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Removing the vendor from the list of trusted ones failed" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Removing software failed" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Updating software failed" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Upgrading the system failed" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Applying software changes failed" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Repairing incomplete installation failed" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Repairing broken dependencies failed" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Adding software source failed" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Enabling component of the distribution failed" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Check your Internet connection." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Check if you are using third-party repositories. If so, disable them, " "because they are a common source of problems.\n" "Furthermore, run the following command in a Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "The selected file might not be a GPG key file or it might be corrupt." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "There is no need for an update." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "There is no need for an installation." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "There is no need for a removal." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "You have requested to remove a package which is an essential part of your " "system." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "The connection to the daemon was lost. Most likely, the background daemon " "crashed." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "The installation or removal of a software package failed." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "You are not allowed to perform this action." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Failed to download package files" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Failed to download repository information" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Package dependencies cannot be resolved" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "The package system is broken" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Key was not installed" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Key was not removed" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Failed to lock the package manager" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Failed to load the package list" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Package does not exist" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Package is already installed" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Package isn't installed" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Failed to remove an essential system package" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Task cannot be monitored or controlled" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Package operation failed" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requires installation of untrusted packages" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Previous installation hasn't been completed" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "An unhandlable error occured" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Waiting for service to start" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Waiting" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Waiting for required medium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Waiting for other software managers to quit" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Waiting for configuration file prompt" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Running task" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Downloading" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Cleaning up" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Finished" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelling" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Loading software list" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configuring %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Removing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Running post-installation trigger %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Upgrading %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Done" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Authentication failed" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Fetching" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Idle" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Network isn't available" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "File" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Downloaded %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Downloaded" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' is required" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinue" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Install" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstall" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Remove" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purge" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Upgrade" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Downgrade" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Skip upgrade" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Please take a look at the list of changes below." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Additional software has to be installed" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Additional software has to be re-installed" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Additional software has to be removed" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Additional software has to be purged" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Additional software has to be upgraded" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Additional software has to be downgraded" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Updates will be skipped" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Additional changes are required" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB will be downloaded in total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB of disk space will be freed." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB more disk space will be used." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Replace your changes in '%s' with a later version of the configuration file?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "If you don't know why the file is there already, it is usually safe to " "replace it." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Changes" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Keep" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Replace" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Adding the key to the list of trusted software vendors failed" aptdaemon-1.1.1+bzr982/po/en_GB.po0000644000000000000000000013110112375372771014607 0ustar 00000000000000# English (United Kingdom) translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-26 23:46+0000\n" "Last-Translator: Andi Chandler \n" "Language-Team: English (United Kingdom) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "List keys of trusted vendors" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "To view the list of trusted keys, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Remove downloaded package files" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "To clean downloaded package files, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Change software configuration" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "To change software settings, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Change software repository" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "To change software repository settings, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Install package file" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "To install this package, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Update package information" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "To update the software catalogue, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Install or remove packages" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "To install or remove software, you need to authenticate." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Install software from a high-trust whitelisted repository." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "To install software, you need to authenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Add a new repository and install packages from it" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "To install software from a new source, you need to authenticate." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Add a new repository of purchased software and install packages from it" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "To install purchased software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Upgrade packages" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "To install updated software, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancel the task of another user" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "To cancel someone else's software changes, you need to authenticate." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Set a proxy for software downloads" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "To use a proxy server for downloading software, you need to authenticate." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "You are not allowed to perform this action." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Queuing" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolving dependencies" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "The following NEW package will be installed (%(count)s):" msgstr[1] "The following NEW packages will be installed (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "The following package will be upgraded (%(count)s):" msgstr[1] "The following packages will be upgraded (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "The following package will be REMOVED (%(count)s):" msgstr[1] "The following packages will be REMOVED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "The following package will be DOWNGRADED (%(count)s):" msgstr[1] "The following packages will be DOWNGRADED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "The following package will be reinstalled (%(count)s):" msgstr[1] "The following packages will be reinstalled (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "The following package has been kept back (%(count)s):" msgstr[1] "The following packages have been kept back (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Need to get %sB of archives." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "After this operation, %sB of additional disk space will be used." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "After this operation, %sB of additional disk space will be freed." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Do you want to continue [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresh the cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Try to finish a previous incompleted installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Install the given packages" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstall the given packages" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Remove the given packages" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remove the given packages including configuration files" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Downgrade the given packages" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Deprecated: Please use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Upgrade the system in a safe way" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Upgrade the system, possibly installing and removing packages" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Add the vendor to the trusted ones" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Add the vendor keyid (also needs --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Use the given keyserver for looking up keys" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Add new repository from the given deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specify an alternative sources.list.d file to which repositories should be " "added." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "List trusted vendor keys" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remove the trusted key of the given fingerprint" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "The minimum debconf priority of question to be displayed" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Do not attach to the apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Allow packages from unauthenticated sources" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Show additional information about the packages. Currently only the version " "number" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Waiting for authentication" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Do not shutdown the daemon due to inactivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Do not load any plugins" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Show internal processing information" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Stop and replace an already running daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Listen on the DBus session bus (Only required for testing)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Perform operations in the given chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Store profile stats in the specified file" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Do not make any changes to the system (Only of use to developers)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installed file" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installed packages" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Added key from file" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Updated cache" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Search done" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Removed trusted key" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Removed packages" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Updated packages" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Upgraded system" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Applied changes" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Repaired incomplete installation" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Repaired broken dependencies" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Added software source" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Enabled component of the distribution" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Removed downloaded package files" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfigured installed packages" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Successful" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelled" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Failed" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installing file" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installing packages" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Adding key from file" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Updating cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Removing trusted key" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Removing packages" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Updating packages" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Upgrading system" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Applying changes" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Repairing incomplete installation" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Repairing installed software" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Adding software source" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Enabling component of the distribution" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Removing downloaded package files" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfiguring installed packages" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Searching" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installation of the package file failed" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installation of software failed" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "Adding the key to the list of trusted software vendors failed" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Refreshing the software list failed" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Removing the vendor from the list of trusted ones failed" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Removing software failed" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Updating software failed" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Upgrading the system failed" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Applying software changes failed" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Repairing incomplete installation failed" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Repairing broken dependencies failed" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Adding software source failed" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Enabling component of the distribution failed" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Removing downloaded package files failed" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Search failed" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Adding license key" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Check your Internet connection." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "If you are using third party repositories then disable them, since they are " "a common source of problems.\n" "Now run the following command in a terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "The selected file may not be a GPG key file or it might be corrupt." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "There isn't any need to update." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "There isn't any need for an installation" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "There isn't any need for a removal." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "You requested to remove a package which is an essential part of your system." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "The connection to the daemon was lost. The background daemon probably " "crashed." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "The installation or removal of a software package failed." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "The requested feature is not supported." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "There seems to be a programming error in aptdaemon. This is the software " "that allows you to install/remove software and to perform other package " "management related tasks." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "This requires installing packages from unauthenticated sources." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Please copy the file to your local computer and check the file permissions." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "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." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "All available upgrades have already been installed." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "You do not have got the required privileges to perform this action." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "You either provided a wrong password or cancelled the authorisation.\n" "Furthermore there could also be a technical reason for this error if you " "have not seen a password dialogue: your desktop environment does not provide " "a PolicyKit session agent." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Failed to download package files" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Failed to download repository information" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Package dependencies cannot be resolved" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "The package system is broken" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Key was not installed" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Key was not removed" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Failed to lock the package manager" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Failed to load the package list" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Package does not exist" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Package is already up to date" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Package is already installed" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Package isn't installed" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Failed to remove essential system package" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Task cannot be monitored or controlled" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Package operation failed" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requires installation of untrusted packages" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Previous installation hasn't been completed" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "The package is of bad quality" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Package file could not be opened" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Not supported feature" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Failed to download the license key" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Failed to install the license key" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "The system is already up to date" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "You could not be authorised" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "You are not allowed to perform this action" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "An unhandled error occured" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Waiting for service to start" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Waiting" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Waiting for required medium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Waiting for other software managers to quit" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Waiting for configuration file prompt" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Running task" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Downloading" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Querying software sources" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Cleaning up" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Finished" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelling" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Loading software list" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configuring %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Removing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Completely removing %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Noting disappearance of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Running post-installation trigger %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Upgrading %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Unpacking %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparing installation of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparing configuration of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparing removal of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparing complete removal of %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Installed %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Completely removed %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Removed %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Done" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Authentication failed" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Fetching" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Idle" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Network isn't available" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Processing %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Downloaded %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "File" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Downloaded %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Downloaded" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' is required" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinue" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Install" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstall" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Remove" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purge" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Upgrade" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Downgrade" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Skip upgrade" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Please take a look at the list of changes below." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Additional software has to be installed" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Additional software has to be reinstalled" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Additional software has to be removed" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Additional software has to be purged" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Additional software has to be upgraded" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Additional software has to be downgraded" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Updates will be skipped" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Additional changes are required" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB will be downloaded in total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB of disk space will be freed." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB more disk space will be used." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Replace your changes in '%s' with a later version of the configuration file?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "If you don't know why the file is there already, it is usually safe to " "replace it." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Changes" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Keep" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Replace" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Waiting for %s to exit" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Downloading %(files)s" msgstr[1] "Downloading %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "local repository" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Downloading from %s" msgstr[1] "Downloading from %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Structure of %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Description of %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Description signature of %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Available packages from %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Available sources from %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Available translations from %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Translations for %s (%s) from %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Translations for %s from %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Translations (%s) from %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Package %s isn't available" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Package %s isn't installed" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "The version %s of %s isn't installed" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Package %s is already installed" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "The version %s of %s isn't available." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "The keyserver URL is invalid: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Invalid protocol of the server: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Invalid key id: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Failed to download and install the key %s from %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Key file %s couldn't be installed: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Key with fingerprint %s couldn't be removed: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Package %s cannot be removed." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "The version %s of %s is not installed" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "The former version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "The version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "The version %s of %s isn't available" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "You need to specify a version to downgrade %s to" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "The later version %s of %s is already installed" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "The package %s isn't available in the %s release." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Package %s cannot be removed" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "The license key is empty" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "The license key is not allowed to contain executable code." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "The license key path %s is invalid" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "The license key already exists: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "The directory where to install the key to doesn't exist yet: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Failed to write key file to: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "The following packages have unmet dependencies:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "but it is a virtual package" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "but it is not installed" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "but it is not going to be installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "but %s is installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "but %s is to be installed" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Adding the key to the list of trusted software vendors failed" aptdaemon-1.1.1+bzr982/po/eo.po0000644000000000000000000013056712375372771014257 0ustar 00000000000000# Esperanto translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-09-15 16:37+0000\n" "Last-Translator: Michael Moroni \n" "Language-Team: Esperanto \n" "Language: eo\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Listigi ŝlosilojn de fidataj vendejoj" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Aŭtentokontrolo necesas por vidi la liston da fidataj ŝlosiloj." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Forigi elŝutitajn pakaĵdosierojn" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Aŭtentokontrolo necesas por forigi elŝutitajn pakaĵdosierojn." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ŝanĝi programarajn agordojn" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Aŭtentokontrolo necesas por ŝanĝi programajn agordojn." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Ŝanĝi programarajn deponejon" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Aŭtentokontrolo necesas por ŝanĝi agordojn pri programaraj deponejoj." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instali pakaĵdosieron" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Aŭtentokontrolo necesas por instali ĉi tiun pakaĵon." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Ĝisdatigi pakaĵajn informojn" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Aŭtentokontrolo necesas por ĝisdatigi la programaran katalogon." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instali aŭ forigi pakaĵojn" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Aŭtentokontrolo necesas por instali aŭ forigi programaron." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instali programarojn el tre fidinda permesita depnejo." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Vi necesas aŭtentigadon por instali programarojn." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Aldoni novan deponejon kaj instali pakaĵojn el ĝi" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Aŭtentokontrolo necesas por instali programaron el nova fonto." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Aldoni novan deponejon de aĉetita programaro kaj instali pakaĵojn el ĝi" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Aŭtentokontrolo necesas por instali aĉetitan programaron." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Ĝisdatigitaj pakaĵoj" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Aŭtentokontrolo necesas por instali ĝisdatigitan programaron." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Nuligi la taskon de alia uzanto" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Aŭtentokontrolo necesas por nuligi programarŝanĝojn de alia persono." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Agordi prokurilon por programar-elŝutoj" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Aŭtentokontrolo necesas por uzi prokuran servilon por elŝuti programaron." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERARO" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB el %sB je %sB/s elŝutitaj" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB el %sB elŝutitaj" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERARO:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Vi ne rajtas fari ĉi tiun agon." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Enviciganta" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Solvanta dependojn" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "La sekva NOVA pakaĵo estos instalata (%(count)s):" msgstr[1] "La sekvaj NOVAJ pakaĵoj estos instalataj (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "La sekva pakaĵo estos ĝisdatigata (%(count)s):" msgstr[1] "La sekvaj pakaĵoj estos ĝisdatigataj (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "La sekva pakaĵo estos FORIGATA (%(count)s):" msgstr[1] "La sekvaj pakaĵoj estos FORIGATAJ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "La sekva pakaĵo estos MALĜISDATIGATA (%(count)s):" msgstr[1] "La sekvaj pakaĵoj estos MALĜISDATIGATAJ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "La sekva pakaĵo estos reinstalata (%(count)s):" msgstr[1] "La sekvaj pakaĵoj estos reinstalataj (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "La sekva pakaĵo estas retenita (%(count)s):" msgstr[1] "La sekvaj pakaĵoj estas retenitaj (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Necesas elŝuti %sB da arĥivoj." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Post ĉi tiu ago, %sB da plia diskspaco estos uzata." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Post ĉi tiu ago, %sB da diskspaco estos liberigata." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Ĉu vi volas daŭrigi [J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Por agi por pli ol unu pakaĵo, enmetu la pakaĵnomojn en citilojn:\n" "aptdcon --install \"fuo baro\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refreŝigi kaŝmemoron" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Provi solvi rompitajn dependecojn. Tio povas esti danĝera ĉar la ago eble " "provus forigi multajn pakaĵojn." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Provi fini antaŭe nekompletigitan instaladon" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instali la indikitajn pakaĵojn" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstali la indikitajn pakaĵojn" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Forigi la indikitajn pakaĵojn" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Forigi la indikitajn pakaĵojn, inkluzive agordajn dosierojn" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Malĝisdatigi la elektitajn pakaĵojn" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Evitenda: Bonvole uzu --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Ĝisdatigi la sistemon sekurmaniere" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Ĝisdatigi la sistemon, eble instaligante kaj forigante pakaĵojn." #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Aldoni la vendiston al la fidatoj" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Aldoni la 'keyid' de la vendisto (bezonas ankaŭ --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Uzi la indikitan ŝlosilservilon por serĉi ŝlosilojn" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Aldoni novan deponejon per la indikita deb-linio" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specifi alternativan sources.list.d-dosieron, al kiu deponejoj estu " "aldonataj." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Montri ŝlosilojn de fidataj vendistoj" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Forigi la fidatan ŝlosilon de la indikita fingropremo" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reagordi instalitajn pakaĵojn. Opcie la minimuma prioritato de demandoj " "specifeblas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La minimume montrenda debconf-prioritato de demandoj" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ne konekti al la apt-terminalo" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permesi pakaĵojn el neaŭtentigitaj fontoj" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Montri kromajn informojn pri la pakaĵoj. Nun nur la versionumeron" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Atendanta aŭtentokontrolon" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ne ĉesigi la demonon pro neaktiveco" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ne ŝargi iujn kromprogramojn" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Montri informojn pri interna traktado" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Ĉesigi kaj anstataŭigi jam aktivan demonon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Aŭskulti je la DBus-seancbuso (nur postulata por testado)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Efektivigi operaciojn en la elektita ‘chroot’" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Konservi profilstatojn en la specifan dosieron" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ne fari ajnan ŝanĝon al la sistemo (Nur uzinda por programistoj)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Instalita dosiero" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Instalitaj pakaĵoj" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Aldonis ŝlosilon el dosiero" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Aktualigis kaŝmemoron" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Serĉo farita" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Forigis fidatan ŝlosilon" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Forigis pakaĵojn" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Ĝisdatigis pakaĵojn" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Promociis sistemon" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Aplikis ŝanĝojn" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Riparis nekompletan instalon" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Riparis rompitajn dependecojn" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Aldonis programaran fonton" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Ebligis komponenton de la distribuo" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Forigis elŝutitajn pakaĵdosierojn" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reagordis instalitajn pakaĵojn" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Sukcesis" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Nuligita" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Fiaskis" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalas dosieron" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalas pakaĵojn" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Aldonas ŝlosilon el dosiero" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Aktualigas kaŝmemoron" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Forigas fidatan ŝlosilon" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Forigas pakaĵojn" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Ĝisdatigas pakaĵojn" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Promocias sistemon" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplikas ŝanĝojn" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Riparas nekompletan instalon" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Riparanta instalitan programaron" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Aldonas programaran fonton" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Ebligas komponenton de la distribuo" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Forigas elŝutitajn pakaĵdosierojn" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reagordas instalitajn pakaĵojn" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Ŝerĉanta" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalado de la pakaĵdosiero fiaskis" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalado de programaro fiaskis" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Fiaskis la aktualigo de la programara listo" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Fiaskis la forigo de la programaro-liveranto el la listo de fidata programaro" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Fiaskis forigo de programaro" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Fiaskis la programara ĝisdatigo" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Fiaskis la promociado de la sistemo" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Fiaskis la apliko de programaraj ŝanĝoj" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Fiaskis la riparo de nekompleta instalo" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Fiaskis la riparo de rompiĝintaj dependecoj" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Aldono de programara fonto fiaskis" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Ebligo de komponento de la distribuo fiaskis" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Fiaskis la forigo de elŝutitaj pakaĵdosieroj" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Serĉo ne sukcesis" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Aldonanta permesilŝlosilon" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kontrolu vian interret-konekton" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontrolu ĉu vi uzas deponejojn de eksteraj liverantoj. Se jes, malebligu " "ilin, ĉar ili estas kutima fonto da problemoj.\n" "Aldone, rulu la sekvan komandon en terminalo: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Eble aŭ la elektita dosiero ne estas GPG-ŝlosila dosiero aŭ ĝi estas fuŝita." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Ne eblis forigi la elektitan ŝlosilon. Kontrolu ĉu vi provizis validan " "fingropremon." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kontrolu ĉu vi nun uzas alian programar-mastruman ilon, ekz. Synaptic aŭ " "aptitue. Nur unu ilo samtempe povas fari ŝanĝojn." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Tio ĉi estas serioza problemo. Reprovu poste. Se tiu ĉi problemo prezentas " "sin denove, bonvolu raporti eraron al la programistoj" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Kontrolu la literumadon de la pakaĵnomo, kaj kontrolu ĉu la ĝusta deponejo " "estas ebligita." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Ne necesas ĝisdatigi." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Mankas neceso por instalado" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Ne necasas forigado." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Vi petis forigi pakaĵon kiu estas esenca parto de via sistemo." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "La konekto al la demono perdiĝis. Verŝajne la fona demono kolapsis." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Fiaskis la instalo aŭ forigo de programara pakaĵo." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La petita trajto ne estas subtenata" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Ŝajnas, ke programaderaro estas en aptdaemon, la programaro kiu permesas vin " "instali/forigi programarojn kaj por plenumi aliajn pakaĵadministradajn " "taskojn." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Eble tiu eraro estis kaŭzita de neinstalitaj aŭ neinstaleblaj nepraj " "pakaĵoj. Krome povas esti konflikto inter programaraj pakaĵoj kiuj ne rajtas " "esti instalitaj samtempe." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Tio necesas instalon de pakaĵoj el neaŭtentigitaj fontoj." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Eble la instalo fiaskis pro eraro en la koncerna programar-pakaĵo aŭ ĝi " "estis malĝuste ĉesita. Vi devas ripari ĝin antaŭ ol vi povas instali aŭ " "forigi ajnan plian programaron." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Bonvolu kopii la dosieron al via loka komputilo kaj kontroli la " "dosierpermesojn." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "La instalo de pakaĵo kiu atencas la kvalitonormojn estas nepermesata. Tio " "povas kaŭzi seriozajn problemojn sur via komputilo. Bonvole kontaktu la " "personon aŭ organizon, kiu provizis ĉi tiun pakaĵdosieron kaj inkluzivu la " "detalojn supre." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La elŝutita permesilŝlosilo, kiu estas postulata por ruli ĉi tiun eron de " "programaro, ne estas valida aŭ eble ne estas korekte instalita.\n" "Vidu la detalojn por pliaj informoj." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Ĉiuj disponeblaj ĝisdatigoj estas jam instalitaj." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "La permesilŝlosilo, kiu permesas vin uzi ĉi tiun eron de programaro, ne " "elŝuteblas. Bonvole kontrolu vian retkonekton." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Vi ne rajtas fari ĉi tiun agon." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Fiaskis elŝuti pakaĵdosierojn" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Fiaskis elŝuti deponejajn informojn" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakaĵaj dependecoj ne povas esti solvataj" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "La pakaĵa sistemo estas kaduka" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ŝlosilo estas neinstalita" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ŝlosilo estas neforigita" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Fiaskis ŝlosi la pakaĵadministrilon" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Fiaskis ŝargi la pakaĵliston" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakaĵo ne ekzistas" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakaĵo estas jam ĝisdata" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakaĵo jam estas instalita" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakaĵo ne estas instalita" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Fiaskis forigi estencan sistempakaĵon" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tasko ne povas esti monitorata aŭ kontrolata" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakaĵoperacio fiaskis" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Postulas instalon de nefidataj pakaĵoj" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Antaŭa instalo ne estis kompletigita" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "La pakaĵo estas malbonkvalita" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Ne eblis malfermi pakaĵdosieron" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nesubtenata trajto" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Elŝuto de permesilŝlosilo fiaskis" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Instalo de permesilŝlosilo fiaskis" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "La sistemo estas jam ĝisdata" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Okazis netraktebla eraro" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Atendas la starton de servo" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Atendas" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Atendas postulatan datumportilon" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Atendas ĝis aliaj programaraj administriloj ĉesas" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Atendas la fenestron de la agordodosiero" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Aktiva tasko" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Elŝutas" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Petanta pri programarfontoj" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Purigado" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Finita" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Nuligas" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Ŝargas programaran liston" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalado de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Agordado de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Forigado de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Tute foriganta %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Notanta malaperon de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Rulas post-instalan ekagilon %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Promociado de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Malpakanta %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Pretiganta instalon de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Pretiganta agordojn por %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Pretiganta forigon de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Pretiganta tutan forigon de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instalita" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s tute forigata" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s forigita" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Preta" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Aŭtentokontrolo malsukcesis" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Venigas" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Senokupe" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Reto ne disponeblas" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Procesanta %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB el %sB je %sB/s elŝutitaj" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB el %sB elŝutitaj" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detaloj" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Dosiero" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Elŝutis %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Elŝutis" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Lumdisko '%s' estas bezonata" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Metu la supre indikitan CD/DVD en ingo '%s' por instali programarajn " "pakaĵojn el ĝi." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "D_aŭrigi" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instali" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstali" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Forigi" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Plene forigi" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Ĝisdatigi" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Malĝisdatigi" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Preterpasi ĝisdatigon" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Bonvolu rigardi la suban ŝanĝoliston." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Aldona programaro devas esti instalita" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Aldona programaro devas esti reinstalita" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Aldona programaro devas esti forigita" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Aldona programaro devas esti plene forigita" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Aldona programaro devas esti ĝisdatigita" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Aldona programaro devas esti malpromociita" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Ĝisdatigoj estos transsaltataj" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Aldona ŝanĝoj nepras" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Entute %sB devos esti elŝutita." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB da diskspaco estos liberigita" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB da plia diskspaco estos uzata." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Ĉu anstataŭigi viajn ŝanĝojn en '%s' per pli nova versio de la agordo-" "dosiero?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Se vi ne scias kial la dosiero jam ekzistas, kutime vi povas senprobleme " "anstataŭigi ĝin." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "Ŝa_nĝoj" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Konservi" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Anstataŭigi" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detaloj" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Atendas ĝis %s ĉesas" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Elŝutas %(files)s" msgstr[1] "Elŝutas %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokaj deponejoj" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Elŝutanta el %s" msgstr[1] "Elŝutanta el %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Strukturo de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Priskribo de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Priskriba subskribo de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Disponeblaj pakaĵoj de %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Disponeblaj fontoj ĉe %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Disponeblaj tradukoj ĉe %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Tradukoj por la %s (%s) ĉe %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Tradukoj por la %s ĉe %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Tradukoj (%s) el %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakaĵo %s estas nedisponebla" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakaĵo %s ne estas instalita" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versio %s de %s ne estas instalita" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakaĵo %s estas jam instalita" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versio %s de %s ne estas havebla." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL de la ŝlosila servilo nevalidas: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Nevalida protokolo de la servilo: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Nevalida identigilo de ŝlosilo: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Fiaskis elŝuti kaj instali la ŝlosilon %s el %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Ne eblis instali ŝlosildosieron %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ne eblis forigi ŝlosilon kun fingropremo %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Ne eblas forigi pakaĵon %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versio %s de %s ne estas instalita" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "La antaŭa versio %s de %s jam estas instalita" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versio %s de %s jam estas instalita" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versio %s de %s ne estas havebla" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Vi devas specifi version al kiu %s estu malpromociata" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "La pli posta versio %s de %s jam estas instalita" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "La pakaĵo %s ne estas havebla en la eldono %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Ne eblas forigi pakaĵon %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "La pakaĵo ne provizas validan kontrolkampon 'Installed-Size' (Grando-" "Instalita). Vidu Debian-politikon 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La permesilŝlosilo estas malplena" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La permesilŝlosilo ne estas permesita por enhavi ruleblan kodon." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "La pado de la permesilŝlosilo %s nevalidas" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La permesilŝlosilo jam ekzistas: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "La loko de la permesilŝlosilo ne sekuras, ekde ĝi enhavas simbolajn " "ligilojn. La pado %s ligas al %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "La dosierujo, kie instali la ŝlosilo ne ankoraŭ ekzistas: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Skribado de la ŝlosildosiero en %s fiaskis" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "La sekvaj pakaĵoj havas neefektivigitajn dependecojn:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "sed ĝi estas virtuala pakaĵo" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "sed ĝi ne estas instalita" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "sed ĝi ne estas instalota" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "sed %s estas instalita" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "sed %s estas instalota" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Fiaskis la aldono de la ŝlosilo al la listo de fidata programaro" aptdaemon-1.1.1+bzr982/po/es.po0000644000000000000000000013401212375372771014250 0ustar 00000000000000# Spanish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-30 08:46+0000\n" "Last-Translator: Paco Molinero \n" "Language-Team: Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista de claves de proveedores de confianza" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Para ver la lista de claves de confianza, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Eliminar los archivos de paquete descargado" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Para limpiar los archivos de paquetes descargados, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Cambiar la configuración del software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Para cambiar la configuración del software, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Cambiar el repositorio de software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Para cambiar la configuración de los repositorios, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalar archivo de paquete" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Para instalar este paquete, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualizar información de paquetes" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Para actualizar el catálogo de software, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalar o eliminar paquetes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Para instalar o eliminar software, necesita autenticarse." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalar software desde un repositorio de lista blanca altamente confiable." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Para instalar software, necesita autenticarse." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Añadir un repositorio nuevo e instalar paquetes desde él" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Para instalar software desde una fuente nueva, necesita autenticarse." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Añadir un repositorio nuevo de software comprado e instalar paquetes desde él" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Para instalar software comprado, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Actualizar paquetes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Para instalar software actualizado, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancelar la tarea de otro usuario" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Para cancelar los cambios de software de alguien más, necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Establecer un proxy para descargas de software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Para usar un servidor proxy para descargar software, necesita autenticarse." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Descargados %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Descargados %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "No tiene permitido realizar esta acción." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Poner en cola" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolviendo dependencias" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Se instalará el siguiente paquete NUEVO (%(count)s):" msgstr[1] "Se instalarán los siguientes paquetes NUEVOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Se actualizará el siguiente paquete (%(count)s):" msgstr[1] "Se actualizarán los siguientes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Se ELIMINARÁ e siguiente paquete (%(count)s):" msgstr[1] "Se ELIMINARÁN los siguientes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Se DESACTUALIZARÁ el siguiente paquete (%(count)s):" msgstr[1] "Se DESACTUALIZARÁN los siguientes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Se reinstalará el siguiente paquete (%(count)s):" msgstr[1] "Se reinstalarán los siguientes paquetes (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Se retuvo el siguiente paquete (%(count)s):" msgstr[1] "Se retuvieron los siguientes paquetes (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Se necesitan obtener %sB de archivadores." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Después de esta operación, se usarán %sB de espacio adicional en el disco." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Después de esta operación, se liberarán %sB de espacio adicional en el disco." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "¿Quiere continuar [S/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Para operar con más de un paquete debe colocar los nombres de los paquetes " "entre comillas:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Actualizar caché" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Intentar resolver dependencias rotas. Operación potencialmente peligrosa ya " "que podría tratar de eliminar muchos paquetes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Intente finalizar una instalación incompleta anterior" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalar los paquetes proporcionados" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalar los paquetes proporcionados" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Eliminar los paquetes proporcionados" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Eliminar los paquetes proporcionados incluyendo los archivos de configuración" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Desactualizar los paquetes dados" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsoleto: use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Actualice el sistema de forma segura" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Actualizar el sistema, posiblemente instalar y eliminar paquetes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Añadir al fabricante como confiable" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Añadir la id de clave de vendedor (también necesita --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utilice el servidor de claves dado para buscar las claves" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Añadir repositorio nuevo desde el deb-line dado" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especifique un archivo sources.list.d alternativo al cual deberían añadirse " "los repositorios." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Lista de claves de proveedores de confianza" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Eliminar la clave autenticada de la huella dada." #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurar paquetes instalados. Opcionalmente puede especificarse la " "prioridad mínima de las preguntas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La prioridad mínima de pregunta de debconf que se mostrará" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "No adjuntar a la terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permitir paquetes de fuente sin autenticar" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostrar información adicional acerca de los paquetes. Actualmente solo el " "número de versión" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Esperando la autenticación" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "No parar el demonio en caso de inactividad" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "No cargar ningún complemento" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostrar información del procesamiento interno" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Salir y sustituir un demonio que ya esté ejecutándose" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escuchar en el bus de sesión de DBus (necesario solo para pruebas" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realiza operaciones en el chroot dado" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Guardar estadísticas de perfil en el archivo especificado" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "No haga ningún cambio en el sistema (sólo para uso de los desarrolladores)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Archivo instalado" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquetes instalados" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Clave añadida desde archivo" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Caché actualizada" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Búsqueda realizada" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Clave de confianza eliminada" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paquetes desinstalados" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paquetes actualizados" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema actualizado" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Cambios aplicados" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instalación incompleta reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependencias rotas reparadas" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Origen de software añadido" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Activado componente de la distribución" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Eliminados los paquetes descargados" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfigurados los paquetes instalados" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Completado" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelado" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Falló" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalando archivo" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalando paquetes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Añadiendo clave desde archivo" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Actualizando caché" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Eliminando clave de confianza" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Desinstalando paquetes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Actualizando paquetes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Actualizando sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplicando los cambios" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparando instalación incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparando software instalado" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Añadiendo origen de software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Activando componente de la distribución" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Eliminando los archivos de paquetes descargados" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfigurando paquetes instalados" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Búsqueda" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Falló la instalación del archivo de paquete" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Falló la instalación de software" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Falla al añadir la clave a la lista de proveedores de software de confianza" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Falló la actualización de la lista de software" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Hubo un fallo al eliminar el proveedor de la lista de confianza" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Falló la eliminación de software" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Falló la actualización de software" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Falló la actualización del sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Falló la aplicación de cambios de software" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Falló la reparación de la instalación incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Falló la reparación de las dependencias rotas" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Falló añadir origen de software" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Falló activar componente de la distribución" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Falló la eliminación de archivos de paquetes descargados" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Falló la búsqueda" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Añadiendo clave de licencia" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Compruebe su conexión a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Compruebe si está usando repositorios de terceros. En tal caso, " "desactívelos, ya que son una fuente habitual de problemas.\n" "Posteriormente, ejecute el siguiente comando en un terminal: apt-get install " "-f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Puede que el archivo seleccionado no sea un archivo de clave GPG o que esté " "dañado." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "La calve seleccionada no se puede eliminar. Compruebe que suministró una " "huella válida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Compruebe si está actualmente ejecutando otra herramientas de gestión de " "software, por ejemplo Synaptic o aptitude. Solamente se puede usar una " "herramienta cada vez." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Este es un problema serio. Vuelva a intentarlo más tarde. Si el problema " "vuelve a aparecer, informe del error a los desarrolladores." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Compruebe la ortografía del nombre del paquete y si está activado el " "repositorio apropiado." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "No hay necesidad de una actualización." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "No hay necesidad de una instalación" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "No hay necesidad de una desinstalación." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Ha solicitado desinstalar un paquete que es parte esencial de su sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Se ha perdido la conexión con el demonio. Probablemente el demonio de " "segundo plano ha dejado de funcionar." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Falló al instalar o desinstalar un paquete de software." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La característica solicitada no está permitida." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Parece que hay un error de programación en aptdaemon, el software que le " "permite instalar o eliminar software y realizar otras tareas de gestión de " "paquetes relacionadas." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Este error podría deberse a que se necesitan paquetes de software " "adicionales que faltan o que no son instalables. También podría ser un " "conflicto entre paquetes de software que no pueden instalarse juntos." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Los paquetes a instalar necesarios de fuentes no autenticadas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "La instalación pudo haber fallado por un error en los paquetes " "correspondientes de software o se canceló de una manera incorrecta. Debe " "reparar esto antes de poder instalar o eliminar cualquier otro software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Copie el archivo en su equipo local y compruebe los servicios." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "No se permite la instalación de cualquier paquete que viole los estándares " "de calidad. Eso podría causar problemas serios a su equipo. Contacte con la " "persona u organización que le proporcionó este archivo de paquete e incluya " "los detalles a continuación." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clave de la licencia descargada requerida para ejecutar este software no " "es válida o no se pudo instalar correctamente.\n" "Vea los detalles para tener más información." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Todas las actualizaciones disponibles ya han sido instaladas." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "No pudo descargarse la clave de licencia que permite el uso de este " "software. Compruebe su conexión de red." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "No tiene los privilegios requeridos para realizar esta acción." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "O bien a proporcionado una contraseña incorrecta o ha cancelado la " "autorización.\n" "Puede que haya una razón técnica para este error si no ha visto un diálogo " "para la contraseña: su entorno de escritorio no proporciona un agente de " "sesión de PolicyKit" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Falló al descargar los archivos de paquetes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Falló al descargar la información del repositorio" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Las dependencias del paquete no se pueden resolver" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "El paquete de sistema está roto" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "La clave no ha sido instalada" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "La clave no ha sido eliminada" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Falló al bloquear el gestor de paquetes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Falló al cargar la lista de paquetes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "El paquete no existe" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "El paquete ya esta actualizado a la fecha" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "El paquete ya está instalado" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "El paquete no está instalado" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Falló al desinstalar un paquete esencial del sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "La tarea no pudo monitorizarse o controlarse" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Falló la operación con el paquete" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Se requiere la instalación de paquetes no confiables" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Una instalación previa no se completó" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "El paquete es de mala calidad" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "El archivo de paquete no se puede abrir" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Característica no permitida" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Falló la descarga de la clave de licencia" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Fallo en la instalación de la clave de licencia" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "El sistema ya está actualizado" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "No se le pudo autorizar" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "No tiene permitido realizar esta acción" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ocurrió un error que no se puede manejar" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Esperando el servicio para iniciar" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Esperando" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Esperando el soporte requerido" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Esperando que los demás gestores de paquetes se cierren" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Esperando la solicitud del archivo de configuración" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Ejecutando tarea" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Descargando" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Consultando los orígenes del software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Limpiando" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Finalizado" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelando" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Cargando la lista de software" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configurando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Desinstalando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Borrando completamente %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Se detectó la desaparición de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Ejecutando activador de post-instalación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Actualizando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Desempaquetando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparando la instalación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparando la configuración %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparando la eliminación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparando para borrar completamente %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instalado" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s completamente eliminado" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s eliminado" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Finalizado" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Falló la autenticación" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Consiguiendo" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactivo" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "La red no está disponible" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Procesando %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Descargados %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Descargados %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalles" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Archivo" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Descargado %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Descargado" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Se requiere el CD/DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Inserte el CD/DVD en «%s» para instalar desde él los paquetes de software." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Eliminar" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purgar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Actualizar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Desactualizar" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Omitir actualización" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Eche un vistazo a la lista de cambios." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Se necesita instalar software adicional" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Se debe reinstalar software adicional" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Se debe desinstalar software adicional" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Se debe desinstalar software adicional completamente" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Se debe actualizar software adicional" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Se debe desactualizar software adicional" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Se omitirán las actualizaciones" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Se necesitan cambios adicionales" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB se descargarán en total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Se liberará %sB de espacio en disco." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "se usarán %sB más de espacio en el disco." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "¿Reemplazar sus cambios en «%s» con la última versión del archivo de " "configuración?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Si no sabe por qué el archivo ya está allí, generalmente es seguro " "reemplazarlo." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Cambios" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Mantener" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Reemplazar" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalles" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Esperando a %s para salir" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Descargando %(files)s" msgstr[1] "Descargando %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositorio local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Descargando de %s" msgstr[1] "Descargando de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estructura de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descripción de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Firma de descripción de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquetes disponibles de %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Orígenes disponibles de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traducciones disponibles de %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traducciones para %s (%s) de %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traducciones para %s de %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traducciones (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "El paquete %s no está disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "El paquete %s no está instalado" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versión %s de %s no está instalada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "El paquete %s ya está instalado" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versión %s de %s no está disponible." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "El URL del servidor de claves no es válido: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "El protocolo del servidor no es válido: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Id de clave inválido: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Fallo al descargar e instalar la clave %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "El archivo clave file %s no se puede instalar: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "La clave con la huella %s no se puede eliminar: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "El paquete %s no se puede eliminar." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versión %s de %s no está instalada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "La antigua versión %s de %s ya está instalada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versión %s de %s ya está instalada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versión %s de %s no está disponible" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Necesita especificar una versión a la que desactualizar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "La última versión %s de %s ya está instalada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "El paquete %s no está disponible en la distribución %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "El paquete %s no se puede eliminar" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "El paquete no proporciona un campo de control del tamaño de instalación " "válido. Vea la política de Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clave de la licencia está vacía." #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clave de la licencia no puede contener código ejecutable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "La ruta %s de la clave de licencia es invalida" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clave de licencia ya existe: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "La ubicación de la clave de licencia no es segura, ya que contiene enlaces " "simbólicos. La ruta %s asigna a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "El directorio para instalar la clave aún no existe: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Fallo al escribir el archivo de clave a: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Los siguientes paquetes tienen dependencias incumplidas:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "pero es un paquete virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "pero no está instalado" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "pero no va a ser instalado" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "pero %s está instalado" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "pero %s no está instalado" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Hubo un fallo al añadir la clave a la lista de proveedores de software de " #~ "confianza" aptdaemon-1.1.1+bzr982/po/et.po0000644000000000000000000012642412375372771014261 0ustar 00000000000000# Estonian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-10-14 09:15+0000\n" "Last-Translator: Märt Põder \n" "Language-Team: Estonian \n" "Language: et\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Näita usaldusväärsete müüjate võtmeid" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Usaldatud võtmete vaatamiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Eemalda allalaaditud pakettide failid" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Allalaaditud pakettide failide puhastamiseks pead ennast autentima." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Muuda tarkvara konfiguratsiooni" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Tarkvara seadete muutmiseks pead ennast autentima." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Tarkvaraallika vahetamine" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Tarkvaraallika sätete muutmiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Paigalda paketifail" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Selle paketi paigaldamiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Uuenda paketiinfot" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Tarkvara kataloogi uuendamiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Paki paigaldamine või eemaldamine" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Tarkvara paigaldamiseks või muutmiseks pead sa ennast autentima." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Lisa uus hoidla ja paigalda sealt pakette" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Tarkvara paigaldamiseks uuest allikast, pead ennast autentima." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Lisa uus ostetud tarkvara hoidla ja paigalda sealt pakette" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Et paigaldada ostetud tarkvara, pead ennast autentima." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Uuenda pakette" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Tarkvarauuenduste paigaldamiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Katkesta teise kasutaja toiming" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Kellegi teise tarkvara muudatuste tühistamiseks pead sa ennast autentima." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Tarkvara allalaadimiste jaoks proksi määramine" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Et kasutada proksi serverit tarkvara allalaadimiseks, pead sa ennast " "autentima." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "VIGA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Allalaaditud %sB %sB-st kiirusel %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Allalaaditud %sB %sB-st" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "VIGA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Sul pole lubatud seda toimingut teha." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Järjekorrastamine" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Sõltuvuste lahendamine" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Paigaldatakse %(count)s UUS pakett:" msgstr[1] "Paigaldatakse %(count)s UUT paketti:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Uuendatakse %(count)s pakett:" msgstr[1] "Uuendatakse %(count)s paketti:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Järgnev pakett eemaldatakse (%(count)s):" msgstr[1] "Järgnevad paketid eemaldatakse (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Järgnev pakett madaldatakse (%(count)s):" msgstr[1] "Järgnevad paketid madaldatakse (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Järgnev pakett taaspaigaldatakse (%(count)s):" msgstr[1] "Järgnevad paketid taaspaigaldatakse (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Järgnevat paketti on tagasi hoitud (%(count)s):" msgstr[1] "Järgnevaid pakette on tagasi hoitud (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Peab hankima %sB arhiive." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Pärast seda toimingut kasutatakse %sB rohkem kettaruumi." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Pärast seda toimingut vabaneb %sB kettaruumi." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Kas soovid jätkata [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Et töötada rohkem kui ühel paketil, lisa pakettide nimed jutumärkides:\n" "aptcon -- paigalda \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Uuenda puhvrit" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Katkiste sõltuvuste parandamise üritamine. Potentsiaalselt ohtlik toime, " "kuna see võib üritada mingit paketti eemaldada." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Püüa lõpetada eelnev poolik paigaldus" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Paigalda need pakid" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Paigalda uuesti need pakid" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Eemalda see pakk" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Eemalda see pakk koos konfiguratsioonifailidega" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Antud pakettide madaldamine" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Aegunud: Palun kasuta --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Uuenda süsteemi turvaliselt" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Uuenda süsteemi, võimalik, et paigaldatakse või eemaldatakse pakette" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Lisa tarnija usaldusväärsete hulka" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Lisa tarnija võtme-id (vajab lisaks --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Lisa see võtmeserver otsitavatesse võtmetesse" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Lisa uus tarkvaraallikas sellest deb-line`st" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "Määra alternatiivne sources.list.d fail, mille tarkvaraallikad lisada" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Loetle usaldatud tarnijate võtmed" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Eemalda antud sõrmejäljega võti" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Paigaldatud pakettide taasseadistamine. Soovi korral saab vähima " "prioriteediga küsimust täpsustada" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Vähim debconf pküsimuse rioriteeti saab kuvada" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ära ühenda apt'i terminali" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Luba paketid autentimata allikatest" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Pakettide täiendava teabe kuvamine. Praegu ainult versiooni arv" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Autentimise ootamine" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Deemoni tööd tegevusetuse pärast ei lõpetata" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ei laadita ühtegi pluginat" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Sisemiste protsesside informatsiooni kuvamine" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Lõpeta ja asenda juba käivitatud deemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBus seansi kuulamine (Vajalik ainult testimiseks)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Operatsioonide sooritamine antud chroot'is" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Talleta profiili andmed valitud faili" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Süsteemi ei tehta mingeid muudatusi (kasulik ainult arendajatele)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Paigaldatud fail" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paigaldati paketid" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Lisati võti failist" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Uuendati vahemälu" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Otsing lõpetatud" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Eemaldati usaldatud võti" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Eemaldati paketid" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Uuendati pakette" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Uuendatud süsteem" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Muudatused rakendati" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Mittetäielik paigaldus on parandatud" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Katkised sõltuvused on parandatud" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Tarkvaraallikas lisatud" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Jaotuskomponent lubatud" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Allalaaditud paketifailid eemaldatud" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Paigaldatud paketid taasseadistatud" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Edukas" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Tühistatud" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Nurjus" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Faili paigaldamine" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Pakettide paigaldamine" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Võtme lisamine failist" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Puhvri uuendamine" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Usaldatud võtme eemaldamine" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Pakettide eemaldamine" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Pakettide uuendamine" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Süsteemi uuendamine" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Muudatuste rakendamine" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Mittetäieliku paigalduse parandamine" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Paigaldatud tarkvara parandamine" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Tarkvaraallika lisamine" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Distributsiooni jaotuskomponendi lubamine" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Allalaaditud paketifailide eemaldamine" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Paigaldatud pakettide taasseadistamine" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Otsimine" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Paketifaili paigaldamine nurjus" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Tarkvara paigaldamine nurjus" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Tarkvaraloendi uuendamine nurjus" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Tootja eemaldamine usaldusväärsete tarkvaratootjate loetelust nurjus" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Tarkvara eemaldamine nurjus" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Tarkvara uuendamine nurjus" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Süsteemi uuendamine nurjus" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Tarkvaramuudatuste rakendamine nurjus" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Mittetäieliku paigalduse parandamine nurjus" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Katkiste sõltuvuste parandamine nurjus" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Takrvaraallika lisamine nurjus" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Jaotuskomponendi lubamine nurjus" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Paigaldatud paketi failide eemaldamine nurjus" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Otsing nurjus" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Litsentsivõtme lisamine" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kontrolli oma internetiühendust." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontrolli, kas kasutad kolmanda osapoole tarkvaraallikaid. Kui nii, siis " "keela need, kuna tavaliselt need on probleemide põhjuseks.\n" "Järgmiseks käivita terminalis järgnev käsk: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Valitud fail pole GPG võtmefail või see on rikutud." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Valitud võtit polnud võimalik eemaldada. Veendu, et sisestasid õige " "sõrmejälje." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Vaata, ega sa ei kasuta hetkel mõnda teist tarkvaratööriista nagu Synaptic " "või aptitude. Muudatusi tohib teha ainult üks programm korraga." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "See on tõsine probleem. Proovi hiljem uuesti. Kui probleem esineb uuesti, " "raporteeri sellest veast arendajatele." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Kontrolli paketi nime õigekirja ja et õige tarkvaraallikas on lubatud." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Uuendamiseks puudub vajadus." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Paigaldamiseks puudub vajadus" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Eemaldamiseks puudub vajadus." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Sa palusid eemaldada paketi, mis on süsteemi oluline osa." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Ühendus deemoniga katkes. Kõige tõenäolisemalt jooksis taustadeemon kokku." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Tarkvara paigaldamine või eemaldamine nurjus." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Soovitud valikut ei toetata" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Aptdaemon'is, mis võimaldab tarkvara paigaldadamist/eemaldamist ning teisi " "paketihalduse toiminguid, ilmnes programmitõrge." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Selle vea võis põhjustada vajalik lisatarkvara pakett, mis aga puudub või " "pole paigaldatav. Lisaks võib tekkida konflikt tarkvarapakettide vahel, mida " "pole lubatud samaaegselt paigaldada." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Paigaldus võis nurjuda vea tõttu vastavas tarkvarapaketis või katkestati see " "mittesobival viisil. Enne, kui saab muud tarkvara paigaldada või eemaldada, " "tuleb see parandada." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Palun kopeeri fail oma kohalikku arvutisse ja kontrolli faili õigusi." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Paketi paigaldus, mis rikub standardi kvaliteedi pole lubatud. See võib " "õhjustada sinu arvutile tõsiseid probleem.e Palun kontakteeru paketi faili " "pakkunud isiku või organisatsiooniga ja kaasa allpool detailid." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Selle tarkvaratüki kasutamiseks vajalik litsentsivõti on kehtetu või pole " "võimalik seda õigesti paigaldada.\n" "Täpsema info saamiseks vaata üksikasju." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Kõik võimalikud uuendused on juba paigaldatud." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Selle tarkvaratüki kasutamiseks vajaliku litsentsivõtme allalaadimine " "nurjus. Palun, kontrolli oma võrguühendust." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Sul pole lubatud seda toimingut teha." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Paketifailide allalaadimine nurjus" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Tarkvaraallika teabe allalaadimine nurjus" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Paketi sõltuvusi pole võimalik lahendada" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Paketisüsteem on katki" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Võtit ei paigaldatud" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Võtit ei eemaldatud" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Paketihalduri lukustamine nurjus" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Paketiloendi laadimine nurjus" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paketti ei eksisteeri" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakett on juba ajakohane" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakett on juba paigaldatud" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakett ei ole paigaldatud" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Olulise süsteemipaketi eemaldamine nurjus" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Toimingut pole võimalik jälgida ega juhtida" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Paketitoiming nurjus" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Nõuab mitteusaldusväärsete pakettide paigaldamist" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Eelnev paigaldus ei jõudnud lõpule" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Pakett on halva kvaliteediga" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Paketi faile ei ole võimalik avada" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Toetamata omadus" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Litsentsivõtme allalaadimine nurjus" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Litsentsivõtme paigaldamine nurjus" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Süsteem on juba ajakohane" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Tekkis käsitlematu viga" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Teenuse käivitumise järel ootamine" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Ootamine" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Nõutud andmekandja järel ootamine" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Teiste tarkvarahaldurite lõpetamise järel ootamine" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Seadistusfaili kohta käiva küsimuse järel ootamine" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Käesolev toiming" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Allalaadimine" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Tarkvaraallikate pärimine" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Puhastamine" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Lõpetatud" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Tühistamine" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Tarkvaraloendi laadimine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s paigaldamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s seadistamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s eemaldamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s täielik eemaldamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s kadumise märgitsemine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "%s järelpaigalduse sooritamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s uuendamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s lahtipakkimine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Ettevalmistused %s paigaldamiseks" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s seadistuse ettevalmistamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s eemaldamise ettevalmistamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s täieliku eemalduse ettevalmistamine" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s on paigaldatud" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s on täielikult eemaldatud" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s on eemaldatud" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Valmis" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentimine nurjus" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Allalaadimine" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Jõude" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Võrk pole saadaval" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s protsessimine" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Allalaaditud %sB %sB-st kiirusel %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Allalaaditud %sB %sB-st" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Üksikasjad" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fail" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Allalaaditud %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Allalaaditud" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Vajalik on CD/DVD plaat '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Palun sisesta CD/DVD plaadilugejasse '%s', et paigaldada tarkvara paketid." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Jätka" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Paigalda" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Paigalda uuesti" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Eemalda" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Eemalda täielikult" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Uuenda" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Madalda" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Jäta uuendamine vahele" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Palun vaata all olevat muudatuste loendit." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Täiendav tarkvara tuleb paigaldada" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Täiendav tarkvara tuleb uuesti paigaldada" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Täiendav tarkvara tuleb eemaldada" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Täiendav tarkvara tuleb täielikult eemaldada" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Täiendav tarkvara tuleb uuendada" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Täiendav tarkvara tuleb asendada vanemaga" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Uuendused jäetakse vahele" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Vajalikud on lisamuudatused" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Kokku tuleb allalaadida %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB kettaruumi vabaneb." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB lisakettaruumi võetakse kasutatakse." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Kas asendada muudatustega fail '%s' hilisema seadistusfaili versiooniga?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Kui sa ei tea, miks see fail juba seal on, on selle asendamine tavaliselt " "turvaline." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Muudatused" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Jäta alles" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Asenda" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Üksikasjad" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Ootan %s sulgemist" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Laaditakse alla %(files)s" msgstr[1] "Laaditakse alla %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "kohalik varamu" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Allalaadimine asukohast %s" msgstr[1] "Allalaadimine asukohtadest %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s struktuur" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s kirjeldus" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakett %s ei ole kättesaadav" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakett %s ei ole paigaldatud" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versioon %s %s pole paigaldatud" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakett %s on juba paigaldatud" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versioon %s %s pole saadaval" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Võtme %s asukohast %s allalaadimine ja paigaldamine nurjus:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Võtmefaili %s polnud võimalik paigaldada: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Võti koos sõrmejäljega %s ei saadud eemaldada: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakett %s ei ole eemaldatav." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versioon %s %s pole paigaldatud" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Endine versioon %s %s on juba paigaldatud" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versioon %s %s on juba paigaldatud" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versioon %s %s pole saadaval" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Sa pead täpsustama versiooni, milleni %s madaldada" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Hiljutine versioon %s %s on juba paigaldatud" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakett %s pole %s väljalaskes saadaval" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakett %s ei ole eemaldatav" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Pakett ei paku kehtivat juhtvälja paigaldussuurust. Vaata Debiani poliitikat " "5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Litsentsivõti on tühi" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Litsentsivõti ei tohi sisaldada käivitatavat koodi" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Litsentsivõtme asukoht %s on vigane" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Litsentsivõti on juba olemas: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Järgmistel pakettidel on lahendamata sõltuvused:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "aga see on virtuaalne pakett" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "aga see pole paigaldatud" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "aga seda ei paigaldata" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "aga %s on paigaldatud" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "aga %s paigaldatakse" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Võtme lisamine usaldusväärsete tarkvaratootjate loetelusse nurjus" aptdaemon-1.1.1+bzr982/po/eu.po0000644000000000000000000012744712375372771014270 0ustar 00000000000000# Basque translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-26 20:21+0000\n" "Last-Translator: Ibai Oihanguren \n" "Language-Team: Basque \n" "Language: eu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Konfidantzazko saltzaileak" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Konfidantzazko gakoen zerrenda ikusteko autentikatu egin behar duzu" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Kendu deskargatutako pakete-fitxategiak" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Deskargatutako pakete-fitxategiak garbitzeko, autentikatu beharra duzu" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Aldatu software-konfigurazioa" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Software-ezarpenak aldatzeko, autentifikatu behar duzu" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Aldatu softwarearen errepositorioa" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Software errepositorioaren ezarpenak aldatzeko autentikatu egin behar zara" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Pakete-fitxategia instalatu" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Pakete hau instalatzeko zure burua identifikatu behar duzu" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Pakete-informazioa eguneratu" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Software katalogoa eguneratzeko autentikatu egin behar zara" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Paketeak gehitu edo kendu" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Softwarea instalatu edo kentzeko, zure burua identifikatu behar duzu" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instalatu softwarea zerrenda zuriko errepositorio erabat fidagarritik." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Softwarea instalatzeko autentifikatu beharra daukazu." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Gehitu errepositorio berria eta instalatu paketeak bertatik" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Iturri berri bateko softwarea instalatzeko, zure burua identifikatu behar " "duzu" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Erositako softwarearentzako errepositorio berria gehitu eta instalatu " "paketeak bertatik" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Erositako softwarea instalatzeko autentikatu egin behar zara" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Paketeak bertsio-berritu" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Eguneratutako softwarea instalatzeko zure burua identifikatu behar duzu" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Beste erabiltzaile baten ataza ezeztatu" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Beste norbaiten softwarea aldaketak ezeztatzeko autentikatu egin behar zara" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Softwarea deskargatzeko proxy bat ezarri." #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Softwarea deskargatzeko proxy zerbitzari bat erabiltzeko autentikatu egin " "behar duzu" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROREA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB / %sB deskargatuta (%sB/s)" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB / %sB deskargatuta" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROREA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Ez duzu ekintza hau egiteko baimenik" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Ilararatzen" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Menpekotasunak ebazten" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Hurrengo pakete BERRIA instalatuko da (%(count)s):" msgstr[1] "Hurrengo pakete BERRIAK instalatuko dira (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Hurrengo pakete BERRIA berrituko da (%(count)s):" msgstr[1] "Hurrengo pakete BERRIAK berrituko dira (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Hurrengo paketea EZABATUKO da (%(count)s):" msgstr[1] "Hurrengo paketeak EZABATUKO dira (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Ondorengo paketearen BERTSIO ZAHARRAGOA instalatuko da (%(count)s):" msgstr[1] "Ondorengo paketeen BERTSIO ZAHARRAGOA instalatuko da (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Hurrengo paketea berriz instalatuko da (%(count)s):" msgstr[1] "Hurrengo paketeak berriz instalatuko dira (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Ondorengo paketearen bertsioa mantendu da (%(count)s):" msgstr[1] "Ondorengo paketeen bertsioa mantendu da (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB fitxategi lortu behar dira." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Eragiketa honen ostean, diskoko %sB gehiago erabiliko dira." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Eragiketa honen ostean, diskoko %sB libratuko dira." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Jaraitzea nahi duzu [B/e]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Pakete bat baino gehiagoren gaineko eragiketak egiteko, erabiliko komatxo " "bikoitzak:\n" "aptdcon --install \"urlia sandia\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Katxea eguneratu" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Saiatu hautsitako menpekotasunak konpontzen. Eragiketa arriskutsua izan " "daiteke hainbat pakete ezabatu ditzakeelako." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Saiatu aurretik amaitu gabeko instalazioa bukatzen" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Esandako paketeak instalatu" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Esandako paketeak berriz instalatu" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Esandako paketeak ezabatu" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Esandako paketeak eta konfigurazio fitxategiak ezabatu" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Instalatu pakete hauen bertsio zaharragoa" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Baztertuta: erabili mesedez --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Sistema era seguruan eguneratu" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Sistema eguneratu, seguraski paketeak instalatu eta ezabatuz" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Saltzailea konfidantzazkoen zerrendara gehitu" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Saltzailearen gakoa gehitu (--keyserver ere behar du)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Esandako zerbitzaria erabili gakoak bilatzeko" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Errepositorio berria gehitu esandako deb lerroa erabilita" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Errepositorioen zerrenda gehitzeko beste sources.list.d fitxategi bat " "erabili." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Zerrendatu konfidantzazko saltzaileen giltzak" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Birkonfiguratu instalatutako paketeak. Galderen gutxieneko lehentasuna " "zehazteko aukera dago" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Erakutsiko den galderaren gutxieneko debconf lehentasuna" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ez erantsi apt terminalera" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Onartu autentifikatu gabeko jatorrietako paketeak" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Paketeei buruzko informazio gehiago erakutsi. Oraingoz bertsio-zenbakia " "bakarrik" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Autentikazioaren zai" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ez itzali daemon-a inaktibitateagatik" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ez kargatu pluginik" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Barneko prozesu-informazioa erakutsi" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Jadanik martxan dagoen daemon bat itxi eta ordezkatu" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBus saioko bus-ean entzun (Probak egiteko bakarrik beharrezkoa" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Profilaren estatistikak zehaztutako fitxategian gorde" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ez egin aldaketarik sistemari (garatzaileek erabiltzeko soilik)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Instalatu den fitxategia" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paketeak instalatuta" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Fitxategiko gakoa gehituta" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache-a eguneratuta" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Bilaketa eginda" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Gako fidagarria kenduta" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paketeak ezabatuta" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paketeak eguneratuta" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema bertsio-berrituta" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Aldaketak aplikatuta" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Osatu gabeko instalazioa konponduta" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Hautsitako menpekotasunak konponduta" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Software-jatorria gehitu da" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Deskargatutako pakete-fitxategiak ezabatu dira" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Instalatutako paketeak berkonfiguratu dira" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Arrakasta" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Ezeztatuta" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Huts egin du" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Fitxategia instalatzen" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Paketeak instalatzen" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Fitxategiko gakoa gehitzen" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Cache-a eguneratzen" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Gako fidagarria kentzen" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Paketeak ezabatzen" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Paketeak eguneratzen" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Sistema bertsio-berritzen" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aldaketak aplikatzen" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Osatu gabeko instalazioa konpontzen" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Instalatutako softwarea konpontzen" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Software-jatorria gehitzen" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Banaketaren osagaia gaitzen" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Deskargatutako pakete-fitxategiak ezabatzen" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Instalatutako paketeak berkonfiguratzen" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Bilatzen" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Pakete-fitxategiaren instalazioak huts egin du" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Softwarearen instalazioak huts egin du" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Software-zerrenda berritzeak huts egin du" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Software-hornitzaile fidagarrien zerrendatik hornitzailea kentzeak huts egin " "du" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Softwarea ezabatzeak huts egin du" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Softwarea eguneratzeak huts egin du" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Sistema bertsio-berritzeak huts egin du" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Software-aldaketak aplikatzeak huts egin du" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Osatu gabeko instalazioa konpontzean huts egin du" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Hautsitako menpekotasunak instalatzeak huts egin du" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Huts egin du software-jatorria gehitzeak" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Banaketaren osagaia gaitzeak huts egin du" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Huts egin du deskargatutako pakete-fitxategiak ezabatzeak" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Bilaketak huts egin du" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Lizentzia-gakoa gehitzen" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Egiaztatu zure Interneterako konexioa." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Egiaztatu hirugarrengoen errepositorioak darabiltzazun. Hala bada, ezgaitu " "itzazu, arazoak ekarri ohi dituzte eta.\n" "Honez gain, exekutatu agindu hau terminal batean: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Hautatutako fitxategia ez da GPG gako-fitxategia edo apurtuta dago." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Egiaztatu beste software-kudeaketa tresnarik irekita daukazun, adibidez " "Synaptic edo aptitude. Aldaketak egiteko aldi berean tresna bakar bat " "onartzen da." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Arazo larria da hau. Saiatu berriro geroxeago. Arazo hau berriro agertzen " "bada, mesedez eman errorearen berri garatzaileei." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Egiaztatu pakete-izena ondo idatzi duzula, eta errepositorio egokia gaituta " "dagoela." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Ez dago eguneratzeko beharrik." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Ez dago instalatzeko beharrik" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Ez dago ezabatzeko beharrik." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Zure sistemarentzat funtsezkoa den pakete bat ezabatzeko eskatu duzu." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Daemon-arekiko konexioa galdu da. Ziurrenik, atzealdeko daemon-a kraskatu da." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Huts egin du software-pakete bat instalatu edo ezabatzeak." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Eskatutako ezaugarria ez da sostengatzen." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Litekeena da instalazioak huts egin izana dagokion software-paketearen " "errore baten ondorioz edo instalazioa behar ez bezala eten delako. Software " "gehiago instalatu edo ezabatzeko aurrena arazo hau konpondu behar duzu." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Kopiatu fitxategia ordenagailu lokalera eta egiaztatu fitxategiaren baimenak." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Kalitate maila estandarra betetzen ez duen pakete baten instalazioa ez dago " "baimendurik. Honek arazo larriak sor litzake ordenagailuan. Jarri " "harremanetan pakete-fitxategi hau eman dizun pertsona edo erakundearekin eta " "jakinarazi iezazkiozu jarraian datozen xehetasunak." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Deskargatutako lizentzia-gakoa, software hau exekutatzeko beharrezkoa, ez da " "baliozkoa edo ezin izan da behar bezala\n" "instalatu. Ikusi xehetasunak informazio gehiagorako." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Eskuragarri zeuden bertsio-berritze guztiak insalatu dira dagoeneko." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Software hau erabiltzea ahalbidetzen dizun lizentzia-gakoa ezin izan da " "deskargatu. Egiaztatu zure sare-konexioa." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Ez duzu ekintza hau egiteko baimenik" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Ezin izan dira pakete-fitxategiak deskargatu" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Ezin izan da errepositorio-informazioa deskargatu" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Ezin dira paketeen menpekotasunak ebatzi" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakete-sistema apurtuta dago" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ez da gakoa instalatu" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ez da gakoa kendu" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Ezin izan da pakete-kudeatzailea blokeatu" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Ezin izan da pakete-zerrenda kargatu" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paketea ez da existitzen" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paketea dagoeneko eguneratuta dago" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Jadanik instalatuta dago paketea" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paketa ez dago instalatuta" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Ezin izan da sistemarentzako funtsezkoa den paketea ezabatu" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Ezin da ataza monitorizatu edo kontrolatu" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Huts egin du pakete-ekintzak" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Pakete ez fidagarrien instalazioa behar du" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Ez da aurreko instalazioa osatu" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paketea kalitate txarrekoa da" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pakete-fitxategia ezin izan da ireki" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Jasan gabeko ezaugarria" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Huts egin du lizentzia-gakoa deskargatzeak" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Huts egin du lizentzia-gakoa instalatzeak" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistema dagoeneko eguneratuta dago" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Errore manieazina gertatu da" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Zerbitzua hasi arte itxaroten" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Zain" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Beharrezko euskarriari itxaroten" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Beste software-kudeatzaileak itxi arte itxaroten" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Konfigurazio-fitxategi elkarrizketari itxaroten" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Ataza exekutatzen" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Deskargatzen" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Software-jatorriak kontsultatzen" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Garbitzen" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Burututa" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Ezeztatzen" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Software-zerrenda kargatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s instalatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s konfiguratzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s ezabatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s guztiz ezabatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s paketea desagertu dela antzeman da" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Instalazio-ondorengo %s abiarazlea exekutatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s bertsio-berritzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s paketetik ateratzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s instalatzeko prestatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s konfiguratzeko prestatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s ezabatzeko prestatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s guztiz ezabatzeko prestatzen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instalatu da" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s guztiz ezabatu da" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s ezabatu da" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Egina" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentifikazioak huts egin du" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Eskuratzen" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inaktibo" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Sarea ez dago eskuragarri" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s prozesatzen" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB / %sB deskargatuta (%sB/s)" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB / %sB deskargatuta" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Xehetasunak" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fitxategia" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB deskargatuta" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Deskargatuta" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "'%s' CD/DVDa behar da" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Sartu goiko CD/DVDa '%s' unitatean eta instalatu software-paketeak bertatik." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Jarraitu" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalatu" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Berrinstalatu" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Ezabatu" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Araztu" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Bertsio-berritu" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Itzuli aurreko bertsiora" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Saltatu bertsio-berritzea" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Ikusi aldaketen zerrenda azpian." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Software gehigarria instalatu beharra dago" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Software gehigarria berrinstalatu beharra dago" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Software gehigarria ezabatu beharra dago" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Software gehigarria araztu beharra dago" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Software gehigarria bertsio-berritu beharra dago" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Software gehigarria aurreko bertsiora itzuli beharra dago" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Eguneraketak saltatuko dira" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Aldaketa gehigarriak egin behar dira" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB deskargatuko dira guztira." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB libratuko dira diskoan." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Diskoko %sB gehiago erabiliko dira." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Zure '%s' fitxategiko aldaketak ordezkatu konfigurazio-fitxategiaren bertsio " "berriago batekin?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ez badakizu zergatik existitzen den fitxategi hori dagoeneko, normalean " "ordezkatzea segurua da." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Aldaketak" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Mantendu" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Ordezkatu" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Xehetasunak" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "%s itxi arte itxaroten" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Paketea deskargatzen: %(files)s" msgstr[1] "Paketeak deskargatzen: %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "errepositorio lokala" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Hemendik deskargatzen: %s" msgstr[1] "Hemendik deskargatzen: %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s(r)en egitura" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s(r)en deskribapena" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s(r)en sinadura-deskribapena" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s(e)ko pakete eskuragarriak" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s(e)ko jatorri eskuragarriak" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s(e)ko itzulpen eskuragarriak" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) hizkuntzarako itzulpenak, hemendik: %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s hizkuntzarako itzulpenak, hemendik: %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Itzulpenak (%s), hemendik: %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "%s paketea ez dago eskuragarri" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "%s paketea ez dago instalatuta" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s / %s bertsioa ez dago instalatuta" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s paketea dagoeneko instalatuta dago" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s / %s bertsioa ez dago eskuragarri." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Gako-zerbitzariaren URLa baliogabea da: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Huts egin du %s gakoa deskargatu eta instalatzeak (hemendik: %s):\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "%s gako-fitxategia ezin izan da instalatu: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "%s paketea ezin da ezabatu." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "%s / %s bertsioa ez dago instalatuta" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "%s / %s bertsio zaharragoa dagoeneko instalatuta dago" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "%s / %s bertsioa dagoeneko instalatuta dago" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s / %s bertsioa ez dago eskuragarri" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s paketea ez dago eskuragarri %s bertsiorako." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "%s paketea ezin da ezabatu" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Ondorengo paketeek bete gabeko menpekotasunak dituzte:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "baina pakete birtuala da" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Gakoa software-hornitzaile fidagarrien zerrendara gehitzeak huts egin du" aptdaemon-1.1.1+bzr982/po/fa.po0000644000000000000000000010141012375372771014223 0ustar 00000000000000# Persian translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2010-05-29 11:01+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Persian \n" "Language: fa\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/fi.po0000644000000000000000000013271412375372771014246 0ustar 00000000000000# Finnish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-08 14:13+0000\n" "Last-Translator: Heikki Mattila \n" "Language-Team: Finnish \n" "Language: fi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Luettele luotettujen toimittajien avaimet" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Luotettujen avaimien luettelon näyttö vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Poista ladatut pakettitiedostot" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Sinun tulee tunnistautua siivotaksesi noudetut pakettitiedostot" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Muuta ohjelmistoasetuksia" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Sinun tulee tunnistautua muuttaaksesi ohjelmistoasetuksia" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Vaihda ohjelmalähde" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Ohjelmalähteiden asetuksien muuttaminen vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Asenna pakettitiedosto" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Paketin asennus vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Päivitä pakettitiedot" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Ohjelmistoluettelon päivitys vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Asenna tai poista paketteja" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Ohjelmistojen asennus tai poisto vaatii tunnistautumisen." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Asenna ohjelmistoja vahvasti luotetuista erikseen sallituista " "ohjelmalähteistä." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Ohjelmistojen asennus vaatii tunnistautumisen." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Lisää uusi ohjelmalähde ja asenna sieltä paketteja" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Ohjelmistojen asennus uudesta lähteestä vaatii tunnistautumisen." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Lisää uusi maksullisten sovellusten ohjelmalähde ja asenna sieltä paketteja" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Maksullisten ohjelmistojen asennus vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Päivitä paketit" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Päivitettyjen ohjelmistojen asennus vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Peru toisen käyttäjän tehtävä" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Toisen tekemien ohjelmistomuutosten keskeyttäminen vaatii tunnistautumisen." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Aseta välityspalvelin ohjelmistojen noutamista varten" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Välityspalvelimen käyttö ohjelmistojen lataamiseksi vaatii tunnistautumisen." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "VIRHE" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Ladattu %sB / %sB (%sB/s)" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Noudettu %sB / %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "VIRHE:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Sinulla ei ole oikeutta suorittaa tätä toimintoa." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Asetetaan jonoon" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Ratkaistaan riippuvuuksia" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Seuraava UUSI paketti asennetaan (%(count)s):" msgstr[1] "Seuraavat UUDET paketit asennetaan (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Seuraava paketti päivitetään (%(count)s):" msgstr[1] "Seuraavat paketit päivitetään (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Seuraava paketti POISTETAAN (%(count)s):" msgstr[1] "Seuraavat paketit POISTETAAN (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Seuraava paketti VANHENNETAAN (%(count)s):" msgstr[1] "Seuraavat paketit VANHENNETAAN (%(count)s):(%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Seuraava paketti asennetaan uudelleen (%(count)s):" msgstr[1] "Seuraavat paketit asennetaan uudelleen (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Seuraava paketti jätetään päivittämättä (%(count)s):" msgstr[1] "Seuraavat paketit jätetään päivittämättä (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Noudetaan %sB." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Tämän toiminnon jälkeen %sB lisää levytilaa tullaan käyttämään." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Tämän toiminnon jälkeen %sB lisää levytilaa tulee vapautumaan." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Haluatko jatkaa [Y/n]" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Laita pakettien nimet lainausmerkkien sisälle suorittaaksesi toimenpiteitä " "useammalle kuin yhdelle paketille:\n" "aptdcon --install \"paketti1 paketti2\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Päivitä välimuisti" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Yritä selvittää rikkoutuneet riippuvaisuudet. Tämä on mahdollisesti " "vaarallinen toimenpide, sillä se saattaa yrittää poistaa useita paketteja." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Yritä suorittaa loppuun aiempi kesken jäänyt asennus" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Asenna annetut paketit" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Asenna annetut paketit uudelleen" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Poista annetut paketit" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Poista annetut paketit, mukaan lukien asetustiedostot" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Varhenna paketit" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Vanhentunut: käytä valintaa --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Päivitä järjestelmä turvallisella tavalla" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Päivitä järjestelmä mahdollisesti samalla asentaen tai poistaen paketteja" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Lisää toimittaja luotettuihin" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Lisää toimittajan avaintunniste (tarvitsee myös valitsimen --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Käytä annettua avainpalvelinta avaimien hakuun" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Lisää uusi lähde annetulla deb-riviltä" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Määritä vaihtoehtoinen sources.list.d-tiedosto, johon lähteet lisätään." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Luettele luotetut toimittaja-avaimet" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Poista annetun sormenjäljen mukainen luotettu avain" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Tee asennettujen pakettien asetukset uudelleen. Kysyttävien kysymysten " "pienin tärkeysluokitus voidaan asettaa erikseen." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Pienin tärkeysaste näytettäville kysymyksille." #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Älä kiinnitä apt-päätteeseen" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Salli paketit varmentamattomista lähteistä" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Näytä lisätietoja paketeista (tällä hetkellä vain versionumero)." #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Odotetaan tunnistautumista" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Älä sammuta taustaprosessia inaktiivisuuden takia" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Älä lataa mitään liitännäisiä" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Näytä sisäiset käsittelytiedot" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Lopeta ja korvaa jo käynnissä oleva taustaprosessi" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Kuuntele DBus-istuntoväylää (Vaadittu ainoastaan testausta varten" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Suorita toimenpiteet määritetyssä chroot-ympäristössä" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Tallenna profiilin tiedot tiedostoon" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Älä tee järjestelmään mitään muutoksia (hyödyllinen vain kehittäjille)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Asennettiin tiedosto" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Asennetut paketit" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Avain lisätty tiedostosta" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Välimuisti päivitetty" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Haku valmis" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Poistettiin luotettu avain" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Poistetut paketit" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Päivitetyt paketit" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Järjestelmä päivitetty" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Muutokset toteutettu" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Korjattiin keskeneräinen asennus" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Korjattiin rikkinäiset riippuvuudet" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Ohjelmalähde lisätty" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Otettiin jakelukomponentti käyttöön" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Poistettiin ladatut pakettitiedostot" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Asennettujen pakettien asetukset tehty uudelleen" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Onnistui" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Peruttiin" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Epäonnistui" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Asennetaan tiedostoa" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Asennetaan paketteja" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Lisätään avainta tiedostosta" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Päivitetään välimuistia" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Poistetaan luotettua avainta" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Poistetaan paketteja" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Päivitetään paketteja" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Päivitetään järjestelmää" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Toteutetaan muutoksia" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Korjataan keskeneräistä asennusta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Korjataan asennettua ohjelmistoa" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Lisätään ohjelmalähdettä" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Otetaan käyttöön jakelukomponenttia" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Poistetaan ladattuja pakettitiedostoja" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Tehdään asennettujen pakettien asetuksia uudelleen" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Haku käynnissä" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Pakettitiedoston asennus epäonnistui" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Ohjelmiston asennus epäonnistui" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Avaimen lisäys luotettujen sovellusten toimittajien listaan epäonnistui" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Ohjelmistoluettelon päivitys epäonnistui" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Avaimen poistaminen luotettavien ohjelmistotoimittajien luettelosta ei " "onnistunut" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Ohjelmiston poisto epäonnistui" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Ohjelmiston päivitys epäonnistui" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Järjestelmän päivitys epäonnistui" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Ohjelmistomuutosten toteutus epäonnistui" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Keskeneräisen asennuksen korjaus epäonnistui" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Rikkinäisten riippuvuuksien korjaus epäonnistui" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Ohjelmalähteen lisääminen epäonnistui" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Jakelukomponentin kytkeminen käyttöön epäonnistui" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Ladattujen pakettitiedostojen poisto epäonnistui" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Haku epäonnistui" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Lisätään lisenssiavain" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Tarkista Internet-yhteys." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Tarkista, onko käytössäsi kolmannen osapuolen ohjelmalähteitä. Jos on, ota " "ne pois käytöstä, sillä ne ovat yleensä syynä ongelmiin. Tämän jälkeen aja " "Päätteessä komento apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Valittu tiedosto ei ole kelvollinen GPG-avaintiedosto, tai se on " "vahingoittunut." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Valittua avainta ei voi poistaa. Tarkista että annoit oikean sormenjäljen." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Tarkista, ettet käytä samalla toista sovellusta pakettienhallintaan (esim. " "Synaptic tai aptitude). Useampi kuin yksi sovellus ei voi tehdä muutoksia " "samanaikaisesti." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Tämä on vakava ongelma, yritä myöhemmin uudestaan. Jos ongelma toistuu, " "raportoi siitä kehittäjille." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Tarkista paketin nimen oikeinkirjoitus ja että sopiva ohjelmalähde on " "käytettävissä." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Päivitykselle ei ole tarvetta." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Asennukselle ei ole tarvetta." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Poistamiselle ei ole tarvetta." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Valitsit poistettavaksi paketin, joka on olennainen osa järjestelmää." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Yhteys taustapalveluun kadotettiin, se todennäköisesti kaatui." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Ohjelmapaketin asentaminen tai poistaminen epäonnistui." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Haluttua ominaisuutta ei tueta" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Aptdaemonissa, joka on ohjelmien asentamiseen, poistamiseen ja muuhun " "hallintaan tarkoitettu ohjelma, vaikuttaa olevan ohjelmointivirhe." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Tämä virhe saattaa johtua tarvittavien ohjelmistopakettien puuttumisesta tai " "asennuskelvottomuudesta. Myöskään keskenään ristiriidassa olevia paketteja " "ei voida asentaa samaan aikaan." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Tämä vaatii pakettien asentamista varmentamattomista ohjelmistolähteistä." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Asennus on saattanut epäonnistua ohjelmapaketissa olevan virheen tai " "pakotetun keskeyttämisen takia. Ongelma täytyy korjata, ennen kuin voit " "asentaa tai poistaa lisää sovelluksia." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Kopioi tiedosto koneellesi ja tarkista tiedoston oikeudet." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Laatuvaatimuksia rikkovien pakettien asentaminen ei ole sallittua. Se voi " "aiheuttaa vakavia ongelmia tietokoneellesi. Ole hyvä ja ota yhteyttä paketin " "tarjonneeseen henkilöön tai organisaatioon ja liitä raporttisi mukaan alla " "olevat yksityiskohdat." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Tämän ohjelman käynnistämiseen vaadittava lisenssiavain ei ole oikea tai ei " "ole asentunut oikein.\n" "Lue lisätiedot." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Kaikki saatavilla olevat päivitykset on asennettu." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Tämän ohjelman ajamiseen vaadittavaa lisenssiavainta ei voitu ladata. Ole " "hyvä ja tarkista verkkoyhteytesi." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "" "Sinulla ei ole tarvittavia oikeuksia suorittaaksesi tämän toimenpiteen." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Joko annoit väärän salasanan tai peruit tunnistautumisen.\n" "Tämän lisäksi tähän virheeseen saattaa liittyä tekninen syy jos et ole " "nähnyt salasanakyselyä: työpöytäympäristösi ei tuota PolicyKit-" "istuntoagenttia" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Pakettitiedostojen noutaminen epäonnistui" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Pakettitietojen noutaminen epäonnistui" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakettien riippuvuuksia ei voi selvittää" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakettijärjestelmä on rikkinäinen" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Avainta ei asennettu" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Avainta ei poistettu" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Paketinhallinnan lukitus epäonnistui" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Pakettiluettelon lataaminen epäonnistui" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakettia ei ole olemassa" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paketti on jo ajan tasalla" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paketti on jo asennettu" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakettia ei ole asennettu" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Järjestelmälle oleellisen paketin poisto epäonnistui" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tehtävää ei voi valvoa tai hallita" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakettitoiminto epäonnistui" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Vaatii luottamattomien pakettien asentamista" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Aiempi asennus on jäänyt keskeneräiseksi" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paketti on heikkolaatuinen" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pakettitiedostoa ei voi avata" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Ominaisuutta ei tueta" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Lisenssiavaimen lataaminen epäonnistui" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Lisenssiavaimen asentaminen epäonnistui" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Järjestelmä on ajan tasalla" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Sinua ei voitu valtuuttaa" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Sinulla ei ole lupaa suorittaa tätä toimintoa" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Tapahtui virhe, jota ei voitu käsitellä" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Odotetaan palvelun käynnistymistä" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Odotetaan" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Odotetaan vaadittua mediaa" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Odotetaan muiden pakettienhallintasovellusten sulkemista" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Odota asetustiedostokyselyä" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Suoritetaan tehtävää" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Noudetaan" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Tutkitaan ohjelmalähteitä" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Siistitään" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Valmis" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Perutaan" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Ladataan ohjelmaluetteloa" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Asennetaan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Tehdään asetuksia: %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Poistetaan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Poistetaan kokonaan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Huomataan paketin %s katoaminen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Suoritetaan jälkiasennusliipaisinta %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Päivitetään %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Puretaan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Valmistellaan paketin %s asennusta" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Valmistellaan paketin %s asetuksia" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Valmistellaan paketin %s poistoa" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Valmistellaan paketin %s täydellistä poistoa" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s asennettu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s poistettiin kokonaan" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s poistettu" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Valmis" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Todennus epäonnistui" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Noudetaan" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Jouten" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Verkkoa ei saatavilla" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Käsitellään %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Ladattu %sB / %sB (%sB/s)" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Noudettu %sB / %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Yksityiskohdat" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Tiedosto" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Noudettu %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Noudettu" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD ”%s” vaaditaan" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Asenna yllä mainittu CD/DVD asemaan ”%s” asentaaksesi ohjelmistopaketteja " "levyltä." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "J_atka" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Asenna" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Asenna uudelleen" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Poista" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Poista asetuksineen" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Päivitä" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Vanhenna" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Ohita päivitys" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Tarkista alla olevat muutokset." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Ylimääräisiä ohjelmistoja tulee asentaa" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Ylimääräisiä ohjelmistoja tulee asentaa uudelleen" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Ylimääräisiä ohjelmistoja tulee poistaa" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Ylimääräisiä ohjelmistoja tulee poistaa asetuksineen" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Ylimääräisiä ohjelmistoja tulee päivittää" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Ylimääräisiä ohjelmistoja tulee vanhentaa" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Päivitykset ohitetaan" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Ylimääräisiä muutoksia vaaditaan" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB noudetaan yhteensä" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB levytilaa vapautuu" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB lisää levytilaa käytetään." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Korvataanko tiedostossa ”%s” olevat muutokset uudemmalla asetustiedoston " "versiolla?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Jos et tiedä miksi tiedosto on jo olemassa, on yleensä turvallista korvata " "se." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Muutokset" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Säilytä" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Ko_rvaa" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Yksityiskohdat" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Odotetaan, että %s sulkeutuu" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Noudetaan %(files)s" msgstr[1] "Noudetaan %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "paikallinen ohjelmalähde" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Noudetaan lähteestä %s" msgstr[1] "Noudetaan lähteistä %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Lähteen %s rakenne" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Lähteen %s kuvaus" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Lähteen %s kuvauksen allekirjoitus" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Lähteestä %s saatavilla olevat paketit" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Lähteestä %s saatavilla olevat lähdekoodit" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Lähteestä %s saatavilla olevat käännökset" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Käännökset kielelle %s (%s) lähteestä %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Käännökset kielelle %s lähteestä %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Käännökset (kielelle %s) ohjelmistolähteestä %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paketti %s ei ole saatavilla" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakettia %s ei ole asennettu" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versiota %s paketista %s ei ole asennettu" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paketti %s on jo asennettu" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versiota %s (paketti %s) ei ole saatavilla." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Avainpalvelimen URL-osoite ei ole kelvollinen: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Palvelimen yhteyskäytäntö ei ole kelvollinen: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Virheellinen avaimen tunniste: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Avaimen %s lataaminen ja asentaminen sijainnista %s ei onnistunut:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Avainta %s ei voitu asentaa: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Avainta, jonka sormenjälkitunniste on %s, ei voitu poistaa: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakettia %s ei voi poistaa." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versiota %s paketista %s ei ole asennettu" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "%s:n aiempi versio %s on jo asennettu" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "%s:n versio %s on jo asennettu" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versio %s paketista %s ei ole saatavilla" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Valitse, mihin versioon %s:n versio pudotetaan" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "%s:n uudempi versio %s on jo asennettuna" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paketti %s ei ole tarjolla julkaisussa %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakettia %s ei voi poistaa" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paketti ei sisällä kelvollista Installed-Size-kenttää. Lisätietoja: Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Lisenssiavain on tyhjä" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Lisenssiavain ei saa sisältää ajettavaa koodia" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Lisenssiavaimen polku %s on virheellinen" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Lisenssiavain on jo olemassa: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Lisenssiavaimen sijainti ei ole turvallinen, sillä se sisältää symbolisia " "linkkejä. Polku %s johtaa kohteeseen %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Kansiota, johon avain asennetaan, ei ole vielä olemassa: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Avaintiedoston kirjoittaminen epäonnistui: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Seuraavien pakettien riippuvuuksia ei ole toteutettu:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mutta se on virtuaalinen paketti" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mutta sitä ei ole asennettu" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mutta sitä ei olla asentamassa" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mutta %s on asennettu" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mutta %s tullaan asentamaan" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Avaimen lisääminen luotettavien ohjelmistotoimittajien luetteloon ei " #~ "onnistunut" aptdaemon-1.1.1+bzr982/po/fil.po0000644000000000000000000010255112375372771014416 0ustar 00000000000000# Filipino translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-05-02 07:53+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Filipino \n" "Language: fil\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Ilista ang mga pinagkakatiwalaang vendor" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Upang matingnan ang listahan ng mga pinagkakatiwalaang keys, kailangan mo " "itong patotohanan." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Alisin ang mga di-nownload na mga package file." #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Upang linisin ang mga di-nownload na package file, kailangan mo itong " "patotohanan." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Baguhin ang software configuration" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Upang baguhin ang mga settiing ng software, kailangan mo itong patotohanan." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Baguhin ang software repository" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Upang baguhin ang mga setting ng repositoryo ng software, kailangan mo itong " "patotohanan" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "I-install ang package file" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Upang i-install ang paketeng ito, kailangan mo itong patotohanan." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/fo.po0000644000000000000000000010166612375372771014256 0ustar 00000000000000# Faroese translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-05-07 14:53+0000\n" "Last-Translator: Angutivik Casper Rúnur Tausen Hansen \n" "Language-Team: Faroese \n" "Language: fo\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Broyt ritbúnað samanseting" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "BREK" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Niðurtikið %sB av %sB" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Niðurtikið %sB av %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "BREK:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Vil tú halda áfram [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Niðurtikið %sB av %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/fr.po0000644000000000000000000013706312375372771014261 0ustar 00000000000000# French translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-16 21:09+0000\n" "Last-Translator: Pierre Slamich \n" "Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lister les clés des fournisseurs de confiance" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Pour afficher la liste des clés de confiance, vous devez vous authentifier." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Supprimer les paquets téléchargés" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Vous devez vous authentifier pour supprimer les paquets téléchargés." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Modifier la configuration du logiciel" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Vous devez vous authentifier pour modifier la configuration du logiciel." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Modifier le dépôt logiciel" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Pour modifier la configuration des dépôts logiciels, vous devez vous " "authentifier." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installer un paquet" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Vous devez vous authentifier pour installer ce paquet." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Mettre à jour les informations sur les paquets" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Vous devez vous authentifier pour mettre à jour la liste des logiciels " "disponibles." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installer ou supprimer des paquets" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Vous devez vous authentifier pour installer ou supprimer des logiciels." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Installer le logiciel à partir d'un dépot marqué comme très fiable." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Vous devez vous authentifier pour installer des logiciels." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Ajouter un nouveau dépôt et installer des paquets depuis celui-ci" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Vous devez vous authentifier pour installer le logiciel depuis une nouvelle " "source." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Ajouter un nouveau dépôt de logiciels à acheter et installer des paquets " "depuis celui-ci" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Vous devez vous authentifier pour installer le logiciel acheté." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Mettre à jour les paquets" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Vous devez vous authentifier pour mettre à jour des logiciels." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Annuler la tâche d'un autre utilisateur" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Vous devez vous authentifier pour annuler les modifications sur les " "logiciels d'un autre utilisateur." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Définir un serveur mandataire pour le téléchargement des logiciels" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Vous devez vous authentifier pour utiliser un serveur mandataire pour " "télécharger des logiciels." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERREUR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%s octets sur %s octets téléchargés à %s octets/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%s octets sur %s octets téléchargés" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERREUR :" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Vous n'êtes pas autorisé(e) à réaliser cette action." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Mise en file d'attente" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Résolution des dépendances" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Le NOUVEAU paquet suivant sera installé :" msgstr[1] "Les %(count)s) NOUVEAUX paquets suivants seront installés :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Le paquet suivant sera mis à jour :" msgstr[1] "Les %(count)s paquets suivants seront mis à jour :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Le paquet suivant sera SUPPRIMÉ :" msgstr[1] "Les %(count)s paquets suivants seront SUPPRIMÉS :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Le paquet suivant sera remplacé par une version ANTÉRIEURE :" msgstr[1] "" "Les %(count)s paquets suivants seront remplacés par une version ANTÉRIEURE :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Le paquet suivant sera réinstallé :" msgstr[1] "Les %(count)s paquets suivants seront réinstallés :" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Le paquet suivant a été conservé :" msgstr[1] "Les %(count)s paquets suivants ont été conservés :" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%s octets doivent être téléchargés." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Après cette opération, %s octets d'espace disque sera utilisé." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Après cette opération, %s octets d'espace disque sera libéré." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Voulez-vous continuer [O/n] ?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Pour traiter plusieurs paquets à la fois, placez leurs noms entre " "guillemets :\n" "aptdcon --install \"truc machin\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Rafraîchir le cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Tente de réparer les dépendances cassées. Cette opération est " "potentiellement dangereuse, car elle peut conduire à la suppression de " "nombreux paquets." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Tente d'achever une installation précédente incomplète" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installe les paquets spécifiés" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Réinstalle les paquets spécifiés" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Supprime les paquets spécifiés" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Supprime complétement les paquets spécifiés y compris les fichiers de " "configuration" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Revenir à la version précédente des paquets spécifiés" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Déconseillé : veuillez utiliser --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Met à jour le système de manière sûre" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Met à jour le système avec d'éventuels ajouts et suppressions de paquets" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Ajoute aux fournisseurs de confiance" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Ajoute la clé du fournisseur (nécessite aussi --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utilise le serveur de clés spécifié pour la recherche de clés" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Ajoute un nouveau dépôt à partir de la ligne deb spécifiée" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Spécifie un fichier sources.list.d alternatif auquel les dépôts doivent être " "ajoutés" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Liste les clés des fournisseurs de confiance" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Supprime la clé de confiance ayant l'empreinte spécifiée" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigure les paquets installés. Il est possible de régler la priorité des " "questions." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Priorité debconf minimale de la question à afficher" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ne pas attacher au terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Autorise les paquets provenant de sources non authentifiées" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Affiche des informations supplémentaires sur les paquets. Actuellement " "uniquement le numéro de version" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "En attente d'authentification" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ne pas quitter le démon s'il est inactif" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ne charger aucune extension" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Affiche les informations de traitement interne" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Quitte et relance un démon en cours d'exécution" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "En écoute sur le bus de session DBus (requis uniquement pour des tests" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Effectue les opérations dans l’environnement chroot spécifié" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Enregistre les statistiques du profil dans le fichier spécifié" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Ne faire aucune modification sur le système (utile uniquement pour les " "développeurs)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fichier installé" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquets installés" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Clé ajoutée depuis un fichier" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache mis à jour" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Recherche terminée" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Clé de confiance supprimée" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paquets supprimés" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paquets mis à jour" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Système mis à niveau" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Changements appliqués" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Installation incomplète réparée" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dépendances cassées réparées" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Source de logiciels ajoutée" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Composant de la distribution activé" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Paquets téléchargés supprimés" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Paquets installés reconfigurés" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Succès" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Annulé" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Échec" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installation du fichier" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installation des paquets" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Ajout de la clé depuis un fichier" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Mise à jour du cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Suppression de la clé de confiance" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Suppression des paquets" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Mise à jour des paquets" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Mise à niveau du système" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Application des changements" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Réparation d'une installation incomplète" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Réparation des logiciels installés" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Ajout d'une source de logiciels" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Activation d'un composant de la distribution" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Suppression des paquets téléchargés" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfiguration des paquets installés" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Recherche en cours" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "L'installation du paquet a échoué" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "L'installation du logiciel a échoué" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "L'ajout de la clé à la liste des éditeurs de logiciels de confiance a échoué." #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "L'actualisation de la liste des logiciels a échoué" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "La suppression du fournisseur de logiciels de la liste des fournisseurs de " "confiance a échoué" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "La suppression des logiciels a échoué" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "La mise à jour du logiciel a échoué" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "La mise à niveau du système a échoué" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "La modification des logiciels a échoué" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "La réparation d'une installation incomplète a échoué" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "La réparation des dépendances cassées a échoué" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "L'ajout de la source de logiciels a échoué" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "L'activation du composant de la distribution a échoué" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "La suppression des paquets téléchargés a échoué" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "La recherche a échoué" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Ajout de la clé de licence" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Vérifiez votre connexion à Internet" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Vérifiez si vous utilisez des dépôts de tierces parties. Si c'est le cas, " "désactivez-les car ils sont parfois source de problèmes.\n" "De plus, exécutez la commande suivante dans un terminal : sudo apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Le fichier sélectionné ne semble pas être une clé GPG ou alors il est " "corrompu." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Impossible de supprimer la clé sélectionnée. Vérifiez que l'empreinte " "spécifiée est valide." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Vérifiez si vous n'exécutez pas un autre gestionnaire de paquets, comme " "Synaptic ou Aptitude. Un seul outil à la fois est autorisé à apporter des " "changements." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ceci un problème sérieux. Veuillez réessayer plus tard. Si le problème " "persiste, signalez-le aux développeurs." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Vérifiez que le nom du paquet est écrit correctement et que le dépôt " "approprié est actif." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Aucune mise à jour n'est nécessaire." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Aucune installation n'est nécessaire" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Aucune suppression n'est nécessaire." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Vous avez demandé à supprimer un paquet essentiel au fonctionnement du " "système." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "La connexion au démon a été perdue. C'est probablement parce que le démon a " "quitté inopinément." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "L'installation ou la suppression d'un paquet logiciel a échoué." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La fonctionnalité demandée n'est pas prise en charge." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Il semble qu'il y ait une erreur logicielle dans aptdaemon, le programme qui " "vous permet d'installer et supprimer des logiciels et tout autre tâche liée " "à la gestion des paquets." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Cette erreur peut être provoquée par des paquets supplémentaires requis, " "mais absents ou non installables. En outre, il pourrait y avoir un conflit " "entre certains paquets qui ne peuvent pas être installés en même temps." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Cela nécessite l'installation de paquets depuis des sources non " "authentifiées." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "L'installation a pu échouer du fait d'une erreur dans le paquet ou parce " "qu'elle a été interrompue brutalement. Vous devez corriger ceci avant de " "pouvoir installer ou supprimer d'autres logiciels." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Veuillez copier le fichier sur votre ordinateur et en vérifier les " "permissions." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "L'installation d'un paquet qui ne respecte pas les standards de qualité " "n'est pas autorisée. Cela pourrait engendrer de graves problèmes sur votre " "ordinateur. Veuillez contacter la personne ou l'organisation qui a fourni ce " "paquet en incluant les renseignements ci-dessous." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clé de licence téléchargée qui est nécessaire pour lancer ce logiciel " "n'est pas valable ou n'a pas pu être installée correctement.\n" "Voir les détails pour plus d'informations." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Toutes les mises à jour disponibles ont déjà été installées." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "La clé de licence qui vous permet d'utiliser ce logiciel n'a pas pu être " "téléchargée. Veuillez vérifier votre connexion réseau." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "" "Vous n'avez pas obtenu les privilèges requis pour exécuter cette action." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Vous avez déjà rentré un mauvais mot de passe ou fermé l'instance " "d'autorisation.\n" "Il est également possible qu'il y ait une raison technique à cette erreur si " "vous n'avez pas vu de dialogue de demande de mot de passe : votre " "environnement de bureau ne fourni pas un agent de session PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Le téléchargement des paquets a échoué" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Le téléchargement des informations du dépôt a échoué" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Impossible de résoudre les dépendances du paquet" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Le système de paquets est cassé" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "La clé n'a pas été installée" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "La clé n'a pas été supprimée" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Impossible de verrouiller le gestionnaire de paquets" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Impossible de charger la liste des paquets" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Le paquet n'existe pas" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Le paquet est déjà à jour" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Le paquet est déjà installé" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Le paquet n'est pas installé" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Impossible de supprimer un paquet essentiel du système" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "La tâche ne peut être ni surveillée, ni contrôlée" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Échec du traitement du paquet" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Nécessite l'installation de paquets non vérifiés" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "L'installation précédente était incomplète" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Le paquet est de mauvaise qualité" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Impossible d'ouvrir le paquet" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Fonctionnalité non prise en charge" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Échec du téléchargement de la clé de licence" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Échec lors de l'installation de la clé de licence" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Le système est déjà à jour" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Vous n'avez pas pu être autorisé" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Vous n'êtes pas autorisé à exécuter cette action" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Une erreur impossible à traiter est survenue" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "En attente de démarrage du service" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "En attente" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "En attente du média requis" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "En attente de l'arrêt d'un autre gestionnaire de paquets" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "En attente d'une demande de configuration" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Tâche en cours d'exécution" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Téléchargement" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Interrogation des Sources de Logiciels" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Nettoyage" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Terminé" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Annulation" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Chargement de la liste des logiciels" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installation de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configuration de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Suppression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Suppression complète de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Disparition de %s constatée" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Exécution des actions différées pour %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Mise à jour de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Décompression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Préparation de l'installation de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Préparation de la configuration de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Préparation de la suppression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Préparation de la suppression complète de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s a été installé" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s a été comptètement supprimé" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s a été supprimé" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Terminé" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Échec de l'authentification" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Réception" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactif" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Le réseau n'est pas disponible" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Traitement de %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%s octets sur %s octets téléchargés à %s octets/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%s octets sur %s octets téléchargés" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Détails" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fichier" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%s octets téléchargés" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Téléchargé" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Le CD/DVD « %s » est requis" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Veuillez insérer le CD ci-dessus dans le lecteur « %s » pour installer les " "paquets qui s'y trouvent." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuer" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installer" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Réinstaller" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Supprimer" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Supprimer complètement" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Mettre à jour" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Revenir à une version antérieure" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Ignorer la mise à niveau" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Veuillez consulter la liste des changements ci-dessous." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Des logiciels supplémentaires doivent être installés" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Des logiciels supplémentaires doivent être réinstallés" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Des logiciels supplémentaires doivent être désinstallés" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Des logiciels supplémentaires doivent être supprimés complètement" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Des logiciels supplémentaires doivent être mis à jour" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" "Des logiciels supplémentaires doivent être réinstallés dans leur version " "antérieure" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Les mises à jour seront ignorées" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Des changements supplémentaires sont nécessaires" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%s octets seront téléchargés au total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%s octets d'espace disque seront libérés." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%s octets d'espace disque supplémentaire seront utilisés." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Remplacer les modifications que vous aviez effectuées dans « %s » par une " "version plus récente du fichier de configuration ?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Si vous ne savez pas pourquoi le fichier est déjà là, il est généralement " "sans danger de le remplacer." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Changements" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Conserver" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Remplacer" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Détails" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "En attente de fermeture de %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Téléchargement de %(files)s" msgstr[1] "Téléchargement de %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "dépôt local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Téléchargement depuis %s" msgstr[1] "Téléchargement depuis %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Composition de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Description de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Description de la signature de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquets disponibles dans le dépôt %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Sources disponibles dans le dépôt %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traductions disponibles dans le dépôt %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traductions en %s (%s) dans le dépôt %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traductions en %s dans le dépôt %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traductions (%s) dans le dépôt %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Le paquet %s n'est pas disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Le paquet %s n'est pas installé" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La version %s de %s n'est pas installée" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Le paquet %s est déjà installé" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La version %s de %s n'est pas disponible." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "L'URL du serveur de clés n'est pas valide : %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocole du serveur non valide : %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Identifiant de clé non valide : %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Échec du téléchargement et de l'installation de la clé %s à partir de %s :\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Impossible d'installer la clé %s : %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Impossible de supprimer la clé ayant l'empreinte %s : %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Impossible de supprimer le paquet %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La version %s de %s n'est pas installée" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Une version antérieure (%s) de %s est déjà installée" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La version %s de %s est déjà installée" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La version %s de %s n'est pas disponible" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Vous devez spécifier la version à laquelle revenir pour %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "La dernière version (%s) de %s est déjà installée" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Le paquet %s n'est pas disponible dans la distribution %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Impossible de supprimer le paquet %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Le paquet ne fournit pas un champ de contrôle de taille valide. Cf. " "politique Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clé de licence est vide" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clé de licence ne peut pas contenir de code exécutable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Le chemin de la clé de licence %s n'est pas valide" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clé de licence existe déjà : %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "L'emplacement de la clé de licence n'est pas sécurisé car il contient des " "liens symboliques. Le chemin %s renvoie à %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Le dossier où installer la clé n'existe pas pour le moment : %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Échec lors de l'écriture du fichier clé dans : %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Les paquets suivants ont des dépendances non satisfaites :" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mais c'est un paquet virtuel" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mais il n'est pas installé" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mais il ne va pas être installé" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mais la version %s est installée" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mais la version %s va être installée" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "L'ajout de la clé à la liste des fournisseurs de logiciels de confiance a " #~ "échoué" aptdaemon-1.1.1+bzr982/po/gd.po0000644000000000000000000014265312375372771014245 0ustar 00000000000000# Gaelic; Scottish translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-02 17:46+0000\n" "Last-Translator: alasdair caimbeul \n" "Language-Team: Gaelic; Scottish \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : " "(n > 2 && n < 20) ? 2 : 3;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Liosta iuchraichean de reiceadairean earbsach" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut liosta nan iuchraichean " "earbsach fhaicinn." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Thoir air falbh faidhlichean phacaidean a chaidh a luchdadh a-nuas" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut faidhlichean phacaidean a " "sgioblachadh a chaidh a luchdadh a-nuas." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Atharraich rèiteachadh a' bhathar-bhog" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut roghainnean a' bhathar-" "bhog atharrachadh." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Atharraich ionad-tasgaidh a' bhathar-bhog" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut roghainnean ionad-tasgaidh " "a' bhathar-bhog atharrachadh." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Stàlaich faidhle pacaid" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut a' phacaid seo a stàladh." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Ùraich fiosrachadh na pacaid" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut catalog a' bhathar-bhog " "ùrachadh." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Stàlaich no thoir air falbh pacaidean" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut bathar-bog a stàladh no a " "thoirt air falbh." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Stàlaich bathar-bog bhon ionad-tasgaidh a liosta-gheal le làn-earbsa." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Gus stàladh bathar-bog, feumaidh tu dearbhachadh." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Cuir ionad-tasgaidh ris ùr agus stàlaich pacaidean uaithe" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut mus urrainn dhut bathar-" "bog a stàladh o thùs ùr." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Cuir ris ionad-tasgaidh ùr de bhathar-bog a chaidh a cheannach agus stàlaich " "pacaidean uaithe" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut bathar-bog a chaidh a " "cheannach a stàladh." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Àrdaich na pacaidean" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut bathar-bog ùraichte a " "stàladh." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Sguir de shaothair cleachdaiche eile" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut sguir de dh'atharrachadh a " "rinn cuideigin eile air bathar-bog." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Suidhich progsaidh airson luchdaidhean a-nuas bathar-bog" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Feumaidh tu dearbhadh a dhèanamh mus urrainn dhut frithealaiche progsaidh a " "chleachdadh gus bathar-bog a luchdadh a-nuas." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "MEARACHD" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Chaidh %sB de %sB a luchdadh a-nuas aig %sB" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Chaidh %sB de %sB a luchdadh a-nuas" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "MEARACHD:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Chan eil cead agad seo a dhèanamh." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "A' ciuthadh" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "A' fuasgladh nan eisimeileachdan" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Thèid a' phacaid ÙR a leanas a stàladh (%(count)s):" msgstr[1] "Thèid na pacaidean ÙRA a leanas a stàladh (%(count)s):" msgstr[2] "Thèid na pacaidean ÙRA a leanas a stàladh (%(count)s):" msgstr[3] "Thèid na pacaidean ÙRA a leanas a stàladh (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Thèid a' phacaid a leanas àrdachadh (%(count)s):" msgstr[1] "Thèid na pacaidean a leanas àrdachadh (%(count)s):" msgstr[2] "Thèid na pacaidean a leanas àrdachadh (%(count)s):" msgstr[3] "Thèid na pacaidean a leanas àrdachadh (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Thèid a' phacaid a leanas a thoirt air falbh (%(count)s):" msgstr[1] "Thèid na pacaidean a leanas a thoirt air falbh (%(count)s):" msgstr[2] "Thèid na pacaidean a leanas a thoirt air falbh (%(count)s):" msgstr[3] "Thèid na pacaidean a leanas a thoirt air falbh (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Thèid a' phacaid a leanas ìsleachadh (%(count)s):" msgstr[1] "Thèid na pacaidean a leanas ìsleachadh (%(count)s):" msgstr[2] "Thèid na pacaidean a leanas ìsleachadh (%(count)s):" msgstr[3] "Thèid na pacaidean a leanas ìsleachadh (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Thèid a' phacaid a leanas ath-stàladh (%(count)s):" msgstr[1] "Thèid na pacaidean a leanas ath-stàladh (%(count)s):" msgstr[2] "Thèid na pacaidean a leanas ath-stàladh (%(count)s):" msgstr[3] "Thèid na pacaidean a leanas ath-stàladh (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Thèid a'phacaid a leanas a chumail air ais (%(count)s):" msgstr[1] "Thèid na pacaidean a leanas an cumail air ais (%(count)s):" msgstr[2] "Thèid na pacaidean a leanas an cumail air ais (%(count)s):" msgstr[3] "Thèid na pacaidean a leanas an cumail air ais (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Feumaidh sinn %sB de thasglannan fhaighinn." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "Bidh %sB a dh'àite a bharrachd air an diosg air a chleachdadh an dèidh seo." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "Bidh %sB a dh'àite a bharrachd air an diosg air a shaoradh an dèidh seo." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "A bheil thu airson leantainn air adhart? [T/C]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Gus obair a dhèanamh air barrachd air aon phacaid, cuir ainmean nam " "pacaidean ann am comharran-labhairt:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Ath-nuadhaich an tasgadan" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Feuch is rèitich eisimeileachdan briste. Dh'fhaodadh seo a bhith cunnartach " "oir dh'fhaoidte gun rachadh cus phacaidean a thoirt air falbh." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Feuch is coilean stàladh nach deach a choileanadh roimhe" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Stàlaich na pacaidean a tha ann" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Ath-stàlaich na pacaidean a tha ann" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Thoir air falbh na pacaidean a tha ann" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Thoir air falbh na pacaidean a tha ann, a' gabhail a-steach faidhlichean " "rèiteachaidh" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Ìslich na pacaidean a tha ann" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Cha mholar seo tuilleadh: Cleachd --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Ùraich an siostam air dòigh shàbhailte" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Ùraich an siostam; dh'fhaoidte gun dèid pacaidean a stàladh 's a thoirt air " "falbh ri linn sin" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Cuir an reiceadair ris an fheadhainn earbsach" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Cuir keyid an reiceadair (bidh feum air --keyserver cuideachd)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Cleachd an keyserver a tha ann gus iuchraichean a lorg" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Cuir ionad-tasgaidh ùr ris on deb-line a tha ann" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Sònraich faidhle sources.list.d eile a thèid ionadan-tasgaidh a chur ris." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Seall iuchraichean de reiceadairean earbsach" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Thoir air falbh iuchair earbsach a' mheur-luirg a tha ann" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Ath-rèitich pacaidean stàlaichte. Ma thogras tu, 's urrainn dhut am " "prìomhachas as lugha airson ceistean a shònrachadh" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Am prìomhachas debconf as lugha de cheistean a thèid a shealltainn" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Na ceangail ris an tèirmineal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Ceadaich pacaidean o bhun-tùsan nach deach an dearbhadh" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Seall fiosrachadh a bharrachd mu na pacaidean. Chan eil 'ga shealltainn an-" "dràsta ach àireamh an tionndaidh" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "A' feitheamh ri dearbhadh" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Na dùin sìos an daemon mur eil gnìomhachd ann" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Na luchdaich plugain sam bith" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Seall fiosrachadh giollachd inntearnail" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Fàg agus cuir an àite an daemon tha a' ruith mar-thà" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" "Èist air a' bhus seisein DBus (Chan eil feum air seo ach a chum deuchainn)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Dèan obrachaidhean sa chroot a tha ann" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Stòr stats na pròifil san fhaidhle a chaidh a shònrachadh" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Na dèan atharraichean sam bith air an t-siostam (Feumail do luchd-" "leasachaidh a-mhàin)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Chaidh am faidhle a stàladh" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Chaidh na pacaidean a stàladh" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Chaidh an iuchair a chur ris on fhaidhle" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Chaidh an tasgadan ùrachadh" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Sireadh dèante" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Chaidh iuchair earbsach a thoirt air falbh" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Chaidh na pacaidean a thoirt air falbh" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Chaidh na pacaidean ùrachadh" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Chaidh an siostam àrdachadh" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Chaidh na h-atharraichean a chur an sàs" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Chaidh an stàladh neo-choileanta a chàradh" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Chaidh na h-eisimeileachdan briste a chàradh" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Chaidh am bun-tùs bathar-bog a chur ris" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Chaidh co-phàirt an sgaoilidh a chur an comas" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" "Chaidh na faidhlichean phacaidean a chaidh an luchdadh a-nuas a thoirt air " "falbh" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Chaidh na pacaidean stàlaichte ath-rèiteachadh" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Soirbheachail" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Sguireadh dheth" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Dh'fhàillig e" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "A' stàladh an fhaidhle" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "A' stàladh nam pacaidean" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "A' cur ris na h-iuchrach on fhaidhle" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Ag ùrachadh an tasgadain" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "A' toirt air falbh na h-iuchrach earbsach" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "A' toirt air falbh nam pacaidean" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Ag ùrachadh nam pacaidean" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Ag àrdachadh an t-siostaim" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "A' cur an sàs nan atharraichean" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "A' càradh an stàlaidh neo-choileanta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "A' càireadh bathar-bog stàlaichte" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "A' cur ris bun-tùs bathar-bog" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "A' cur an comas co-phàirt an sgaoilidh" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "A' toirt air falbh faidhlichean phacaidean a chaidh a luchdadh a-nuas" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Ag ath-rèiteachadh nam pacaidean stàlaichte" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Sireadh" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Dh'fhàillig stàladh faidhle na pacaid" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Dh'fhàillig stàladh a' bhathar-bhog" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Dh'fhàillig a' cur iuchair ris an liosta reiceadairean bathar-bog earbsach" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Dh'fhàillig ath-nuadhachadh liosta a' bhathar-bhog" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Cha b' urrainn dhuinn an reiceadair a thoirt air falbh o liosta na feadhainn " "earbsach" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Dh'fhàillig toirt air falbh a' bhathar-bhog" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Dh'fhàillig ùrachadh a' bhathar-bhog" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Dh'fhàillig àrdachadh an t-siostaim" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" "Cha b' urrainn dhuinn na h-atharraichean air a' bhathar-bhog a chur an sàs" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Dh'fhàillig càradh an stàlaidh neo-choileanta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Dh'fhàillig càradh nan eisimeileachdan briste" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Cha b' urrainn dhuinn bun-tùs a' bhathar-bhog a chur ris" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Cha b' urrainn dhuinn co-phàirt an sgaoilidh a chur an comas" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" "Cha b' urrainn dhuinn na faidhlichean phacaidean a chaidh a luchdadh a-nuas " "a thoirt air falbh" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Dh'fhàillig sireadh" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "A' cur ris iuchair cead" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Thoir sùil air a' cheangal agad ris an eadar-lìon." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Thoir sùil a bheil thu a' cleachdadh ionadan-tasgaidh le treas-phàrtaidhean. " "Ma tha, cuir à comas iad oir bidh iad ag adhbharachadh duilgheadasa gu " "tric.\n" "A bharrachd air sin, ruith an àithne a leanas san tèirmineal: apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Dh'fhaoidte nach e faidhle iuchrach CPG a tha san fhaidhle a thagh thu no 's " "mathaid gu bheil e coirbte." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Cha b'urrainn dhuinn an iuchair a thagh thu a thoirt air falbh. Dèan " "cinnteach gun do sholair thu lorg-meur dligheach." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Thoir sùil a bheil thu a' ruith inneal stiùireadh bathar-bog eile an-dràsta, " "m.e. Synaptic no Aptitude. Chan fhaod ach aon inneal rudan atharrachadh aig " "an aon àm." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "'S e trioblaid mhòr a tha seo. Feuch ris a-rithist an ceann greis. Ma " "nochdas an trioblaid a-rithist, dèan aithisg air an trioblaid dhan luchd-" "leasachaidh." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Thoir sùil air litreachadh ainm na pacaid agus gu bheil an t-ionad-tasgaidh " "iomchaidh an comas." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Chan eil feum air ùrachadh sam bith." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Chan eil feum air stàladh sam bith." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Chan eil feum air rud sam bith a thoirt air falbh." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Dh'iarr thu pacaid a thoirt air falbh a tha 'na phàirt riatanach dhen t-" "siostam agad." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Chaidh an ceangal ris an daemon air chall. 'S mathaid gun do thuislich " "daemon a' chùlaibh." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Dh'fhàillig stàladh no toirt air falbh de phacaid bathar-bog." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Chan eil an iarrtas feart ga taiceadh." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Tha coltas gu bheil mearachd prògramachaidh ann an aptdaemon, am bathar-bog " "a leigeas leat bathar-bog a stàladh no a thoirt air falbh agus rudan eile a " "dhèanamh a thaobh stiùireadh phacaidean." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Dh'fhaoidte gun do dh'èirich a' mhearachd seo a chionn 's gun robh feum air " "pacaidean bathar-bog a bha a dhìth no nach gabh stàladh. Air neo dh'fhaoidte " "gun robh còmhstri eadar pacaidean bathar-bog nach urrainnear stàladh aig an " "aon àm." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Tha seo ag iarraidh stàladh pacaidean bho bunan-tùs neo-dearbhaichte." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Dh'fhaoidte gun do dh'fhàillig an stàladh air sgàth mearachd sa phacaid " "bhathar-bhog cho-cheangailte no chaidh sguireadh dheth air dòigh neo-" "chàirdeil. Feumaidh tu seo a chàradh mus urrainn bathar-bog sam bith eile a " "stàladh no a thoirt air falbh." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Cuir lethbhreac dhen fhaidhle air a' choimpiutair ionadail agad agus thoir " "sùil air ceadan an fhaidhle." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Chan eil e ceadaichte pacaid a stàladh a bhriseas stannardan na càileachd. " "Faodaidh gun èirich trioblaidean mòra dhan choimpiutair agad ri linn seo. " "Cuir fios dhan neach no dhan bhuidheann a thug dhut am faidhle pacaid agus " "thoir dhaibh am mion-fhiosrachadh gu h-ìosal." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Chan eil an iuchair cead luchdaichte a-nuas a tha riatanach son ruith am " "pìos bathar-bog seo dligheach, no cha b'urrainn a stàladh ceart.\n" "Faic na mion-chunntasan son barrachd fiosrachadh." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Chaidh h-uile leasachaidhean ri fhaighinn gan stàladh mar thà." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Cha b'urrainn luchdadh a-nuas an iuchair cead a tha leigeil leat cleachdadh " "am pìos bathar-bog seo. Sgrùd sibh a' cheangal lìonra agaibh." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Chan eil na pribhleidean riatanach agad an gnìomh seo a dhèanamh." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Sholaraich thu an facail-faire ceàrr no chur thu dheth an ùghdarrachaidh.\n" "A bhàrr air sin dh'fhaodadh gu bheil adhbhar teicnigeach ann airson a' " "mhearachd seo ma 's e 's nach do chunnaic thu co-labhairt an fhacal-faire: " "chan eil do àrainneachd bàrr-deasc a' solarachadh àidseant seisein PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Dh'fhàillig luchdadh a-nuas nam faidhlichean phacaidean" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Dh'fhàillig luchdadh a-nuas fiosrachadh an ionaid-tasgaidh" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Cha ghabh eisimeileachdan na pacaid fhuasgladh" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Tha siostam na pacaid briste" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Cha deach an iuchair a stàladh" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Cha deach an iuchair a thoirt air falbh" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Dh'fhàillig glasadh manaidsear nam pacaidean" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Dh'fhàillig luchdadh liosta nam pacaidean" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Chan eil a' phacaid ann" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pacaid mar thà a dh'ionnsaigh an là" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Tha a' phacaid stàlaichte mar-thà" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Chan eil a' phacaid stàlaichte" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" "Cha b' urrainn dhuinn pacaid riatanach an t-siostaim a thoirt air falbh" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Cha ghabh sùil no smachd a chumail air an t-saothair seo" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Dh'fhàillig obrachadh na pacaid" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Feumaidh seo stàladh de phacaidean anns nach eil earbsa" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Cha deach an stàlachadh roimhe a choileanadh" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Tha a' phacaid de dhroch-chàileachd" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Cha b' urrainn dhuinn a' phacaid fhosgladh" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Feart gun taic" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Dh'fhàillig luchdadh a-nuas an iuchair cead" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Dh'fhàillig stàladh an iuchair cead" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Tha an t-siostam seo mar thà a dh'ionnsaigh an là" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Cha b'urrainn dhut a bhith ùghdarraichte" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Chan eil e ceadaichte dhut an gnìomh seo a dhèanamh" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Thachair mearachd nach gabh a làimhseachadh" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "A' feitheamh ri tòiseachadh seirbheise" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "A' feitheamh" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "A' feitheamh ri meadhan riatanach" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "A' feitheamh ri dùnadh de mhanaidsearan bathar-bog eile" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "A' feitheamh ri brodadh airson faidhle a rèiteachadh" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Saothair 'na ruith" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "'Ga luchdadh a-nuas" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "A' ceisteachadh bunan-tùs bathar-bog" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "'Ga sgioblachadh" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Deiseil" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "A' sgur dheth" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "A' luchdadh liosta a' bhathar-bhog" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "A' stàladh %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "A' rèiteachadh %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "A' toirt air falbh %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "A' toirt às %s gu lèir" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Sònrachadh teicheadh de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "A' ruith trigear post-installation %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Ag àrdachadh %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Neo-phacadh %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Ag ullachadh stàlachadh de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Ag ullachadh rèiteachadh de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Ag ullachadh a' toirt às %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Ag ullachadh a' toirt às %s gu lèir" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s Stàlaichte" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s ga thoirt às gu lèir" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s ga thoirt às" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Dèanta" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Dh'fhàillig an dearbhadh" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "'Ga fhaighinn" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "'Na thàmh" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Chan eil an lìonra ri fhaighinn" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Giollachd %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Chaidh %sB de %sB a luchdadh a-nuas aig %sB" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Chaidh %sB de %sB a luchdadh a-nuas" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Mion-fhiosrachadh" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Faidhle" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Chaidh %sB a luchdadh a-nuas" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Air a luchdadh a-nuas" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Tha feum air an CD/DVD \"%s\"" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Cuir a-steach an CD/DVD gu h-àrd dhan draibh \"%s\" gus pacaidean bathar-bog " "a stàladh uaithe." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "L_ean air adhart" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Stàlaich" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Ath-stàlaich" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Thoir air falbh" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purgaidich" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Àrdaich" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Ìslich" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Gearr leum thairis air an àrdachadh" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Thoir sùil air liosta nan atharraichean a leanas." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Feumaidh tu bathar-bog a bharrachd a stàladh" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Feumaidh tu bathar-bog a bharrachd a ath-stàladh" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Feumaidh tu bathar-bog a bharrachd a thoirt air falbh" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Feumaidh tu bathar-bog a bharrachd a phurgaideachadh" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Feumaidh tu bathar-bog a bharrachd àrdachadh" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Feumaidh tu bathar-bog a bharrachd ìsleachadh" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Thèid leum a ghearradh thairis air na h-ùrachaidhean" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Tha feum air atharraichean a bharrachd" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Thèid %sB a luchdadh a-nuas uile gu lèir." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Thèid %sB a rum air an diosga a shaoradh." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Bidh feum air %sB a bharrachd air an diosga." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "A bheil thu airson tionndadh nas ùire an fhaidhle rèiteachaidh a chur an " "àite nan atharraichean agad ann an \"%s\"?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Mur eil fhios agad carson a tha am faidhle ann, bidh e ceart gu leòr ma " "chuireas tu rud 'na àite." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Atharraichean" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Glèidh" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Cuir 'na àite" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Mion-fhiosrachadh" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "A' feitheamh ri dùnadh %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "A' luchdachadh a-nuas %(files)s" msgstr[1] "A' luchdachadh a-nuas %(files)s" msgstr[2] "A' luchdachadh a-nuas %(files)s" msgstr[3] "A' luchdachadh a-nuas %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "Ionad-tasgaidh ionadail" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Luchdachadh a-nuas bho %s" msgstr[1] "Luchdachadh a-nuas bho %s" msgstr[2] "Luchdachadh a-nuas bhon %s" msgstr[3] "Luchdachadh a-nuas bhon %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Structar de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Dealbh-chunntas de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Earr-sgrìobhadh dealbh-chunntas de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pacaidean ri fhaighinn bho %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Bunan-tùs ri fhaighinn bho %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Eadar-theangachadh ri fhaighinn bho %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Eadar-theangachadh son %s (%s) bho %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Eadar-theangachadh son %s bho %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Eadar-theangachaidhean (%s) bho %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Chan eil a' phacaid %s ri fhaighinn" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Cha deach a' phacaid %s a stàladh" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Chan eil an tionndaidh %s de %s air a stàladh" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Tha a' phacaid %s stàlaichte mar-thà" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Chan eil an tionndadh %s de %s ri fhaighinn." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Tha URL frithealaiche-iuchair mì-dhligheach: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Pròtacal mì-dhligheach an fhrithealaiche: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "id (da) iuchair mì-dhligheach: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Dh'fhàillig luchdadh a-nuas agus stàladh na h-iuchrach %s o %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Cha b' urrainn dhuinn faidhle na h-iuchrach %s a stàladh: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" "Cha b' urrainn dhuinn an iuchair leis a' mheur-lorg %s a thoirt air falbh: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Cha ghabh a' phacaid %s a thoirt air falbh." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Chan eil an tionndadh %s de %s air a stàladh" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Tha an seann-tionndadh %s de %s air a stàladh mar-thà" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Tha an tionndadh %s de %s air a stàladh mar-thà" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Chan eil an tionndadh %s de %s ri fhaighinn" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" "Feumaidh tu tionndadh a shònrachadh mus urrainn dhut %s ìsleachadh thuige" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Tha an seann-tionndadh %s de %s air a stàladh mar-thà" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Chan eil a' phacaid %s ri fhaighinn san sgaoileadh %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Cha ghabh a' phacaid %s a thoirt air falbh" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Chan eil a' phacaid a' solar raon smachd Installed-Size dligheach. Thoir " "sùil air poileasaidh Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Tha an iuchair cead falamh" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Chan fhaod an iuchair cead glèidheadh còd gnìomhachail." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Tha an t-slighe iuchair cead %s neo-dhligheach" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Tha an iuchair cead ann mar thà: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Tha an àite den iuchair cead neo-thèarainte sgàth tha e glèidheadh " "ceangailean samhlachail. Tha an t-slighe %s na mhapa gu %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Chan eil an t-eòlaire ann far a stàladh an iuchair fhathast: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Dh'fhàillig sgrìobhadh faidhle iuchair gu: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" "Tha eisimeileachdan air na pacaidean a leanas nach deach an coileanadh:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ach tha e 'na phacaid bhiortail" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ach chan eil e stàlaichte" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ach cha dèid a stàladh" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "Ach tha %s stàlaichte" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ach tha %s ri stàladh" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Cha b' urrainn dhuinn an iuchair a chur ri liosta nan reiceadairean " #~ "bathar-bog" aptdaemon-1.1.1+bzr982/po/gl.po0000644000000000000000000013416512375372771014254 0ustar 00000000000000# Galician translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # # FIRST AUTHOR , 2009. # Xosé , 2013. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-02 05:57+0000\n" "Last-Translator: Xosé \n" "Language-Team: Galician \n" "Language: gl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista das chaves dos fornecedores de confianza" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Para ver a lista de chaves de confianza debe autenticarse." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Retirar os ficheiros de paquetes descargados" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Para limpar os ficheiros de paquetes descargados necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Cambiar a configuración do software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Para cambiar a configuración do software necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Cambiar o repositorio de software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Para cambiar a configuración do repositorio debe autenticarse." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalar un ficheiro de paquetes" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Para instalar este paquete debe autenticarse" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualizar a información dos paquetes" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Para actualizar o catálogo de software debe autenticarse." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalar ou desinstalar paquetes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Para instalar ou desinstalar paquetes debe autenticarse." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalar software desde un repositorio no que se ten moita confianza e que " "está nunha lista branca." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Para instalar software haise que autenticar." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Engadir un repositorio novo e instalar paquetes desde el" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Para instalar software desde unha fonte nova necesita autenticarse." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Engadir un repositorio novo de software comprado e instalar paquetes desde el" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Para instalar software comprado necesita autenticarse." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Anovar paquetes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Para instalar as anovacións de software debe autenticarse." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancelar a tarefa doutro usuario" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Para cancelar os cambios de outra persoa debe autenticarse." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Establecer un proxy para as descargas de software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "Para usar un servidor proxy para descargar software debe autenticarse." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERRO" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Descargáronse %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Descargáronse %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERRO:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Non ten permiso para levar a cabo esta acción." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Metendo na cola" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Buscando as dependencias" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Vaise instalar o seguinte paquete NOVO (%(count)s):" msgstr[1] "Vanse instalar os seguintes paquetes NOVOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Vaise anovar o paquete seguinte (%(count)s):" msgstr[1] "Vanse anovar os seguintes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Vaise RETIRAR o seguinte paquete (%(count)s):" msgstr[1] "Vanse RETIRAR os seguintes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Vaise REVERTER o seguinte paquete (%(count)s):" msgstr[1] "Vanse REVERTER os seguintes paquetes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Vaise reinstalar o seguinte paquete (%(count)s):" msgstr[1] "Vanse reinstalar os seguintes paquetes (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Retívose o paquete seguinte (%(count)s):" msgstr[1] "Retivéronse os paquetes seguintes (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "É necesario obter %sB de ficheiros." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Despois desta operación ocuparanse %sB de espazo no disco" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Despois desta operación liberaranse %sB de espazo no disco" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Desexa continuar [S/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Para traballar en máis de un paquete poña os nomes dos paquetes entre " "vírgulas:\n" "aptdcon --install «foo bar»" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Actualizar a caché" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Tentar resolver as dependencias rotas. Esta operación é potencialmente " "perigosa xa que podería tratar de eliminar moitos paquetes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Tentar rematar unha instalación anterior incompleta" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalar os paquetes fornecidos" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalar os paquetes fornecidos" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Retirar os paquetes indicados" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Retirar os paquetes indicados, incluídos os ficheiros de configuración" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Reverter os paquetes indicados" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsoleto: Use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Anovar o sistema de forma segura" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Anovar o sistema, posiblemente instalando e eliminando paquetes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Engadir o fabricante como de confianza" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Engadir a chave do fabricante (tamén necesita --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Usar o servidor de chaves fornecido para buscar polas chaves" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Engadir o repositorio novo desde a liña deb fornecida" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especifica un ficheiro sources.list.d alternativo onde se deben engadir os " "repositorios." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Mostrar as chaves de fabricantes de confianza" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Eliminar a chave de confianza para a pegada dixital fornecida." #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurar os paquetes instalados. Opcionalmente pode especificar a " "prioridade mínima das preguntas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "A prioridade mínima de pregunta de debconf que se mostrará" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Non anexar á terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permitir paquetes provenientes de fontes sen autenticar" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostrar información adicional sobre os paquetes. Nesta altura, só o número " "da versión" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Agardando pola autenticación" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Non apagar o daemon cando estea inactivo" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Non cargar ningún engadido" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostrar información sobre o procesamento interno" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Saír e substituír un daemon que se estea a executar" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escoitar no bus de sesión de DBus (requirido só para probas" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realizar operacións no chroot indicado" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Almacenar as estatísticas do perfil no ficheiro indicado" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Non facer cambios no sistema (Só para programadores)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Ficheiro instalado" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquetes instalados" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Engadiuse unha chave desde un ficheiro" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Actualizouse a caché" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Busca realizada" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Eliminouse unha chave de confianza" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Elimináronse paquetes" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Actualizáronse paquetes" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Anovouse o sistema" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Aplicáronse as modificacións" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Reparouse a instalación incompleta" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Reparáronse as dependencias rotas" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Engadiuse unha fonte de software" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Activouse un compoñente da distribución" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Retiráronse os paquetes descargados" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfiguráronse paquetes instalados" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Satisfactoriamente" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelado" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Fallou" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalando o ficheiro" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalando os paquetes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Engadindo unha chave desde un ficheiro" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Actualizando a caché" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Eliminando unha chave de confianza" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Eliminando os paquetes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Actualizando os paquetes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Anovando o sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplicando as modificacións" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparando a instalación incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "A reparar o software instalado" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Engadindo unha fonte de software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Activando o compoñente da distribución" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Retirando os ficheiros de paquetes descargados" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfigurando paquetes instalados" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "A buscar" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Fallou a instalación do paquete" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Fallou a instalación do software" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Non foi posíbel engadir a chave á lista de vendedores de software de " "confianza" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Fallou a actualización da lista de programas" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Fallou a eliminación do distribuidor da lista de vendedores de confianza" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Fallou a eliminación do software" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Fallou a actualización do software" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Fallou a anovación do sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Produciuse un fallo ao aplicar os cambios do software" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Produciuse un fallo ao reparar a instalación incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Produciuse un fallo ao reparar as dependencias rotas" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Produciuse un fallo ao engadir a fonte de software" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Produciuse un fallo ao activar o compoñente da distribución" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Fallou a retirada de ficheiros de paquetes descargados" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Fallou a busca" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "A engadir a clave da licenza" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Comprobe a conexión á Internet" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Comprobe se está a utilizar repositorios de terceiros. De ser o caso, " "desactíveos, dado que son unha fonte frecuente de problemas.\n" "Alén disto, execute a orde seguinte nun terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Poida que o ficheiro seleccionado non sexa un ficheiro de chave GPG ou que " "estea danado." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Non é posíbel eliminar a chave seleccionar. Comprobe que forneceu unha " "pegada dixital válida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Comprobe se ten outra ferramenta de xestión de software executándose " "actualmente, p.ex. Synaptic ou aptitude. Só pode haber unha ferramenta " "facendo cambios ao mesmo tempo." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Este problema é serio. Ténteo de novo máis tarde. Se este problema aparece " "de novo, informe do erro aos desenvolvedores." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Comprobe a ortografía do nome do paquete e se está activado o repositorio " "axeitado." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Non hai necesidade de ningunha actualización." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Non hai necesidade de instalar nada" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Non hai necesidade de eliminar nada" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Solicitou eliminar un paquete que constitúe unha parte esencial do sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Perdeuse a conexión co daemon. O máis probábel é que o daemon de fondo " "tivese un fallo fatal." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Fallou a instalación ou eliminación dun paquete de software." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Non se admite a funcionalidade solicitada." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Parece que hai un erro de programación en «aptdaemon», o software que lle " "permite instalar ou retirar software e realizar outras tarefas relacionadas " "coa xestión de paquetes." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Este erro pode deberse a que os paquetes de software adicional requiridos " "non estean presentes ou que non sexan instalábeis. Ademais, podería existir " "un conflito entre os paquetes que non lles permita seren instalados ao mesmo " "tempo." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Isto require instalar paquetes desde orixes non autenticadas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "A instalación puido ter fallado por un erro nos los paquetes " "correspondentes de software ou foi cancelada dun xeito incorrecto. Debe " "reparar isto antes de poder instalar ou eliminar calquera outro software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Copie o ficheiro no seu equipo local e comprobe os permisos do ficheiro" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Non está permitida a instalación de calquera paquete que non respecte os " "estándares de calidade. Iso podería provocar problemas serios ao seu equipo. " "Contacte coa persoa ou organización que lle forneceu este ficheiro de " "paquete e inclúa os detalles de embaixo." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "A clave da licenza que se descargou e que se require para executar este " "software non é válida ou non se puido instalar correctamente.\n" "Vexa os detalles para máis información." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Xa se instalaron todas as actualizacións dispoñíbeis." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Non foi posíbel descargar a clave da licenza que permite o uso deste " "software. Comprobe a conexión á rede." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Non dispón dos privilexios requiridos para realizar esta acción." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Escribiu un contrasinal erróneo ou cancelou a autorización.\n" "Alén disto pode haber unha razón técnica para este erro se vostede non viu " "un diálogo no que se lle pedise un contrasinal; o entorno de escritorio non " "fornece un axente de sesión de PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Fallou a descarga dos ficheiros de paquetes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Fallou a descarga da información do repositorio" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Non é posíbel resolver as dependencias do paquete" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "O sistema de paquetes está roto" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Non se instalou a chave" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Non se eliminou a chave" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Non foi posíbel bloquear o xestor de paquetes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Fallou a descarga da listaxe de paquetes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Ese paquete non existe" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Este paquete xa está actualizado" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Ese paquete xa está instalado" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Ese paquete non está instalado" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Fallou a eliminación dun paquete esencial do sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Non é posíbel vixiar ou controlar esta tarefa" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Fallou a operación co paquete" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Require que se instalen paquetes nos que non se confía" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Non se completou unha instalación anterior" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "El paquete é de mala calidade" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Non é posíbel abrir o ficheiro de paquete" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Característica non compatíbel" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Produciuse un fallo ao descargar a chave de licenza" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Produciuse un fallo ao instalar a chave de licenza" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "O sistema xa está anovado" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Podería non ser autorizado" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Non se lle permite realizar esta acción" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Produciuse un erro que non se pode xestionar" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Agardando polo arranque do servizo" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Agardando" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Agardando polo recurso requirido" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Agardando que rematen outros xestores de software" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Agardando polo indicador do ficheiro de configuración" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Executando a tarefa" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Descargando" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Solicitando as orixes de software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Limpando" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Rematado" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelando" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Cargando a lista do software" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configurando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Eliminando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s completamente retirado" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Detectouse a desaparición de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Executando o disparador de post-instalación %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Anovando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "A desempaquetar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "A preparar a instalación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "A preparar a configuración de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "A preparar a eliminación de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "A preparar a eliminación completa de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Instalouse %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Retirouse %s completamente" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Retirouse %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Feito" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Fallou a autenticación" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Obtendo" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Ocioso" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "A rede non está dispoñíbel." #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "A procesar %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Descargáronse %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Descargáronse %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalles" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Ficheiro" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Descargado %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Recibido" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Requírese o CD/DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Insira o CD/DVD de enriba na unidade «%s» para instalar os paquetes de " "software desde el." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Eliminar" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Borrar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Anovar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Desactualizar" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Omitir esta actualización" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Bótelle unha ollada á lista de cambios que se presenta a continuación." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Hai que instalar software adicional" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Hai que instalar de novo software adicional" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Hai que eliminar software adicional" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Hai que eliminar completamente software adicional" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Hai que actualizar software adicional" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Débese desactualizar software adicional" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Omitiranse as actualizacións" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Necesítanse cambios adicionais" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Descargaranse en total %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Liberaranse %sB de espazo de disco." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Usaranse %sB máis de espazo en disco." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Substituír as modificacións de «%s» por unha versión posterior do ficheiro " "de configuración?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Se non sabe por que ese ficheiro xa se atopa aí, adoita ser máis seguro a " "súa substitución." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Modificacións" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Manter" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Substituír" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalles" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Agardando a que saia %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Descargando %(files)s" msgstr[1] "Descargando %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositorio local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "A descargar desde %s" msgstr[1] "A descargar desde %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estrutura de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descrición de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Sinatura de descrición de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquetes dispoñíbeis en %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Orixes dispoñíbeis desde %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traducións dispoñíbeis desde %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traducións para %s (%s) desde %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traducións para %s desde %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traducións (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "O paquete %s non está dispoñíbel" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "O paquete %s non está instalado" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "A versión %s de %s non está instalada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "O paquete %s xa está instalado" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "A versión %s de %s non está dispoñíbel." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "O URL do servidor de chaves non é válido: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocolo do servidor non válido: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "O identificador da chave non é válido: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Produciuse un fallo ao descargar e instalar a chave %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Non é posíbel instalar o ficheiro chave %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Non é posíbel retirar a chave coa pegada %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Non é posíbel retirar o paquete %s" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Non está instalada a versión %s de %s" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Xa está instalada a anterior versión %s de %s" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "A versión %s de %s xa está instalada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "A versión %s de %s non está dispoñíbel" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Necesita especificar unha versión á que reverter %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "A última versión %s de %s xa está instalada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "O paquete %s non está dispoñíbel na distribución %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Non se pode retirar o paquete %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "O paquete non fornece un campo de control do tamaño de instalación válido. " "Vexa a política de Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "A chave de licenza está baleira" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "A chave de licenza non pode conter código executábel" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "A ruta á chave de licenza %s non é válida" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Xa existe unha chave de licenza: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "A localización da chave de licenza non é segura xa que contén ligazóns " "simbólicas. A ruta %s liga a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "O cartafol onde instalar a chave non existe aínda: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Produciuse un fallo ao escribir o ficheiro de chave en: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Os seguintes paquetes teñen dependencias incumpridas:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mais é un paquete virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mais non está instalado" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mais non se vai a instalar" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mais %s está instalado" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mais vaise instalar %s" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Algo fallou ao engadir a chave á lista de distribuidores de programas de " #~ "confianza" aptdaemon-1.1.1+bzr982/po/he.po0000644000000000000000000013713312375372771014244 0ustar 00000000000000# Hebrew translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-31 13:26+0000\n" "Last-Translator: Yaron \n" "Language-Team: Hebrew \n" "Language: he\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "הצגת מפתחות של ספקים מהימנים" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "כדי לצפות ברשימת המפתחות המהימנים, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "הסרת קובצי חבילות שהתקבלו" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "כדי לנקות את קובצי החבילות שהתקבלו, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "שינוי תצורת התכנה" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "כדי לשנות את הגדרות התכנה, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "שינוי מאגר התכנה" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "כדי לשנות את הגדרות מאגרי התכנה, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "התקנת קובץ חבילה" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "כדי להתקין חבילה, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "עדכון נתוני החבילה" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "כדי לעדכן את קטלוג התכנה, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "התקנה או הסרה של חבילות" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "כדי להתקין או להסיר את התכנה, עליך להזדהות." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "התקנת תוכנות ממאגר מורשה ומהימן ביותר." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "כדי להתקין תוכנות, עליך להזדהות." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "הוספת מאגר חדש והתקנת חבילות ממנו" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "כדי להתקין תכנה ממקור חדש, יהיה עליך להזדהות." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "הוספת מאגר חדש של תוכנות שנרכשו והתקנת חבילות ממנו" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "כדי להתקין תכנה שנרכשה יהיה עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "שדרוג חבילות" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "כדי להתקין תכנה עדכנית, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "ביטול משימה של משתמש אחר" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "כדי לבטל שינויים שביצע מישהו אחר בתכנה, עליך להזדהות." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "הגדרת מתווך להורדות תכנה" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "כדי להשתמש בשרת מתווך להורדת תכנה, עליך להזדהות." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "הורדו %s בתים מתוך %s במהירות %s בתים לשנייה" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "הורדו %s בתים מתוך %s" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "You are not allowed to perform this action." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Queuing" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "דרישות התלות נפתרות" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "The following NEW package will be installed (%(count)s):" msgstr[1] "The following NEW packages will be installed (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "The following package will be upgraded (%(count)s):" msgstr[1] "The following packages will be upgraded (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "The following package will be REMOVED (%(count)s):" msgstr[1] "The following packages will be REMOVED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "The following package will be DOWNGRADED (%(count)s):" msgstr[1] "The following packages will be DOWNGRADED (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "The following package will be reinstalled (%(count)s):" msgstr[1] "The following packages will be reinstalled (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "The following package has been kept back (%(count)s):" msgstr[1] "The following packages have been kept back (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Need to get %sB of archives." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "After this operation, %sB of additional disk space will be used." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "After this operation, %sB of additional disk space will be freed." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Do you want to continue [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refresh the cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "יש לנסות לפתור דרישות תלות שבורות. פעולה הנחשבת למסוכנת כיוון שהיא עלולה " "לנסות להסיר חבילות רבות." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Try to finish a previous incompleted installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Install the given packages" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstall the given packages" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Remove the given packages" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remove the given packages including configuration files" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Downgrade the given packages" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Deprecated: Please use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Upgrade the system in a safe way" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Upgrade the system, possibly installing and removing packages" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Add the vendor to the trusted ones" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Add the vendor keyid (also needs --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Use the given keyserver for looking up keys" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Add new repository from the given deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specify an alternative sources.list.d file to which repositories should be " "added." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "List trusted vendor keys" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remove the trusted key of the given fingerprint" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "The minimum debconf priority of question to be displayed" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Do not attach to the apt terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Allow packages from unauthenticated sources" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Show additional information about the packages. Currently only the version " "number" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Waiting for authentication" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "לא לכבות את הסוכן עקב חוסר פעילות" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "לא לטעון שום תוסף" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "הצגת נתוני העיבוד הפנימיים" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "יציאה והחלפה של סוכן שכבר היה פעיל" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Listen on the DBus session bus (Only required for testing" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Perform operations in the given chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "אחסון סטטיסטיקת הפרופיל בקובץ שצויין" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "אין ליצור אף שינוי במערכת (לשימוש עבור מפתחים בלבד)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "קובץ מותקן" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "חבילות מותקנות" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "נוסף מפתח מקובץ" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "המטמון עודכן" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "החיפוש הושלם" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "הוסר מפתח מהימן" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "הוסרו חבילות" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "עודכנו חבילות" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "המערכת שודרגה" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "השינויים חלו" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "התקנות שלא הושלמו תוקנו" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "התלויות הפגומות תוקנו" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "מקור תכנה שנוסף" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "הפעלת רכיבים של ההפצה" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "קובצי החבילות שהתקבלו הוסרו" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "החבילות שהותקנו הוגדרו מחדש" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "מוצלח" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "בוטל" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "נכשל" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "הקובץ מותקן" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "החבילות מותקנות" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "נוסף מפתח מקובץ" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "המטמון מתעדכן" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "המפתח המהימן מוסר" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "החבילות מוסרות" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "החבילות מתעדכנות" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "המערכת משודרגת" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "השינויים חלים" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "מתבצע תיקון להתקנות שלא הושלמו" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "התוכנות המותקנות מתוקנות" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "נוסף מקור תכנה" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "הפעלת רכיבים של ההפצה" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "קובצי החבילות שהתקבלו מוסרים" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "החבילות המותקנות מוגדרות מחדש" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "בהליכי חיפוש" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "התקנת קובץ החבילה נכשל" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "התקנת התכנה נכשלה" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "הוספת המפתח לרשימת ספקי התכנה המהימנים נכשלה" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "רענון רשימת התוכנות נכשלה" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "הסרת הספק מרשימת המהימנים נכשלה" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "הסרת התכנה נכשלה" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "עדכון התכנה נכשל" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "שדרוג המערכת נכשל" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "החלת השינויים בתכנה נכשלה" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "תיקון ההתקנה שלא הושלמה נכשל" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "תיקון התלויות הפגומות כשל" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "הוספת מקור התכנה נכשל" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "הפעלת רכיבים של ההפצה נכשלה" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "הסרת קובצי החבילות שהתקבלו נכשלה" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "החיפוש נכשל" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "נוסף מפתח רישוי" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "יש לבדוק את החיבור שלך לאינטרנט." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "יש לבדוק האם נעשה שימוש במאגרי צד־שלישי. אם כך יש לבטל אותם, מאחר שהם מהווים " "מקור נפוץ לבעיות.\n" "יתרה מכך יש להריץ את הפקודה הבאה במסוף: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "הקובץ הנבחר אינו מפתח GPG או שהוא בלתי תקין." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "לא ניתן להסיר את המפתח הנבחר. נא לבדוק שסיפקת טביעת אצבע תקפה." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "נא לבדוק האם מופעל כרגע כלי אחר לניהול תכנה, לדוגמה: Synaptic או aptitude. " "כלי אחד בלבד מורשה לבצע שינויים בכול פעם." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "זוהי בעיה חמורה. יש לנסות שוב מאוחר יותר. אם בעיה זו מופיעה שוב, יש לדווח על " "הבעיה למפתחים." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "נא לבדוק את איות שם החבילה ושהמאגר התואם פעיל." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "אין צורך בעדכון." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "אין צורך בהתקנה" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "אין צורך בהסרה." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "ביקשת להסיר חבילה המהווה חלק חיוני מהמערכת שלך." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "החיבור לסוכן אבד. ככל הנראה סוכן הרקע קרס." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "ההתקנה או ההסרה של חבילת התכנה כשלה." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "התכונה המבוקשת אינה נתמכת." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "מסתבר כי ישנה שגיאת תכנות ב־aptdaemon, התכנה המאפשרת לך להתקין/להסיר תכנה " "ולבצע משימות אחרות הנוגעות לניהול חבילות." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "יתכן ששגיאה זו נגרמה על ידי חבילות תכנה חיוניות נוספות החסרות או שאינן " "ניתנות להתקנה. יתר על כך, יתכן שישנה התנגשות בין חבילות תכנה שהתקנתן אינה " "מורשית בו זמנית." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "פעולה זו דורשת התקנת חבילות ממקורות בלתי מאומתים." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "סיבה אפשרית לכשל בהתקנה היא שגיאה בחבילת התכנה עצמה או שההתקנה בוטלה בצורה " "לא ידידותית. יהיה עליך לתקן זאת לפני שניתן יהיה להתקין או להסיר תוכנות " "נוספות." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "נא להעתיק את הקובץ למחשב שלך ולבדוק את הרשאותיו." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "התקנת חבילה המפרה את תקני האיכות אסורה. מצב כזה עלול לגרום לתקלות רציניות " "במחשבך. נא ליצור קשר עם האדם או הארגון שסיפק לך את קובץ החבילה ולהוסיף את " "הפרטים להלן." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "מפתח הרישוי שהורד הנדרש להפעלת תכנית זו שגוי או שלא ניתן להתקין אותו כראוי.\n" "יש לעיין בפרטים לקבלת מידע נוסף." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "כל השדרוגים הזמינים כבר הותקנו." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "לא ניתן להוריד את מפתח הרישוי המאפשר לך להשתמש בתכנית זו. נא לבדוק את החיבור " "שלך לרשת." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "אין לך את ההרשאות הנדרשות לשם ביצוע פעולה זו." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "או שסיפקת ססמה שגויה או שביטלת את האימות.\n" "יתר על כך, יכול להיות שיש סיבה טכנית להופעת שגיאה זו אם לא ראית תיבת דו־שיח " "לבקשת ססמה: סביבת שולחן העבודה שלך אינה מספקת סוכן להפעלת PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "ארע כשל בהורדת קובצי החבילה" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "ארע כשל בהורדת נתוני המאגר" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "לא ניתן לפתור את דרישות התלות של החבילה" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "מערכת החבילות פגומה" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "המפתח לא הותקן" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "המפתח לא הוסר" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "ארע כשל בנעילת מנהל החבילות" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "ארע כשל בטעינת רשימת החבילות" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "החבילה אינה קיימת" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "החבילה כבר מעודכנת" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "החבילה כבר מותקנת" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "החבילה אינה מותקנת" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "ארע כשל בהסרת חבילת מערכת חיונית" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "לא ניתן לעקוב או לשלוט במשימה" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "הפעולה על החבילה נכשלה" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "נדרשת התקנה של חבילות לא מורשות" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "ההתקנה הקודמת לא הושלמה" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "החבילה היא באיכות נמוכה" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "לא ניתן לפתוח את קובצי החבילות" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "תכונה שאינה נתמכת" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "הורדת מפתח הרישוי נכשלה" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "התקנת מפתח הרישוי נכשלה" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "המערכת כבר מעודכנת" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "לא ניתן לאשר אותך" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "אין לך הרשאה לבצע פעולה זו" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "אירעה שגיאה שאינה ניתנת לטיפול" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "בהמתנה להתחלת השירות" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "בהמתנה" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "בהמתנה למדיום הנדרש" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "בהמתנה למנהלי החבילות האחרים שיסתיימו" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "בהמתנה לבקשת קובץ התצורה" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "משימה פעילה" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "בתהליכי הורדה" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "מקורות התכנה מתעדכנים" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "מתבצע סדר ונקיון" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "הסתיים" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "בהליכי ביטול" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "רשימת התוכנות נטענת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s מותקנת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s מוגדרת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s מוסרת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "הסרה מוחלטת של %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "ההיעלמות של %s נרשמת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "ההליכים שלאחר ההתקנה %s מופעלים" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s משתדרגת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s מחולצת" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "ההתקנה של %s בהכנות" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "התצורה של %s בהכנות" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "ההסרה של %s בהכנות" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "ההסרה המוחלטת של %s בהכנות" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s הותקנה" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s הוסרה לחלוטין" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s הוסר" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "בוצע" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "האימות נכשל" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "מתקבל" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "בהמתנה" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "הרשת אינה זמינה" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s בעיבוד" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "הורדו %s בתים מתוך %s במהירות %s בתים לשנייה" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "הורדו %s בתים מתוך %s" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "פרטים" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "קובץ" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "הורדו %s ב׳" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "הורדו" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "תקליטור ה־CD/DVD‏ '%s' נדרש" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "נא להכניס את תקליטור ה־CD/DVD הנדרש לכונן '%s' לצורך התקנת חבילות ממנו." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "ה_משך" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "התקנה" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "התקנה מחדש" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "הסרה" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "ניקוי" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "שדרוג" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "שדרוג מטה" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "דילוג על השדרוג" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "נא להביט ברשימת השינויים שלהלן." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "יש להתקין תכנה נוספת" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "יש להתקין תכנה נוספת מחדש" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "יש להסיר תכנה נוספת" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "יש למחוק לחלוטין תכנה נוספת" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "יש לשדרג תכנה נוספת" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "יש לשדרג מטה תכנה נוספת" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "העדכונים לא ייושמו" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "נדרשים שינויים נוספים" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "יתקבלו %s ב׳ בסך הכול." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "יפונו %s ב׳ משטח הכונן." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "ינוצלו %s ב׳ נוספים מהכונן בסך הכול." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "האם להחליף את השינויים שערכת ב־'%s' בגרסה עדכנית יותר של קובץ התצורה?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "אם אין לך מושג מדוע קובץ זה נמצא שם, על פי רוב די בטוח להחליפו." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "שי_נויים" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_שמירה" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "ה_חלפה" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_פרטים" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "בהמתנה ליציאת %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "מתקבל %(files)s" msgstr[1] "מתקבלים %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "מאגר מקומי" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "מתבצעת הורדה מהמיקום %s" msgstr[1] "מתבצעת הורדה מהמיקומים %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "מבנה של %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "תיאור של %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "חתימת תיאור של %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "חבילות זמינות מהמאגר %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "מקורות זמינים מהמאגר %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "תרגומים זמינים מהמאגר %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "תרגומים עבור %s‏ (%s) מאת %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "תרגומים עבור %s מאת %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "תרגומים (%s) מאת %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "החבילה %s אינה זמינה" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "החבילה %s אינה מותקנת" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "הגרסה %s של %s אינה מותקנת" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "החבילה %s כבר מותקנת" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "The version %s of %s isn't available." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "כתובת שרת המפתחות שגויה: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "פרוטוקול שגוי של השרת: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "מזהה המפתח שגוי: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "אירע כשל בהתקנה והורדה של המפתח %s מ־%s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "לא ניתן להתקין את קובץ המפתח %s:‏ %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "לא ניתן להסיר את המפתח בעל טביעת האצבע %s:‏ %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "לא ניתן להסיר את החבילה %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "הגרסה %s של %s אינה מותקנת" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "הגרסה הקודמת %s של %s כבר מותקנת" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "הגרסה %s של %s כבר מותקנת" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "The version %s of %s isn't available" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "עליך לציין גרסה אליה יוחזר %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "הגרסה העדכנית יותר %s של %s כבר מותקנת" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "The package %s isn't available in the %s release." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "לא ניתן להסיר את החבילה %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "החבילה אינה מספקת שדה בקרה Installed-Size תקני. נא לעיין במדיניות 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "מפתח הרישוי ריק" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "אסור שמפתח הרישוי יכיל קוד להרצה." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "נתיב מפתח הרישוי %s שגוי" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "מפתח הרישוי קיים כבר: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "מיקום מפתח הרישוי אינו מאובטח ומכיל קישורים סימבוליים. הנתיב %s ממפה אל %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "התיקייה להתקנת המפתח אינה קיימת עדיין: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "כתיבת קובץ המפתח למיקום הבא נכשלה: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "The following packages have unmet dependencies:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "but it is a virtual package" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "but it is not installed" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "but it is not going to be installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "but %s is installed" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "but %s is to be installed" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "הוספת המפתח לרשימת ספקי התכנה המהימנים נכשלה" aptdaemon-1.1.1+bzr982/po/hi.po0000644000000000000000000016370412375372771014253 0ustar 00000000000000# Hindi translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-12-25 16:28+0000\n" "Last-Translator: Vibhav Pant \n" "Language-Team: Hindi \n" "Language: hi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "विश्वसनीय विक्रेता का कुँजी सूची" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "विश्वसनीय कुँजी की सूची को देखने के लिए, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "डाउनलोड पैकज संचिका हटाएँ" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "डाउनलोड पैकेज संचिका को साफ करने के लिए आपको प्राधिकार की आवश्यकता है" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "सॉफ्टवेयर विन्यास बदलें" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "सॉफ्टवेयर विन्यास हेतु, आपको प्राधिकार की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "सॉफ्टवेयर भंडार बदले" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "सॉफ्टवेयर भंडार विन्यास को बदलने हेतु, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "पैकेज संचिका को संस्थापित करें" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "इस पैकेज को संस्थापित करने के लिए, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "पैकेज सूचना को अद्यतन करें" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "सॉफ्टवेयर नामावली के अद्यतन के लिए, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "पैकेज संस्थापित करें या हटाएँ" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "सॉफ्टवेयर को संस्थापित करने या हटाने के लिए आपको सत्यापन की आवश्यकता है." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "एक नया भंडार जोड़े तथा इससे पैकेज संस्थापित करें" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "नए स्रोत से सॉफ्टवेयर संस्थापित करने के लिए, आपको सत्यापन की आवश्यकता है." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "एक नया सॉफ्टवेयर खरीदारी का भंडार जोड़े तथा इससे पैकेज संस्थापित करें" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "खरीदे गए सॉफ्टवेयर को संस्थापित करने के लिए, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "अद्यतन पैकेज" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "अद्यतन सॉफ्टवेयर को संस्थापित करने के लिए, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "दूसरे प्रयोक्ता के कार्य को रद्द करें" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "किसी और के द्वारा सॉफ्टवयेर परिवर्तन को निरस्त करने हेतु, आपको सत्यापन की आवश्यकता है." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "सॉफ्टवेयर डाउनलोड करने हेतु प्रॉक्सी नियत करें" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "सॉफ्टवेयर डाउनलोड करने के लिए प्रॉक्सी सर्वर के उपयोग हेतु आपको सत्यापन की आवश्यकता है." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "त्रुटि" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB को %sB से %sB/s पर डाउनलोड कर रहा है" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB को %sB से डाउनलोड कर रहा है" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "त्रुटि:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "इस कार्य को करने के लिए आपको अनुमति नहीं है." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "कतार" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "निर्भरता हल कर रहा है" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "निम्न नया पैकेज संस्थापित होगा (%(count)s):" msgstr[1] "निम्न नए पैकेजो का संस्थापना होगा (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "निम्न पैकेज उन्नत होगें (%(count)s):" msgstr[1] "निम्न पैकेज उन्नत होगें (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "निम्न पैकेज हटाए जाएगें (%(count)s):" msgstr[1] "निम्न पैकेज हटाएँ जाएगें (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "निम्न पैकेज को अवनत किया जाएगा (%(count)s):" msgstr[1] "निम्न पैकेजों को अवनत किया जाएगा (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "निम्न पैकेज पुनःसंस्थापित होगें (%(count)s):" msgstr[1] "निम्न पैकेज पुनःसंस्थापित होगें (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "निम्न पैकेज को वापस रखा जाएगा (%(count)s):" msgstr[1] "निम्न पैकेजों को वापस रखा जाएगा (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB के अभिलेखों को प्राप्त करने की आवश्यकता है." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "इस क्रिया कलाप के पश्चात, %sB अतिरिक्त डिस्क जगह का उपयोग होगा." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "इस क्रिया-कलाप के पश्चात, %sB अतिरिक्त डिस्क जगह खाली होगा." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "क्या आप आगे बढ़ना चाहते हैं [हाँ Y/ ना n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "एक से अधिक पैकेज पर क्रिया-कलाप हेतु पैकेज के नामों को उद्धरण चिह्न में रखें:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "कैश को पुनःताजा करें" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "खंडित निर्भरताओं को सुलझाने का प्रयास करें. सम्भवतः खतरनाक क्रिया-कलाप होगा क्योंकि यह " "कई पैकेज को हटाने का प्रयास करेगा." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "एक पूर्ववर्ति अपुर्ण संस्थापना को पुरा करने का प्रयास करें" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "दिए गए पैकेज को संस्थापित करें" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "दिए गए पैकेज को पुनःसंस्थापित करें" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "दिए गए पैकेज को हटाएँ" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "दिए गए पैकेज को विन्यास संचिक सहित हटाएँ" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "दिए गए पैकेज को अवनत करें" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "अवमानना: कृपया --safe-upgrade का उपयोग करें" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "तंत्र का उन्नयन सुरक्षित तरीके से करें" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "पैकेज के सम्भावित संस्थापन तथा हटाने हेतु, तंत्र का उन्नयन करें" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "केवल विश्वसनीय विक्रेता को जोड़े" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "विक्रेता के कुँजी आईडी को जोड़े (--keyserver की भी जरुरत है)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "दिए गए कुँजीसर्वर को कुँजी देखने हेतु उपयोग करें" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "दिए गए deb-line से नए भंडार को जोड़े" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "एक वैकल्पिक sources.list.d संचिका का उल्लेख करें जो जिसका भंडार जोड़ा जाए." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "विश्वसनीय विक्रेता कुँजी सूची" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "दिए गए अँगुलीछाप के विश्वसनीय कुँजी को हटाएँ" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "संस्थापित पैकेज को पुनःविन्यास करें. वरियता के प्रश्नो के न्यूनतम विकल्प का उल्लेख करें" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "debconf के न्यूनतम वरियता संबंधित प्रश्न दिखाएँ" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "एपीटी टर्मिनल को संलग्न नहीं करें" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "प्रमाणित स्रोतों से पैकेज की अनुमति दें" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "पैकेजो के अतिरिक्त सूचना को दिखाएँ. वर्तमान में केवल संस्करण संख्या" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "प्रमाणिकरण हेतु प्रतीक्षारत" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "निष्क्रिय होने के कारण डेमन को शटडाउन न करें" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "आंतरिक प्रक्रियागत सूचना दिखाएं" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "वर्तमान चल रहे डेमन को छोड़े तथा प्रतिस्थापित करे" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "डीबस सत्र बस को ध्यान दे (केवल जाँच हेतु आवश्यक" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "दिए गए chroot मेंं संक्रिया को पूरा करें" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "विशिष्ट संचिका में प्रोफाइल सांख्यिकी का संग्रह करे" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "तंत्र में कोई बदलाव न करें (केवल विकासकर्ता हेतु)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "संस्थापित संचिका" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "संस्थापित पैकेज" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "संचिका से कुंजी जोड़े" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "कैश अद्यतन करें" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "खोज हो गयी" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "विश्वासी कुंजी को हटाएं" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "पैकेज हटाएं" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "पैकेज अद्यतन करें" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "तंत्र अद्यतन करें" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "बदलाव लागू करें" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "अपूर्ण संस्थापित का जीर्णोद्वार करें" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "खंडित निर्भताओं का जीर्णोद्वार करें" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "सॉफ्टवेयर स्रोत जोड़े" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "इस वितरक के घटक को समर्थ करें" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "डाउनलोड पैकेज संचिका हटाएँ" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "संस्थापित पैकेज का पुनःविन्यास करें" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "सफल" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "रद्द" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "असफल" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "संचिका संस्थापित हो रहा है" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "पैकेज संस्थापित हो रहा है" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "संचिका से कुंजी जोड़े" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "कैश अद्यतन कर रहा है" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "विश्वासनीय कुंजी हटाएं" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "पैकेज हटाएं" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "पैकेज अद्यतन कर रहा है" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "तंत्र को उन्नत कर रहा है" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "बदलाव लागू कर रहा है" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "अपूर्ण संस्थापना का जीर्णोद्वार कर रहा है" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "स्थापित हुए सॉफ्टवेयर की मरम्मत हो रही है" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "सॉफ्टवेयर स्रोत को जोड़ रहा है" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "इस वितरक के घटक को समर्थ कर रहा है" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "डाउनलोड पैकेज संचिका को हटा रहा है" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "संस्थापित पैकेज को पुनःविन्यास कर रहा है" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "खोज हो रही हैं" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "पैकेज संचिका का संस्थापन असफल हो गया" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "साफ्टवेयर का संस्थापन असफल हो गया" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "साफ्टवेयर सूची की पुनःताजा करना असफल" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "विश्वसनीय सूची से विक्रेता को हटाना असफल" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "साफ्टवेयर हटाना असफल" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "साफ्टवेयर अद्यतन असफल" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "तंत्र का अद्यतन असफल" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "साफ्टवेयर बदलाव लागू करने में असफल" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "अपूर्ण संस्थापित का जीर्णोद्वार असफल" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "खंडित निर्भरता का जीर्णोद्वार असफल" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "सॉफ्टवेयर स्रोत को जोड़ने में विफल" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "वितरक के घटक को जोड़ने में विफल" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "डाउनलोड पैकेज संचिका हटाने में असफल" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "खोज असफल हुई" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "अंतर्जाल संयोजन की जाँच करें।" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "जाँच करे क्या आप तृतीय पक्ष भण्डार का उपयोग कर रहे है. यदि ऐसा है तो उसे अशक्त करें, " "क्योंकि समस्याओं की जड़ समान्यतः वही होते हैं. इसके पश्चात टर्मिनल में निम्न कमांड को चलाएंः " "apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "चुना गया संचिका जीपीजी कुंजी संचिका नहीं है या विकृत है." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "चुने गए कुँजी नहीं हट सकता. जाँचे की आप एक वैध अँगुलीछाप प्रदान कर रहे हैं." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "जाँचे की क्या आप वर्तमान में कोई अन्य सॉफ्टवेयर प्रबंधक उपकरण चला रहे हैं, जैसे कि सिनेप्टिक " "या एपटीट्यूड. एक बार में केवल एक ही उपकरण को परिवर्तन हेतु अनुमति है." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "यह गंभीर समस्या है. बाद में पुनः कोशिश करें. यदि यह समस्या पुनः आता है तो कृपया " "विकासकर्ता को त्रुटि के बारे में रिपोर्ट करें." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "पैकेज नाम के उच्चारण, तथा उपयुक्त भंडार को समर्थ है, की जाँच करें" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "अद्यतन की आवश्यका नहीं है." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "संस्थापन की आवश्यकता नहीं है" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "हटाने की आवश्यकता नहीं है." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "आपने एक ऐसे पैकेज को हटाने के लिए कहा है जो आपके तंत्र का अनिवार्य भाग है." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "डेमन से संयोजन नष्ट हो गया है. ज्याद उम्मीद है कि पृष्ठभूमि में डेमन विकृत हो गया है." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "साफ्टवेयर पैकेज का संस्थापना या हटाया जाना असफल हो गया है." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "अनुरोधित सुविधा समर्थित नहीं है" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "ऐप्टडीमन में एक प्रोग्रामिंग त्रुटि है | ऐप्टडीमन आपको सॉफ्टवेयर स्थापित / हटाने और कैई " "पैकेज प्रबंधन से संबंधित कार्य करने देता है" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "यह त्रुटि जरुरी अतिरिक्त सॉफ्टवेयर पैकेज के कारण है जो छुट रहा है या संस्थापित नहीं है. इसके " "अतरिक्त सॉफ्टवेयर पैकेज के बीच विरोधाभास है जो एक समय संस्थापित होने की अनुमति देता है." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "यह संस्थापना असफल हो जाएगा क्योंकि संबंधित साफ्टवेयर पैकेज में त्रुटि है या गलत तरीके से यह " "निरस्त कर दिया गया है. किसी अन्य साफ्टवेयर को संस्थापित करने या हटाने के पहले इसकी " "मरम्मत जरुरी है." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "कृपया संचिका का नकल अपने स्थानीय कंप्यूटर पर करें तथा संचिका अनुमति की जाँच करें." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "ऐसे पैकेज जो मानक गुणवत्ता का उलंघन करता है संस्थापना की अनुमति नहीं है. यह आपके कंप्यूटर के " "लिए गंभीर समस्य़ा पैदा कर देगा. कृपया इस पैकेज संचिका को प्रदान करने वाले व्यक्ति या संगठन " "से निम्न विस्तृत विवरण सहीत संपर्क करें." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "सभी उपलब्ध उन्नयन पहले से ही स्थापित हो चुके हैं" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "इस कार्य को करने के लिए आपको अनुमति नहीं है." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "पैकेज संचिका का डाउनलोड असफल" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "भण्डार सूचना का डाउनलोड असफल" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "पैकेज निर्भरता सुलझाया नहीं जा सका" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "पैकेज तंत्र विकृत है" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "कुंजी संस्थापित नहीं है" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "कुंजी हटाया नहीं गया है" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "पैकेज प्रबंधक को ताला लगाने में असफल" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "पैकेज सूची के लदान में असफल" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "पैकेज का अस्तिव नहीं है" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "पैकेज पहले से ही संस्थापित है" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "पैकेज संस्थापित नहीं है" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "अनिवार्य पैकेज तंत्र को हटाने में विफल" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "कार्य को देख-रेख या नियंत्रित नहीं किया जा सकता" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "पैकेज क्रियान्वयन असफल" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "अविश्वसनीय पैकेज संस्थापन की आवश्यकता" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "पूर्ववर्ती संस्थापन पूर्ण नहीं हुआ है" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "यह पैकेज घटिया स्तर का है" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "पैकेज संचिका नहीं खुल सका" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "सुविधा समर्थित नहीं है" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "एक अप्रबंधकीय त्रुटि हुई है" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "सेवा शुरु होने की प्रतीक्षा कर रहा है" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "प्रतीक्षारत" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "आवश्यक माध्यम हेतु प्रतीक्षारत" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "अन्य साफ्टवेयर प्रबंधक के खाली होने की प्रतीक्षा कर रहा है" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "संचिका प्राम्प्ट विन्यास की प्रतीक्षा कर रहा है" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "कार्य चल रहा है" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "डाउनलोड किया जा रहा है" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "साफ कर रहा है" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "समाप्त" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "रद्द कर रहा है" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "साफ्टवेयर सूची लदान कर रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s संस्थापित हो रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s विन्यासित कर रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s हटा रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s पूरी तरह से हट् चुका है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "संस्थापन-पश्चात ट्रीगर %s चल रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s अद्यतन कर रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s अनपैकहो रहा है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s के स्थापित होने की तैयारी हो रही है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s स्थापित हो चुका है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s पूरी तरह से हट चुका है" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s हट चुका है" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "किया गया" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "प्रमाणीकरण निष्फल" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "मिलान कर रहा है" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "निष्क्रिय" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "संजाल उपलब्ध नहीं है" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB को %sB से %sB/s पर डाउनलोड कर रहा है" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB को %sB से डाउनलोड कर रहा है" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "विवरण" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "संचिका" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB डाउनलोड हो गया" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "डाउनलोड हो गया" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "सीडी/डिवीडी '%s' की आवश्यकता है" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "कृपया उपरोक्त सीडी/डीवीडी को '%s' ड्राइव में डाले ताकि इससे सॉफ्टवेयर पैकेज संस्थापित हो " "सके." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "जारी रखें (_C)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "संस्थापित करें" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "पुनःसंस्थापित करें" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "हटाएँ" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "सफाई" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "उन्नयन" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "अवनयन" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "उन्नयन छोड़े" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "कृपया निम्न परिवर्तन सूची पर एक नजर देख ले." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "अतरिक्त सॉफ्टवेयर संस्थापित होना है" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "अतरिक्त सॉफ्टवेयर पुनःसंस्थापित होना है" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "अतरिक्त सॉफ्टवेयर हटाया जाना है" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "अतरिक्त सॉफ्टवेयर साफ किया जाना है" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "अतरिक्त सॉफ्टवेयर उन्नयन होना है" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "अतरिक्त सॉफ्टवेयर अवनयन होना है" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "अद्यतन छोड़ दिया जाएगा" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "अतरिक्त परिवर्तन की आवश्यकता है" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "कुल %sB डाउनलोड किया जाएगा." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB डिस्क स्थान खाली होगा." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB अतरिक्त डिस्क स्थान उपयोग होगा." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "विन्यास संचिका के नवीनतम संस्करण से '%s' में परिवर्तन प्रतिस्थापित करेंगे?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "यदि आप नहीं जानते कि वहाँ पर संचिका पहले से क्यों है, तो इसे प्रतिस्थापित करना सुरक्षित है." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "बदलाव (_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "बनाए रखें (_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "प्रतिस्थापित करें (_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "विवरण (_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "%s से बाहर होने की प्रतिक्षा कर रहा है" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "डाउनलोड कर रहा है %(files)s" msgstr[1] "डाउनलोड कर रहा है %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "पैकेज %s उपलब्ध नहीं है" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "पैकेज %s संस्थापित नहीं है" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "संस्करण %s जो %s का है संस्थापित नहीं है" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "पैकेज %s पहले से संस्थपित है" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "यह संस्करण %s जो %s का है उपलब्ध नहीं है." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "डाउनलोड करने में असफल तथा कुंजी %s को %s से संस्थापित करें:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "कुंजी संचिका %s संस्थापित नहीं कर सकता: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "अंगुलीछाप सहीत कुंजी %s नहीं हटा सकता: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "पैकेज %s नहीं हटाया जा सकता." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "संस्करण %s जो %s का है संस्थपित नहीं है" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "पूर्ववर्ती संस्करण %s जो %s का है पहले से संस्थापित है" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "संस्करण %s जो %s का है पहले से संस्थापित है" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "यह संस्करण %s जो %s का है उपलब्ध नहीं है" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "%s से पदावनत करने के लिए आप उस संस्करण का उल्लेख करें" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "परवर्ती संस्करण %s जो %s का है पहले से संस्थापित है" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "यह पैकेज %s की उपलब्धता %s प्रकाशन में नहीं है." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "पैकेज %s नहीं हटाया जा सकता" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "यह पैकेज वैध-आकार फिल्ड नहीं प्रदान करता है. देखें डेबियन नीति 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "निम्न पैकेज में सभी निर्भरता नहीं है." #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "लेकिन यह एक आभासी पैकेज है" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "लेकिन यह संस्थापित नहीं है" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "लेकिन यह संस्थापित नहीं होने जा रहा है" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "लेकिन %s संस्थापित है" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "लेकिन %s संस्थापित हो जाएगा" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "विश्वसनीय साफ्टवेयर विक्रेता की सूची में कुंजी जोड़ने में असफल" aptdaemon-1.1.1+bzr982/po/hr.po0000644000000000000000000010153412375372771014255 0ustar 00000000000000# Croatian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2009-12-04 23:14+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Croatian \n" "Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/hu.po0000644000000000000000000013371312375372771014264 0ustar 00000000000000# Hungarian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-09-29 17:25+0000\n" "Last-Translator: Péter MÁTÓ \n" "Language-Team: Hungarian \n" "Language: hu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Megbízható szállítók kulcsainak felsorolása" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Hitelesítés szükséges a megbízható kulcsok listájának megjelenítéséhez." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Letöltött csomagok eltávolítása" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "A letöltött csomagok törléséhez hitelesítésre van szükség." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Szoftverbeállítások megváltoztatása" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "A szoftverbeállítások megváltoztatásához hitelesítésre van szükség." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Szoftvertároló módosítása" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Hitelesítés szükséges a szoftvertároló-beállítások módosításához." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Csomagfájl telepítése" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "A csomag telepítéséhez hitelesítés szükséges." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Csomaginformációk frissítése" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "A szoftverkatalógus frissítéséhez hitelesítés szükséges." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Csomagok telepítése vagy eltávolítása" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Hitelesítés szükséges szoftver telepítéséhez vagy eltávolításához." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Szoftver telepítése megbízható, fehérlistán szereplő tárolóból." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "A szoftver telepítéséhez hitelesítés szükséges." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Új tároló hozzáadása, és abból csomagok telepítése" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Hitelesítés szükséges a szoftverek új forrásból való telepítéséhez." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Új, megvásárolt csomagokat tartalmazó tároló hozzáadása, és abból csomagok " "telepítése" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Hitelesítés szükséges a megvásárolt szoftverek telepítéséhez." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Csomagok frissítése" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Frissített szoftver telepítéséhez hitelesítés szükséges." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Másik felhasználó feladatának megszakítása" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Hitelesítés szükséges másik felhasználó szoftvermódosításainak " "megszakításához." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Proxy beállítása szoftverletöltésekhez" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "A szoftver letöltéséhez proxy kiszolgáló használatához hitelesítés szükséges." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "HIBA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Letöltve: %sB/%sB, sebesség: %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Letöltve: %sB/%sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "HIBA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Ezt a műveletet nem hajthatja végre." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Sorba állítás" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Függőségek feloldása" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "A következő új csomag kerül telepítésre (%(count)s):" msgstr[1] "A következő új csomagok kerülnek telepítésre (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "A következő csomag kerül frissítésre (%(count)s):" msgstr[1] "A következő csomagok kerülnek frissítésre (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "A következő csomag kerül eltávolításra (%(count)s):" msgstr[1] "A következő csomagok kerülnek eltávolításra (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "A következő csomag kerül visszafejlesztésre (%(count)s):" msgstr[1] "A következő csomagok kerülnek visszaminősítésre (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "A következő csomag kerül újratelepítésre (%(count)s):" msgstr[1] "A következő csomagok kerülnek újratelepítésre (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "A következő csomag lett visszatartva (%(count)s):" msgstr[1] "A következő csomagok lettek visszatartva (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB töltendő le az archívumokból." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "A művelet után %sB további lemezhely kerül felhasználásra." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "A művelet után %sB további lemezhely kerül felszabadításra." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Kívánja folytatni [I/N]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Több csomagon való munkához tegye a csomagneveket idézőjelek közé:\n" "aptdcon --install \"izé bigyó\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Gyorsítótár frissítése" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Kísérlet törött függőségek feloldására. Veszélyes művelet lehet, mivel sok " "csomag eltávolítására tehet kísérletet." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Kísérlet korábban be nem fejezett telepítés befejezésére" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "A megadott csomagok telepítése" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "A megadott csomagok újratelepítése" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "A megadott csomagok eltávolítása" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "A megadott csomagok eltávolítása a beállítófájlokkal együtt" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Az adott csomagok visszafejlesztése" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Elavult: használja a --safe-upgrade kapcsolót" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "A rendszer biztonságos frissítése" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "A rendszer frissítése, csomagok esetleges telepítésével és eltávolításával" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "A szállító hozzáadása a megbízhatókhoz" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "A szállító kulcsazonosítójának hozzáadása (a --keyserver is szükséges)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "A megadott kulcskiszolgáló használata kulcsok kikeresésére" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Új tároló felvétele a megadott deb sorból" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Alternatív sources.list.d fájl megadása, amelyhez a tárolók hozzáadandók." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Megbízható szállítói kulcsok felsorolása" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "A megadott ujjlenyomatok megbízható kulcsának eltávolítása" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "A telepített csomagok újrakonfigurálása. Opcionálisan a minimális " "kérdésfontosság meghatározható" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "A megjelenítendő legkisebb debconf kérdésfontosság" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ne csatlakozzon az apt terminálhoz" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Csomagok engedélyezése nem hitelesített forrásokból" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "További információk megjelenítése a csomagokról. Jelenleg csak a verziószám" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Várakozás hitelesítésre" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ne álljon le a démon inaktivitás miatt" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ne töltsön be semmilyen bővítményt" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Belső feldolgozási információk megjelenítése" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Kilépés és meglévő démon cseréje" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "A D-Bus munkamenetbusz figyelése (csak teszteléshez)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Műveletek végrehajtása a megadott „chroot”-on belül" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Profilstatisztikák tárolása a megadott fájlban" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ne változtasson meg semmit a rendszeren (csak fejlesztőknek)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fájl telepítve" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Csomagok telepítve" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Kulcs felvéve a fájlból" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Gyorsítótár frissítve" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Keresés kész" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Megbízható kulcs eltávolítva" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Csomagok eltávolítva" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Csomagok frissítve" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Rendszer frissítve" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Változtatások alkalmazva" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Befejezetlen telepítések javítva" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Törött függőségek javítva" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Szoftverforrás hozzáadva" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "A disztribúció összetevője engedélyezve" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Eltávolított letöltött csomagfájlok" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Újrakonfigurált telepített csomagok" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Sikeres" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Megszakítva" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Sikertelen" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Fájl telepítése" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Csomagok telepítése" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Kulcs hozzáadása fájlból" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Gyorsítótár frissítése" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Megbízható kulcs eltávolítása" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Csomagok eltávolítása" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Csomagok frissítése" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Rendszer frissítése" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Módosítások alkalmazása" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Befejezetlen telepítések javítása" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Telepített szoftverek javítása" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Szoftverforrás engedélyezése" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "A disztribúció összetevőjének engedélyezése" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Letöltött csomagfájlok eltávolítása" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Telepített csomagok újrakonfigurálása" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Keresés" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "A csomagfájl telepítése meghiúsult" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "A szoftver telepítése meghiúsult" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "A csomaglisták frissítése meghiúsult" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "A gyártó eltávolítása a megbízható gyártók listájáról meghiúsult" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "A szoftver eltávolítása meghiúsult" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "A csomag frissítése meghiúsult" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "A rendszer frissítése meghiúsult" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "A csomagok változásainak jóváhagyása meghiúsult" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "A befejezetlen telepítések javítása meghiúsult" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "A törött függőségek javítása meghiúsult" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "A szoftverforrás hozzáadása meghiúsult" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "A disztribúció összetevőjének engedélyezése meghiúsult" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Letöltött csomagfájlok eltávolítása sikertelen" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "A keresés sikertelen" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Licenc-kulcs hozzáadása" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Ellenőrizze internetkapcsolatát." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Ellenőrizze, használ-e harmadik féltől származó tárolókat. Ha van ilyen, " "tiltsa le ezeket, mivel gyakran problémák forrásai.\n" "Ezen kívül futtassa a „sudo apt-get install -f” parancsot terminálban." #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "A kiválasztott fájl nem GPG kulcsfájl, vagy sérült." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "A kiválasztott kulcs nem távolítható el. Ellenőrizze, hogy érvényes " "ujjlenyomatot adott-e meg." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Ellenőrizze, hogy nem fut-e jelenleg másik szoftverkezelő eszköz, például a " "Synaptic vagy az aptitude. Egyszerre csak egy eszköz végezhet módosításokat." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ez egy komoly probléma. Próbálja újra később. Ha ez a probléma újra előáll, " "jelentse be hibaként a fejlesztőknek." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Ellenőrizze a csomagnév helyesírását, és hogy a megfelelő tároló " "engedélyezve van-e." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nincs szükség frissítésre." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nincs szükség telepítésre." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nincs szükség eltávolításra." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "A rendszer alapvető részét képező csomag eltávolítását kérte." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "A kapcsolat elveszett a démonnal. Valószínűleg összeomlott a háttérdémon." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Egy szoftvercsomag telepítése vagy eltávolítása meghiúsult." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "A kért funkció nem támogatott." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Úgy tűnik, programhiba van az aptdaemonban, a szoftverek telepítését és " "eltávolítását, valamint más csomagkezelési műveletek végrehajtását lehetővé " "tevő szoftverben." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ezt a hibát további szükséges, de hiányzó vagy nem telepíthető " "szoftvercsomagok okozhatják. Továbbá ütközés lehet olyan szoftvercsomagok " "között, amelyek egyszerre nem lehetnek telepítve." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Ez megbízhatatlan forrásból származó csomagok telepítését igényli." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "A telepítés megszakadását az adott szoftvercsomag hibája okozhatta, vagy " "barátságtalan módon megszakították. Ezt ki kell javítania, mielőtt további " "szoftvereket telepítene vagy eltávolítana." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Kérjük másolja át a fájlt a helyi gépére és ellenőrizze a " "fájljogosultságokat." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "A csomagnak, ami megsérti a minőségi szabványokat a telepítése nem " "engedélyezett. Ez súlyos kárt tehet a gépében. Kérjük lépjen kapcsolatba " "azzal a személlyel vagy szervezettel akitől a csomagfájl származik, és " "mellékelje a részleteit." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "A szoftver használatát lehetővé tevő licenckulcs nem érvényes vagy nem " "telepíthető megfelelően.\n" "További információkért nézze meg a részleteket." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Az összes elérhető frissítés már telepítve van." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "A szoftver használatát lehetővé tevő licenckulcs nem tölthető le. " "Ellenőrizze a hálózati kapcsolatot." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Ezt a műveletet nem hajthatja végre." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "A csomagfájlok letöltése meghiúsult" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "A tárolóinformációk letöltése meghiúsult" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "A csomagfüggőségek nem oldhatók fel" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "A csomagrendszer sérült" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Nincs telepítve a kulcs" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "A kulcs nem került eltávolításra" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "A csomagkezelő zárolása meghiúsult" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "A csomaglista betöltése meghiúsult" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "A csomag nem létezik" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "A csomag már a legfrissebb verziójú" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "A csomag már telepítve van" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "A csomag nincs telepítve" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Az alapvető rendszercsomag eltávolítása meghiúsult" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "A feladat nem figyelhető meg vagy nem irányítható" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "A csomagművelet meghiúsult" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Nem megbízható csomagok telepítését igényli" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Egy korábbi telepítés nem fejeződött be" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "A csomag rossz minőségű" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "A csomagfájl nem nyitható meg" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nem támogatott funkció" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "A licenc-kulcs letöltése nem sikerült" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "A licenc-kulcs telepítése sikertelen" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "A rendszer már naprakész" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Nem kezelhető hiba történt" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Várakozás a szolgáltatás elindulására" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Várakozás" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Várakozás a szükséges adathordozóra" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Várakozás más szoftverkezelők kilépésére" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Várakozás a beállítófájl parancssorára" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Feladat futtatása" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Letöltés" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Szoftverforrások lekérdezése" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Frissítés befejezése" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Befejezve" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Megszakítás" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Szoftverlista betöltése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s telepítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s konfigurálása" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s eltávolítása" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s teljes eltávolítása" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "„%s” eltűnése feljegyezve" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "A(z) %s telepítés utáni trigger futtatása" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s frissítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s kicsomagolása" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s telepítésének előkészítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s beállításának előkészítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s eltávolításának előkészítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s teljes eltávolításának előkészítése" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s telepítve" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s teljesen eltávolítva" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s eltávolítva" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Kész" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Sikertelen hitelesítés" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Letöltés" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Üresjárat" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "A hálózat nem érhető el" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s feldolgozása" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Letöltve: %sB/%sB, sebesség: %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Letöltve: %sB/%sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Részletek" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fájl" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB letöltve" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Letöltve" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "„%s” CD/DVD szükséges" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Helyezze be a fenti CD-t/DVD-t a(z) „%s” meghajtóba a rajta lévő " "szoftvercsomagok telepítéséhez." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Folytatás" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Telepítés" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Újratelepítés" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Eltávolítás" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Törlés" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Frissítés" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Visszafejlesztés" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Frissítés kihagyása" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Nézze meg a változtatások alábbi listáját." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "További szoftvereket kell telepíteni" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "További szoftvereket kell újratelepíteni" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "További szoftvereket kell eltávolítani" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "További szoftvereket kell törölni" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "További szoftvereket kell frissíteni" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "További szoftvereket kell visszafejleszteni" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "A frissítések kihagyásra kerülnek" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "További változtatások szükségesek" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Összesen %sB kerül letöltésre." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%s B lemezhely szabadul fel." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Még %sB lemezhely kerül felhasználásra." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Lecseréli a változtatásait a(z) „%s” fájlban a beállítófájl egy újabb " "verziójával?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ha nem tudja, miért létezik már a fájl, általában nyugodtan lecserélheti." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Változtatások" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Megtartás" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Csere" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Részletek" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Várakozás %s kilépésére" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s letöltése" msgstr[1] "%(files)s letöltése" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "helyi tároló" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Letöltés innen: %s" msgstr[1] "Letöltés innen: %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s szerkezete" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s leírása" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s leíró aláírása" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Elérhető csomagok innen: %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Elérhető források innen: %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Elérhető fordítások innen: %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s nyelv (%s) fordításai innen: %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s nyelv fordításai innen: %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Fordítások (%s) innen: %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "A(z) %s csomag nem elérhető" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "A(z) %s csomag nincs telepítve" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s csomag %s verziója nincs telepítve" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s csomag már telepítve van" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s csomag %s verziója nem érhető el." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "A kulcskiszolgáló URL-je érvénytelen: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "A kiszolgálóprotokoll érvénytelen: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Érvénytelen kulcsazonosító: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nem sikerült letölteni a(z) %s kulcsfájlt, a következő helyről: %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "%s kulcsfájl nem telepíthető: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "%s ujjlenyomatú kulcs nem távolítható el: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "A(z) %s csomag nem távolítható el." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "A(z) %s verziójú %s nincs telepítve" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "A(z) %s korábbi verziójú %s már telepítve van" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "A(z) %s verziójú %s már telepítve van" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "A(z) %s verziójú %s nem érhető el" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Meg kell határoznia, hogy %s milyen verzióra legyen visszafejlesztve" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "A(z) %s újabb verziójú %s már telepítve van" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s csomag nem érhető el a(z) %s kiadásban." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "A(z) %s csomag nem eltávolítható." #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "A csomag nem ad érvényes Installed-Size vezérlőmező-értéket. Részletekért " "tekintse át a Debian Policy 5.6.20. fejezetét." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "A licenckulcs üres" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "A licenckulcs nem tartalmazhat végrehajtható kódot." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "A(z) %s licenckulcsútvonal érvénytelen" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "A licenckulcs már létezik: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "A licenckulcs helye nem biztonságos, mivel szimbolikus linkeket tartalmaz. " "A(z) %s útvonal ennek felel meg: %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "A kulcsfájl telepítéséhez használandó könyvtár még nem létezik: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "A kulcsfájl kiírása sikertelen ide: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "A következő csomagoknak teljesítetlen függőségei vannak:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "de ez egy virtuális csomag" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "de nincs telepítve" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "de nincs telepítésre jelölve" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "de %s verzió van telepítve" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "de %s verziót kellene telepíteni" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "A kulcs hozzáadása a megbízható szoftvergyártók listájához meghiúsult" aptdaemon-1.1.1+bzr982/po/hy.po0000644000000000000000000010154212375372771014263 0ustar 00000000000000# Armenian translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-03-11 21:37+0000\n" "Last-Translator: Serj Safarian \n" "Language-Team: Armenian \n" "Language: hy\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Հեռացնել նշոցները ներբեռնված փաթեթներից" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/id.po0000644000000000000000000012235112375372771014240 0ustar 00000000000000# Indonesian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-03-02 11:08+0000\n" "Last-Translator: Arif Budiman \n" "Language-Team: Indonesian \n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Daftar kunci dari vendor-vendor yang terpercaya" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Untuk melihat daftar kunci yang terpercaya, anda perlu melakukan " "otentifikasi." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Hapus berkas-berkas paket yang sudah diunduh" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Untuk membersihkan berkas-berkas paket yang sudah diunduh, Anda perlu " "melakukan otentifikasi." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ubah konfigurasi perangkat lunak" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Untuk mengubah pengaturan perangkat lunak, Anda perlu melakukan otentifikasi." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Mengubah repositori perangkat lunak." #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Untuk merubah pengaturan repositori perangkat lunak, anda perlu melakukan " "otentifikasi." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Memasang berkas paket" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Untuk memasang paket ini, Anda perlu melakukan otentifikasi." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Update informasi paket" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Untuk memutakhirkan katalog perangkat lunak, Anda perlu melakukan " "otentifikasi." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Memasang atau menghapus paket-paket." #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Untuk memasang atau menghapus perangkat lunak, anda perlu melakukan " "otentikasi." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Memasang perangkat lunak dari sumber lumbung yang terpercaya" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Untuk memasang perangkat lunak, anda memerlukan otentifikasi" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Tambahkan sebuah repositori baru dan pasang paket darinya." #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Untuk memasang perangkat lunak dari sumber yang baru, Anda perlu melakukan " "otentifikasi." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Tambahkan sebuah repositori baru dari perangkat lunak yang sudah dibeli dan " "pasanglah darinya" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Untuk memasang perangkat lunak yang sudah dibeli, Anda perlu melakukan " "otentifikasi." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Upgrade paket" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Untuk memasang perangkat lunak yang sudah dimutakhirkan, Anda perlu " "melakukan otentifikasi." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Membatalkan tugas pengguna lain" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Untuk membatalkan perubahan perangkat lunak orang lain, anda perlu melakukan " "otentikasi." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Atur proxy untuk pengunduhan perangkat lunak" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Menggunakan server proxy untuk mengunduh perangkat lunak, anda perlu " "melakukan otentifikasi." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "KESALAHAN" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Terunduh %sB dari %sB pada %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Terunduh %sB dari %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "KESALAHAN:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Anda tidak diizinkan melakukan tindakan ini." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Mengantri" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Menghitung dependensi" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Jumlah Paket BARU yang akan dipasang adalah (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Paket-paket ini akan ditingkatkan (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Paket-paket ini akan DIHAPUS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Paket-paket ini akan diTURUN-TINGKATkan (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Paket-paket ini akan segera dipasang ulang (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Paket-paket ini telah ditahan (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Perlu mendapatkan %sB dari arsip." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Setelah operasi ini, %sB ruang kosong harddisk akan digunakan." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Setelah operasi ini, %sB ruang diska tambahan akan dibebaskan:" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Apakah Anda ingin melanjutkannya [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Untuk beroperasi pada lebih dari satu paket, taruh nama paket dalam tanda " "petik:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Segarkan ulang tembolok" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Cobalah untuk mengatasi dependensi rusak. Operasi berpotensi berbahaya " "karena bisa mencoba untuk menghapus banyak paket." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Mencoba untuk menyelesaikan pemasangan yang tidak selesai sebelumnya" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Pasang paket yang diberikan" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Pasang ulang paket yang diberikan" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Hapus paket yang diberikan" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Hapus paket yang diberikan termasuk berkas konfigurasi" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Turunkan tingkatan paket yang diberikan" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Usang: Silakan gunakan --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Naikkan tingkatan sistem dalam cara aman" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Meningkatkan Sistem, mungkin akan ada pemasangan dan penghapusan beberapa " "Paket" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Tambahkan vendor menjadi yang terpercaya" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Tambahkan keyid vendor (juga butuh --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Pakai keyserver yang diberikan untuk mencari kunci" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Tambahkan repository baru dari baris-deb yang diberikan" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Tentukan berkas sources.list.d alternatif ke repository mana yang seharusnya " "akan ditambahkan." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Daftar kunci vendor terpercaya" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Hapus kunci terpercaya dari sidik jari yang diberikan" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Susun ulang paket-paket yang telah terpasang. Secara opsional, prioritas " "minimum pertanyaan bisa ditetapkan" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Prioritas minimal debconf dari pertanyaan yang akan ditampilkan" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Jangan lampirkan pada terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Perbolehkan paket-paket dari sumber yang tidak otentik" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Tampilkan informasi tambahan tentang Paket ini. Saat ini hanya menampilkan " "nomor versi" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Menunggu otentikasi" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Jangan shutdown daemon karena ketidakaktifan" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Jangan memuat setiap pengaya" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Tampilkan informasi pemrosesan internal" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Berhenti dan mengganti daemon yang sudah berjalan" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Menaruh statistik profil di berkas yang ditentukan" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Jangan melakukan perubahan pada sistem (Hanya untuk developer)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "File terinstall" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paket-paket terinstall" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Tambahkan kunci dari berkas" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Tembolok terbarui" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Pencarian selesai" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Hapus kunci terpercaya" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Hapus paket-paket" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paket-paket sudah terbarui" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistem sudah diperbaharui" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Terapkan perubahan" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Proses instal yang terputus sudah diperbaiki" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Sumber perangkat lunak yang telah ditambahkan" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Mengkonfigurasi ulang paket-paket yang telah terpasang" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Dengan sukses" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Dibatalkan" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Gagal" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Memasang berkas" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Memasang paket-paket" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Tambahkan kunci dari berkas" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Memperbaharui tembolok" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Menghapus kunci yang dipercaya" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Menghapus paket-paket" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Memperbaharui paket-paket" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Upgrade sistem" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Sahkan perubahan" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Sedang melakukan perbaikan instalasi" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Menambahkan sumber perangkat lunak" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Berkas paket gagal diinstal" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Piranti lunak gagal diinstal" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Gagal menampilkan daftar piranti lunak" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Gagal menghapus vendor dari daftar yang aman" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Gagal menghapus piranti lunak" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Gagal memperbarui piranti lunak" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Gagal memperbarui sistem" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Gagal melakukan perubahan perangkat lunak" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Periksa koneksi Internet Anda." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Periksa apakah anda menggunakan repositori pihak ketiga. Jika begitu, " "nonaktifkan mereka, karena mereka adalah sumber masalahnya.\n" "Selanjutnya jalankan perintah berikut di Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Berkas terpilih mungkin bukan berkas kunci GPG atau berkas mungkin korup." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ini adalah masalah serius. Coba lagi nanti. Jika masalah ini muncul lagi, " "tolong laporkan kesalahan ke pengembang." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Tidak perlu untuk melakukan pembaruan." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Tidak perlu untuk melakukan pemasangan." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Tidak perlu untuk melakukan penghapusan." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Anda diminta untuk menghapus sebuah paket yang merupakan bagian penting dari " "sistem anda." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Koneksi ke daemon hilang. Daemon background crash." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Pemasangan atau penghapusan Paket peranti lunak gagal." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Sepertinya ada pemrograman yang salah pada aptdaemon, yaitu piranti lunak " "yang memperbolehkan Anda memasang/menghapus piranti lunak dan melakukan " "tugas-tugas yang berhubungan dengan manajemen Paket." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Pemasangan gagal kemungkinan karena kerusakan pada paket perangkat lunak " "atau instalasi dibatalkan dengan paksa. Anda harus memperbaikinya sebelum " "menginstal atau menghapus piranti lunak yang lain." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Anda tidak diizinkan melakukan tindakan ini." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Gagal mengunduh berkas paket" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Gagal mengunduh informasi repositori" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Dependensi paket tidak bisa dipecahkan" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Sistem paket rusak" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Kunci tidak terinstal" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Kunci tidak dihapus" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Gagal untuk mengunci manajer paket" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Gagal untuk me-load daftar paket" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paket tidak ada" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paket sudah terinstal" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paket tidak terinstal" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Gagal untuk menghapus paket penting sistem" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tugas tidak dapat dimonitor atau dikontrol" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operasi paket gagal" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Membutuhkan pemasangan dari paket yang tidak terpercaya" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Pemasangan sebelumnya belum selesai" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paket ini berkualitas buruk" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Berkas Paket tidak dapat dibuka" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Terjadi kesalahan yang tidak dapat ditangani" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Menunggu servis untuk memulai" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Sedang menunggu" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Menunggu untuk media yang dibutuhkan" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Menunggu peranti lunak lainnya untuk keluar" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Menunggu prompt berkas konfigurasi" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Tugas yang berjalan" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Mengunduh" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Membersihkan" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Selesai" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Membatalkan" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Memuat daftar perangkat lunak" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Menginstal %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Sedang mengonfigurasi %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Memindahkan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Menjalankan pemacu %s setelah instalasi" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Diperbaharui %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Selesai" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Otentikasi gagal" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Menganggur" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Jaringan tidak tersedia" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Terunduh %sB dari %sB pada %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Terunduh %sB dari %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Rincian" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Berkas" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Terunduh %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Telah diunduh" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Membutuhkan '%s' CD/DVD" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Tolong masukkan CD/DVD ke dalam penggerak '%s' untuk memasang perangkat " "lunak darinya." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Pasang" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Memasang ulang" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Hapus" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Meningkatkan" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Menurunkan" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Lewati peningkatan" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Tolong periksa daftar perubahan berikut." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Perangkat lunak tambahan telah terpasang" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Perangkat lunak tambahan telah dipasang ulang" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Perangkat lunak tambahan telah dihapus" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Perangkat lunak tambahan harus ditingkatkan" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Perangkat lunak tembahan harus diturunkan" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Pemutakhiran akan dilewatkan" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Dibutuhkan beberapa perubahan lagi" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Total %sB akan diunduh." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "Apakah akan mengganti '%s' dengan file konfigurasi terbaru?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Jika anda tidak tahu kenapa file tersebut ada di sana, biasanya aman untuk " "mengganti file itu." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Perubahan" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Pertahankan" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Timpa" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Rincian" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Mengunduh %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paket %s tidak tersedia" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paket %s tidak terpasang" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versi %s dari %s tidak terpasang" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paket %s sudah terpasang" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versi %s dari %s tidak tersedia" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Gagal mengunduh dan memasang kunci %s dari %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Kunci berkas %s tidak dapat dipasang: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paket %s tidak bisa dihapus" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versi %s dari %s tidak terpasang" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Versi lama %s dari %s sudah terpasang" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versi %s dari %s sudah terpasang" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versi %s dari %s tidak tersedia" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Anda perlu menentukan versi %s yang akan diturunkan" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Versi yang lebih baru %s dari %s sudah terpasang" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paket %s tidak tersedia pada rilis %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paket %s tidak dapat dihapus" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "tapi paket tersebut adalah paket virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "tapi paket tersebut tidak diinstal" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "tapi %s telah terpasang" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "tapi %s yang akan dipasang" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Gagal menambahkan kunci pada daftar piranti lunak yang aman" aptdaemon-1.1.1+bzr982/po/is.po0000644000000000000000000010472112375372771014260 0ustar 00000000000000# translation of po_aptdaemon-is.po to Icelandic # Icelandic translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # # FIRST AUTHOR , 2009. # Sveinn í Felli , 2010. msgid "" msgstr "" "Project-Id-Version: po_aptdaemon-is\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:54+0000\n" "Last-Translator: Sveinn í Felli \n" "Language-Team: Icelandic \n" "Language: is\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Breyta stillingum hugbúnaðar" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Til að breyta stillingum hugbúnaðar, þarft þú að auðkenna þig." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Breyta hugbúnaðar uppruna" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Setja upp pakkaskrá" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Til að setja upp þennan pakka, þarft þú að auðkenna þig." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Uppfæra pakkaupplýsingar" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Til að uppfæra hugbúnaðar vörulistann, þarft þú að auðkenna þig." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Setja upp eða fjarlægja pakka" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Til að setja upp eða fjarlægja pakka, þarft þú að auðkenna þig." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Til að setja upp hugbúnað, þarft þú að auðkenna þig." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Uppfæra pakka" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Hætta við aðgerð frá öðrum notanda" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Náði í %sB af %sB hjá %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Náði í %sB af %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Uppsett skrá" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Uppsettir pakkar" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Bæti við lykli frá skrá" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Uppfært skyndiminni" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Fjarlægðir treystir lyklar" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Fjarlægðir pakka" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Uppfærðir pakkar" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Uppfært kerfi" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Skráðar breytingar" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Viðgerð ófullkomin uppsetning" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Viðgerðar brostnar kerfiskröfur" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Hætt við" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Mistókst" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Set upp skrá" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Set upp pakka" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Bæti við lykli frá skrá" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Fjarlægi treystan lykil" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Fjarlægi pakka" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Uppfæri pakka" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Uppfæri kerfið" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Virkja breytingar" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Geri við ófullkomna uppsetningu" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Innsetning hugbúnaðar tókst ekki" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Skráin sem þú hefur valið er hugsanlega ekki GPG lykilskrá eða hún gæti " "verið skemmd." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Það er engin þörf fyrir uppfærslu." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Það er engin þörf fyrir uppsetningu" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Það er engin þörf fyrir það að fjarlægja." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakkinn er ekki til" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Bíð eftir að þjónusta ræsist" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Bíð eftir diski sem til þarf" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Bíð eftir að aðrir hugbúnaðarstjórar ljúki sér af" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Bíð eftir kvaðningu úr stillingaskrá" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Keyri verk" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Sæki gögn" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Hleð inn hugbúnaðarlista" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Uppfæri %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Náði í %sB af %sB hjá %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Náði í %sB af %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' er krafist" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Breytingar" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/it.po0000644000000000000000000013500012375372771014253 0ustar 00000000000000# Italian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # Luca Ferretti , 2009. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-28 09:35+0000\n" "Last-Translator: Milo Casagrande \n" "Language-Team: Italian \n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Elenca le chiavi di vendor fidati" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "È necessario autenticarsi per visualizzare l'elenco delle chiavi fidate." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Rimuove file di pacchetto scaricati" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "È necessario autenticarsi per pulire i file di pacchetto scaricati." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Modifica la configurazione software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "È necessario autenticarsi per modificare le impostazioni software." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Modifica il repository software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "È necessario autenticarsi per modificare le impostazioni dei repository " "software." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installa il file di pacchetto" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "È necessario autenticarsi per installare questo pacchetto." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Aggiorna le informazioni dei pacchetti" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "È necessario autenticarsi per aggiornare il catalogo del software." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installa o rimuove pacchetti" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "È necessario autenticarsi per installare o rimuovere pacchetti." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Installa software da un repository altamente fidato in whitelist" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "È richiesto autenticarsi per installare software" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" "Aggiunge un nuovo repository e installa pacchetti che provengono da questo" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "È necessario autenticarsi per installare software da una nuova sorgente." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Aggiunge un nuovo repository di software acquistato e installa pacchetti che " "provengono da questo" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "È necessario autenticarsi per installare software acquistato." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Esegui l'avanzamento dei pacchetti" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "È necessario autenticarsi per installare software aggiornato." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Annulla l'attività di un altro utente" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "È necessario autenticarsi per annullare le modifiche al software fatte da " "altri." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Imposta un proxy per scaricare software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "È necessario autenticarsi per usare un proxy per scaricare software." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERRORE" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Scaricati %sB su %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Scaricati %sB su %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERRORE:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Non è consentito compiere questa azione." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Accodamento" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Risoluzione delle dipendenze" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Il seguente pacchetto nuovo verrà installato (%(count)s):" msgstr[1] "I seguenti pacchetti nuovi verranno installati (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Il seguente pacchetto verrà aggiornato (%(count)s):" msgstr[1] "I seguenti pacchetti verranno aggiornati (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Il seguente pacchetto verrà rimosso (%(count)s):" msgstr[1] "I seguenti pacchetti verranno rimossi (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" "Il seguente pacchetto verrà riportato alla versione precedente (%(count)s):" msgstr[1] "" "I seguentI pacchettI verranno riportati alla versione precedente (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Il seguente pacchetto verrà reinstallato (%(count)s):" msgstr[1] "I seguenti pacchetti verranno reinstallati (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Il seguente pacchetto è stato mantenuto (%(count)s):" msgstr[1] "I seguenti pacchetti sono stati mantenuti (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "È necessario scaricare %sB di archivi." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Dopo questa operazione verranno utilizzati %sB di spazio aggiuntivo." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Dopo questa operazione verranno liberati %sB di spazio disco." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Continuare? [S/n]" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Per agire su più di un pacchetto mettere i nomi dei pacchetti tra " "virgolette:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Aggiorna la cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Provare a risolvere le dipendenze danneggiate (operazione potenzialmente " "pericolosa in quanto potrebbe rimuovere molti pacchetti)." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Prova a terminare una precedente installazione incompleta" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installa i pacchetti indicati" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalla i pacchetti forniti" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Rimuove i pacchetti forniti" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Rimuove i pacchetti forniti compresi i file di configurazione" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Porta alla versione precedente i pacchetti selezionati" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Deprecata: usare --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Aggiorna il sistema in modo sicuro" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Aggiorna il sistema, possibilmente installando e rimuovendo pacchetti" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Aggiunge il vendor tra quelli fidati" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Aggiunge l'ID della chiave del vendor (necessario usare anche --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Usa il server di chiavi fornito per cercare le chiavi" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Aggiunge un nuovo repository dalla deb-line fornita" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specifica un file sources.list.d alternativo a cui aggiungere i repository" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Elenca le chiavi fidate dei vendor" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Rimuove la chiave fidata della firma fornita" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Riconfigura i pacchetti installati; la priorità minima delle domande può " "essere specificata opzionalmente" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "La priorità debconf minima delle domande da visualizzare" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Non si collega al terminale apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Consente pacchetti da sorgenti non autenticate" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostra informazioni aggiuntive sui pacchetti, attualmente solo il numero di " "versione" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "In attesa dell'autenticazione" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Non arresta il demone per inattività" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Non caricare alcun plugin" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostra informazioni di elaborazione interne" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Esce e sostituisce un demone già in esecuzione" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Resta in ascolto sul bus D-Bus di sessione (solo per eseguire test)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Esegue operazioni nel chroot fornito" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Memorizza le statistiche di profilo nel file specificato" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Non applica alcuna modifica al sistema (utile solo per sviluppatori)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "File installati" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pacchetti installati" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Chiave aggiunta dal file" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache aggiornata" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Ricerca terminata" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Chiave fidata rimossa" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pacchetti rimossi" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pacchetti aggiornati" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema avanzato" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Cambiamenti applicati" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Installazione incompleta riparata" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dipendenze mancanti riparate" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Sorgente software aggiunta" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Componente della distribuzione abilitato" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "File di pacchetto scaricati eliminati" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Pacchetti installati riconfigurati" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Riuscito" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Annullato" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Non riuscito" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installazione del file" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installazione pacchetti" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Aggiunta della chiave dal file" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Aggiornamento della cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Rimozione della chiave fidata" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Rimozione dei pacchetti" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Aggiornamento pacchetti" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Avanzamento del sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Applicazione delle modifiche" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Riparazione installazione incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Riparazione software installato" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Aggiunta sorgente software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Abilitazione componente della distribuzione" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Eliminazione dei file di pacchetto scaricati" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Riconfigurazione dei pacchetti installati" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Ricerca" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installazione del file di pacchetto non riuscita" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installazione del software non riuscita" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Aggiunta della chiave all'elenco dei vendor software fidati non riuscita" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Aggiornamento dell'elenco del software non riuscito" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Rimozione del vendor di software dall'elenco di quelli fidati non riuscita" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Rimozione software non riuscita" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Aggiornamento software non riuscito" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Avanzamento del sistema non riuscito" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Applicazione delle modifiche software non riuscita" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Riparazione dell'installazione incompleta non riuscita" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Riparazione delle dipendenze mancanti non riuscita" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Aggiunta della sorgente software non riuscita" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Abilitazione del componente della distribuzione non riuscita" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Eliminazione dei file di pacchetto scaricati non riuscita" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Ricerca non riuscita" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Aggiunta chiave licenza" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Controllare la propria connessione a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Verificare se sono in uso repository di terze parti. Qualora così fosse, " "disabilitarli, poiché questi sono talvolta causa di problemi.\n" "Inoltre eseguire il seguente comando in un terminale: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Il file selezionato potrebbe non essere un file di chiave GPG o potrebbe " "essere danneggiato." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "La chiave selezionata non può essere rimossa. Verificare di aver fornito una " "firma valida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Verificare che un altro strumento per la gestione del software (come " "Synpatic o aptitude) non sia in esecuzione. Solo uno strumento di gestione " "del software è autorizzato a effettuare modifiche." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Questo è un problema grave. Provare di nuovo in un secondo momento. Se il " "problema compare ancora, segnalare l'errore agli sviluppatori." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Verificare che il nome del pacchetto sia corretto e che il suo repository " "sia attivo." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Non c'è alcuna necessità di un aggiornamento." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Non c'è alcuna necessità di una installazione" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Non c'è alcuna necessità di una rimozione." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "È stato richiesto di rimuovere un pacchetto che è una parte essenziale del " "sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "La connessione al demone è stata persa. Probabilmente il demone in " "background è andato in crash." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Installazione o la rimozione di un pacchetto software non riuscita." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La funziona richiesta non è supportata." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Sembra esserci un errore di programmazione in aptdaemon, il software che " "consente di installare e rimuovere programmi e di eseguire altre attività di " "gestione dei pacchetti." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Questo problema potrebbe essere causato dalla mancanza o dalla possibilità " "di non installare pacchetti software aggiuntivi. Potrebbe inoltre esserci un " "conflitto tra pacchetti software che non possono essere installati nello " "stesso momento." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Ciò richiede l'installazione di pacchetti da sorgenti non autenticate." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "L'installazione potrebbe non essere riuscita a causa di un errore nel " "relativo pacchetto software oppure non è stata annullata correttamente. È " "necessario riparare questo pacchetto prima di poter installare o rimuovere " "qualsiasi altro software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Copiare i file nel proprio computer e controllarne i permessi." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "L'installazione di un pacchetto che viola gli standard qualitativi non è " "consentita: potrebbe causare seri problemi al proprio computer. Contattare " "la persona o la società che ha fornito questo file di pacchetto e includere " "i dettagli sottostanti." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La chiave di licenza scaricata, necessaria per eseguire questa parte di " "software, non è valida oppure non è installata in modo corretto.\n" "Consultare i dettagli per maggiori informazioni." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Tutti gli aggiornamenti disponibili sono già stati installati." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Non è possibile scaricare la chiave di licenza che consente di usare questa " "parte di software. Controllare la connessione di rete." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Permessi non sufficienti per eseguire questa azione." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "È stata fornita una password errata o l'autorizzazione è stata annullata.\n" "Nel caso in cui non sia stata richiesta la password, potrebbe essere dovuto " "a un errore tecnico: l'ambiente grafico non fornisce un servizio per " "PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Scaricamento dei file di pacchetto non riuscito" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Scaricamento delle informazioni del repository non riuscito" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Le dipendenze dei pacchetti non possono essere risolte" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Il sistema di pacchetti è danneggiato" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "La chiave non è stata installata" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "La chiave non è stata rimossa" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Blocco del gestore di pacchetti non riuscito" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Caricamento dell'elenco di pacchetti non riuscito" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Il pacchetto non esiste" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Il pacchetto è già aggiornato" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Il pacchetto è già installato" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Il pacchetto non è installato" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Rimozione di pacchetto di sistema essenziale non riuscita" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Impossibile monitorare o controllare le attività" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operazione di pacchetto non riuscita" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Richiede l'installazione di pacchetti non fidati" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "L'installazione precedente non è stata completata" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Il pacchetto è di cattiva qualità" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Impossibile aprire il file di pacchetto" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Funzione non supportata" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Scaricamento della chiave di licenza non riuscito" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Installazione della chiave di licenza non riuscita" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Il sistema è già aggiornato" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Impossibile eseguire l'autorizzazione" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Non è consentito eseguire questa azione" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Si è verificato un errore non gestibile" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "In attesa dell'avvio del servizio" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "In attesa" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "In attesa del supporto richiesto" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "In attesa dell'uscita di altri gestori di software" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "In attesa della richiesta del file di configurazione" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Esecuzione attività" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Scaricamento" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Interrogazione sorgenti software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Pulizia" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Terminato" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Annullamento" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Caricamento elenco software" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installazione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configurazione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Rimozione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Rimozione completa di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Notata la sparizione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Esecuzione comando di post installazione %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Avanzamento di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Estrazione di %s in corso" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparazione dell'installazione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparazione della configurazione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparazione della rimozione di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparazione della rimozione completa di %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Pacchetto %s installato" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Pacchetto %s rimosso completamente" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Pacchetto %s rimosso" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fatto" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autenticazione non riuscita" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Scaricamento" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inattivo" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Rete non disponibile" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Elaborazione di %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Scaricati %sB su %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Scaricati %sB su %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Dettagli" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "File" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Scaricati %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Scaricati" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "È richiesto il CD/DVD «%s»" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Inserire il CD/DVD nell'unità «%s» per installare pacchetti software dal " "supporto." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinua" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installa" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalla" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Rimuovi" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Elimina" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Aggiorna" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Retrocedi" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Salta aggiornamento" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Controllare l'elenco delle modifiche." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "È necessario installare software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "È necessario reinstallare software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "È necessario rimuovere software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "È necessario eliminare software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "È necessario aggiornare software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "È necessario retrocedere software aggiuntivo" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Gli aggiornamenti verranno tralasciati" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Sono richieste ulteriori modifiche" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "In tutto verranno scaricati %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Verranno liberati %sB di spazio su disco." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Ulteriori %sB verranno utilizzati sul disco." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Sostituire le proprie modifiche a «%s» con una versione più recente del file " "di configurazione?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Qualora si ingori il motivo di questo messaggio, è consigliabile scegliere " "di sostituire il file." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "Modifi_che" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Mantieni" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Sostituisci" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Dettagli" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Attesa della chiusura di %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Scaricamento di %(files)s" msgstr[1] "Scaricamento di %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repository locale" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Scaricamento da %s" msgstr[1] "Scaricamento da %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struttura di %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descrizione di %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Firma della descrizione di %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pacchetti disponibili da %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Sorgenti disponibili da %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduzioni disponibili da %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduzioni per %s (%s) da %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduzioni per %s da %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduzioni (%s) da %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Il pacchetto %s non è disponibile" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Il pacchetto %s non è installato" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La versione %s di %s non è installata" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Il pacchetto %s è già installato" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La versione %s di %s non è disponibile." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "L'URL del server di chiavi non è valido: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocollo del server non valido: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Id della chiave non valido: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Scaricamento e installazione della chiave %s da %s non riusciti:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Impossibile installare il file di chiave %s: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Impossibile rimuovere la chiave con impronta %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Impossibile rimuovere il pacchetto %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La versione %s di %s non è installata" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "La precedente versione %s di %s è già installata" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La versione %s di %s è già installata" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La versione %s di %s non è disponibile." #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Specificare a quale versione precedente riportare %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "L'ultima versione %s di %s è già installata" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Il pacchetto %s non è disponibile nel rilascio %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Impossibile rimuovere il pacchetto %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Il pacchetto non fornisce un campo di controllo Installed-Size valido. " "Consultare la «Debian Policy 5.6.20»." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La chiave di licenza è vuota" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La chiave di licenza non può contenere codice eseguibile." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Il percorso %s della chiave di licenza non è valido." #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La chiave di licenza esiste già: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "La posizione della chiave di licenza non è sicura, poiché contiene " "collegamenti simbolici. Il percorso %s è mappato su %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "La directory in cui installare la chiave non esiste ancora: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Scrittura del file chiave su %s non riuscita" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "I seguenti pacchetti presentano dipendenze non soddisfatte:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ma è un pacchetto virtuale" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ma non è installato" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ma non sta per essere installato" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ma %s è installato" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ma %s sta per essere installato" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Aggiunta della chiave all'elenco dei vendor di software fidati non " #~ "riuscita" aptdaemon-1.1.1+bzr982/po/ja.po0000644000000000000000000014430212375372771014236 0ustar 00000000000000# Japanese translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-24 01:57+0000\n" "Last-Translator: Koichi Akabe \n" "Language-Team: Japanese \n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "信頼できるベンダーの鍵を一覧表示します" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "信頼している鍵のリストを表示するには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "ダウンロードしたパッケージファイルの削除" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "ダウンロードしたパッケージファイルを削除するには、認証する必要があります" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "ソフトウェア設定の変更" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "ソフトウェア設定を変更するには、認証する必要があります" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "ソフトウェアリポジトリの変更" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "ソフトウェアリポジトリの設定を変更するには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "パッケージファイルのインストール" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "このパッケージをインストールするには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "パッケージ情報の更新" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "ソフトウェアカタログを更新するには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "パッケージのインストールまたは削除" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "ソフトウェアをインストールまたは削除するには、認証を行う必要があります。" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "信頼性の高いホワイトリストに載っているリポジトリからソフトウェアをインストー" "ルします。" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "ソフトウェアをインストールするには認証が必要です。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "新しいリポジトリを追加してパッケージをインストールします" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "新しいソースからソフトウェアをインストールするには、認証が必要です。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "新しいリポジトリを追加してパッケージをインストールします" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "購入したソフトウェアをインストールするには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "パッケージのアップグレード" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "更新されたソフトウェアをインストールするには、認証が必要です。" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "他のユーザのタスクの中止" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "他人によるソフトウエアの変更を防ぐため、認証が必要です" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "ソフトウェアダウンロードのためのプロキシを設定" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "ソフトウェアのダウンロードにプロキシサーバーを利用するには、認証が必要です。" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "エラー" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB / %sB をダウンロード済(%sB/s)" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB / %sB をダウンロード済" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "エラー:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "このアクションを行う権限がありません。" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "待機中" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "依存関係を解決しています" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "以下の新しいパッケージをインストールします (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "以下のパッケージをアップグレードします (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "以下のパッケージを削除します (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "以下のパッケージをダウングレードします (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "以下のパッケージを再インストールします (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "以下のパッケージはそのままです (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB のアーカイブを取得する必要があります。" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "この操作を行うと、%sB の追加ディスク領域を使用します。" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "この操作を行うと、%sB の追加ディスク領域が開放されます。" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "続けますか? [Y/n]" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "2 個以上のパッケージを操作するにはクォーテーションマークの間にパッケージ名を" "入れてください:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "キャッシュを更新" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "壊れた依存関係を修復しようとしています。この操作は多くのパッケージを削除する" "可能性がある、危険な作業です。" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "以前の不完全なインストール状態を終了させようとしています" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "指定されたパッケージをインストール" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "指定されたパッケージを再インストール" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "指定されたパッケージを削除" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "設定ファイルを含めて指定されたパッケージを削除" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "指定されたパッケージでダウングレード" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "非推奨: --safe-upgrade を使用してください" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "安全な方法でシステムをアップグレード" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "システムをアップグレードします。パッケージのインストールや削除が行われるかも" "しれません。" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "信頼できるベンダーに追加する" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "ベンダーの鍵 ID を追加 (--keyserver も必要)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "鍵の検索に、指定された鍵サーバーを利用する" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "指定された deb-line から新しいリポジトリを追加" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "どのリポジトリを追加するかは、他の sources.list.d ファイルを指定してくださ" "い。" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "信頼されたベンダー鍵の一覧" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "指定のフィンガープリントをもつ信頼済の鍵を削除" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "インストール済みのパッケージを再設定します。オプションで質問の優先度を最小に" "するよう指定できます。" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "質問の優先度が最小のdebconfのみ表示されます" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "apt terminalをアタッチしないでください" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "認証されていないソースからのパッケージ導入を許可する" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "パッケージの追加情報を表示します。現在はバージョン番号のみです。" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "認証を待っています" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Do not shutdown the daemon because of inactivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "どのプラグインもロードしない" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Show internal processing information" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Quit and replace an already running daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBusセッションバスの接続を待ちます(テスト時のみ必要です" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "指定されたchroot環境で操作を実行します" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Store profile stats in the specified file" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Do not make any changes to the system (Only of use to developers)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "インストール済のファイル" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "インストール済のパッケージ" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "ファイルから鍵を追加しました" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "キャッシュを更新しました" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "検索が完了しました" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "信頼された鍵を削除しました" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "パッケージを削除しました" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "パッケージを更新しました" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "システムをアップグレードしました" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "変更を適用しました" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "不完全なインストール状態を修復しました" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "壊れている依存関係を修復しました" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "追加されたソフトウェアソース" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "ディストリビューションの指定されたコンポーネントを利用可能にしました" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "ダウンロードしたパッケージファイルの削除" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "インストールしたパッケージの再設定" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "成功しました" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "キャンセルされました" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "失敗しました" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ファイルをインストールしています" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "パッケージをインストールしています" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ファイルから鍵を追加しています" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "キャッシュを更新しています" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "信頼された鍵を削除しています" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "パッケージを削除しています" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "パッケージを更新しています" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "システムをアップグレードしています" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "変更を適用しています" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "不完全なインストール状態を修復しています" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "インストール済みのソフトウェアを修復しています" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "ソフトウェアソースの追加" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "ディストリビューションの指定されたコンポーネントを利用可能にしています" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "ダウンロードしたパッケージファイルの削除中" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "インストールしたパッケージの再設定中" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "検索" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "パッケージのインストールに失敗しました" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "ソフトウェアのインストールに失敗しました" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "ソフトウェアリストの更新に失敗しました" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "信頼済みリストからのベンダーの削除に失敗しました" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "ソフトウェアの削除に失敗しました" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "ソフトウェアの更新に失敗しました" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "システムのアップグレードに失敗しました" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "ソフトウェアの変更の適用に失敗しました" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "不完全なインストール状態の修復に失敗しました" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "壊れている依存関係の修復に失敗しました" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "ソフトウェアソースの追加に失敗しました" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" "ディストリビューションの指定されたコンポーネントを利用可能にできませんでした" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "ダウンロードしたパッケージファイルの削除に失敗しました" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "検索に失敗しました" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "ライセンスキーの追加" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "インターネット接続を確認してください。" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "サードパーティのリポジトリを使用しているかどうかを確認してください。利用して" "いる場合、トラブルの原因になる場合があるので無効にしてください。\n" "そのうえで端末から次のコマンドを実行してください: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "選択したファイルはGPG鍵ファイルではないか、壊れている可能性があります。" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "選択された鍵は削除できません。有効なフィンガープリントを入力したか確認してく" "ださい" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "他のソフトウェア管理ツールを現在実行していないかどうか確認してください。例: " "Synaptic または aptitude。同時にソフトウェアの変更を行えるのは 1 つのツールの" "みです。" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "重大な問題が発生しました。もう一度行い、再度問題が生じた場合には開発チームに" "エラー報告をお願いします。" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "パッケージ名のスペルや、パッケージに合ったリポジトリが有効になっているか確認" "してください。" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "アップデートを必要とするものはありません。" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "インストールを必要とするものはありません。" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "削除を必要とするものはありません。" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "削除を要求したパッケージはシステムの重要な部分に関わるものです。" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "デーモンとの接続が切断されました。バックグラウンドデーモンがクラッシュした可" "能性が極めて高いです。" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "ソフトウェアのインストールまたは削除が失敗しました。" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "要求された機能はサポートされていません。" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "ソフトウェアをインストール/削除したり、他のパッケージ管理に関連したタスクを行" "うソフトウェアである、aptdaemonのプログラミングエラーのようです。" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "このエラーは必要な追加ソフトウェアパッケージが見つからないかインストールされ" "ていないため発生したものです。そのうえ、同時にインストールできないソフトウェ" "アパッケージの間で衝突が発生している可能性があります。" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "この操作には認証されていないソースからのパッケージをインストールする必要があ" "ります。" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "関係のあるソフトウェアパッケージでエラーが発生したか、通常ではない方法で中断" "されたためインストールに失敗した可能性があります。ソフトウェアをインストール" "または削除する前に、この問題を修正する必要があります。" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "ファイルをローカルのコンピュータにコピーして、ファイルの権限をチェックしてく" "ださい。" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "品質を満たしていない壊れたパッケージのインストールは許可されていません。コン" "ピュータに深刻な問題を発生させる可能性があるからです。詳細については、この" "パッケージを作成した人物か組織に連絡してください。" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "このソフトウェアを実行するのに必要なダウンロード済みのライセンスキーが有効で" "ないか、または正常にインストールされていません。\n" "詳しい情報は詳細を確認してください。" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "すべての利用可能なアップグレードはすでにインストールされています。" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "このソフトウェアの使用を許可するライセンスキーがダウンロードできませんでし" "た。ネットワーク接続を確認してください。" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "このアクションを行う権限がありません。" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "パッケージファイルのダウンロードに失敗しました。" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "リポジトリ情報のダウンロードに失敗しました。" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "パッケージの依存性を解決できません。" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "パッケージシステムが壊れています。" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "鍵はインストールされませんでした" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "鍵は削除されませんでした" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "パッケージマネージャーのロックに失敗しました" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "パッケージ一覧の読み込みに失敗しました" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "パッケージが存在しません" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "パッケージはすでに最新です" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "パッケージはインストール済です" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "パッケージはインストールされていません" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "重要なシステムパッケージの削除に失敗しました" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "タスクを監視またはコントロールすることができません" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "パッケージの操作に失敗しました" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "信頼されていないパッケージのインストールが必要です" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "以前のインストールが完了していません" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "パッケージの品質が悪いです" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "パッケージファイルを開けませんでした" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "サポートされていない機能です" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "ライセンスキーのダウンロードに失敗しました" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "ライセンスキーのインストールに失敗しました" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "システムはすでに最新です" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "このアクションを実行する権限がありません" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "ハンドルできないエラーが発生しました" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "処理の開始を待っています" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "待機中" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "要求されたメディアを待っています" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "他のソフトウェアマネージャーの終了を待っています" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "設定ファイルのプロンプトを待っています" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "タスクを実行中です" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ダウンロード中です" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "ソフトウェアソースに問い合わせています" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "クリーンアップ中です" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "終了しました" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "キャンセルします" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "ソフトウェアの一覧を読み込んでいます" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s をインストールしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s を設定しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s を削除しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s を完全に削除しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%sの消失を記録しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "インストール後トリガ %s を実行しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s をアップグレードしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s を展開しています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s をインストールする準備をしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s を設定する準備をしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s を削除する準備をしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s を完全に削除する準備をしています" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s をインストールしました" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s を完全に削除しました" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s を削除しました" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "完了" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "認証に失敗しました" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "取得しています" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "待機中" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "ネットワークが利用できません" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s を処理中" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB / %sB をダウンロード済(%sB/s)" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB / %sB をダウンロード済" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "詳細情報" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "ファイル" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "ダウンロード済み %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "ダウンロード済" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "'%s' という名のCD/DVDが必要です" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "パッケージをインストールするため、CD/DVDをドライブ '%s' に入れてください。" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "続行(_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "インストール" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "再インストール" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "削除" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "完全に削除" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "アップグレード" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "ダウングレード" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "アップグレードをスキップ" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "以下の変更点のリストを確認してください。" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "追加ソフトウェアをインストールする必要があります" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "追加ソフトウェアを再インストールする必要があります" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "追加ソフトウェアを削除する必要があります" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "完全に削除されようとしている追加のソフトウエア" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "追加ソフトウェアをアップグレードする必要があります" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "追加ソフトウェアをダウングレードする必要があります" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "アップグレードはスキップされます" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "追加の変更が必要です" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "全部で %sB がダウンロードされます。" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB のディスクスペースが開放されます。" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "少なくとも %sB のディスクスペースが使用されます。" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "変更されている '%s' を最新バージョンの設定ファイルで置き換えますか?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "そのファイルが存在している理由が分からない場合は、通常置き換えたほうが安全で" "す。" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "変更(_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "そのまま(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "置き換える(_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "詳細(_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "%s の終了を待っています" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "ダウンロード中 %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "ローカルリポジトリ" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "%s からダウンロードしています" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s の構成" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s の詳細" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%sの署名済み詳細ファイル" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s で利用可能なパッケージ" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s で利用可能なソース" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s で利用可能な翻訳" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s(%s)用の%sの翻訳データ" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s用の%sの翻訳データ" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "(%s)用の%sの翻訳データ" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "パッケージ %s は利用できません" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "パッケージ %s はインストールされません" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "バージョン %s の %s はインストールされていません" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "パッケージ %s はインストール済みです" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "バージョン %s の %s は利用できません。" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "キーサーバーのURLが無効です: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "サーバーのプロトコルが無効です: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "キーIDが無効です: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "キー %s を %s からダウンロードしてインストールするのに失敗しました:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "キーファイル %s はインストールできませんでした: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "フィンガープリント %s のキーを削除できませんでした: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "パッケージ %s は削除できません" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "バージョン %s の %s はインストールされていません" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "以前のバージョン %s の %s はインストール済みです" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "バージョン %s の %s はインストール済みです" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "バージョン %s の %s は利用できません" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "ダウングレードする %s のバージョンを指定してください" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "最新バージョン %s の %s はインストール済みです" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "パッケージ %s は %s リリースでは利用できません。" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "パッケージ %s は削除できません" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "このパッケージは、正しいInstall-Sizeが記述されていません。Debian Policy " "5.6.20を確認してください。" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "ライセンスキーが空です" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "ライセンスキーに実行コードを含めることはできません。" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "ライセンスキーのパス %s が無効です" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "ライセンスキーはすでに存在しています: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "ライセンスキーの場所はシンボリックリンクを含んでいるため安全ではありません。" "パス%sは%sにマップされています。" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "キーのインストール先のディレクトリは存在しません: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "キーの書き込みに失敗しました: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "以下のパッケージは依存関係を満たしていません:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "しかし、仮想パッケージです" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "しかし、インストールされていません" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "しかし、インストールされません" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "しかし、%s はインストール済みです" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "しかし、%s はインストールされます" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "信頼済みソフトウェアベンダーリストへの鍵の追加に失敗しました" aptdaemon-1.1.1+bzr982/po/kk.po0000644000000000000000000012530212375372771014250 0ustar 00000000000000# Kazakh translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-08-19 16:56+0000\n" "Last-Translator: jmb_kz \n" "Language-Team: Kazakh \n" "Language: kk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Сенімді жабдықтаушылардың кілттер тізімі" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Сенімді кілттер тізімін көру үшін, аутентификация қажет." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Жүктелген пакеттер файлдарын өшіру" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Бағдарламалар қайнар көздерін өзгерту" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Пакет файлын орнату" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Осы пакетті орнату үшін, аутентификация қажет." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Пакет туралы ақпаратты жаңарту" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Бағдарламалар тізімдемесін жаңарту үшін, аутентификация қажет." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Пакеттерді орнату немесе жою" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Жаңа репозиторий қосып, оның ішінен пакеттерді орнату" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Ақылы бағдарламалар жаңа репозиторий қосып, оның ішінен пакеттерді орнату" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Пакетті жаңарту" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Жаңартуларды орнату үшін, аутентификация қажет." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Басқа пайдаланушының пакеттерді басқару тапсырмасын аяқтау." #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Бағдарламаларды жүктеу үшін прокси серверді орнату" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Бағдарламаларды прокси сервер арқылы жүктеу үшін, аутентификация қажет." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ҚАТЕ" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB/s жылдамдықта %sB-нан, %sB жүктелінді" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB-нан, %sB жүктелінді" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ҚАТЕ:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Сізге бұл іс-әрекетті орындауға болмайды." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Тәуелділіктерге рұқсат беру" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sБ ***архивтер*** алу қажет." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Бұл амалдан кейін қосымша %sБ дискілік орын қолданылатын болады." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Бұл амалдан кейін қосымша %sБ дискілік орын болатын болады." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Жалғастыруды қалайсыз ба [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Кэшты жаңарту" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Бұрыңғы аяқталмаған орнатылымды бітіруге тырысу" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Осы пакеттерді орнату" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Осы пакеттерді қайта орнату" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Осы пакеттерді жою" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Осы пакеттерді толық жою (баптаулар файлдарымен бірге)" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Жүйені қауіпсіз әдіспен жаңарту" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Мүмкін болса пакеттерді орнатып та, жойып та жүйені жаңарту" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Жабдықтаушыны сенімділер тізіміне қосу" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Көрсетілген deb-жолынан жаңа қайнар көзді қосу" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Сенімді жабдықтаушылар кілттер тізімі" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Белсенді болмағаны үшін қызметті өшірмеңіз" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Ішкі өңдеу туралы ақпарат көрсету" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Шығу және жұмыс істеп тұрған қызметті алмастыру" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Пайдаланушы туралы ақпарат статистикасын көрсетілген файлда сақтау" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Жүйеге ешбір өзгертулерді енгізбейді (тек өндірушілер қолдану үшін)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Орнатылған файл" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Орнатылған пакеттер" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Кілт файлдан құрылды" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Жаңартылған кэш" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Сенімді кілт жойылды" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Жойылған пакеттер" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Жаңартылған пакеттер" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Жаңартылған жүйе" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Іске асқан өзгертулер" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Жөнделінген аяқталмаған орнатылым" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Жөнделінген бұзылған тәуелділіктер" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Бағдарлама қайнар көзі тізімге қосылды" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Дистрибутив құрамдас бөлігі іске қосылды" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Сәтті" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Болдырылмаған" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Сәтсіз" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Файлдың орнатылуы" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Пакеттердің орнатылуы" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Кілттің файлдан құрылуы" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Кэштің жаңартылуы" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Сенімді кілттің жойылуы" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Пакеттер жойылуы" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Пакеттердің жаңартылуы" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Жүейнің жаңартылуы" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Өзгерістерді қолдану" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Аяқталмаған орнатылымды жөнделуде" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Бағдарлама қайнар көзін тізімге қосу" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Дистрибутив құрамдас бөлігін іске қосу" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Пакет файлдың орнатылымы сәтсіз" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Бағдарламаны орнату сәтсіз" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Бағдарламалар тізімін жаңарту сәтсіз" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Кілтті сенімді бағдарлама вендорлар тізіміне алып тастау мүмкін емес" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Бағдарламаны жою сәтсіз" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Бағдарламаны жаңарту сәтсіз" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Жүйені жаңарту сәтсіз" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Бағдарламадағы өзгерістерді сақтау сәтсіз" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Аяқталмаған орнатылымды жөндеу сәтсіз аяқталды" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Бұзылған тәуелділіктерді жөндеу сәтсіз аяқталды" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Бағдарлама қайнар көзін тізімге қосу сәтсіз аяқталды" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Дистрибутив құрамдас бөлігін іске қосу сәтсіз аяқталды" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Сіздің Интернетпенен қосылысты тексеру." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Егер сіз шеттегі бағдарламалар көздерін қолданып жатсаңыз, оларды өшіріңіз, " "себебі, олар көптеген\n" "мәселелер мен қателердің көзі болады. Содан кейін терминалда apt-get install " "-f коммандасын орындыңыз." #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Таңдалған файл, GPG кілті емес болуы мүмкін немесе ол бұзылған." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Бұл ауыр мәселе. Кейінірек қайталаңыз. Мәселе тағы да қайталанса, қате " "туралы есепті өндірушілерге жіберіңіз." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Жаңартылу қажет емес" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Орнатылым қажет емес" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Жойылуы қажет емес" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Жоюға жүйенің ажырамас бөлігі болып табылатын пакет таңдалынды." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Демон арасында байланыс үзілді. Мүмкін оның жұмысы кенет аяқталды." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Пакеттің орнатылуы немесе жойылуы сәтсіз болады." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Орнатылымның сәтсіз аяқталу, сәйкес пакеттегі қате пайда болу кесірінен " "немесе орнатылым дұрыс емес әдіспен үзілгенінен болуы мүмкін. Әрі қарай кез-" "келген бағдарламаларды орнату немесе жою үшін, осы қатені жөндеуіңіз қажет." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Сізге бұл іс-әрекетті орындауға болмайды." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Пакеттің файлдарын жүктеу мүмкін емес" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Бағдарламалар көздері туралы мәліметтерді жүктеу сәтсіз" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Пакеттің тәуелділіктері рұқсат берілу мүмкін емес" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Пакеттер жүйесі бұзынған" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Кілт орнатылмаған" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Кілт жойылмаған" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Пакеттер менеджерін қоршау сәтсіз" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Пакеттер тізімін жүктеу сәтсіз" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакет жоқ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакет орнатылып тұр" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакет орнатылмаған" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Маңызды жүйелік пакеттің жойылуы сәтсіз" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Тапсырма көріне немесе басқарылуы мүмкін емес" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Пакеттік операциясы сәтсіз" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Сенімсіз пакеттік орнатылуы тиіс" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Алдыңғы орнатылым аяқталған жоқ" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Қызметтің жүктелуін күту" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Күтіңіз" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Қажетті ақпарат тасымалдауышын күту" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Басқа бағдарламалар менеджерлер жұмысының аяқталуын күту" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Конфигурациялық файл сұранысын күту" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Орындалатын тапсырма" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Жүктелуде" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Тазарту" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Бітті" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Болдырмау" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Бағдарламалар тізімі жүктелуде" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s орнатылуда" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s қалыпқа келтірілуде" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s жойылуда" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "%s орнатылымнан кейінгі триггер орындалуда" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s жаңартылуда" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Орындалды" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Аутентификация сәтсіз" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Жүктелу" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Желі қол жетімсіз" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB/s жылдамдықта %sB-нан, %sB жүктелінді" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB-нан, %sB жүктелінді" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Толық ақпарат" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Файл" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Жүктелген %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Жүктелген" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "\"%s\" CD/DVD қажет" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Жалғастыру" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Орнату" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Қайта орнату" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Жою" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Тазарту" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Жаңарту" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Нұсқаны төмендету" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Жаңартуды өткізіп жіберу" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Қосымша бағдарламалық қамтамасыздандыру орнатылуы тиіс" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Қосымша бағдарламалық қамтамасыздандыру қайта орнатылуы тиіс" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Жаңартулар қарастырылмайтын болады" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Қосымша өзгертулер қажет" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Толығымен %sB жүктелінетін болады." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sБ дискілік орын босатылатын болады." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sБ қосымша дискілік орын қолданылатын болады." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Өзіңізбен өзгертілген \"%s\" файлды, оның соңғы нұсқасымен алмастыруды " "қалайсыз ба?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Егер сіз, ол файлдың осы жерде қайдан пайда болғанын білмеген жағдайда, оны " "әдеттегідей, қауіпсіз жерге көшіріңіз." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Өзгерістер" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Қалдыру" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Алмастыру" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Толық ақпарат" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Кілтті сенімді бағдарлама вендорлар тізіміне қосу мүмкін емес" aptdaemon-1.1.1+bzr982/po/km.po0000644000000000000000000020326512375372771014257 0ustar 00000000000000# translation of po_aptdaemon-km.po to Khmer # Khoem Sokhem , 2012. # Khmer translation for aptdaemon msgid "" msgstr "" "Project-Id-Version: po_aptdaemon-km\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-03 02:39+0000\n" "Last-Translator: Khoem Sokhem \n" "Language-Team: Khmer \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "រាយ​បញ្ជី​សោ​​របស់​ក្រុមហ៊ុន​លក់​ដែល​ជឿ​ទុកចិត្ត" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "មើល​បញ្ជី​របស់​​សោ​​​ដែល​ជឿ​ទុកចិត្ត អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "យក​ឯកសារ​កញ្ចប់​ដែល​បាន​ទាញ​យក​ចេញ" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "សម្អាត​ឯកសារ​កញ្ចប់​ដែល​បាន​ទាញ​យក អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "ផ្លាស់ប្ដូរ​ការ​កំណត់​រចនាសម្ព័ន្ធ​ផ្នែកទន់" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "ផ្លាស់ប្ដូរ​ការ​កំណត់​ផ្នែក​ទន់ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "ផ្លាស់ប្ដូរ​ឃ្លាំង​ផ្នែកទន់" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "ផ្លាស់ប្ដូរ​ការ​កំណត់​ឃ្លាំង​ផ្នែក​ទន់ អ្នក​​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "ដំឡើង​ឯកសារ​កញ្ចប់" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "ដំឡើង​កញ្ចប់​នេះ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "ធ្វើ​បច្ចុប្បន្នភាព​ព័ត៌មាន​កញ្ចប់" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "ធ្វើ​បច្ចុប្បន្នភាព​កាតាឡុក​ផ្នែក​ទន់ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "ដំឡើង ឬ​យក​កញ្ចប់​ចេញ" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "ដំឡើង ឬ​យក​ផ្នែក​ទន់​ចេញ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "បន្ថែម​ឃ្លាំង​ថ្មី និង​ដំឡើង​កញ្ចប់​ពី​​​​ឃ្លាំង​នេះ" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "ដំឡើង​ផ្នែក​ទន់​ពី​ប្រភព​ថ្មី អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "បន្ថែម​ឃ្លាំង​ថ្មី​នៃ​ផ្នែក​ទន់​ដែល​បាន​ជាវ ហើយ​ដំឡើង​កញ្ចប់​ពី​វា" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "ដំឡើង​ផ្នែក​ទន់​ដែល​បាន​ជាវ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "ធ្វើ​ឲ្យ​កញ្ចប់​ប្រសើរ​ឡើង" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "ដំឡើង​ផ្នែក​ទន់​ដែល​បាន​ធ្វើ​បច្ចុប្បន្នភាព អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "បោះបង់​​កិច្ចការ​របស់​អ្នក​ប្រើ​ផ្សេងទៀត" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "បោះបង់​ការ​ផ្លាស់ប្ដូរ​ផ្នែក​ទន់​ផ្សេង​ទៀត អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "កំណត់​ប្រូកស៊ី​សម្រាប់​ការ​ទាញ​យក​ផ្នែក​ទន់" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "ប្រើ​ម៉ាស៊ីន​បម្រើ​ប្រូកស៊ី​សម្រាប់​​ទាញ​យក​ផ្នែក​ទន់ អ្នក​ចាំបាច់​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ ។" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "កំហុស" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "បាន​ទាញ​យក %sB of %sB at %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "ទាញ​យក %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "កំហុស ៖" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "អ្នក​មិន​ត្រូវ​បាន​អនុញ្ញាត​ឲ្យ​ប្រតិបត្តិ​សកម្មភាព​នេះ​ទេ ។" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "រៀប​ជា​ជួរ" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "ដោះស្រាយ​ភាព​អាស្រ័យ" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "កញ្ចប់​ថ្មី​ដូច​ខា​ងក្រោម​នឹង​ត្រូវ​បាន​ដំឡើង (%(count)s): ៖" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "កញ្ចប់​ដូច​ខាង​ក្រោម​នឹង​ត្រូវ​បាន​ធ្វើ​ឲ្យ​ប្រសើ​រឡើង (%(count)s): ៖" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "កញ្ចប់​ដូច​ខាង​ក្រោម​នឹង​ត្រូវ​បាន​យក​ចេញ (%(count)s): ៖" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "កញ្ចប់​ដូច​ខាង​ក្រោម​នឹង​ត្រូវ​បាន​បន្ទាប (%(count)s): ៖" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "កញ្ចប់​ដូច​ខាង​​ក្រោម​នឹង​ត្រូវ​បាន​ដំឡើង​ឡើង​វិញ (%(count)s): ៖" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "កញ្ចប់​ដូច​ខាងក្រោម​ត្រូវ​បាន​​បន្ថយ​ក្រោម (%(count)s): ៖" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "ត្រូវ​ទទួល​យក %sB នៃ​​​ប័ណ្ណសារ ។" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "បន្ទាប់​ពី​​ការ​ប្រតិបត្តិការ​នេះ %sB នៃ​ទំហំ​ថាស​បន្ថែម​នឹង​ត្រូវ​បាន​ប្រើ ។" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "បន្ទាប់​ពី​ការ​ប្រតិបត្តិការ​នេះ %sB នៃ​ទំហំ​ថាស​បន្ថែម​នឹង​​ទំនេរ ។" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "តើ​អ្នក​ចង់​បន្ត​ [Y/n] ឬ ?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "ដើម្បី​ប្រតិបត្តិ​ការ​​​កញ្ចប់​ច្រើន​ជាង​មួយ ដាក់​ឈ្មោះ​កញ្ចប់​នៅ​ក្នុង​សញ្ញា​​សម្រង់ ៖\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "ធ្វើ​ឲ្យ​ឃ្លាំង​ស្រស់" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "ព្យាយាម​​ដោះស្រាយ​ភាព​អាស្រ័យ​ដែល​ខូច ។ ប្រតិបត្តិការ​មាន​​គ្រោះថ្នាក់ នៅ​ពេល​​ព្យាយាម​យក​កញ្ចប់​ជា​ច្រើន​ចេញ " "។" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "ព្យាយាម​បញ្ចប់​ការ​ដំឡើង​ដែល​មិន​ទាន់​បាន​បញ្ចប់​មុន" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "ដំឡើង​កញ្ចប់​ដែល​បាន​ផ្ដល់" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "ដំឡើង​កញ្ចប់​ដែល​បាន​ផ្ដល់​ឡើងវិញ" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "យក​កញ្ចប់​ដែល​បាន​ផ្ដល់​ចេញ" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "យក​កញ្ចប់​ដែល​បាន​ផ្ដល់​ចេញ​រួម​នឹង​ឯកសារ​ការ​កំណត់​រចនាសម្ព័ន្ធ" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "បន្ទាប​កញ្ចប់​ដែល​បាន​ផ្ដល់" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "បាន​បដិសេធ ៖ សូម​ប្រើ​ --សុវត្ថិភាព​ធ្វើ​ឲ្យ​ប្រសើរ​ឡើង" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "ធ្វើ​ឲ្យ​ប្រព័ន្ធ​នៅ​ក្នុង​មធ្យោបាយ​សុវត្ថិភាព​ប្រសើរ​ឡើង" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "ធ្វើ​ឲ្យ​ប្រព័ន្ធ​ប្រសើរ​ឡើង ​ការ​ដំឡើង និង​យក​កញ្ចប់​ចេញ" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "បន្ថែម​ក្រុមហ៊ុន​លក់​​​ដែល​ជឿ​ទុកចិត្ត" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "បន្ថែម​​លេខ​សម្គាល់​សោ​ក្រុមហ៊ុន​លក់​ (ចាំបាច់​ផង​ដែរ --ម៉ាស៊ីន​បម្រើ​សោ)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "ប្រើ​ម៉ាស៊ីន​បម្រើ​សោ​ដែល​បាន​ផ្ដល់​សម្រាប់​ស្វែងរក​សោ" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "បន្ថែម​ឃ្លាំង​ថ្មី​ពី deb-line ដែល​បាន​ផ្ដល់" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "បញ្ជាក់​ឯកសារ sources.list.d ដែល​ឃ្លាំង​គួរ​តែ​ត្រូវ​បាន​បន្ថែម ។" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "រាយ​បញ្ជី​សោ​ក្រុមហ៊ុន​លក់​ដែល​ជឿ​ទុកចិត្ត" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "យក​សោ​ដែល​ជឿ​ទុកចិត្ត​​នៃ​ស្នាម​ម្រាមដៃ​ដែល​បាន​ផ្ដិត​ចេញ" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "កំណត់​រចនាសម្ព័ន្ធ​​កញ្ចប់​ដែល​បាន​ដំឡើង​​ឡើងវិញ ។ អាទិភាព​អប្បបរមា​នៃ​សំណួរ​ដែល​អាច​ត្រូវ​បាន​បញ្ជាក់" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "អាទិភាព debconf អប្បបរមា​នៃ​សំណួរ​ដែល​ត្រូវ​បាន​បង្ហាញ" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "កុំ​ភ្ជាប់​ជាមួយ​ស្ថានីយ apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "អនុញ្ញាត​ឲ្យ​កញ្ចប់​ពី​ប្រភព​ដែល​មិន​បាន​ផ្ទៀងផ្ទាត់​ភាព​​ត្រឹមត្រូវ" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "បង្ហាញ​ព័ត៌មាន​បន្ថែម​​អំពី​កញ្ចប់ ។ បច្ចុប្បន្ន​មាន​តែ​លេខ​កំណែ​ប៉ុណ្ណោះ" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "រង់ចាំ​ការ​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "កុំ​បិទ​ដេមិន ដោយសារ​តែ​អសកម្មភាព" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "កុំ​ផ្ទុក​កម្មវិធី​ជំនួយ" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "បង្ហាញ​ព័ត៌មាន​អំពី​ដំណើរការ​ខាងក្នុង" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "បោះបង់ និង​ជំនួស​ដេមិន​ដែល​​ដំណើរការ​រួច​ហើយ" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "ស្ដាប់​ខ្សែ​បញ្ជូន​សម័យ​របស់ DBus (បាន​ទាមទារ​ឲ្យ​មាន​ការ​សាកល្បង" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "ធ្វើ​ប្រតិបត្តិការ​នៅ​ក្នុង chroot ដែល​បាន​ផ្ដល់" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "រក្សាទុក​ទម្រង់​នៅ​ក្នុង​ឯកសារ​ដែល​បាន​បញ្ជាក់" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "កុំ​ធ្វើ​ការ​ផ្លាស់ប្ដូរ​ទៅ​កាន់​ប្រព័ន្ធ (ប្រើ​តែ​ចំពោះ​អ្នក​អភិវឌ្ឍន៍​ប៉ុណ្ណោះ)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "បាន​ដំឡើង​ឯកសារ" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "បាន​ដំឡើង​កញ្ចប់" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "បាន​បន្ថែម​សោ​ពី​ឯកសារ" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "បាន​ធ្វើ​បច្ចុប្បន្ន​ឃ្លាំង" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "ស្វែងរក​រួចហើយ" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "បាន​យក​សោ​ដែល​បាន​ជឿ​ទុកចិត្ត​ចេញ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "បាន​យក​កញ្ចប់​ចេញ" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "បាន​ធ្វើ​បច្ចុប្បន្នភាព​កញ្ចប់" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "បាន​ធ្វើ​ឲ្យ​ប្រព័ន្ធ​ប្រសើរ" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "បាន​អនុវត្ត​ការ​ផ្លាស់ប្ដូរ" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "បាន​ជួសជុល​ការ​ដំឡើង​ដែល​មិន​ទាន់​បាន​បញ្ចប់" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "បាន​ជួសជុល​ភាព​អាស្រ័យ​ដែល​ខូច" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "បាន​បន្ថែម​ប្រភព​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "បាន​បើក​សមាសភាគ​នៃ​ការ​ចែកចាយ" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "បាន​យក​ឯកសារ​កញ្ចប់​ដែល​បាន​ទាញ​យក​ចេញ" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "បាន​កំណត់​រចនាសម្ព័ន្ធ​កញ្ចប់​ដែល​បាន​ដំឡើង​ឡើងវិញ" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "ជោគជ័យ" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "បាន​បោះបង់" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "បរាជ័យ" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ដំឡើង​ឯកសារ" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "ដំឡើង​កញ្ចប់" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "បន្ថែម​សោ​ពី​ឯកសារ" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "ធ្វើ​បច្ចុប្បន្នភាព​ឃ្លាំង" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "យក​សោ​ដែល​ជឿ​ទុកចិត្តចេញ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "យក​កញ្ចប់​ចេញ" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "ធ្វើ​បច្ចុប្បន្នភាព​កញ្ចប់" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "ធ្វើ​ឲ្យ​ប្រព័ន្ធ​ប្រើសើរ" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "អនុវត្ត​ការ​ផ្លាស់ប្ដូរ" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "ជួសជុល​ការ​ដំឡើង​ដែល​មិន​ទាន់​បាន​បញ្ចប់" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "ជួសជុល​ផ្នែក​ទន់​ដែល​បាន​ដំឡើង" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "បន្ថែម​ប្រភព​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "បើក​សមាសភាគ​នៃ​​ការ​ចែកចាយ" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "យក​ឯកសារ​កញ្ចប់​ដែល​បាន​ទាញ​យក​ចេញ" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "កំណត់​រចនាសម្ព័ន្ធ​កញ្ចប់​ដែល​បាន​ដំឡើង​ឡើងវិញ" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "ស្វែងរក" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ដំឡើង​ឯកសារ​កញ្ចប់" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ដំឡើង​​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ធ្វើ​ឲ្យ​បញ្ជី​ផ្នែក​ទន់​ស្រស់" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​យក​ក្រុមហ៊ុន​លក់​ចេញ​ពី​បញ្ជី​ដែល​ជឿ​ទុកចិត្ត" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​យក​ផ្នែក​ទន់​ចេញ" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ធ្វើ​បច្ចុប្បន្នភាព​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ធ្វើឲ្យ​ប្រព័ន្ធ​ប្រសើរ​ឡើង" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​អនុវត្ត​ការ​ផ្លាស់ប្ដូរ​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ជួសជុល​ការ​ដំឡើង​ដែល​មិន​ទាន់​បាន​បញ្ចប់" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ជួសជុល​ភាព​អាស្រ័យ​ដែល​ខូច" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​បន្ថែម​ប្រភព​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​បើក​សមាសភាគ​​នៃ​ការ​ចែកចាយ" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​យក​​ឯកសារ​កញ្ចប់​ដែល​បាន​ទាញ​យក​ចេញ" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "បាន​បរាជ័យ​​ការ​ស្វែងរក" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "បន្ថែម​សោ​អាជ្ញាប័ណ្ណ" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "ពិនិត្យ​មើល​ការ​តភ្ជាប់​អ៊ីនធឺណិត​របស់​អ្នក ។" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "ពិនិត្យ​មើល ប្រសិនបើ​អ្នក​កំពុង​ប្រើ​ឃ្លាំង​ភាគី​ទី​បី ។ ប្រសិនបើ​បិទ នៅ​ពេល​ដែល​ពួកវា​មាន​ប្រភព​បញ្ហា ។\n" "រត់​​ពាក្យ​បញ្ជា​នៅ​ក្នុង​ស្ថានីយ ៖ apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "ឯកសារ​ដែល​បាន​ជ្រើស​​អាច​មិន​មែន​​ជា​ឯកសារ​សោ​របស់ GPG ឬ​វា​អាច​ខូច ។" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "សោ​ដែល​បាន​ជ្រើស​មិន​អាច​យក​ចេញ​បាន​ទេ ។ ពិនិត្យ​មើល​ថា​អ្នក​បាន​ផ្ដិត​ម្រាម​ដៃ​ត្រឹមត្រូវ​​ហើយ​ ។" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "ពិនិត្យមើល ប្រសិនបើ​​អ្នក​កំពុង​ដំណើរការ​ឧបករណ៍​ការ​គ្រប់គ្រង​ផ្នែក​ទន់​បច្ចុប្បន្ន ឧ. Synaptic ឬ " "aptitude ។ អនុញ្ញាត​ឲ្យ​តែ​ឧបករណ៍​​ប៉ុណ្ណោះ​ធ្វើ​ការ​ផ្លាស់ប្ដូរ​​នៅ​ពេល​តែ​មួយ​បាន ។" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "វា​ជា​បញ្ហា​ធ្ងន់ធ្ងរ ។ ព្យាយាមម្ដងទៀត ។ ប្រសិនបើ​នៅ​តែ​មាន​បញ្ហា​លេចឡើង​ទៀត​នោះ សូម​រាយការណ៍​កំហុស​​ទៅ​" "អ្នក​អភិវឌ្ឍន៍ ។" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "ពិនិត្យមើល​អក្ខរាវិរុទ្ធ​នៃ​ឈ្មោះ​កញ្ចប់ នោះ​ឃ្លាំង​នឹង​ត្រូវ​បាន​បើក​ ។" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "មិន​ចាំបាច់​ធ្វើ​បច្ចុប្បន្នភាព​​ឡើយ ។" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "មិន​ចាំបាច់​​​​ការ​ដំឡើង​ឡើយ" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "មិន​ចាំបាច់​​ការ​យកចេញ​ឡើយ ។" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "អ្នក​បាន​ស្នើ​យក​កញ្ចប់​ចេញ​ដែល​ជា​ផ្នែក​ចាំបាច់​របស់​ប្រព័ន្ធ​របស់​អ្នក ។" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "ការ​តភ្ជាប់​ទៅកាន់​ដេមិន​ខូច ។ ភាគច្រើន​ដេមិន​ផ្ទៃខាងក្រោយ​គាំង ។" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "បាន​បរាជ័យ​ក្នុង​ការ​​ដំឡើង ឬ​​ក្នុង​ការ​យក​កញ្ចប់​ផ្នែក​ទន់​ចេញ ។" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "មិន​គាំទ្រ​លក្ខណ​ពិសេស​ដែល​បាន​ស្នើ​ឡើយ" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "ហាក់​បី​ដូច​​ជា​​មាន​កំហុស​ក្នុង​ការ​សរសេរ​កម្មវិធី​នៅ​ក្នុង aptdaemon ផ្នែក​ទន់​ដែល​អនុញ្ញាត​ឲ្យ​អ្នក ដំឡើង/​យក​" "ចេញ ផ្នែក​ទន់ ត្រូវ​ប្រតិបត្តិ​កិច្ចការ​ដែល​ទាក់ទង​ការ​គ្រប់គ្រង​កញ្ចប់​ផ្សេង ។" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "កំហុស​នេះ​អាច​បណ្ដាល​មក​ពី​​​កញ្ចប់​ផ្នែក​ទន់​​​បន្ថែម​ដែល​បាន​ទាមទារ ខូច​ឬ​មិន​អាច​ដំឡើង​បាន ។ អាច​ប៉ះ​ទង្គិច​រវាង​" "កញ្ចប់​ផ្នែក​ទន់ ដែល​មិន​ត្រូវ​បាន​អនុញ្ញាត​ឲ្យ​ដំឡើង​នៅ​ពេល​តែមួយ ។" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "ការ​ដំឡើង​អាច​បរាជ័យ ដោយសារ​តែ​​មាន​កំហុស​នៅ​ក្នុង​កញ្ចប់​ផ្នែក​ទន់​មិន​ត្រូវគ្នា ឬ​វា​អាច​ត្រូវ​បាន​បោះបង់​ ។ អ្នក​" "ត្រូវ​ជួសជុល​វា​សិន មុន​ពេល​អ្នក​ដំឡើង ឬ​យក​ផ្នែក​ទន់​ចេញ ។" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "សូម​ចម្លង​ឯកសារ​ទៅកាន់​កុំព្យូទ័រ​មូលដ្ឋាន​របស់​អ្នក ហើយ​ពិនិត្យ​មើល​សិទ្ធ​ឯកសារ ។" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "ការ​ដំឡើង​កញ្ចប់​​ដែល​ផ្អាក​ស្តង់ដារ​គុណភាព​មិន​​ត្រូវ​បាន​អនុញ្ញាត​ឡើយ ។ វា​​អាច​បណ្ដាល​ឲ្យ​មាន​បញ្ហា​ធ្ងន់ធ្ងរ​នៅ​" "លើ​កុំព្យូទ័រ​របស់​អ្នក ។ សូម​ទាក់ទង​អង្គភាព ឬ​អ្នក​ដែល​បាន​ផ្ដល់​ឯកសារ​កញ្ចប់​នេះ ។" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "សោ​អាជ្ញាប័ណ្ណ​ដែល​បាន​ទាញ​យក​ត្រូវ​បាន​ទាមទារ ដើម្បី​ដំណើរការ​ផ្នែក​ទន់​​មិន​ត្រឹមត្រូវ ឬ​មិន​អាច​ត្រូវ​បាន​​​ដំឡើង​​​" "បច្ចុប្បន្ន ។\n" "មើល​សេចក្ដី​លម្អិត​សម្រាប់​ព័ត៌មាន​បន្ថែម ។" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "ការ​ធ្វើ​ឲ្យ​ប្រសើរ​ឡើង​​ដែល​មាន​ទាំងអស់​ត្រូវ​បាន​ដំឡើង​រួច​ហើយ ។" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "សោ​អាជ្ញាប័ណ្ណ​​ដែល​អនុញ្ញាត​ឲ្យ​អ្នក​ប្រើ​ផ្នែក​ទន់​អាច​មិន​ត្រូវ​បាន​ទាញ​យក ។ សូម​ពិនិត្យ​មើល​ការ​តភ្ជាប់​បណ្ដាញ​របស់​" "អ្នក ។" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "អ្នក​មិន​ត្រូវ​បាន​អនុញ្ញាត​ឲ្យ​ប្រតិបត្តិ​សកម្មភាព​នេះ​ទេ ។" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ទាញ​យក​ឯកសារ​កញ្ចប់" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ទាញ​យក​ព័ត៌មាន​​ឃ្លាំង" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "មិន​អាច​ដោះស្រាយ​ភាព​អាស្រ័យ​របស់​កញ្ចប់​ទេ" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "ខូច​ប្រព័ន្ធ​កញ្ចប់" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "មិន​បាន​ដំឡើង​សោ​ឡើយ" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "មិន​បាន​យក​សោ​ចេញ​ឡើយ" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ចាក់សោ​កម្មវិធី​គ្រប់គ្រង​កញ្ចប់" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ផ្ទុក​បញ្ជី​កញ្ចប់" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "មិន​មាន​កញ្ចប់​ឡើយ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "កញ្ចប់​ត្រូវ​បាន​ធ្វើ​ឲ្យ​ទាន់សម័យ​រួចហើយ" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "បាន​ដំឡើង​កញ្ចប់​រួច​ហើយ" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "មិន​ទាន់​បាន​ដំឡើង​កញ្ចប់​នៅ​ឡើយ​ទេ" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​យក​កញ្ចប់​ប្រព័ន្ធ​ចេញ" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "មិន​អាច​ត្រួតពិនិត្យ​ភារកិច្ច​បាន​ទេ" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "បាន​បរាជ័យ​ប្រតិបត្តិការ​កញ្ចប់" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "ទាមទារ​ការ​ដំឡើង​កញ្ចប់​ដែល​មិន​ជឿ​ទុកចិត្ត" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "ការ​ដំឡើង​មុន​មិន​ទាន់​ត្រូវ​បាន​បញ្ចប់​នៅ​ឡើយ​ទេ" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "កញ្ចប់​គ្មាន​គុណភាព" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "មិន​អាច​បើក​ឯកសារ​កញ្ចប់​បាន​ទេ" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "គ្មាន​លក្ខណ​ពិសេស​ដែល​បាន​គាំទ្រ​ឡើយ" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ទាញ​យក​សោ​អាជ្ញាប័ណ្ណ" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​​ដំឡើង​សោ​អាជ្ញាប័ណ្ណ" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "ប្រព័ន្ធ​ហួស​សម័យ​ហើយ" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "បាន​កើត​ឡើង​កំហុស​ដែល​មិន​អាច​ដោះស្រាយ​បាន" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "កំពុង​រង់​ចាំ​សេវា​ចាប់ផ្ដើម" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "រង់ចាំ" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "រង់ចាំ​ទាមទារ​មធ្យម" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "រង់ចាំ​កម្មវិធី​គ្រប់គ្រង​ផ្នែក​ទន់​ផ្សេងទៀត ដើម្បី​បោះបង់" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "រង់ចាំ​ប្រអប់​បញ្ចូល​​ឯកសារ​ការ​កំណត់​រចនាសម្ព័ន្ធ" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "កំពុង​ដំណើរការ​ភារកិច្ច" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ការ​ទាញ​យក" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "សួរ​ប្រភព​ផ្នែក​ទន់" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "សម្អាត" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "បាន​បញ្ចប់" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "បោះបង់" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "បោះបង់​បញ្ជី​ផ្នែក​ទន់" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "ដំឡើង %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "កំណត់​រចនាសម្ព័ន្ធ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "យកចេញ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "យក​ចេញ %s បាន​បញ្ចប់" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "សម្គាល់​ភាព​បាត់បង់​នៃ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "ដំណើរការ​ការ​ដំឡើង​ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "ធ្វើ​ឲ្យ​ឲ្យ​ប្រសើរ​​ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "ស្រាយ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "រៀបចំ​ការ​ដំឡើង %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "រៀបចំ​ការ​កំណត់​រចនាសម្ព័ន្ធ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "រៀបចំ​ការ​យក​ចេញ​ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "រៀបចំ​ការ​យក​ចេញ​បញ្ចប់​នៃ​​ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "បាន​ដំឡើង %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "បាន​យក %s ចេញ​បញ្ចប់​ទាំងស្រុង" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "បាន​យក​ចេញ %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "ធ្វើ​រួច" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹមត្រូវ" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "ទៅ​ប្រមូល​យក" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "ទំនេរ" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "គ្មាន​បណ្ដាញ​ឡើយ" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "ដំណើរការ %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "បាន​ទាញ​យក %sB of %sB at %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "ទាញ​យក %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "សេចក្ដី​លម្អិត" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "ឯកសារ" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "បាន​ទាញ​យក %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "បាន​ទាញ​យក" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "ទាមទារ ស៊ីឌី​​/ឌីវីឌី '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "សូម​បញ្ចូល​ ស៊ីឌី/ឌីវីឌី ខាងលើ​ទៅ​ក្នុង​ដ្រាយ '%s' ដើម្បី​ដំឡើង​កញ្ចប់​ផ្នែក​ទន់​ ។" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "បន្ត" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "ដំឡើង" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "ដំឡើង​ឡើងវិញ" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "យកចេញ" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "លុប​បំបាត់" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "ធ្វើ​ឲ្យ​ប្រសើរ" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "បន្ទាប" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "រំលង​ការ​ធ្វើ​ឲ្យ​ប្រើសើរ" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "សូម​មើល​បញ្ជី​សម្រាប់​ការ​ផ្លាស់ប្ដូរ​ខាងក្រោម ។" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "ដំឡើង​ផ្នែក​ទន់​ដែល​​បន្ថែម" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "ដំឡើង​ផ្នែក​ទន់​​ដែល​បន្ថែម​ឡើង​វិញ" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "យក​ចេញ​ផ្នែក​ទន់​ដែល​​បន្ថែម" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "លុប​បំបាត់​ផ្នែក​ទន់​ដែល​បន្ថែម" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "ធ្វើ​ឲ្យ​​ផ្នែក​ទន់​ដែល​បន្ថែម​ប្រសើរ" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "បន្ទាប​ផ្នែក​ទន់​ដែល​បន្ថែម" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "រំលង​ការ​ធ្វើ​បច្ចុប្បន្នភាព" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "ទាមទារ​ការ​ផ្លាស់ប្ដូរ​ដែល​បន្ថែម" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB នឹង​ត្រូវ​បាន​ទាញ​យក​ជា​សរុប ។" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "មាន​ទំហំ​ថា %sB ទំនេរ ។" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "ទំហំ​ថាស​​ច្រើន %sB នឹង​ត្រូវ​បាន​ប្រើ ។" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "ជំនួស​ការ​ផ្លាស់ប្ដូរ​របស់​អ្នក​នៅ​ក្នុង '%s' ជាមួយ​កំណែ​ថ្មី​​របស់​ឯកសារ​ការ​កំណត់​រចនាសម្ព័ន្ធ​ឬ ?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "ប្រសិនបើ​អ្នក​មិន​ស្គាល់​មូលហេតុ​ឯកសារ​នោះ​ទេ តាម​ធម្មតា​វា​មាន​​សុវត្ថិភាព​ក្នុង​ការ​ជំនួស​វា ។" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "ការ​ផ្លាស់ប្ដូរ" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "រក្សាទុក" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "ជំនួស" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "សេចក្ដី​លម្អិត" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "រង់ចាំ %s ដើម្បី​ចាកចេញ" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "ទាញយក %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "ឃ្លាំង​មូលដ្ឋាន" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Downloading from %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "រចនាសម្ព័ន្ធ %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "សេចក្ដី​ពិពណ៌នា​អំពី %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "សេចក្ដី​ពិពណ៌នា​អំពី​ហត្ថលេខា %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "កញ្ចប់​ដែល​មាន​ពី %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "ប្រភព​ដែល​មាន​ពី %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "ការ​បកប្រែ​ដែល​មាន​ពី %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "ការ​បកប្រែ %s (%s) ពី %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "ការ​បកប្រែ​ %s ពី %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "ការ​បកប្រែ​ (%s) ពី %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "គ្មាន​កញ្ចប់ %s ឡើយ" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "មិន​បាន​ដំឡើង​កញ្ចប់ %s ឡើយ" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "មិន​បាន​ដំឡើង​កំណែ %s របស់ %s ឡើយ" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "បាន​ដំឡើង​កញ្ចប់ %s រួចហើយ" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "មិន​មាន​កំណែ %s របស់ %s ឡើយ ។" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "បាន​បរាជ័យ​​ក្នុង​ការ​ទាញ​យក និង​ដំឡើង​សោ %s ពី %s ៖\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "មិន​អាច​ដំឡើង​ឯកសារ​សោ %s បាន​ទេ ៖ %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "មិន​អាច​យក​ចេញ​សោ​ដែល​មាន​​ស្នាម​ផ្ដិត​ម្រាមដៃ %s បាន​ទេ ៖ %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "មិន​អាច​យក​​​ចេញ​កញ្ចប់ %s ​បាន​ទេ ។" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "មិន​បាន​ដំឡើង​កំណែ %s របស់ %s ឡើយ" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "បាន​ដំឡើង​កំណែ​មុន %s របស់ %s រួច​ហើយ" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "បាន​ដំឡើង​កំណែ %s របស់ %s រួច​ហើយ" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "គ្មាន​កំណែ %s របស់ %s ឡើយ" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "អ្នក​ត្រូវ​បញ្ជាក់​កំណែ​ដែល​ត្រូវ​បន្ទាប %s ទៅ" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "បាន​ដំឡើង​កំណែ​ថ្មី %s របស់ %s រួច​ហើយ" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "គ្មាន​​កញ្ចប់ %s នៅ​ក្នុង​ការ​ចេញ​ផ្សាយ %s ឡើយ ។" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "មិន​អាច​យក​​​ចេញ​​កញ្ចប់​ %s ​បាន​ទេ" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "កញ្ចប់​ដែល​មិន​បាន​ផ្ដល់​ឲ្យ​វាល​ត្រួតពិនិត្យ​ទំហំ​ដែល​បាន​ដំឡើង​ត្រឹមត្រូវ ។ សូម​មើល​គោលការណ៍​ដេបៀន 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "សោ​អាជ្ញាប័ណ្ណ​​ទទេ" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "សោ​អាជ្ញាប័ណ្ណ​មិន​ត្រូវ​បាន​អនុញ្ញាត​​មាន​កូដ​ឯកសារ​ប្រតិបត្តិ​បាន​ទេ ។" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "ផ្លូវ​សោ​អាជ្ញាប័ណ្ណ %s មិន​ត្រឹមត្រូវ​ឡើយ" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "សោ​អាជ្ញាប័ណ្ណ​មាន​រួចហើយ ៖ %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "ទីតាំង​របស់​សោ​អាជ្ញាប័ណ្ណ​គឺ​គ្មាន​សុវត្ថិភាព នៅ​ពេល​វា​មាន​តំណ​ជា​​សញ្ញា ។ ផ្លូវ %s ទៅកាន់ %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "ថត​ដែល​​ត្រូវ​ដំឡើង​សោ​មិន​ទាន់​មាន​នៅ​ឡើយ​ទេ ៖ %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "បាន​បរាជ័យ​ក្នុង​ការ​សរសេរ​ឯកសារ​សោ​ទៅកាន់ ៖ %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "កញ្ចប់​បន្ទាប់​មិន​បាន​​ជួប​ភាព​អាស្រ័យ​ទេ ៖" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ប៉ុន្តែ​​វា​ជា​កញ្ចប់​និម្មិត" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ប៉ុន្តែ​វា​មិន​ត្រូវ​បាន​ដំឡើង​ទេ" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ប៉ុន្តែ​វា​នឹង​មិន​ត្រូវ​បាន​ដំឡើង​ឡើយ" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ប៉ុន្តែ %s ត្រូវ​បាន​ដំឡើង" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ប៉ុន្តែ %s ត្រូវ​បាន​ដំឡើង" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "បាន​​បរាជ័យ​ក្នុង​ការ​បន្ថែម​សោ​ទៅកាន់​បញ្ជី​​របស់​ក្រុមហ៊ុន​លក់​ផ្នែក​ទន់​ដែល​ជឿ​ទុកចិត្ត" aptdaemon-1.1.1+bzr982/po/kn.po0000644000000000000000000010160312375372771014251 0ustar 00000000000000# Kannada translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2010-10-20 11:33+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: Kannada \n" "Language: kn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "ಬೇರೊಬ್ಬ ಬಳಕೆದಾರರ ಕಾರ್ಯವನ್ನು ತೊಡೆದು ಹಾಕು" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ko.po0000644000000000000000000013573212375372771014264 0ustar 00000000000000# Korean translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-30 12:15+0000\n" "Last-Translator: Kim Boram \n" "Language-Team: Korean \n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "신뢰하는 공급자의 키 목록" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "신뢰할 수 있는 키의 목록을 보려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "다운로드한 패키지 파일을 제거" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "다운로드한 패키지 파일을 지우려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "소프트웨어 설정 바꾸기" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "소프트웨어 설정을 바꾸려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "소프트웨어 저장소 바꾸기" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "소프트웨어 저장소 설정을 바꾸려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "패키지 파일 설치" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "이 패키지를 설치하려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "패키지 정보 업데이트" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "소프트웨어 카탈로그를 업데이트하려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "패키지 설치 혹은 제거" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "프로그램을 추가 혹은 제거하려면 인증이 필요합니다." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "매우 신뢰하는 저장소에서 소프트웨어 설치" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "소프트웨어를 설치하려면 인증을 해야합니다." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "새 저장소를 추가하고 패키지 설치하기" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "새 소스에서 소프트웨어를 설치하려면 인증이 필요합니다." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "구입한 프로그램의 저장소를 추가하고 패키지 설치" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "구입한 프로그램을 설치하려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "패키지 업그레이드" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "업데이트한 소프트웨어를 설치하려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "다른 사용자의 작업 취소" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "다른 사용자의 바뀐 소프트웨어를 취소하려면 인증이 필요합니다." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "소프트웨어 다운로드 프록시 설정" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "프록시 서버로 소프트웨어를 다운로드하려면 인증이 필요합니다." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "오류" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "다운로드함 %sB of %sB 속도 %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "다운로드함 %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "오류:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "이 작업을 실행할 수 있는 권한이 없습니다." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "대기 중" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "의존성 문제 해결 중" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "새로 설치할 패키지 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "업그레이드할 패키지 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "제거할 패키지 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "하위 버전으로 다운그레이드할 패키지 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "다시 설치할 패키지 (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "그대로 유지할 패키지 (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "압축 파일 %sB를 가져와야 합니다." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "다음 동작은 %sB의 디스크 용량을 추가로 사용합니다." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "다음 동작은 %sB의 디스크 용량을 추가로 확보합니다." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "계속 진행하시겠습니까(Y/N)?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "한 개의 패키지 이상으로 작업하려면 인용 기호로 패키지 이름을 감싸십시오.:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "캐시 다시 읽기" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "망가진 의존성을 해결하려고 합니다. 많은 패키지를 제거할 수도 있는 위험한 작업" "입니다." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "이전에 완료하지 못한 설치 다시 시도" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "해당 패키지 다시 설치" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "해당 패키지 다시 설치" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "해당 패키지 제거" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "해당 패키지와 포함된 설정 파일 제거" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "해당 패키지 다운그레이드" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "사용 불가: --safe-upgrade 옵션을 사용하십시오" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "안전하게 시스템 업그레이드" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "패키지를 설치 혹은 제거하면서 시스템 업그레이드" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "해당 공급자를 신뢰하는 항목으로 추가" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "공급자의 키 ID 추가 (--keyserver 옵션도 필요합니다.)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "키를 검색하기 위하여 주어진 키 서버를 사용" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "주어진 deb-line에서 새 공급자를 추가합니다." #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "추가해야 할 공급자의 대안 sources.list.d 파일을 지정합니다." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "신뢰하는 공급자의 키의 목록 표시" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "주어진 지문을 가진 신뢰하는 키 제거" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "설치한 패키지를 다시 설정합니다. 추가적으로 질의의 우선 순위를 최소화할 수 있" "습니다." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "표시할 질문의 최소 debconf 우선 순위" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "apt 터미널에 첨부하지 마십시오." #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "인증하지 않은 소스의 패키지를 허용합니다." #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "패키지에 대한 추가 정보 표시. 현재는 버전만 표시 중" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "인증을 기다리는 중" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "중지한 상태이므로 데몬을 종료하지 마십시오" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "어떨 플러그인도 불러오지 않기" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "내부 작업 정보 보이기" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "끝낸 후 이미 실행 중인 데몬 바꾸기" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBUS 세션 버스 듣기 (시험 목적으로만 사용합니다)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "주어진 chroot로 작업 수행" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "명시된 파일내에 프로파일 통계를 저장합니다" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "시스템 바꾸지 않기. (개발자 전용)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "설치한 파일" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "설치한 패키지" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "파일에서 추가한 키" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "업데이트한 캐시" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "검색 완료" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "제거한 신뢰하는 키" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "제거한 패키지" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "업데이트한 패키지" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "업그레이드한 시스템" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "바뀐 내용 적용함" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "완료하지 못한 설치 상태를 복구" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "의존성 문제 해결" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "추가한 소프트웨어 소스" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "사용 중인 배포판의 구성 요소" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "다운로드한 패키지 파일 제거" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "설치한 패키지 다시 설정" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "성공" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "취소함" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "실패" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "파일 설치" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "패키지 설치" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "파일에서 키 추가" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "캐시 업데이트" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "신뢰하는 키를 제거" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "패키지 제거" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "패키지 업데이트" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "시스템 업그레이드" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "바뀐 내용 적용" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "완료하지 못한 설치 상태를 복구 중" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "설치한 소프트웨어 복구" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "소프트웨어 소스 추가" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "배포판의 구성 요소 사용" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "다운로드한 패키지 파일 제거" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "설치한 패키지 다시 설정" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "검색" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "패키지 파일의 설치 실패" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "소프트웨어 설치 실패" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "신뢰하는 소프트웨어 판매자 목록에 기를 추가할 수 없습니다." #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "소프트웨어 목록 다시 읽기 실패" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "신뢰 목록에서 공급자 제거 실패" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "소프트웨어 제거 실패" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "소프트웨어 업데이트 실패" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "시스템 업그레이드 실패" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "소프트웨어의 바뀐 내용 적용 실패" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "완료하지 못한 설치 상태 복구 작업 실패" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "의존성 문제 해결 실패" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "소프트웨어 소스 추가를 실패하였습니다." #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "배포의 구성물 활성화를 실패하였습니다." #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "다운로드한 패키지 파일 제거 실패" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "검색 실패" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "라이선스 키 추가" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "인터넷 연결 상태를 확인하십시오." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "일반적으로 문제의 원인이 되는 서드 파티 저장소를 사용 여부를 확인한 후 사용하" "고 있는 서드 파티 저장소를 사용하지 않도록 설정하십시오.또한 다음 명령을 터미" "널에서 실행하십시오: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "선택된 파일은 GPG 키 파일이 아니거나 올바르지 않은 파일입니다." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "선택한 키를 제거할 수 없습니다. 올바른 지문을 제공하는지 확인하십시오." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "현재 시냅틱 또는 apttiude와 같은 다른 소프트웨어 관리 도구를 실행 중인지 확인" "하십시오. 한번에 한 개의 도구만이 시스템을 바꿀 수 있습니다." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "이것은 심각한 문제입니다. 잠시 뒤 다시 시도하십시오. 만약 이러한 문제가 계속 " "발생한다면 개발자에게 오류를 보고해 주십시오." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "패키지 이름의 철자를 확인하십시오, 패키지 이름으로 적합한 저장소를 사용하도" "록 합니다." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "업데이트할 필요가 없습니다." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "설치할 필요가 없습니다" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "제거할 필요가 없습니다." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "시스템의 필수 패키지를 제거할 것을 요청했습니다." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "데몬 연결을 잃어 버렸습니다. 백그라운드 데몬이 충돌한 것이 이유일 가능서이 높" "습니다." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "소프트웨어의 설치 혹은 제거에 실패했습니다." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "요청한 기능을 지원하지 않습니다." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "이 것은 aptdaemon의 프로그래밍 오류인 것 같습니다. 이 소프트웨어는 프로그램" "을 설치하고 제거할 수 있게 한 후 작업과 관계 있는 다른 패키지 관리자를 실행합" "니다." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "이 오류는 요청한 추가 소프트웨어 패키지가 없거나 설치할 수 없을 경우 발생합니" "다.또한 동시에 설치할 수 없는 소프트웨어 패키지의 충돌일 수도 있습니다." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "안전성을 확인하지 않은 출처에서 패키지를 설치해야 합니다." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "패키지에 문제가 있었거나, 설치가 올바르지 않은 방법으로 취소하여 설치 과정에 " "실패했습니다.추가 소프트웨어를 설치/제거 하기 전에 우선 이 문제를 해결해야 합" "니다." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "파일을 컴퓨터로 복사하여 파일 권한을 확인해보세요." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "품질 기준에 어긋난 패키지를 설치할 수 없습니다. 이것은 컴퓨터에 문제를 일으" "킬 수 있습니다.본 패키지를 제공한 사람 혹은 기관에 연락한 후 아래의 정보를 첨" "부해주세요." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "이 소프트웨어를 사용하는데 필요한 다운로드 라이선스 키가 유효하지 않거나 올바" "로 설치할 수 없습니다.\n" "더 많은 정보를 자세한 내용을 확인하십시오." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "사용할 수 있는 모든 업그레이드를 설치했습니다." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "이 소프트웨어를 사용하는데 필요한 라이선스 키를 다운로드할 수 없습니다.네트워" "크 연결을 확인하십시오." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "이 동작을 수행할 수 있는 권한이 없습니다." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "올바르지 않은 암호를 입력했거나 인증을 취소했습니다.\n" "뿐만 아니라 암호 입력 대화 상자를 볼 수 없는 경우에는 기술적인 원인으로 이 오" "류가 발생했을 수 있습니다. 사용자의 데스크톱 환경이 PolicyKit 세션 에이전트" "를 제공하지 않습니다." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "패키지 파일 다운로드에 실패했습니다" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "저장소 정보 다운로드에 실패함" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "패키지 의존성을 해결할 수 없습니다" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "패키지 시스템이 망가졌습니다" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "키가 설치되지 않았습니다" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "키를 제거하지 않았습니다" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "패키지 관리자를 잠글 수 없습니다" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "패키지 목록을 불러오지 못했습니다" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "패키지가 존재하지 않습니다" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "페키지를 모두 업데이트했습니다" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "패키지를 이미 설치했습니다" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "패키지를 설치되지 않았습니다" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "필수 시스템 패키지를 제거할 수 없습니다" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "작업을 감시하거나 통제할 수 없습니다" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "패키지 작업 실패" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "신뢰할 수 없는 패키지를 설치해야 합니다" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "이전 설치 작업을 완료하지 못했습니다" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "패키지의 품질이 나쁩니다." #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "패키지 파일 열 수 없음" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "지원하지 않는 기능" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "라이선스 키 다운로드 실패" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "라이선스 키 설치 실패" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "시스템을 모두 업데이트했습니다" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "인증할 수 없습니다." #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "이 동작을 수행할 수 있는 권한이 없습니다." #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "처리할 수 없는 오류가 발생하였습니다." #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "서비스 시작을 기다립니다" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "대기 중" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "요구하는 미디어를 기다리는 중" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "다른 소프트웨어 관리자들이 끝나는 것을 기다립니다" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "설정 파일 프롬프트를 기다립니다" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "작업 실행 중" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "다운로드 중" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "소프트웨어 소스 질의" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "지우는 중" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "완료함" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "취소 중" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "소프트웨어 목록을 불러오는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s을(를) 설치하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s을(를) 설정하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s을(를) 제거하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s 완전하게 제거" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s이(가) 사라지지 않음" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "설치 후 트리거 %s을(를) 실행하는 중입니다" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s을(를) 업그레이드 하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s의 압축을 해제하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s을(를) 설치할 준비를 하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s을(를) 설정할 준비를 하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s을(를) 제거할 준비를 하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s을(를) 완전히 제거할 준비를 하는 중" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s을(를) 설치함" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s을(를) 완전히 제거함" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s을(를) 제거함" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "완료" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "인증을 실패했습니다" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "가져오는 중" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "대기" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "네트워크를 사용할 수 없습니다." #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s을(를) 처리하는 중" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "다운로드함 %sB of %sB 속도 %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "다운로드함 %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "자세한 내용" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "파일" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB을(를) 다운로드함" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "다운로드함" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s'이(가) 필요합니다" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "소프트웨어 패키지를 설치하려면 위 CD/DVD을(를) '%s' 드라이브에 넣어주십시오." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "계속(_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "설치" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "다시 설치" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "제거" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "완전히 제거" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "업그레이드" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "다운그레이드" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "업그레이드 건너 뛰기" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "아래의 바뀐 내용 목록을 확인하십시오." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "추가 소프트웨어를 설치해야 합니다." #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "추가 소프트웨어를 다시 설치해야 합니다." #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "추가 소프트웨어를 제거해야 합니다." #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "추가 소프트웨어를 완전히 삭제해야 합니다." #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "추가 소프트웨어를 업그레이드해야 합니다." #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "추가 소프트웨어를 다운그레이드해야 합니다." #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "업데이트를 건너 뜁니다." #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "추가로 바꿔야 합니다." #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "모두 %sB를 다운로드할 것입니다." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "디스크 공간의 %sB가 비울 것입니다." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB의 디스크 공간을 사용할 것입니다." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "파일 '%s'의 바뀐 내용을 최신 설정 파일로 바꾸시겠습니까?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "이유를 알 수는 없어도 파일이 존재한다면 그 파일은 교체해도 안전한 파일입니다." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "바뀐 내용(_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "유지(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "바꾸기(_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "자세한 내용(_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "%s이(가) 끝나는 것을 기다리는 중" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s 다운로드 중" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "로컬 저장소" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "%s에서 다운로드 중" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s 저장소의 서명" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s 저장소 설명" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s 저장소 서명의 설명" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s 저장소에서 사용할 수 있는 패키지" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s 저장소에서 사용할 수 있는 소스" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s 저장소에서 사용할 수 있는 번역" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s)의 번역을 저장소 %s에서 가져오는 중" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s 번역을 저장소 %s에서 가져오는 중" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "번역 (%s), 저장소 %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "다음 패키지를 사용할 수 없습니다 %s" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "다음 패키지가 설치되지 않았습니다 %s" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s 버전의 %s을(를) 설치하지 않았습니다" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "패키지 %s은(는) 이미 설치했습니다" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s의 %s 버전을 이용할 수 없습니다." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "키 서버 주소가 올바르지 않음: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "올바르지 않은 서버 프로토콜: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "올바르지 않은 키 ID: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "키 %s을(를) %s에서 다운로드하고 설치하지 못했습니다:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "키 파일 %s이(가) 설치되지 못했습니다: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "지문이 있는 키 %s을(를) 제거할 수 없었습니다: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "패키지 %s을(를) 제거할 수 없습니다." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "버전 %s의 %s을(를) 설치하지 않았습니다" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "이미 이전 버전 %s의 %s을(를) 설치했습니다." #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "버전 %s의 %s을(를) 이미 설치했습니다." #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s의 %s 버전을 이용할 수 없습니다." #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "%s의 다운그레이드할 버전을 선택해야 합니다." #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "이미 최신 버전 %s의 %s을(를) 설치했습니다." #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s 릴리즈에서 패키지 %s을(를) 사용할 수 없습니다." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "패키지 %s을(를) 제거할 수 없습니다" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "이 패키지는 올바른 설치 용량 정보를 제공하지 않습니다. Debian Policy 5.6.20" "을 참고하십시오." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "라이선스 키의 내용이 없음" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "라이선스 키가 내장 실행 코드를 실행할 권한이 없습니다." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "라이선스 키 경로 %s이(가) 올바르지 않습니다" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "라이선스 키가 올바르지 않습니다: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "라이선스 키의 위치가 심볼릭 링크를 포함하고 있기 때문에 불안정합니다.경로 %s" "이(가) %s(으)로 연결되었습니다" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "키를 설치할 디렉터리가 아직 존재하지 않습니다: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "키 파일을 작성할 수 없습니다: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "다음 패키지가 충족할 수 없는 의존성을 가지고 있습니다:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "하지만 이것은 가상 패키지입니다." #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "하지만 설치하지 않았습니다." #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "하지만 설치하지 않습니다." #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "하지만 %s은(는) 설치했습니다" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "하지만 %s은(는) 설치했습니다" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "신뢰할 수 있는 소프트웨어 공급자 목록에 키를 추가할 수 없습니다" aptdaemon-1.1.1+bzr982/po/ku.po0000644000000000000000000010232212375372771014257 0ustar 00000000000000# Kurdish translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:56+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: Kurdish \n" "Language: ku\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Agahiya pakêtan rojane bike" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Pakêtan bilind bike" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pakêtên sazbûyî" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Pêşbîr hate rojanekirin" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pakêtên rakirî" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pakêt hatin rojanekirin" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Pergal hate bilindkirin" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Guhartin bi kêr hat" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Serkeftî" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Hat betalkirin" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Biserneket" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Pel tê sazkirin" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Pakêt tê sazkirin" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Pêşbîr tê rojanekirin" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Pakêt tên rakirin" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Pakêt tên rojanekirin" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Pergal tê bilindkirin" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Guherandin tên bi kar anîn" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Pelê hilbijartî dibe ku ne pelê mifteyan ya GPG be an jî dibe ku xerabe be." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ky.po0000644000000000000000000010141012375372771014260 0ustar 00000000000000# Kirghiz translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-05-31 05:38+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Kirghiz \n" "Language: ky\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ln.po0000644000000000000000000010141412375372771014252 0ustar 00000000000000# Lingala translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-08-09 14:09+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Lingala \n" "Language: ln\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/lt.po0000644000000000000000000013246612375372771014273 0ustar 00000000000000# Lithuanian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-09-17 20:17+0000\n" "Last-Translator: Aurimas Fišeras \n" "Language-Team: Lithuanian \n" "Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" "%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Parodyti patikimų tiekėjų raktus" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Patikimų raktų sąrašui peržiūrėti turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Pašalinti atsiųsto paketo failus" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Atsiųstų paketų failų išvalymui turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Keisti programinės įrangos konfigūraciją" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Programinės įrangos nuostatų keitimui turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Keisti programinės įrangos saugyklą" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Programinės įrangos saugyklos nuostatų keitimui turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Įdiegti paketo failą" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Šiam paketui įdiegti turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Atnaujinti paketų informaciją" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Programinės įrangos katalogui atnaujinti turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Įdiegti ir pašalinti paketus" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Programinei įrangai įdiegti ar pašalinti turite patvirtinti tapatybę." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Įdiegti programinę įrangą iš aukšto patikimumo saugyklos baltajame sąraše." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Norėdami įdiegti programinę įrangą turite patvirtinti tapatybę." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Pridėti naują saugyklą ir įdiegti paketus iš jos" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Programinei įrangai iš naujos saugyklos įdiegti turite patvirtinti tapatybę." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Pridėti naują nupirktų programų saugyklą ir įdiegti paketus iš jos" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Nupirktai programinei įrangai įdiegti turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Atnaujinti paketus" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Atnaujintai programinei įrangai įdiegti turite patvirtinti tapatybę." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Nutraukti kito naudotojo užduotį" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Kieno nors kito programinės įrangos pakeitimų atsisakymui turite patvirtinti " "tapatybę." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Nustatyti tarpinį serverį programinės įrangos atsiuntimui" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Tarpinio serverio, programinės įrangos atsiuntimui, naudojimui turite " "patvirtinti tapatybę." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "KLAIDA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Atsiųsta %s B iš %s B (%s B/s)" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Atsiųsta %s B iš %s B" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "KLAIDA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Jums neleidžiama atlikti šio veiksmo." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Įtraukiama į eilę" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Sprendžiamos priklausomybių sąsajos" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Šis NAUJAS paketas bus įdiegtas (%(count)s):" msgstr[1] "Šie NAUJI paketai bus įdiegti (%(count)s):" msgstr[2] "Šie NAUJI paketai bus įdiegti (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Šis paketas bus atnaujintas (%(count)s):" msgstr[1] "Šie paketai bus atnaujinti (%(count)s):" msgstr[2] "Šie paketai bus atnaujinti (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Šis paketas bus PAŠALINTAS (%(count)s):" msgstr[1] "Šie paketai bus PAŠALINTI (%(count)s):" msgstr[2] "Šie paketai bus PAŠALINTI (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Šis paketas bus PASENDINTAS (%(count)s):" msgstr[1] "Šie paketai bus PASENDINTI (%(count)s):" msgstr[2] "Šie paketai bus PASENDINTI (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Šis paketas bus įdiegtas iš naujo (%(count)s):" msgstr[1] "Šie paketai bus įdiegti iš naujo (%(count)s):" msgstr[2] "Šie paketai bus įdiegti iš naujo (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Šis paketas buvo sulaikytas (%(count)s):" msgstr[1] "Šie paketai buvo sulaikyti (%(count)s):" msgstr[2] "Šie paketai buvo sulaikyti (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Reikia gauti archyvų %sB." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Po šios operacijos bus sunaudota %sB papildomos vietos diske." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Po šios operacijos bus atlaisvinta %sB papildomos vietos diske." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Ar norite tęsti [T/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Norėdami dirbti su daugiau nei vienu paketu rašykite paketų pavadinimus " "kabutėse:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Atnaujinti podėlį" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Mėginti išspręsti sugadintas priklausomybes. Tai potencialiai pavojinga " "operacija, nes ji gali mėginti pašalinti daug paketų." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Mėginti užbaigti ankstesnį nebaigtą įdiegimą" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Įdiegti nurodytus paketus" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Iš naujo įdiegti nurodytus paketus" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Pašalinti nurodytus paketus" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Pašalinti nurodytus paketus įskaitant konfigūracijos failus" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Pasendinti nurodytus paketus" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Nebenaudotinas: naudokite --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Saugiai atnaujinti sistemą" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Atnaujinti sistemą, galimai įdiegiant ir pašalinant paketus" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Įtraukti tiekėją į patikimų sąrašą" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Pridėti tiekėjo keyid (taip pat reikia --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Naudoti nurodytą raktų serverį raktų paieškai" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Pridėti naują saugyklą iš deb-eilutės" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Nurodyti alternatyvų sources.list.d failą į kurį turėtų būti pridedamos " "saugyklos." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Parodyti patikimų tiekėjų raktus" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Pašalinti patikimą raktą iš duoto kontrolinio kodo" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Perkonfigūruoti įdiegtus paketus. Papildomai gali būti nurodytas mažiausias " "klausimų prioritetas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Mažiausias rodomų „debconf“ klausimų prioritetas" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Neprisijungti prie „apt“ terminalo" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Leisti paketus iš nepatvirtinto tapatumo saugyklų" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Rodyti papildomą informaciją apie paketus. Kol kas tik versijos numerį" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Laukiama tapatybės patvirtinimo" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Neišjungti tarnybos dėl neaktyvumo" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Neįkelti jokių papildinių" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Rodyti vidinio apdorojimo informaciją" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Baigti ir pakeisti jau paleistą tarnybą" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Klausytis DBus seanso magistralės (Reikalinga tik testavimui" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Vykdyti operacijas nurodytame „chroot“" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Saugoti profilio statistiką nurodytame faile" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Neatlikti jokių sistemos pakeitimų (naudinga tik kūrėjams)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Įdiegtas failas" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Įdiegti paketai" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Iš failo pridėtas raktas" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Podėlis atnaujintas" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Paieška baigta" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Patikimas raktas pašalintas" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pašalinti paketai" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Atnaujinti paketai" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Atnaujinta sistema" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Pritaikyti pakeitimai" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Pataisytas nebaigtas diegimas" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Pataisytos sugadintos priklausomybės" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Pridėta programinės įrangos saugykla" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Įjungtas distribucijos komponentas" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Pašalinti atsiųsti paketų failai" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Perkonfigūruoti įdiegti paketai" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Sėkmingas" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Nutraukta" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Nepavyko" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Diegiamas failas" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Diegiami paketai" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Pridedamas raktas iš failo" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Atnaujinamas podėlis" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Šalinamas patikimas raktas" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Šalinami paketai" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Atnaujinami paketai" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Atnaujinama sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Pritaikomi pakeitimai" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Taisomas nebaigtas diegimas" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Taisoma įdiegta programinė įranga" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Pridedama programinės įrangos saugykla" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Įjungiamas distribucijos komponentas" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Šalinami atsiųsti paketų failai" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Perkonfigūruojami įdiegti paketai" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Ieškoma" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Nepavyko įdiegti paketo failo" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Nepavyko įdiegti programos" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Nepavyko atnaujinti programinės įrangos sąrašo" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Nepavyko pašalinti tiekėjo iš patikimų sąrašo" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Nepavyko pašalinti programinės įrangos" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Nepavyko atnaujinti programinės įrangos" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Nepavyko atnaujinti sistemos" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Nepavyko pritaikyti programinės įrangos pakeitimų" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Nepavyko pataisyti nebaigto diegimo" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Nepavyko pataisyti sugadintų priklausomybių" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Nepavyko pridėti programinės įrangos saugyklos" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Nepavyko įjungti distribucijos komponento" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Nepavyko pašalinti atsiųstų paketų failų" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Paieška nepavyko" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Pridedamas licencijos raktas" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Patikrinkite interneto ryšį." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Patikrinkite ar naudojate trečiųjų šalių saugyklas. Jei taip, jas išjunkite, " "nes jos yra dažnas problemų šaltinis.\n" "Be to paleiskite šią komandą terminale: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Pasirinktas failas gali būti sugadintas arba ne GPG rakto failas." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Nepavyko pašalinti pasirinkto rakto. Patikrinkite, kad nurodėte teisingą " "kontrolinį kodą." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Patikrinkite ar nėra vykdomas kitas programinės įrangos tvarkymo įrankis, " "pvz., „Synaptic“ ar „aptitude“. Vienu metu pakeitimus atlikti gali tik " "vienas įrankis." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Tai yra rimta problema. Mėginkite vėliau. Jei problema pasikartos, " "praneškite apie klaidą kūrėjams." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Patikrinkite paketo vardo rašybą ir kad įjungta tinkama saugykla." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nėra jokio poreikio atnaujinimui." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nėra jokio poreikio diegimui." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nėra jokio poreikio pašalinimui." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Jūs paprašėte pašalinti paketą, kuris yra būtina sistemos dalis." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Ryšys su tarnyba buvo prarastas. Greičiausiai užstrigo foninė tarnyba." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Programinės įrangos paketo diegimas ar pašalinimas nepavyko." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Paprašyta funkcija yra nepalaikoma." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Panašu, kad „aptdaemon“ programoje, kuri leidžia jums įdiegti, pašalinti " "programinę įrangą ir atlikti kitus paketų tvarkymo darbus, yra programavimo " "klaida." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ši klaida gali būti sukelta papildomų programinės įrangos paketų, kurių " "trūksta ar kurie yra neįdiegiami. Be to, gali būti konfliktas tarp " "programinės įrangos paketų, kurie negali būti įdiegti tuo pačiu metu." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Tai reikalauja įdiegti paketų iš saugyklų, kurių tapatumas nenustatytas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Diegimas galėjo nepavykti dėl klaidos atitinkamame programinės įrangos " "pakete, arba jis buvo netinkamai nutrauktas. Jūs turite tai pataisyti prieš " "diegdami ar šalindami kitą programinę įrangą." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Nukopijuokite failą į vietinį kompiuterį ir patikrinkite failo leidimus." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Paketo, kuris pažeidžia kokybės standartus, įdiegimas neleidžiamas. Tai gali " "sukelti rimtų problemų jūsų kompiuteryje. Prašome susisiekti su asmeniu ar " "organizacija, kuri pateikė šį paketo failą ir įtraukite žemiau pateiktą " "informaciją." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Atsiųstas licencijos raktas reikalingas šiai programinei įrangai paleisti " "yra neteisingas ar jo nepavyko teisingai įdiegti.\n" "Išsamioje informacijoje pamatysite daugiau informacijos." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Visi prieinami atnaujinimai jau yra įdiegti." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Nepavyko atsiųsti licencijos rakto, kuris leidžia jums naudoti šią " "programinę įrangą. Patikrinkite tinklo ryšį." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Jums neleidžiama atlikti šio veiksmo." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Nepavyko atsiųsti paketų failų" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Nepavyko atsiųsti saugyklų informacijos" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Nepavyko nustatyti paketų priklausomybių" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Paketų sistema sugadinta" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Raktas nebuvo įdiegtas" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Raktas nebuvo pašalintas" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Nepavyko blokuoti paketų tvarkytuvės" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Nepavyko įkelti paketų sąrašo" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paketas neegzistuoja" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paketas jau atnaujintas" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paketas jau įdiegtas" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paketas nėra įdiegtas" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Nepavyko pašalinti būtino sistemos paketo" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Užduotis negali būti stebima ar valdoma" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Paketo operacija nepavyko" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Reikalauja nepatikimų paketų įdiegimo" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Ankstesnis diegimas nebuvo baigtas" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paketas yra prastos kokybės" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Nepavyko atverti paketo failo" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nepalaikoma funkcija" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Nepavyko atsiųsti licencijos rakto" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Nepavyko įdiegti licencijos rakto" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistema jau atnaujinta" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Įvyko neapdorojama klaida" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Laukiama kol bus paleista tarnyba" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Laukiama" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Laukiama reikalingos laikmenos" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Laukiama kol išsijungs kitos programinės įrangos tvarkytuvės" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Laukiama konfigūracijos failo pranešimo" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Vykdoma užduotis" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Atsiunčiama" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Užklausiamos programinės įrangos saugyklos" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Išvaloma" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Baigta" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Nutraukiama" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Įkeliamas programinės įrangos sąrašas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Diegiamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Konfigūruojamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Šalinamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Visiškai šalinamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Pastebimas %s dingimas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Vykdomas post-installation trigeris %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Atnaujinamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Išpakuojamas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Ruošiamas %s įdiegimas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Ruošiamas %s konfigūravimas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Ruošiamas %s šalinimas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Ruošiamas %s visiškas pašalinimas" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Įdiegta %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Visiškai pašalintas %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Pašalintas %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Baigta" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Nepavyko nustatyti tapatybės" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Atsiunčiama" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Neužimtas" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Tinklas neprieinamas" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Apdorojomas %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Atsiųsta %s B iš %s B (%s B/s)" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Atsiųsta %s B iš %s B" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Išsamiai" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Failas" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Atsiųsta %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Atsiųsta" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Reikalingas „%s“ CD/DVD" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Įdėkite aukščiau nurodytą CD/DVD į įrenginį „%s“ programinės įrangos " "paketams iš jo įdiegti." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Tęsti" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Įdiegti" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Įdiegti iš naujo" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Pašalinti" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Išvalyti" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Atnaujinti" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Sendinti" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Praleisti atnaujinimą" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Patikrinkite pakeitimų sąrašą žemiau." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Papildoma programinė įranga turi būti įdiegta" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Papildoma programinė įranga turi būti įdiegta iš naujo" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Papildoma programinė įranga turi būti pašalinta" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Papildoma programinė įranga turi būti išvalyta" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Papildoma programinė įranga turi būti atnaujinta" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Papildoma programinė įranga turi būti pasendinta" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Atnaujinimai bus praleisti" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Reikalingi papildomi pakeitimai" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB bus atsiųsta iš viso." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB vietos diske bus atlaisvinta." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB vietos diske bus sunaudota." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Perrašyti jūsų pakeitimus faile „%s“ naujesne konfigūracijos failo versija?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Jei jūs nežinote kodėl šis failas ten yra, greičiausiai yra saugu jį " "perrašyti." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Pakeitimai" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Palikti" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Pa_keisti" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Išsamiau" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Laukiama kol %s baigs darbą" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Atsiunčiamas %(files)s" msgstr[1] "Atsiunčiami %(files)s" msgstr[2] "Atsiunčiami %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "vietinė saugykla" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Atsiunčiama iš %s" msgstr[1] "Atsiunčiama iš %s" msgstr[2] "Atsiunčiama iš %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s struktūra" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s aprašas" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s aprašo parašas" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Prieinami paketai iš %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Prieinamos saugyklos iš %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Prieinami vertimai iš %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) vertimai iš %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s vertimai iš %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Vertimai (%s) iš %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paketas %s neprieinamas" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paketas %s neįdiegtas" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versija %s iš %s nėra įdiegta" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paketas %s jau įdiegtas" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versija %s iš %s nėra galima." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Raktų serverio URL yra netinkamas: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Netinkamas serverio protokolas: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Netinkamas rakto id: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nepavyko atsiųsti ir įdiegti rakto %s iš %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Rakto failas %s negalėjo būti įdiegtas: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Raktas su kontroliniu kodu %s negalėjo būti pašalintas: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paketas %s negali būti pašalintas." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versija %s iš %s neįdiegta" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Buvusi versija %s iš %s jau įdiegta" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versija %s iš %s jau įdiegta" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versija %s iš %s nėra galima." #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Turite nurodyti versiją %s pasendinimui į" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Vėlesnė versija %s iš %s jau yra įdiegta" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paketas %s neprieinamas %s laidoje." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paketas %s negali būti pašalintas" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paketas nepateikia teisingo „Installed-Size“ valdymo lauko. Žiūrėkite " "„Debian Policy“ 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licencijos raktas tuščias" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licencijos rakte negali būti vykdomojo kodo." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Licencijos rakto kelias %s neteisingas" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licencijos raktas jau egzistuoja: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Licencijos rakto vieta yra nesaugi nes joje yra simbolinių nuorodų. Kelias " "%s atvaizduojamas į %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Katalogas rakto įdiegimui dar neegzistuoja: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Nepavyko įrašyti rakto failo į: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Šie paketai turi nepatenkintų priklausomybių:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "bet jis yra virtualus paketas" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "bet jis neįdiegtas" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "bet jis nebus įdiegtas" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "bet %s yra įdiegta" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "bet %s nebus įdiegta" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Nepavyko pridėti rakto į patikimų programinės įrangos tiekėjų sąrašą" aptdaemon-1.1.1+bzr982/po/lv.po0000644000000000000000000013316412375372771014271 0ustar 00000000000000# Latvian translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # # FIRST AUTHOR , 2010. # Rudolfs , 2011, 2012. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-06 23:09+0000\n" "Last-Translator: Rūdolfs Mazurs \n" "Language-Team: Latvian \n" "Language: lv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Uzskaitīt uzticamo piegādātāju atslēgas" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Lai skatītu uzticamo atslēgu sarakstu, jums vajadzēs autentificēties." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Izņemt lejupielādēto pakotņu datnes" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Lai attīrītu lejupielādēto pakotņu datnes, jums vajadzēs autentificēties." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Mainīt programmatūras konfigurāciju" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Lai mainītu programmatūras iestatījumus, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Mainīt programmatūras krātuvi" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Lai mainītu programmatūras krātuves iestatījumus, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalēt pakotņu datni" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Lai instalētu šo pakotni, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Atjaunināt informāciju par pakotnēm" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Lai atjauninātu programmatūras katalogu, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalēt vai noņemt pakotnes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Lai instalētu vai noņemtu programmatūru, jums jāautentificējas." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalēt programmatūru no ļoti uzticamas, baltajā sarakstā esošas krātuves." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Lai instalētu programmatūru, jums jāautentificējas." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Pievienot jaunu krātuvi un instalēt pakotnes no tās" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Lai instalētu programmatūru no jauna avota, jums jāautentificējas." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Pievienot jaunu iegādātās programmatūras krātuvi un instalēt pakotnes no tās" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Lai instalētu nopirktu programmatūru, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Uzlabot pakotnes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Lai instalētu atjauninātu programmatūru, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Atcelt cita lietotāja darbību" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Lai atceltu kāda cita programmatūras izmaiņas, jums jāautentificējas." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Iestatīt starpnieku programmatūras lejupielādei" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Lai izmantotu starpnieka serveri programmatūras lejupielādei, jums " "jāautentificējas." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "KĻŪDA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Lejupielādēti %sB no %sB ar ātrumu %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Lejupielādēti %sB no %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "KĻŪDA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Jums nav atļaujas veikt šo darbību." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Ievieto rindā" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Atrisina atkarības" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Sekojošā JAUNĀ pakotne tiks instalēta (%(count)s):" msgstr[1] "Sekojošās JAUNĀS pakotnes tiks instalētas (%(count)s):" msgstr[2] "Sekojošās JAUNĀS pakotnes tiks instalētas (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Sekojošā pakotne tiks uzlabota (%(count)s):" msgstr[1] "Sekojošās pakotnes tiks uzlabotas (%(count)s):" msgstr[2] "Sekojošās pakotnes tiks uzlabotas (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Sekojošā pakotne tiks NOŅEMTA (%(count)s):" msgstr[1] "Sekojošās pakotnes tiks NOŅEMTAS (%(count)s):" msgstr[2] "Sekojošās pakotnes tiks NOŅEMTAS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Sekojošā pakotne tiks PAZEMINĀTA (%(count)s):" msgstr[1] "Sekojošās pakotnes tiks PAZEMINĀTAS (%(count)s):" msgstr[2] "Sekojošās pakotnes tiks PAZEMINĀTAS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Sekojošā pakotne tiks pārinstalēta (%(count)s):" msgstr[1] "Sekojošās pakotnes tiks pārinstalētas (%(count)s):" msgstr[2] "Sekojošās pakotnes tiks pārinstalētas (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Sekojošā pakotne tika aizturēta (%(count)s):" msgstr[1] "Sekojošās pakotnes tika aizturētas (%(count)s):" msgstr[2] "Sekojošās pakotnes tika aizturētas (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Vajag saņemt %sB no arhīviem." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Pēc šīs darbības tiks papildu izmantoti %sB diska vietas." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Pēc šīs darbības tiks papildu atbrīvoti %sB diska vietas." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Vai vēlaties turpināt [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Lai darbotos ar vairāk kā vienu pakotni, ievietojiet pakotņu nosaukumus " "pēdiņās:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Atsvaidzināt kešatmiņu" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Mēģināt atrisināt neatrisinātās atkarības. Potenciāli bīstama darbība, jo tā " "var mēģināt izņemt daudzas pakotnes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Mēģināt pabeigt iepriekšējo nepabeigto instalēšanu" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalēt dotās pakotnes" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Pārinstalēt dotās pakotnes" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Izņemt dotās pakotnes" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Izņemt dotās pakotnes, tai skaitā konfigurācijas datnes" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Pazemināt dotās pakotnes" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Novecojis — lūdzu, izmantojiet --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Uzlabojiet sistēmu drošā veidā" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Uzlabojiet sistēmu, iespējams, instalējot un noņemot pakotnes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Pievienot piegādātāju pie uzticamajiem" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Pievienot piegādātāju pie keyid (arī nepieciešams --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Izmantot doto atslēgu serveri, lai uzmeklētu atslēgas" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Pievienot jaunu krātuvi no dotā deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Norādiet alternatīvu sources.list.d datni, pie kā vajadzētu pievienot " "krātuves." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Uzskaitīt uzticamo piegādātāju atslēgas" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Izņemt dotā nospieduma uzticamās atslēgas" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Pārkonfigurēt instalētās pakotnes. Var norādīt minimālo jautājumu prioritāti." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Minimālā debconf prioritāte jautājumam, ko attēlot" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Nepievienot apt terminālim" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Atļaut pakotnes no neautentificētiem avotiem" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Rādīt papildu informāciju par pakotnēm. Pašlaik tikai versijas numuru" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Gaida autentifikāciju" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Neizslēgt dēmonu aktivitātes trūkuma dēļ" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Neielādēt nekādus spraudņus" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Rādīt informāciju par iekšējiem procesiem" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Iziet un aizvietot jau palaisto dēmonu" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Klausīties DBus sesijas kopni (vajadzīgs tikai testēšanai)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Izpildīt darbības dotajā chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Saglabāt profila statistiku norādītā datnē" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Neizdarīt nekādas izmaiņas sistēmā (paredzēts tikai izstrādātājiem)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Instalēja datni" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Instalēja pakotnes" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Pievienoja atslēgu no datnes" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Atjaunināja kešatmiņu" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Meklēšana pabeigta" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Izņēma uzticamu atslēgu" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Izņēma pakotnes" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Uzlaboja pakotnes" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Uzlaboja sistēmu" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Pielietoja izmaiņas" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Salaboja nepabeigtu instalāciju" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Salaboja neatrisinātas atkarības" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Pievienoja programmatūras avotu" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Aktivēja distribūcijas komponenti" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Izņēma lejupielādētās pakotņu datnes" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Pārkonfigurēja instalētās pakotnes" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Veiksmīgi" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Atcelts" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Neveiksmīgi" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalē datni" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalē pakotnes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Pievieno atslēgu no datnes" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Atjaunina kešatmiņu" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Izņem uzticamu atslēgu" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Izņem pakotnes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Atjaunina pakotnes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Uzlabo sistēmu" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Pielieto izmaiņas" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Labo nepabeigtu instalāciju" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Labo instalēto programmatūru" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Pievieno programmatūras avotu" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Aktivē distribūcijas komponenti" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Izņem lejupielādēto pakotņu datnes" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Pārkonfigurē instalētās pakotnes" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Meklē" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Neizdevās instalēt pakotnes datni" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Neizdevās instalēt programmatūru" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Neizdevās atsvaidzināt programmatūras sarakstu" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Neizdevās izņemt piegādātāju no uzticamo saraksta" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Neizdevās noņemt programmatūru" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Neizdevās atjaunināt programmatūru" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Neizdevās uzlabot sistēmu" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Neizdevās pielietot programmatūras izmaiņas" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Neizdevās salabot nepabeigtu instalāciju" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Neizdevās salabot sabeigtas atkarības" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Neizdevās pievienot programmatūras avotus" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Neizdevās aktivēt distribūcijas komponentes" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Neizdevās izņemt lejupielādēto pakotņu datnes" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Meklēšana neizdevās" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Pievieno licences atslēgu" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Pārbaudiet savu Interneta savienojumu." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Lūdzu, pārbaudiet, vai jūs izmantojat trešās puses krātuves. Ja jā, " "deaktivējiet tās, jo tās parasti ir problēmu cēlonis.\n" "Pēc tam izpildiet šādu komandu terminālī — apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Izvēlētā datne varētu nebūt GPG atslēga vai arī tā ir bojāta." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Nevarēja izņemt izvēlēto atslēgu. Pārliecinieties, ka norādījāt derīgu " "nospiedumu." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Pārliecinieties, ka pašlaik neesat atvēruši kādu citu programmatūras " "pārvaldības rīku, piemēram, Synaptic vai aptitude. Vienlaicīgi izmaiņas var " "veikt tikai viens rīks." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Šī ir nopietna problēma. Mēģiniet vēlāk vēlreiz. Ja šī problēma parādās " "vēlreiz, lūdzu, ziņojiet par šo kļūdu izstrādātājiem." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Pārbaudiet pakotnes pareizrakstības nosaukumu un to, ka ir aktivēta " "atbilstošā krātuve." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nav nepieciešamības uzlabot." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nav nepieciešamības instalēt." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nav nepieciešamības izņemt." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Jūs pieprasījāt izņemt pakotni, kas ir svarīga sistēmas sastāvdaļa." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Savienojums ar dēmonu tika zaudēts. Visticamāk, ka fona dēmons avarēja." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Neizdevās instalēt vai izņemt programmatūras pakotni." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Pieprasītā iespēja nav atbalstīta." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Izskatās, ka ir programmēšanas kļūda aptdaemon programmā, kas jums ļauj " "instalēt un noņemt programmatūru un veikt citus pakotņu pārvaldības " "uzdevumus." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Šo kļūdu varētu izraisīt papildu programmatūras pakotnes, kas trūkst vai nav " "instalējamas. Vēl varētu būt konflikts starp programmatūras pakotnēm, kuras " "nedrīkst būt uzinstalētas vienlaicīgi." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Tas pieprasa instalēt pakotnes no neautentificētiem avotiem." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Instalēšana varētu būt neizdevusies sakarā ar kļūdu atbilstošajā " "programmatūras pakotnē, vai arī tā tika pārtraukta nedraudzīgā veidā. Jums " "šī situācija jālabo pirms jūs instalējat vai noņemot jebkuru citu " "programmatūru." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Lūdzu, kopējiet datni uz savu datoru un pārbaudiet datnes atļaujas." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Nav atļauts instalēt pakotni, kas pārkāpj kvalitātes standarta prasības. Tas " "var radīt nopietnas problēmas jūsu datoram. Lūdzu, sazinieties ar personu " "vai organizāciju, kas piegādāja šo pakotnes datni un iekļaujiet zemāk " "redzamo informāciju." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Lejupielādētā licences atslēga, kas nepieciešama, lai darbinātu šo " "programmatūru, nav derīga vai arī nav veiksmīgi instalēta.\n" "Lai uzzinātu vairāk, skatieties sīkāku informāciju." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Visi pieejami uzlabojumi jau ir instalēti." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Nevarēja lejupielādēt licences atslēgu, kas ļauj izmantot šo programmatūru. " "Lūdzu, pārbaudiet interneta savienojumu." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Jums nav atļaujas veikt šo darbību." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Neizdevās lejupielādēt pakotņu datnes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Neizdevās lejupielādēt informāciju par krātuvi" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakotnes atkarības neizdodas atrisināt" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakotņu sistēma ir salauzta" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Atslēga nebija uzinstalēta" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Atslēga netika noņemta" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Neizdevās noslēgt pakotņu pārvaldnieku" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Neizdevās ielādēt pakotņu sarakstu" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakotne neeksistē" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Jau instalēta pakotnes jaunākā versija" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakotne jau ir uzinstalēta" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakotne nav uzinstalēta" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Neizdevās noņemt svarīgu sistēmas pakotni" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Uzdevumu neizdodas novērot vai kontrolēt" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Darbība ar pakotni neizdevās" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Pieprasa neuzticamu pakotņu instalēšanu" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Iepriekšējā instalēšana nav pabeigta" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Šī ir sliktas kvalitātes pakotne" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Nevarēja atvērt pakotnes datni" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Iespēja nav atbalstīta" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Neizdevās lejupielādēt licences atslēgu" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Neizdevās instalēt licences atslēgu" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistēma jau ir aktuāla" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Gadījās neapstrādājama kļūda" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Gaida servisa palaišanos" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Gaida" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Gaida pieprasīto datu nesēju" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Gaida, kad citi programmatūras pārvaldnieki tiks aizvērti" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Gaida konfigurācijas datnes uzvedni" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Veic darbību" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Lejupielādē" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Vaicā programmatūras avotus" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Uzkopj" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Pabeigts" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Atceļ" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Ielādē programmatūras sarakstu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalē %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Konfigurē %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Izņem %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Pilnībā izņem %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Piefiksē %s pazušanu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Izpilda pēcinstalēšanas trigeri %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Uzlabo %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Atpako %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Sagatavo %s instalēšanu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Sagatavo %s konfigurāciju" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Sagatavo %s izņemšanu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Sagatavo pilnīgu %s izņemšanu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s ir instalēts" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s ir pilnībā izņemts" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s ir izņemts" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Pabeigts" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Neizdevās autentificēties" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Saņem" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Dīkstāvē" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Tīkls nav pieejams" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Apstrādā %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Lejupielādēti %sB no %sB ar ātrumu %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Lejupielādēti %sB no %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Sīkāka informācija" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Datne" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Lejupielādēti %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Lejupielādēti" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Tiek pieprasīts CD/DVD “%s”" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Lūdzu, ievietojiet augstāk minēto CD/DVD dzinī “%s”, lai no tā uzinstalētu " "programmatūras pakotnes." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "T_urpināt" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalēt" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Pārinstalēt" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Izņemt" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Iztīrīt" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Uzlabot" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Pazemināt" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Izlaist uzlabošanu" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Lūdzu, apskatiet zemāk esošo izmaiņu sarakstu." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Papildu programmatūra, kas jāinstalē" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Papildu programmatūra, kas jāpārinstalē" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Papildu programmatūra, kas jāizņem" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Papildu programmatūra, kas jāiztīra" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Papildu programmatūra, kas jāuzlabo" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Papildu programmatūra, kas jāpazemina" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Atjauninājumi tiks izlaisti" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Nepieciešamas papildu izmaiņas" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Kopā tiks lejupielādēti %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Tiks atbrīvoti %sB." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Tiks papildus izmantoti %sB." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Aizvietot savas “%s” izmaiņas ar vēlāku šī konfigurācijas datnes versiju?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ja nezināt, kāpēc dotā datne jau ir tur, tad parasti to var droši aizvietot." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Izmaiņas" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Paturēt" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Aizvietot" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Sīkāka informācija" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Gaida, līdz izies %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Lejupielādē %(files)s" msgstr[1] "Lejupielādē %(files)s" msgstr[2] "Lejupielādē %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokālā krātuve" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Lejupielādē no %s" msgstr[1] "Lejupielādē no %s" msgstr[2] "Lejupielādē no %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s struktūra" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s apraksts" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s apraksta paraksts" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s pieejamās pakotnes" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s pieejamie avoti" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s pieejamie tulkojumi" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) tulkojumi no %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s tulkojumi no %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "%s tulkojumi no %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakotne %s nav pieejama" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakotne %s nav uzinstalēta" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versija %s programmai %s nav uzinstalēta" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakotne %s jau ir uzinstalēta" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versija %s programmai %s nav pieejama." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Atslēgu servera URL nav derīgs — %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Nederīgs servera protokols — %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Nederīgs atslēgas id — %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Neizdevās lejupielādēt un uzinstalēt atslēgu %s no %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Nevarēja uzinstalēt atslēgas datni %s — %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Atslēgu ar nospiedumu %s nevarēja izņemt — %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Nevar izņemt pakotni %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versija %s programmai %s nav uzinstalēta" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Iepriekšējā versija %s programmai %s jau ir uzinstalēta" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versija %s programmai %s jau ir uzinstalēta" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versija %s programmai %s nav pieejama" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Jums jānorāda versija, uz kuru pazemināt %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Jaunāka versija %s programmai %s jau ir uzinstalēta" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakotne %s nav pieejama laidienā %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Nevar izņemt pakotni %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Pakotne nenorāda derīgu Installed-Size kontroles lauku. Skatiet Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licences atslēga ir tukša" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licences atslēgai nav atļauts saturēt izpildāmu kodu" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Licences atslēgas ceļš %s ir nederīgs" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Tāda licence jau pastāv — %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Licences atslēgas atrašanās vieta ir nedroša, jo tā satur simboliskās " "saites. Ceļš %s atbilst %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Mape, kurā instalēt atslēgu, vēl neeksistē — %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Neizdevās saglabāt atslēgas datni — %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Sekojošajām pakotnēm ir neapmierinātas atkarības:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "bet tā ir virtuāla pakotne" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "bet tā nav uzinstalēta" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "bet tā netiks uzinstalēta" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "bet %s ir uzinstalēta" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "bet %s tiks instalēta" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Neizdevās pievienot atslēgu uzticamo programmatūras piegādātāju sarakstam" aptdaemon-1.1.1+bzr982/po/mi.po0000644000000000000000000010152312375372771014247 0ustar 00000000000000# Maori translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-07-24 03:21+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Maori \n" "Language: mi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "I rahua" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Kua oti" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Taipitopito" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Kōnae" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Tāuta" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Tāuta anō" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Tango" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Pupuritia" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Whakakapia" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ml.po0000644000000000000000000012066012375372771014255 0ustar 00000000000000# Malayalam translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-11-21 11:21+0000\n" "Last-Translator: Amal Bose \n" "Language-Team: Malayalam \n" "Language: ml\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "വിശ്വസ്തമായ വസ്തു ഉടമകളുടെ കീ പട്ടിക" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "ഡൗണ്‍ലോഡ് ചെയ്ത ഭണ്ഡാരങ്ങള്‍ നീക്കം ചെയ്യുക" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "ഡൌണ്‍ലോഡ് ചെയ്ത പാക്കേജ് ഫയലുകള്‍ നീക്കം ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "സോഫ്റ്റ്‌വെയര്‍ കോണ്‍ഫിഗറേഷന്‍ മാറ്റുക" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "സോഫ്റ്റ്‌വെയര്‍ ക്രമീകരണത്തില്‍ വ്യത്യാസം വരുത്താന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "സോഫ്റ്റ്‌വെയര്‍ ഭണ്ഡാരം മാറ്റുക" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "സോഫ്റ്റ്‌വെയര്‍ ഭണ്ടാര ക്രമീകരണത്തില്‍ വ്യത്യാസം വരുത്താന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "ഇന്‍സ്റ്റോള്‍ പാക്കേജ് ഫയല്‍" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "ഈ ഭണ്ഡാരം ഇന്‍സ്റ്റോള്‍ ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "സോഫ്റ്റ്‌വെയര്‍ കാറ്റലോഗ് പരിഷ്കരിക്കാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "ഭണ്ഡാരം ഇന്‍സ്റ്റോള്‍ ചെയ്യുകയോ നീക്കം ചെയ്യുകയോ ചെയ്യുക" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "ഡൌണ്‍ലോഡ് ഇന്‍സ്റ്റോള്‍ ചെയ്യണോ നീക്കം ചെയ്യണോ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" "ഒരു പുതിയ ഭണ്ഡാരം കൂട്ടിച്ചേര്‍ക്കുകയും അതില്‍ നിന്നും പുതിയ പാക്കേജ് ഇന്‍സ്റ്റോള്‍ ചെയ്യുകയും ചെയ്യുക" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "മറ്റൊരു ഉറവിടത്തില്‍ നിന്നുള്ള സോഫ്റ്റ്‌വെയര്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത " "തെളിയിക്കുക" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "വിലയ്ക്ക് വാങ്ങിയ സോഫ്റ്റ്‌വെയര്‍ ഉള്ള ഒരു പുതിയ ഭണ്ഡാരം കൂട്ടിച്ചേര്‍ക്കുകയും അതില്‍ നിന്നും പുതിയ " "പാക്കേജ് ഇന്‍സ്റ്റോള്‍ ചെയ്യുകയും ചെയ്യുക" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "വിലയ്ക്ക് വാങ്ങിയ സോഫ്റ്റ്‌വെയര്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "പരിഷ്കരിച്ച സോഫ്റ്റ്‌വെയര്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "മറ്റു ഉഭയോക്താവിന്റെ കാര്യങ്ങള്‍ നിര്‍ത്തുക" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "മറ്റുള്ളവരുടെ സോഫ്റ്റ്‌വെയര്‍ മാറ്റങ്ങള്‍ റദ്ദാക്കാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "പ്രോക്സി സെര്‍വരിലൂടെ സോഫ്റ്റ്‌വെയര്‍ ഡൌണ്‍ലോഡ് ചെയ്യാന്‍ താങ്കളുടെ വിശ്വാസ്യയോഗ്യത തെളിയിക്കുക" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "ഡിപെന്‍ഡന്‍സികള്‍ റീസോള്‍വു ചെയ്യുന്നു" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "രേഘപെടുത്തിയ ഫയലില്‍ പ്രൊഫൈല്‍ സ്റ്റ്സ് സൂക്ഷിക്കുക" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്ത ഫയല്‍" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്തിടുള്ള പാക്കേജുകള്‍" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "നീക്കം ചെയ്ത പാക്കേജുകള്‍" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "വിജയകരമായി" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "റദ്ദാക്കപ്പെട്ടു" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "പരാജയപ്പെട്ടു" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ഫയല്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "cache അപ്ഡേറ്റ് ചെയ്യുന്നു" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "പാക്കേജുകള്‍ നീക്കം ചെയ്യുന്നു" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "പാക്കേജുകള്‍ പരിഷ്കരിക്കുന്നു" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "സിസ്റ്റം നവീകരിക്കുന്നു" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "നിങ്ങളുടെ ഇന്റര്‍നെറ്റ്‌ ബന്ധം പരിശോധിക്കുക." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "പരിഷ്കരിക്കേണ്ട ആവശ്യമില്ല." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ട ആവശ്യമില്ല" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "നീകം ചെയ്യേണ്ട ആവശ്യമില്ല" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ വളരെ പ്രധാനപെട്ട ഒരു ഭാഗമാണ് നിങ്ങള്‍ നീക്കം ചെയ്യാന്‍ " "ആവശ്യപ്പെട്ടിരിക്കുന്നത്." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" "ഒരു സോഫ്റ്റ്‌വെയര്‍ പാക്കേജിന്റെ ഇന്‍സ്റ്റോള്‍ അല്ലെങ്കില്‍ നീക്കം ചെയ്യല്‍ പ്രക്രിയ " "പരാജയപ്പെട്ടിരിക്കുന്നു." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "പാക്കേജ് ഫയലുകള്‍ ഡൌണ്‍ലോഡ് ചെയ്യുന്നതില്‍ പരാജയപെട്ടു" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "പാക്കേജ് നിലവില്‍ ഇല്ല" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "പാക്കേജ് ഇന്‍സ്റ്റോള്‍ ചെയ്യപ്പെട്ടിട്ടുണ്ട്" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "പാക്കേജ് ഇന്‍സ്റ്റോള്‍ ചെയ്തിട്ടില്ല" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "പാക്കേജു പ്രയോഗം പരാജയപ്പെട്ടു" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "സര്‍വീസ് തുടങ്ങാന്‍ കാത്തിരിക്കുന്നു" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "നടന്നുകൊണ്ടിരിക്കുന്ന ജോലി" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "ഡൌണ്‍ ലോഡ് ചെയ്യുന്നു" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "വെടിപ്പാക്കുന്നു" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "അവസാനിച്ചു" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "റദ്ദാക്കുന്നു" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s നീക്കം ചെയ്യുന്നു" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "%s ഇന്‍സ്റ്റോള്‍ ചെയ്തതിനു ശേഷമുള്ള മറ്റു ചില കാര്യങ്ങള്‍ ചെയ്യുന്നു" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "വിശദാംശങ്ങള്‍" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "'%s' എന്ന CD/DVD ആവശ്യമുണ്ട്" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_സൂക്ഷിക്കുക" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_മാറ്റിസ്ഥാപിക്കുക" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_വിശദാംശങ്ങള്‍" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ms.po0000644000000000000000000013167112375372771014270 0ustar 00000000000000# Malay translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-02 10:23+0000\n" "Last-Translator: abuyop \n" "Language-Team: Malay \n" "Language: ms\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Senarai kekunci vendor yang dipercayai" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Untuk paparkan senarai kekunci dipercayai, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Buang fail pakej yang dimuat turunkan" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Untuk membersihkan fail pakej yang dimuat turun, anda perlu dapatkan " "pengesahihan." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ubah konfigurasi perisian" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Untuk mengubah tetapan perisian, anda perlu dapatkan pengesahihan." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Ubah repositori perisian" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Untuk mengubah tetapan repositori perisian, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Pasang fail pakej" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Untuk memasang pakej ini, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Kemaskini informasi pakej" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Untuk mengemakini katalog perisian, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Pasang atau buang pakej" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Untuk memasang atau membuang perisian, anda perlukan pengsahihan." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Pasang perisian dari repositori tersenarai putih yang sangat-dipercayai." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Untuk memasang perisian, anda perlu sahihkan." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Tambah repositori baru dan pasang pakej darinya" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Untuk memasang dari sumber baru, anda perlukan pengsahihan." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Tambah repositori baru bagi perisian yang dibeli dan pasang pakej darinya" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Untuk memasang perisian, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Tingkatkan pakej-pakej" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Untuk memasang kemaskini perisian, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Batalkan tugas pengguna lain" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Untuk membatalkan perubahan perisian orang lain, anda perlukan pengsahihan." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Tetapkan proksi untuk memuat turun perisian" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Untuk gunakan pelayan proksi bagi tujuan memuat turun perisian, anda " "perlukan pengsahihan." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "RALAT" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Telah memuat-turun %sB dari %sB pada %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Telah memuat-turun %sB daripada %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "RALAT:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Anda tidak dibenarkan melakukan tindakan ini." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Membaris Gilir" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Menghuraikan keperluan" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Pakej BARU berikut akan dipasangkan (%(count)s):" msgstr[1] "Pakej BARU berikut akan dipasangkan (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Pakej berikut akan ditatarkan (%(count)s):" msgstr[1] "Pakej berikut akan ditatarkan (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Pakej berikut akan DIBUANG (%(count)s):" msgstr[1] "Pakej berikut akan DIBUANG (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Pakej berikut akan DITURUN TARAF (%(count)s):" msgstr[1] "Pakej berikut akan DITURUN TARAF (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Pakej berikut akan dipasang semula (%(count)s):" msgstr[1] "Pakej berikut akan dipasang semula (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Pakej berikut akan dikekalkan (%(count)s):" msgstr[1] "Pakej berikut akan dikekalkan (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Perlu dapatkan %sB arkib." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Selepas operasi ini, %sbait ruang cakera akan digunakan." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Selepas operasi ini, %sbait ruang cakera akan dibebaskan." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Adakah anda ingin meneruskannya [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Untuk mengoperasi lebih daripada satu pakej, letakkan nama pakej didalam " "tanda petikan:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Segar semula cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Cuba baiki dependensi yang rosak? Merupakan operasi yang berkemungkinan " "merbahaya kerana ia boleh menyebabkan pembuangan banyak pakej." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Cuba selesaikan pemasangan tidak lengkap yang terdahulu" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Pasang pakej yang diberikan" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Pasang semula pakej yang diberikan" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Buang pakej yang diberikan" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Buang pakej yang diberikan termasuklah fail konfigurasi" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Turun taraf pakej yang diberikan" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Usang: Sila gunakan --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Tatar sistem melalui kaedah yang selamat" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Tatarkan sistem, kemungkinan melibatkan pemasangan dan pembuangan pakej" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Tambah vendor kepada yang dipercayai" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Tambah id kekunci vendor (juga perlukan --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Guna keyserver yang diberikan untuk mencari kekunci" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Tambah repositori baru dari deb-line yang diberikan" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Tentukan fail sources.list.d alternatif yang mana repositori seharusnya " "ditambahkan." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Senarai kekunci vendor yang dipercayai" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Buang kekunci yang dipercayai berdasarkan fingerprint yang diberikan" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Konfigur semula pakej yang dipasang. Keutamaan soalan diminimumkan boleh " "ditentukan secara pilihan" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Keutamaan soalan debconf diminimumkan untuk dipaparkan" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Jangan lampirkan ke terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Benarkan pakej dari sumber yang tidak disahihkan" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Papar maklumat tambahan mengenai pakej. Buat masa ini hanya nombor versi" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Menunggu pengsahihan" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Jangan menutup daemon disebabkan ketiadaaan aktviti" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Jangan muat apa-apa pemalam" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Tunjukkan informasi pemprosesan dalam" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Tutup dan gantikan sebuah daemon yang sedang berjalan" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Dengar bus sesi DBUS (Hanya diperlukan untuk pengujian" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Lakukan operasi didalam chroot yang diberikan" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Simpan stat profil dalam fail yang ditentukan" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Jangan membuat apa-apa perubahan kepada sistem (Hanya berguna kepada " "pembangun)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fail dipasang" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pakej dipasang" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Telah menambah kunci daripada fail" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Telah kemaskini cache" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Gelintar selesai" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Telah membuang kunci dipercayai" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pakej-pakej yang telah dibuang" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pakej-pakej yang telah dikemaskini" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistem yang telah ditingkatkan" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Perubahan yang telah digunakan" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Pemasangan tidak lengkap telah dibaiki" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Keperluan rosak telah dibaiki" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Sumber perisian tambahan" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Membenarkan komponen distribusi" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Buang fail pakej yang dimuat turun" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Konfigur semula pakej yang dipasang" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Berjaya" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Dibatalkan" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Gagal" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Memasang fail" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Memasang pakej-pakej" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Menambah kunci daripada fail" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Mengemaskini cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Membuang kunci dipercayai" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Membuang pakej-pakej" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Mengemaskini pakej-pakej" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Meningkatkan sistem" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Menerapkan perubahan" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Membaiki pemasangan tidak lengkap" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Membaiki perisian terpasang" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Menambah sumber perisian" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Membenarkan komponen distribusi" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Membuang fail pakej yang dimuat turun" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Menkonfigurasi semula pakej yang dipasang" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Menggelintar" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Pemasangan fail pakej telah gagal" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Pemasangan perisian telah gagal" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Menambah kunci ke senarai pembekal perisian yang dipercayai mengalami " "kegagalan" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Menyegarkan senarai perisian telah gagal" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Membuang penjaja daripada senarai penjaja dipercaya telah gagal" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Membuang perisian telah gagal" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Mengemaskini perisian telah gagal" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Meningkatkan sistem telah gagal" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Menerapkan perubahan perisian telah gagal" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Membaiki pemasangan tidak lengkap telah gagal" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Membaiki keperluan rosak telah gagal" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Penambahan sumber perisian gagal" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Penambajan komponen distribusi gagal" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Pembuangan fail pakej yang dimuat turun gagal" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Gelintar gagal" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Menambah kunci lesen" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Periksa sambungan Internet anda." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Periksa jika anda sedang mengguna repositori parti ketiga. Jika ya " "nyahbolehkan mereka, kerana mereka adalah penyebab masalah biasa.\n" "Apalagi jalankan arahan berikut didalam satu Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Fail yang dipilih mungkin bukan fail kekunci GPG atau fail mungkin buruk." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "kekunci pilihan tidak dapat dibuangkan. Semak sama ada anda telah masukkan " "fingerprint yang sah." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Semak sama ada anda sedang jalankan alat pengurusan perisian yang lain, cth. " "Sypnatic atau aptitude. Hanya satu alat dibenarkan untuk membuat perubahan." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ini adalah masalah penting. Cuba lagi kemudian. Jika masalah ini muncul " "semula, sila laporkan ralat kepada pembangun." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Semak ejaan nama pakej, dan repositori tersebut dibenarkan." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Tiada keperluan untuk kemaskini." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Tiada keperluan untuk pemasangan" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Tiada keperluan untuk membuang." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Anda meminta untuk membuang sebuah pakej yang penting kepada sistem anda." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Sambungan kepada daemon telah hilang. Kemungkinan besar daemon latarbelakang " "telah mati." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Pemasangan atau pembuangan sebuah pakej perisian telah gagal." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Fitur dipinta tidak disokong." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Terdapat ralat pengaturcaraan didalam aptdaemon, perisian yang membenarkan " "anda memasang/membuang perisian dan lakukan tugas berkaitan dengan " "pengurusan pakej." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ralat ini mungkin disebabkan keperluan pakej perisian tambahan yang hilang " "atau tidak dipasang. Tambahan pula mungkin terdapat konflik antara pakej " "perisian yang tidak membenarkannya dipasang pada masa yang sama." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Ia perlukan pemasangan pakej dari sumber tidak disahihkan." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Pemasangan mungkin telah gagal disebabkan ralat didalam pakej perisian " "selaras dengannya atau ia dibatalkan didalam cara yang dipaksa. Anda perlu " "membaiki ini sebelum anda boleh memasang atau membuang perisian lagi." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Sila salin fail ke komputer setempat anda dan semak kebenaran fail." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Pemasangan pakej yang mana melanggari piawaian kualiti yang dibenarkan. Ini " "akan menyebabkan masalah pada komputer anda. Sila hubungi individu atai " "organisasi yang menyediakan fail pakej ini termasuklah perincian dibawah." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Kunci lesen dimuat turun yang diperlukan untuk jalankan perisian ini tidak " "sah atau tidak dapat dipasang dengan betul.\n" "Rujuk perincian untuk maklumat lanjut." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Semua penataran yang ada telah dipasang." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Kunci lesen yang membenarkan anda gunakan perisian ini tidak dapat dimuat " "turun. Sila semak sambungan rangkaian anda." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "" "Anda tidak memiliki kelayakan yang diperlukan untuk membuat tindakan ini." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Anda sama ada beri kata laluan yang salah atau batalkak keizinan.\n" "Tambahan pula juga terdapat sebab teknikal berlakunya ralat ini jika anda " "tidak dapat lihat dialog kata laluan: persekitaran dekstop anda tidak " "menyediakan ejen sesi Kit Polisi." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Gagal untuk memuat-turun fail-fail pakej" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Gagal untuk memuat-turun informasi repositori" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Keperluan pakej tidak dapat diselesaikan" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Sistem pakej adalah rosak" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Kunci tidak dipasang" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Kunci tidak dibuang" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Gagal untuk mengunci pengurus pakej" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Gagal untuk memuat senarai pakej" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakej tidak wujud" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakej sudah dikemaskini" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakej sudah dipasang" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakej tidak dipasang" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Gagal untuk membuang pakej sistem yang diperlukan" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tugas tidak dapat diperhatikan atau dikawal" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operasi pakej telah gagal" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Memerlukan pemasangan pakej-pakej yang tidak dipercayai" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Pemasangan yang dahulu belum diselesaikan lagi" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Pakej berkualiti rendah" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Fail pakej tidak boleh dibuka" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Fitur tidak disokong" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Gagal memuat turun kunci lesen" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Gagal memasang kunci lesen" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistem sudah dikemakini" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Anda tidak diizinkan" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Anda tidak dibenarkan membuat tindakan ini" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ralat yang tidak boleh dikendalikan berlaku" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Menunggu untuk servis bermula" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Menunggu" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Menunggu untuk medium yang diperlukan" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Menunggu untuk pengurus perisian lain untuk tutup" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Menunggu untuk prompt fail konfigurasi" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Menjalankan tugas" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Sedang dimuat-turun" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Menanya sumber perisian" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Sedang membersihkan" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Selesai" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Sedang membatalkan" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Memuat senarai perisian" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Sedang memasang %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Mengubahsuai %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Membuang %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "membuang sepenuhnya %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Khidmat kehilangan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Menjalankan pemetik sebelum-pemasangan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Meningkatkan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Membuka %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Menyediakan pemasangan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Menyediakan konfigurasi %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Menyediakan pembuangan %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Menyediakan pembuangan lengkap %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Pasang %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Buang sepenuhnya %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Buang %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Selesai" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Penyahihan gagal" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Memperoleh" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Melahu" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Rangkaian tiada" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Memproses %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Telah memuat-turun %sB dari %sB pada %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Telah memuat-turun %sB daripada %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Butiran" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fail" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Memuat Turun %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Dimuat turun" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' diperlukan" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Sila masukkan CD/DVD kedalam pemacu '%s' untuk memasang pakej perisian " "didalamnya." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "T_eruskan" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Pasang" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Pasang Semula" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Buang" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Singkirkan" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Tatar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Turun Taraf" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Langkau tatar" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Sila lihat senarai perubahan dibawah." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Perisian tambahan yang perlu dipasangkan" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Perisian tambahan yang perlu dipasang semula" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Perisian tambahan yang perlu dibuang" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Perisian tambahan yang perlu disingkirkan" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Perisian tambahan yang perlu ditatarkan" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Perisian tambahan yang perlu diturun taraf" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Kemaskini akan dilangkau" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Perubahan tambahan diperlukan" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB akan dimuat turun secara keseluruhan." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB ruang cakera akan dibebaskan." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB ruang cakera akan digunakan." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Gantikkan pertukaran yang anda buat didalam '%s' dengan versi kemudian fail " "konfigurasi tersebut?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Jika anda tidak mengetahui kenapa fail tersebut sudah berada disitu, ia " "biasanya sudah selamat untuk menggantikannya." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Pertukaran" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Simpan" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Gantikan" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Butiran" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Menunggu %s untuk keluar" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Memuat turun %(files)s" msgstr[1] "Memuat turun %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositori setempat" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Memuat turun dari %s" msgstr[1] "Memuat turun dari %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktur bagi %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Keterangan %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Tandatangan keterangan %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pakej tersedia dari %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Sumber tersedia dari %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Terjemahan tersedia dari %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Terjemahan untuk %s (%s) dari %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Terjemahan untuk %s dari %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Terjemahan (%s) dari %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakej %s tiada" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakej %s tidak dipasang" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versi %s dari %s tidak dipasang" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakej %s sudah dipasang" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versi %s dari %s tiada." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL pelayan kunci tidak sah: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protokol pelayan tidak sah: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Id kekunci tidak sah: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Gagal memuat turun dan pasang kekunci %s dari %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Fail kekunci %s tidak dapat dipasang: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Kekunci dengan cap jari %s tidak dapat dibuang: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakej %s tidak dapat dibuang." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versi %s dari %s tidak dapat dipasang" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Versi lama %s dari %s sudah pun dipasang" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versi %s dari %s sudah pun dipasang" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versi %s dari %s tiada" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Anda perlu tentukan versi untuk turun taraf %s ke" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Versi %s lama dari %s sudah pun dipasang" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakej %s tiada didalam keluaran %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakej %s tidak dapat dibuang" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Pakej tidak menyediakan medan kawalan Saiz-Terpasang yang sah. Rujuk Polisi " "Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Kunci lesen kosong" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "kunci lesen tidak dibenarkan mengandungi kod boleh laku." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Laluan kunci lesen %s tidak sah" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Kunci lesen sudah wujud: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Lokasi kunci lesen tidak selamat semenjak ia mengandungi pautan simbolik. " "Laluan %s dipetakan ke %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Direktori untuk memasang kunci tidak wujud lagi: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Gagal menulis fail kunci ke: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Pakej berikut mempunyai dependensi yang tidak menepati syarat:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "tetapi ianya pakej maya" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "tetapi ianya tidak dipasang" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "tetapi ianya tidak akan dipasang" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "tetapi %s yang terpasang." #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "tetapi %s yang akan dipasang" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Menambah kunci kepada senarai penjaja perisian yang dipercayai telah gagal" aptdaemon-1.1.1+bzr982/po/my.po0000644000000000000000000011116712375372771014274 0ustar 00000000000000# Burmese translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-07-15 06:59+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Burmese \n" "Language: my\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "ယုံကြည်ရသောကီးများကိုကြည့်ရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "downloaded package ဖိုင်များရှင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "software settings ပြောင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "software repository settings ပြောင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "package file သွင်းမည်" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "ဒီ package ကိုသွင်းရန် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "ဆော့ဝဲလ်များ သွင်းရန်ဖြုတ်ရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "ဆော့ဝဲလ်သွင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "ရင်းမြစ်အသစ်မှဆော့ဝဲလ်များသွင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "ဆော့ဝဲလ်ဝယ်ပြီးသွင်းရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "ဆော့ဝဲလ်များအသစ်ထွက်ရှိမှု့သွင်းရန်အတွက်ခွင့်ပြုချက်လိုအပ်သည်။" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "တခြားအသုံးပြုသူ၏လုပ်ငန်းများကိုပယ်ဖျက်မည်" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "တခြားသူ၏ဆော့ဝဲလ်ပြောင်းလဲမှု့များကိုပယ်ဖျက်ရန်အတွက် ခွင့်ပြုချက်လိုအပ်သည်" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ချို့ယွင်းချက်" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ချို့ယွင်းချက် -" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "ဒီလုပ်ဆောင်ချက်လုပ်ဆောင်ရန်သင့်ကိုခွင့်မပြုပါ" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "တန်းစီခြင်း" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "သင်ဆက်လက်လုပ်ဆောင်ချင်ပါသလား။ [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "ပေးထားသော package များကိုသွင်းမည်" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "ပေးထားသော package များ ကိုပြန်သွင်းမည်" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "ပေးထားသော package များ ဖြုတ်မည်" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "ခွင့်ပြုခက်ရရန်စောင့်ဆိုင်းနေပါသည်" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "ယုံကြည်ရသော key ကိုဖြုတ်မည်" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "ဆော့ဝဲလ်အရင်းအမြစ်ထည့်မည်" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "အောင်မြင်ပါသည်" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "ပယ်ဖျက်မည်။" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "မအောင်မြင်" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ဖိုင်ကိုသွင်းနေပါသည်" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Package များကိုသွင်းနေသည်" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "ဆော့ဖ်ဝဲလ်ဖိုင်ထုပ်များ ဖယ်ရှားနေပါသည်" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "စက်စနစ်တစ်ခုလုံးကိုအဆင့်မြင်နေပါသည်" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "ပြောင်းလဲမှု့များကိုသွင်းနေပါသည်" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "ဆော့ဝဲလ်အရင်းအမြစ်ထည့်နေပါသည်" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "ရှာဖွေနေပါသည်" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "ရှာဖွေခြင်းမအောင်မြင်ပါ" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "သင်၏အင်တာနက်ကွန်နက်ရှင်ကိုစစ်ဆေးကြည့်ပါ" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "ဒီလုပ်ဆောင်ချက်လုပ်ဆောင်ရန်သင့်ကိုခွင့်မပြုပါ" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Package မတည်ရှိပါ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Package သည်နောက်ဆုံးပေါ်ဖြစ်သည်" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Package သည်သွင်းပြီးထားပါ" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Package မသွင်းရသေးပါ" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/nb.po0000644000000000000000000012627012375372771014247 0ustar 00000000000000# Norwegian Bokmal translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-02-26 20:26+0000\n" "Last-Translator: Mathias Bynke \n" "Language-Team: Norwegian Bokmal \n" "Language: nb\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Vis godkjente utgivere" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Du må autentisere deg for å vise godkjente nøkler." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Fjern nedlastede pakkefiler" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Du må autentisere deg for å rydde opp i nedlastede pakkefiler." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Endre programvareoppsett" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Du må autentisere deg for å endre programvareinnstillinger." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Endre programvarearkiv" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Du må autentisere deg for å endre innstillinger for programvarearkiver." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installer pakkefil" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "For å installere denne pakken må du autentisere deg." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Oppdater pakkeinformasjon" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Du må autentisere deg for å oppdatere programvarekatalogen." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installer eller fjern pakker" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "For å installere eller fjerne programvare må du autentisere deg." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Legg til et nytt pakkearkiv og installer pakker fra det" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Du må autentisere deg for å installere fra en ny kilde." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Legg til et nytt pakkearkiv for kjøpt programvare og installer pakker fra det" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Du må autentisere deg for å installere kjøpt programvare." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Oppgrader pakker" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Du må autentisere deg for å installere den oppdaterte programvaren" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Avbryte en annen brukers oppgaver" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Du må autentisere deg for å avbryte andres programvareendringer." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Velg en proxy-tjener til programvarenedlastinger" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "For å bruke en proxytjener til å laste ned programvare må du autentisere deg." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FEIL" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Lastet ned %sB av %sB fra %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Lastet ned %sB av %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FEIL:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Du har ikke tilgang til å utføre denne handlingen." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Legger i kø" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Løser avhengigheter" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Følgende NY pakke vil installeres (%(count)s):" msgstr[1] "Følgende NYE pakker vil installeres (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Følgende pakke vil oppgraderes (%(count)s):" msgstr[1] "Følgende pakker vil oppgraderes (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Følgende pakke vil FJERNES (%(count)s):" msgstr[1] "Følgende pakker vil FJERNES (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Følgende pakke vil NEDGRADERES (%(count)s):" msgstr[1] "Følgende pakker vil NEDGRADERES (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Følgende pakke vil bli installert på nytt (%(count)s):" msgstr[1] "Følgende pakker vil bli installert på nytt (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Følgende pakke holdes tilbake (%(count)s):" msgstr[1] "Følgende pakker holdes tilbake (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Må hente %sB arkiver." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Etter denne operasjonen vil %sB ekstra diskplass brukes." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Etter denne operasjonen vil %sB ekstra diskplass bli frigjort." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Ønsker du å fortsette [J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Sett pakkenavn i anførselstegn for å betjene mer enn én pakke:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Oppdater bufferen" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Forsøk å løse problemer med ødelagte avhengigheter. Dette er en potensielt " "skadelig operasjon da den kan forsøke å fjerne mange pakker." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Forsøker å fullføre en tidligere ufullstendig installasjon" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installer de angitte pakkene" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Installer de angitte pakkene på nytt" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Fjern angitte pakker" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Fjern angitte pakker og tilhørende oppsettsfiler" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Nedgrader angitte pakker" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Utgått: vennlist bruk --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Oppgrader systemet på en trygg måte" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Oppgrader systemet, installasjon og fjerning av pakker vil sannsynligvis " "forekomme" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Legg leverandøren til godkjente" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Legg til leverandørens nøkkel-id (behøver også --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Bruk gitt nøkkeltjener til å lete opp nøkler" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Legg til ny pakkearkiv fra den gitt deb-linjen" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Angi en alternativ sources.list.d-fil hvor pakkearkeivene skal legges til." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Vise godkjente utgivernøkler" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Fjern fingeravtrykkets godkjente nøkkel" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Sett opp installerte pakker på nytt. Alternativt kan et minimum av spørsmål " "angis" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ikke inkluder apt-terminalen" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Tillat pakker fra uautentiserte kilder" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Vis detaljert informasjon om pakkene. For øyeblikket kun versjonsnummer" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Venter på autentisering" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ikke avslutt daemon ved inaktivitet" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ikke last noen programtillegg" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Vis informasjon om interne prosesser" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Avslutt og erstatt en kjørende daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Utfør operasjoner i angitt chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Lagre profilstatistikk i angitt fil" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ikke gjør noen endringer på systemet (til bruk for utviklere)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installert fil" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installerte pakker" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "La til nøkkel fra fil" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Mellomlager oppdatert" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Søket er utført" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Fjernet sikker nøkkel" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Fjernede pakker" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Oppdaterte pakker" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Oppgradert system" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Endringer utført" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Reparer ufullstendige installasjoner" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Reparer ødelagte avhengigheter" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "La til programvarekilde" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Aktivert distribusjonskomponent" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Fjernet nedlastede pakkefiler" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Satt opp installerte pakker på nytt" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Vellykket" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Avbrutt" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Mislyktes" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installerer fil" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installerer pakker" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Legger til nøkkel fra fil" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Oppdaterer mellomlager" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Fjerner sikker nøkkel" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Fjerner pakker" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Oppdaterer pakker" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Oppgraderer system" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Utfører endringer" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparerer ufullstendig installasjon" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparerer installert programvare" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Legge til programvarekilde" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Aktiverer distribusjonskomponent" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Fjerner nedlastede pakkefiler" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Setter opp installerte pakker på nytt" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Søker" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installasjon av pakkefil mislyktes" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installasjon av programvare mislyktes" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Mislyktes oppdatering av programvarelisten" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Mislyktes fjerning av klarert leverandør fra listen" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Fjerning av programvare mislyktes" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Oppdatering av programvare mislyktes" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Oppgradering av systemet mislyktes" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Bruk av programvareendringer mislyktes" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Mislyktes reparerering av ufullstendig installasjon" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Mislyktes reparerering av manglende avhengigheter" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Mislyktes å legge til programvarekilde" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Mislyktes å aktivere distribusjonskomponent" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Fjerning av nedlastede pakkefiler mislyktes" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Søk feilet" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Legger til lisensnøkkel" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Undersøk internettforbindelsen din." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Undersøk om du benytter noen tredjeparts pakkearkiver. Disse er ofte en " "kilde til problemer - og du må kanskje deaktivere dem.\n" "I tillegg bør du kjøre følgende kommando i terminalen: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Den valgte filen er ikke en GPG-fil, eller er skadet." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Den valgte nøkkelen kan ikke fjernes. Kontroller at du oppgir et gyldig " "fingeravtrykk." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kontroller om du kjører et annet programvareverktøy, som Synaptic eller " "aptitude. Kun ett verktøy kan gjøre endringer om gangen." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Dette er et alvorlig problem. Prøv igjen senere. Om problemet vedvarer, " "vennligst send feilmelding til utviklerene." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Kontroller staving av pakkenavnet og at det riktige programvarearkivet er " "aktivert." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Det behøves ingen oppdatering." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Det behøves ingen installasjon" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Ingen fjerning behøves." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Du har bedt om fjerning av en pakke som er viktig for systemet." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Mistet forbindelsen til daemon. Sannsynligvis kræsjet bakgrunns-daemonen." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Installasjon/fjerning av programvarepakke mislyktes." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Den etterspurte funksjonen er ikke støttet." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Denne feilen kan skyldes tilleggsprogramvare som mangler eller ikke kan " "installeres. Den kan også være en konflikt mellom programvarepakker som ikke " "kan være installert samtidig." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Installasjonen kan ha mislyktes på grunn av en feil i den tilsvarende " "programvarepakken, eller at den ble avbrutt på en brutal måte. Du må fikse " "dette før du kan installere eller fjerne flere programmer." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Vennligst kopier filen til datamaskinen og kontroller filrettighetene." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Det er ikke tillatt å installere en pakke som bryter med " "kvalitetsstandardene. Dette kan føre til alvorlige problemer på " "datamaskinen. Vennligst ta kontakt med de som har gitt ut denne pakkefilen, " "og legg ved detaljene under." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Alle tilgjengelige oppgraderinger har allerede blitt installert." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Klarte ikke laste ned lisensnøkkelen som lar deg bruke dette programmet. " "Kontroller nettverkstilkoblingen din." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Du har ikke tilgang til å utføre denne handlingen." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Nedlasting av pakkefiler mislyktes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Nedlasting av pakkearkiv-informasjon mislyktes" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakkeavhengigheter kunne ikke løses" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakkesystemet er ødelagt" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Nøkkel ble ikke installert" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Nøkkel ble ikke fjernet" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Låsing av pakkebehandleren mislyktes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Lasting av pakkelisten mislyktes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakken eksisterer ikke" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakken er allerede oppdatert." #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakken er allerede installert" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakken er ikke installert" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Fjerning av betydningsfull systempakke mislyktes" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Oppgaven kan ikke overvåkes eller kontrolleres" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakkeoperasjon mislyktes" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Krever installasjon av usikre pakker" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Tidligere installasjon har ikke blitt fullført" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Pakken er i dårlig forfatning" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pakkefilen kunne ikke åpnes" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Klarte ikke laste ned lisensnøkkelen" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Klarte ikke installere lisensnøkkelen" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Systemet er allerede oppdatert" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "En uhåndterbar feil oppsto" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Venter på at tjeneste skal starte" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Venter" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Venter på påkrevd medie" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Venter på at annen programvarebehandler skal avsluttes" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Venter på dialog for oppsettsfil" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Kjører oppgave" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Laster ned" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Spør programvarekilder" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Rydder opp" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Fullført" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Avbryter" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Laster pakkeliste" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installerer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Setter opp %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Fjerner %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Fjerner %s fullstendig" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Legger merke til at %s forsvinner" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Kjører etter-installasjonsutløser %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Oppgraderer %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Pakker ut %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Forbereder installasjonen av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Forbereder konfigureringen av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Forbereder fjerning av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s har blitt installert" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s er fullstendig fjernet" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Fjernet %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Fullført" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentisering mislyktes" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Henter" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Klar" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Nettverk ikke tilgjengelig" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Behandler %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Lastet ned %sB av %sB fra %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Lastet ned %sB av %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detaljer" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fil" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Lastet ned %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Lastet ned" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Behøver CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Vennligst sett inn angitt CD/DVD i '%s' for å installere programvare fra den." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "F_ortsett" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installer" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Installer på nytt" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Fjern" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Slett" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Oppgrader" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Nedgrader" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Hopp over oppgradering" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Vennligst se over listen over endringer nedenfor." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Andre programvarer må installeres i tillegg" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Tilleggsprogramvare må installeres på nytt" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Tilleggsprogramvare må fjernes" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Tilleggsprogramvare må fjernes" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Tilleggsprogramvare må oppgraderes" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Tilleggsprogramvare må nedgraderes" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Hopper over oppdateringer" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Det må gjøres andre endringer i tillegg" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB vil lastes ned totalt." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB diskplass vil bli frigjort." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB mer diskplass vil brukes." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Erstatt endringene i '%s' med en senere versjon av konfigurasjonsfilen?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Det går vanligvis fint å erstatte den hvis du ikke helt vet hvorfor filen i " "utgangspunktet er der." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Endringer" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Behold" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Erstatt" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detaljer" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Venter på at %s avslutter" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Laster ned %(files)s" msgstr[1] "Laster ned %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Laster ned fra %s" msgstr[1] "Laster ned fra %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Beskrivelse av %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Tilgjengelige pakker fra %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Tilgjengelige kilder fra %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Tilgjengelige oversettelser fra %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Oversettelser på %s (%s) fra %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Oversettelser på %s fra %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Oversettelser (%s) fra %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakke %s er ikke tilgjengelig" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakke %s er ikke installert" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versjon %s av %s er ikke installert" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakke %s er allerede installert" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versjon %s av %s er ikke tilgjengelig." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Mislyktes nedlasting og installasjon av nøkkel %s fra %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Nøkkelfil %s kunne ikke installeres: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Nøkkel med fingeravtrykk %s kunne ikke fjernes: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakken %s kan ikke fjernes." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versjon %s av %s er ikke installert" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Tidligere versjon %s av %s er allerede installert" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versjon %s av %s er allerede installert" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versjon %s av %s er ikke tilgjengelig" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Du må angi en versjon som %s skal nedgraderes til" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Den nyere versjonen %s av %s er allerede installert" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakken %s er ikke tilgjengelig i %s-utgivelsen." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakke %s kan ikke fjernes" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Lisensnøkkelen er tom" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Lisenskoden kan ikke inneholde kjørbar kode." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Lisensnøkkelens sti %s er ugyldig" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Lisensnøkkelen eksisterer allerede: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Følgende pakker har krav som ikke er oppfylt:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "men er en virtuell pakke" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "men er ikke installert" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "men vil ikke bli installert" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "men %s er installert" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "men %s skal installeres" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Klarte ikke å legge til nøkkelen i listen over betrodde " #~ "programvareutgivere" aptdaemon-1.1.1+bzr982/po/nds.po0000644000000000000000000010216012375372771014424 0ustar 00000000000000# German, Low translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:58+0000\n" "Last-Translator: Michael Vogt \n" "Language-Team: German, Low \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Paketdatei installeren" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Paketinformatschoonen opfrischen." #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Paketverschoonen opfrischen" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Eene Opgav vun e'em annern Bruker löschen." #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Sluten Se de Dämon nich wenn he leddig schient" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Binnen Verarbeidensinformatschonen opwiesen" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Sluten un wesseln Se en al lopen Dämon ut" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "De Profilstatistik in de angeven Datei spiekern" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installerte Datei" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installertes Paket" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/ne.po0000644000000000000000000010514012375372771014243 0ustar 00000000000000# Nepali translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-01-16 11:58+0000\n" "Last-Translator: Rabi Poudyal \n" "Language-Team: Nepali \n" "Language: ne\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "प्याकेज फाइल प्रतिस्थापन गर्नुहोस्" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "प्याकेज जानकारी ताजा गर्नुहोस्" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "प्याकेजहरू स्तरोन्नत गर्नुहोस्" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "अर्को प्रयोगकर्ताको कार्य रद्द गर्नुहोस्" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "आन्तरिक प्रक्रियारत जानकारी देखाउनुहोस्" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "पार्श्वरुप विवरण तोकिएको फाइलमा राख्नुहोस्" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "प्रतिस्थापित फाइल" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "प्रतिस्थापित प्याकेजहरू" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "फाइलबाट थपिएको कुञ्जी" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "हटाइएको विश्वस्त कुञ्जी" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "हटाइएका प्याकेजहरू" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "अद्यावधिक प्याकेजहरू" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "स्तरोन्नत गरिएको प्रणाली" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "लागू गरिएका परिवर्तनहरू" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "सफलतापूर्वक" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "रद्द गरियो" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "असफल भयो" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "फाइल प्रतिस्थापित हुँदै" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "प्याकेजहरू प्रतिस्थापित हुँदै" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "फाइलबाट कुञ्जी थपिँदै" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "क्यास अद्यावधिक गरिँदै" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "विश्वस्त कुञ्जी हटाइदै" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "प्याकेजहरू हटाइदै" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "प्याकेजहरू अद्यावधिक गरिदै" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "प्रणाली स्तरोन्नत गरिदै" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "परिवर्तनहरू लागू गरिदै" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "तपाईको इन्टरनेट सम्बन्ध जाँच गर्नुहोस्।" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/nl.po0000644000000000000000000013535512375372771014265 0ustar 00000000000000# Dutch translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-02 08:13+0000\n" "Last-Translator: Hannie Dumoleyn \n" "Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Toon sleutels van vertrouwde leveranciers" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Uw authenticatie is vereist als u de lijst met vertrouwde sleutels wilt " "inzien." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Gedownloade pakketbestanden verwijderen" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Om gedowloade pakketbestanden te verwijderen dient u te zich aan te melden." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Softwareconfiguratie wijzigen" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Om softwareinstellingen te kunnen wijzigen dient u te zich aan te melden." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Verander softwarebron" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Uw authenticatie is vereist als u softwarebronnen wilt aanpassen." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Een pakketbestand installeren" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Uw authenticatie is vereist als u dit pakket wilt installeren." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Pakketinformatie bijwerken" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Uw authenticatie is vereist om de software-catalogus te vernieuwen." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Pakketten installeren of verwijderen" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Uw authenticatie is vereist als u software wilt verwijderen of installeren." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Installeer programmatuur vanuit een zeer vertrouwde en uitdrukkelijk " "goedgekeurde pakketbron." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Om programmatuur te installeren, dient u zich te authenticeren." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Een nieuwe softwarebron toevoegen en daaruit pakketten installeren" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Authenticatie is vereist om software van een nieuwe bron te installeren." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Een nieuwe softwarebron voor gekochte software toevoegen en daaruit " "pakketten installeren" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Authenticatie is vereist om gekochte software te installeren." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Pakketten upgraden" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Uw authenticatie is vereist als u updates wilt installeren." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "De taak van een andere gebruiker beëindigen" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Uw authenticatie is vereist als u de wijzigingen van een andere gebruiker " "ongedaan wilt maken." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Een proxy instellen voor softwaredownloads" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Uw authenticatie is vereist als u een proxy-server wilt gebruiken voor het " "downloaden van software." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FOUT" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB van %sB gedownload met %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB van %sB gedownload" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FOUT:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "U mag deze bewerking niet uitvoeren." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "In wachtrij" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Afhankelijkheden oplossen" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Het volgende NIEUWE pakket zal geïnstalleerd worden (%(count)s):" msgstr[1] "" "De volgende NIEUWE pakketten zullen geïnstalleerd worden (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Het volgende pakket zal worden bijgewerkt (%(count)s):" msgstr[1] "De volgende pakketten zullen worden bijgewerkt (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Het volgende pakket zal worden verwijderd (%(count)s):" msgstr[1] "De volgende pakketten zullen worden verwijderd (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" "Van het volgende pakket zal de VORIGE VERSIE worden gebruikt (%(count)s):" msgstr[1] "" "Van de volgende pakketten zullen de VORIGE VERSIES worden gebruikt " "(%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Het volgende pakket zal opnieuw worden geïnstalleerd (%(count)s):" msgstr[1] "" "De volgende pakketten zullen opnieuw worden geïnstalleerd (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Het volgende pakket is achtergehouden (%(count)s):" msgstr[1] "De volgende pakketten zijn achtergehouden (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Moet %sB aan archieven ophalen." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Na deze operatie zal %sB extra schijfruimte gebruikt worden." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Na deze operatie zal %sB schijfruimte vrijkomen." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Wilt u doorgaan[J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Om een operatie op meer dan een pakket uit te voeren plaatst u de " "pakketnamen tussen aanhalingstekens:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Vernieuw de cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Probeer gebroken afhankelijkheden op te lossen. Dit kan gevaarlijk zijn, " "aangezien deze actie mogelijk veel pakketten zal proberen te verwijderen." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Probeer een eerder niet-voltooide installatie af te ronden" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installeer de opgegeven pakketten" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Herinstalleer de opgegeven pakketten" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Verwijder de opgegeven pakketten" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Verwijder de opgegeven pakketten, inclusief configuratiebestanden" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Van gegeven pakketten vorige versie gebruiken" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Verouderd: Gebruik --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Upgrade het systeem op een veilige manier" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Upgrade het systeem, waarbij mogelijk pakketten geïnstalleerd of verwijderd " "worden" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Voeg de leverancier aan de lijst met vertrouwde toe" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Voeg de keyid van de leverancier toe (heeft ook --keyserver nodig)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Gebruik de opgegeven keyserver om sleutels op te zoeken" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Voeg softwarebron uit de opgegeven deb-line toe" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Geef een alternatief sources.list.d-bestand op waaraan de softwarebronnen " "toegevoegd moeten worden." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Toon sleutels van vertrouwde leveranciers" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Verwijder de vertrouwde sleutel met de opgegeven sleutel-id" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Geïnstalleerde pakketten herconfigureren. Optioneel kan de minimale " "prioriteit van vragen worden opgegeven" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "De minimale vragenprioriteit van debconf die moet worden weergegeven" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Verbind niet met de apt-terminal" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Sta pakketten uit niet-geauthenticeerde bronnen toe" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Aanvullende informatie over de pakketten tonen. Momenteel alleen het " "versienummer" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Wachten op authenticatie" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "De daemon niet afsluiten wegens inactiviteit" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Geen plug-ins laden" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Interne verwerkingsinformatie weergeven" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Afsluiten en een reeds draaiende daemon vervangen" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Luisteren op de DBus-sessiebus (Alleen vereist voor testen)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Acties uitvoeren in de gegeven chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Profielstatistieken opslaan in het opgegeven bestand" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Geen wijzigingen in het systeem aanbrengen (Alleen bruikbaar voor " "ontwikkelaars)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Geïnstalleerd bestand" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Geïnstalleerde pakketten" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Sleutel uit bestand toegevoegd" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache bijgewerkt" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Doorzoeken voltooid" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Vertrouwde sleutel verwijderd" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pakketten verwijderd" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pakketten bijgewerkt" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Systeem opgewaardeerd" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Toegepaste wijzigingen" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Incomplete installatie gerepareerd" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Gebroken afhankelijkheden hersteld" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Toegevoegde softwarebron" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Ingeschakeld onderdeel van de distributie" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Gedownloade pakketbestanden die zijn verwijderd" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Geïnstalleerde pakketten die zijn geherconfigureerd" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Geslaagd" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Geannuleerd" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Mislukt" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Bestand installeren" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Pakketten installeren" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Sleutel uit bestand toevoegen" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Cache bijwerken" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Vertrouwde sleutel verwijderen" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Pakketten verwijderen" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Pakketten bijwerken" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Systeem upgraden" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Wijzigingen worden doorgevoerd" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Incomplete installatie herstellen" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Geïnstalleerde software wordt gerepareerd" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Softwarebron wordt toegevoegd" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Inschakelen van een onderdeel van de distributie" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Gedownloade pakketbestanden verwijderen" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Geïnstalleerde pakketten herconfigureren" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Bezig met zoeken" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installatie van het pakket-bestand is mislukt" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installatie van de software is mislukt" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Het toevoegen van de sleutel aan de lijst met vertrouwde " "softwareleveranciers is mislukt" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Het vernieuwen van de softwarelijst is mislukt" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Het verwijderen van de software-leverancier van de vertrouwde lijst is " "mislukt" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Het verwijderen van de software is mislukt" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Het bijwerken van de software is mislukt" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Het upgraden van het systeem is mislukt" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Het aanpassen van de software is mislukt" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Herstellen van incomplete installatie mislukt" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Herstellen van gebroken afhankelijkheden mislukt" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Het toevoegen van de softwarebron is mislukt" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Inschakelen van het onderdeel van de distributie is mislukt" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Het verwijderen van gedownloade pakketgestanden is mislukt" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Zoeken mislukt" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Licentiesleutel wordt toegevoegd" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Controleer uw internetverbinding." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Controleer of u softwarebronnen van een derde partij gebruikt. Als dat zo " "is, schakel ze dan uit, omdat ze een veelvoorkomende bron van problemen " "zijn.\n" "Voer ook de volgende opdracht uit in een Terminalvenster: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Het geselecteerde bestand is misschien geen GPG-sleutel, of het kan " "beschadigd zijn." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "De geselecteerde sleutel kon niet verwijderd worden. Controleer of u een " "geldige sleutel-id hebt opgegeven." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Controleer of er momenteel andere pakketbeheersystemen actief zijn, zoals " "Synaptic of aptitude. Er kan slechts een pakketbeheerder tegelijk " "aanpassingen doen." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Dit is een ernstig probleem. Probeer het later opnieuw. Als dit probleem " "nogmaals optreedt, meld dan een fout aan de ontwikkelaars." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Controleer of de pakketnaam juist gespeld is en of de juiste softwarebronnen " "geactiveerd zijn." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Bijwerken is niet nodig." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Het is niet nodig om te installeren" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Het is niet nodig om te verwijderen." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "U wilt een pakket verwijderen dat een essentieel onderdeel is van uw systeem." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "De verbinding met de daemon is verloren. Waarschijnlijk is de achtergrond-" "daemon vastgelopen." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "De installatie of verwijdering van een softwarepakket is mislukt." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "De gevraagde functie wordt niet ondersteund." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Het lijkt er op dat er een fout in het programma aptdaemon aanwezig is, het " "programma waarmee u software kunt installeren/verwijderen en andere pakket-" "gerelateerde taken kunt uitvoeren." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Mogelijk zijn vereiste, extra softwarepakketten niet beschikbaar of niet " "installeerbaar. Verder kan er een conflict zijn opgetreden tussen " "softwarepakketten die niet tegelijkertijd geïnstalleerd kunnen zijn." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Dit vereist het installeren van pakketten uit niet-geauthenticeerde bronnen." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "De installatie kan mislukt zijn door een fout in het betreffende " "softwarepakket, of doordat het installatieproces op een onjuiste wijze werd " "afgebroken. Deze fout dient hersteld te worden alvorens u andere software " "kunt installeren of verwijderen." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Kopieer het bastand naar uw lokale computer en controleer de " "bestandstoegangsrechten" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Het installeren van een pakket dat de kwaliteitsnormen geweld aandoet is " "niet toegestaan. Dit zou ernstige problemen op uw computer kunnen " "veroorzaken. Neem contact op met de persoon of organisatie die dit " "pakketbestand geleverd heeft en sluit onderstaande details in." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "De gedownloade licentiesleutel die vereist is om deze software te draaien is " "ongeldig of kon niet juist worden geïnstalleerd.\n" "Zie de details voor meer informatie." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Alle beschikbare upgrades zijn reeds geïnstalleerd." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "De licentiesleutel waarmee u deze software kunt gebruiken kon niet worden " "gedownload. Controleer uw netwerkverbinding." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "U heeft niet de vereiste bevoegdheden om deze actie uit te voeren." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "U heeft of een verkeerd wachtwoord opgegeven, of de autorisatie " "geannuleerd.\n" "Verder zou er ook een technische reden kunnen zijn voor deze fout als u geen " "wachtwoorddialoogvenster heeft gezien: uw bureaubladomgeving heeft geen " "PolicyKit-sessieagent." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Pakketbestanden downloaden is mislukt" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Softwarebron-informatie downloaden is mislukt" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Pakketafhankelijkheden kunnen niet opgelost worden" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Het pakketsysteem is gebroken" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Sleutel is niet geïnstalleerd" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Sleutel is niet verwijderd" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Kon de pakketbeheerder niet vergrendelen" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Kon de pakkettenlijst niet vergrendelen" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakket bestaat niet" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pakket is al bijgewerkt" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakket is al geïnstalleerd" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakket is niet geïnstalleerd" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Kon essentieel systeempakket niet verwijderen" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Taak kan niet bijgehouden of bestuurd worden." #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Pakkethandeling is mislukt" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Vereist installatie van onvertrouwde pakketten" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Vorige installatie is niet voltooid" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Het pakket is van slechte kwaliteit" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pakketbestand kon niet worden geopend" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Niet-ondersteunde functie" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Het downloaden van de licentiesleutel is mislukt" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Het installeren van de licentiesleutel is mislukt" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Het systeem is al bijgewerkt" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "U kon niet worden geautoriseerd" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "U mag deze actie niet uitvoeren" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Er is een onhandelbare fout opgetreden" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Wachten op het starten van de dienst" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Wachten" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Wachten op vereist medium" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Wachten totdat andere softwarebeheerders zijn afgesloten" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Wachten op het venster van het configuratiebestand" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Actieve taak" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Downloaden" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Softwarebronnen doorzoeken" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Opruimen" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Gereed" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Annuleren" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Softwarelijst laden" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s installeren" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s configureren" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s verwijderen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s wordt volledig verwijderd" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "De verdwijning van %s wordt genoteerd" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Post-installatiehandeling %s uitvoeren" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s upgraden" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s wordt uitgepakt" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Installatie van %s wordt voorbereid" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Configuratie van %s wordt voorbereid" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Verwijdering van %s wordt voorbereid" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Het volledig verwijderen van %s wordt voorbereid" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s is geïnstalleerd" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s is volledig verwijderd" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s is verwijderd" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Gereed" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Authenticatie mislukt" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Ophalen" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactief" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Er is geen netwerkverbinding" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Bezig met het verwerken van %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB van %sB gedownload met %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB van %sB gedownload" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Details" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Bestand" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB gedownload" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Gedownload" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Cd/dvd '%s' is nodig" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Plaats de bovenstaand cd/dvd in drive '%s\" om hiervan softwarepakketten te " "installeren." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "D_oorgaan" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installeren" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Herinstalleren" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Verwijderen" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Volledig verwijderen" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Upgraden" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Vorige versie gebruiken" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Upgraden overslaan" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Bekijk de onderstaande lijst van wijzigingen." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Er dient extra software geïnstalleerd te worden" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Er dient extra software opnieuw geïnstalleerd te worden" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Er dient extra software verwijderd te worden" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Er dient extra software volledig verwijderd te worden" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Er dient extra software opgewaardeerd te worden" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Er dient de vorige versie van extra software gebruikt te worden" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Updates zullen worden overgeslagen" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Er moeten extra wijzigingen worden aangebracht" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Er zal in totaal %sB gedownload worden." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Er zal %sB aan schijfruimte vrijkomen." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Er zal %sB extra schijfruimte gebruikt worden." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Uw aanpassingen in '%s' met een latere versie van het configuratiebestand " "overschrijven?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Als u niet weet waarom het bestand al bestaat is het meestal veilig om het " "te vervangen." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Veranderingen" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Behouden" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Ve_rvangen" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Details" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Wacht tot %s wordt afgesloten" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s wordt gedownload" msgstr[1] "%(files)s worden gedownload" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokale softwarebron" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Bezig met het downloaden van %s" msgstr[1] "Bezig met het downloaden van %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Structuur van %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Beschrijving van %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Beschrijving handtekening van %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Beschikbare pakketten van %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Beschikbare bronnen van %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Beschikbare vertalingen van %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Vertalingen voor %s (%s) van %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Vertalingen voor %s van %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Vertalingen (%s) van %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakket %s is niet beschikbaar" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakket %s is niet geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versie %s van %s is niet geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakket %s is al geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "De versie %s van %s is niet beschikbaar." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Het webadres van de sleutelserver is ongeldig: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Ongeldig protocol van de server: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Ongeldige identificatie van sleutel: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Het downloaden en installeren van de sleutel %s van %s is mislukt:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Sleutelbestand %s kon niet worden geïnstalleerd: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Sleutel met vingerafdruk %s kon niet worden verwijderd: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Pakket %s kan niet worden verwijderd." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versie %s van %s is niet geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "De vorige versie %s van %s is al geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versie %s van %s is al geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "De versie %s van %s is niet beschikbaar" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "U dient op te geven naar welke versie %s moet worden teruggebracht" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "De latere versie %s van %s is al geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Het pakket %s is niet beschikbaar in de uitgave %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakket %s kan niet worden verwijderd" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Bij dit pakket bevat geen geldig ‘Installed-Size control field’. Zie Debian " "Policy, artikel 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "De licentiesleutel is leeg" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "De licentiesleutel mag geen uitvoerbare code bevatten." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Het licentiesleutelpad %s is ongeldig" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "De licentiesleutel bestaat reeds: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "De locatie van de licentiesleutel is onbeveiligd omdat het symbolische " "verwijzingen bevat. Pad %s wijst naar %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "De map waar de sleutel geïnstalleerd moet worden bestaat nog niet: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Schrijven van sleutelbestand naar %s mislukt" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" "De afhankelijkheden van de volgende pakketten konden niet geïnstalleerd " "worden:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "maar het is een virtueel pakket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "maar het is niet geïnstalleerd" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "maar het zal niet worden geïnstalleerd" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "maar %s is geïnstalleerd" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "maar %s zal worden geïnstalleerd" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Het toevoegen van een sleutel aan de lijst van vertrouwde software-" #~ "leveranciers is mislukt" aptdaemon-1.1.1+bzr982/po/nn.po0000644000000000000000000011326712375372771014265 0ustar 00000000000000# Norwegian Nynorsk translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-10-29 20:36+0000\n" "Last-Translator: Andreas N. \n" "Language-Team: Norwegian Nynorsk \n" "Language: nn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Vis nøklane til godkjende utgjevarar" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Du må autentisera deg for å visa godkjende nøklar." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Fjern nedlasta pakkefiler" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Du må autentisera deg for å rydda opp i nedlasta pakkefiler." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Endra programvareinnstillingane" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Du må autentisera deg for å endra programvareinnstillingar." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Endra programvarearkiv" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Du må autentisera deg for å endra innstillingar for programvarearkiv." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installer pakkefil" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Du må autentisera deg for å installera denne pakken." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Oppdater pakkeinformasjon" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Du må autentisera deg for å oppdatera programkatalogen." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installer eller fjern pakkar" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Du må autentisera deg for å installera eller fjerna programvare." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Legg til eit nytt pakkearkiv og installer pakkar frå det" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Du må autentisera deg for å installera programvare frå ei ny kjelde." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Legg til eit nytt pakkearkiv for kjøpt programvare og installer pakkar frå " "det" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Du må autentisera deg for å installera kjøpt programvare." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Oppgrader pakkar" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Du må autentisera deg for å installera den oppdaterte programvara." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Avbryt ei oppgåve frå ein annan brukar" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Du må autentisera deg for å avbryta andre sine programvareendringar." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Vel ein mellomtenar for programnedlastingar" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Du må autentisera deg for å bruka ein mellomtenar til programnedlastingar." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FEIL" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Lasta ned %sB av %sB frå %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Lasta ned %sB av %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FEIL:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Du har ikkje løyve til å utføra denne handlinga." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Legg i kø" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Ordnar opp i bindingar" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Denne NYE pakken vil installerast (%(count)s):" msgstr[1] "Desse NYE pakkane vil installerast (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Denne pakken vil oppgraderast (%(count)s):" msgstr[1] "Desse pakkane vil oppgraderast (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Denne pakken vil FJERNAST (%(count)s):" msgstr[1] "Desse pakkane vil FJERNAST (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Denne pakken vil nedgraderast (%(count)s):" msgstr[1] "Desse pakkane vil nedgraderast (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Denne pakken vil installerast på nytt (%(count)s):" msgstr[1] "Desse pakkane vil installerast på nytt (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Denne pakken vil haldast att (%(count)s):" msgstr[1] "Desse pakkane vil haldast att (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Må henta %sB med arkiv." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Etter denne operasjonen vil %sB ekstra diskplass verta brukt." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Etter denne operasjonen vil %sB frigjerast." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ikkje avslutt daemon om han er inaktiv" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Vis informasjon om interne prosessar" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Avslutt og erstatt ein allereie køyrande daemon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Lagra profilstatistikk i valt fil" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ikkje gjer endringar på systemet (berre til bruk for utviklarar)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installert fil" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installerte pakkar" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "La til nøkkel frå fil" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Oppdaterte hurtiglageret" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Fjerna tiltrudd nøkkel" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Fjerna pakkar" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Oppdaterte pakkar" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Oppgraderte systemet" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Iverksette endringar" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Reparerte ein ufullstendig installasjon" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Vellukka" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Avbrote" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Mislukka" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installerer fil" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installerer pakkar" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Legg til nøkkel frå fil" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Oppdaterar mellomlageret" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Fjernar tiltrudd nøkkel" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Fjernar pakkar" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Oppdaterar pakkar" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Oppgraderar systemet" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Utfører endringar" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparerar ufullstendig installasjon" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Klarte ikkje å installera pakkefil" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Klarte ikkje å installera programvara" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Klarte ikkje å oppdatera programvarelista" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Klarte ikkje å fjerna programvareutgjevaren frå lista" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Klarte ikkje å fjerna programvara" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Klarte ikkje å oppdatera programvara" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Klarte ikkje å oppgradera systemet" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Klarte ikkje å uføra programvareendringar" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Klarte ikkje å reparera den ufullstendige installasjonen" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Undersøk Internettkoplinga di" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Undersøk om du brukar pakkearkiv frå ein tredjepart. Sidan slike pakkearkiv " "er ei vanleg feilkjelde, bør du vurdera å fjerna desse.\n" "I tillegg bør du køyra følgjande kommando i terminalen: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Den valte fila er truleg anten øydelagt eller ikkje ei GPG-fil." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Det her er eit alvorleg problem. Prøv om att seinare, og dersom møter same " "problemet er det fint om du rapporterar det til utviklarane av programvaren." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Oppdatering trengs ikkje." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Installasjon trengs ikkje." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Fjerning trengs ikkje." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Du har bede om å få fjerna ein pakke som er grunnleggande for systemet." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Klarte ikkje å installera eller fjerna ein programvarepakke." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Du har ikkje løyve til å utføra denne handlinga." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Klarte ikkje å laste ned pakkefiler" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Klarte ikkje å laste ned informasjon om pakkearkiva" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Pakkesystemet er øydelagt" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Nøkkelen vart ikkje installert" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Nøkkelen vart ikkje fjerna" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Klarte ikkje å låsa pakkehandsamaren" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Klarte ikkje å lasta pakkelista" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakken fins ikkje" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakken er allereie installert" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakken er ikkje installert" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Klarte ikkje å fjerna ein grunnleggande systempakke" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Denne oppgåva kan verken overvakast eller kontrollerast" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Klarte ikkje å gjennomføra pakkeoperasjonen" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Krev installasjon av utiltrudde pakkar" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Den førre installasjonen er ikkje fullført" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Ventar på at tenesta skal starte" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Ventar" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Ventar på at ein annan programvarehandsamar skal avslutte" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Køyrer oppgåve" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Lastar ned" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Ryddar opp" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Fullført" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Avbryt" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Lastar programvareliste" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installerar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Set opp %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Fjernar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Oppgraderar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Lasta ned %sB av %sB frå %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Lasta ned %sB av %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detaljar" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Treng CD- eller DVD-plata '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Vil du bytta ut endringane dine i '%s' med ein seinare versjon av " "konfigurasjonsfila?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Det vil vanlegvis vere greitt å erstatte fila om du ikkje veit kvifor ho " "allereie er der." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Klarte ikkje å legga nøkkelen inn i lista over tiltrudde " #~ "programvareutgjevarar" aptdaemon-1.1.1+bzr982/po/oc.po0000644000000000000000000013573612375372771014260 0ustar 00000000000000# Occitan (post 1500) translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-28 20:19+0000\n" "Last-Translator: Cédric VALMARY (Tot en òc) \n" "Language-Team: Occitan (post 1500) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Far la lista de las claus dels provesidors de fisança" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Per afichar la lista de las claus de fisança, vos cal vos autentificar." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Suprimir los paquets telecargats" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Vos cal vos autentificar per suprimir los paquets telecargats." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Modificar la configuracion del logicial" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Vos cal vos autentificar per modificar la configuracion del logicial." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Modificar lo depaus logicial" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Per modificar la configuracion dels depauses logicials, vos cal vos " "autentificar." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installar un paquet" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Vos cal vos autentificar per installar aquel paquet." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Metre a jorn las informacions suls paquets" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Vos cal vos autentificar per metre a jorn la lista dels logicials " "disponibles." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installar o suprimir de paquets" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Vos cal vos autentificar per installar o suprimir de logicials." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Installar lo logicial a partir d'un depaus marcat coma fòrça fisable." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Vos cal vos autentificar per installar de logicials." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Apondre un depaus novèl e installar de paquets d'aquel" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Vos cal vos autentificar per installar lo logicial dempuèi una font novèla." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Apondre un novèl depaus de logicials crompats e installar de paquets " "d'aqueste" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Vos cal vos autentificar per installar lo logicial crompat." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Metre a jorn los paquets" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Vos cal vos autentificar per metre a jorn de logicials." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Anullar lo prètfach d'un autre utilizaire" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Vos cal vos autentificar per anullar las modificacions suls logicials d'un " "autre utilizaire." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Definir un servidor mandatari pel telecargament dels logicials" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Vos cal vos autentificar per utilizar un servidor mandatari per telecargar " "de logicials." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%s octets sus %s octets telecargats a %s octets/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%s octets sus %s octets telecargats" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR :" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Sètz pas autorizat a realizar aquela accion." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Mesa en fila d'espèra" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolucion de las dependéncias" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Lo NOVÈL paquet seguent serà installat :" msgstr[1] "Los %(count)s) NOVÈLS paquets seguents seràn installats :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Lo paquet seguent serà mes a jorn :" msgstr[1] "Los %(count)s paquets seguents seràn meses a jorn :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Lo paquet seguent serà SUPRIMIT :" msgstr[1] "Los %(count)s paquets seguents seràn SUPRIMITS :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Lo paquet seguent serà remplaçat per una version ANTERIORA :" msgstr[1] "" "Los %(count)s paquets seguents seràn remplaçats per una version ANTERIORA :" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Lo paquet seguent serà reïnstallat :" msgstr[1] "Los %(count)s paquets seguents seràn reïnstallats :" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Lo paquet seguent es estat conservat :" msgstr[1] "Los %(count)s paquets seguents son estats conservats :" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%s octets an d'èsser telecargats." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Aprèp aquesta operacion, %s octets d'espaci de disc seràn utilizats." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Aprèp aquesta operacion, %s octets d'espaci de disc seràn liberats." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Volètz contunhar [O/N] ?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Per tractar mantun paquet a l'encòp, plaçatz lors noms entre verguetas :\n" "aptdcon --install \"truc machin\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Refrescar l'escondedor" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Ensajatz de reparar las dependéncias copadas. Aquesta operacion es " "potencialament dangierosa, perque pòt menar a la supression de fòrça paquets." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Ensaja d'acabar una installacion precedenta incompleta" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installa los paquets especificats" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reïnstalla los paquets especificats" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Suprimís los paquets especificats" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" "Suprimís completament los paquets especificats, incluses los fichièrs de " "configuracion" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Tornar a la version precedenta dels paquets especificats" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Desconselhat : utilizatz --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Met a jorn lo sistèma d'un biais securizat" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Met a jorn lo sistèma amb possibilitat d'apondon e de supression de paquets" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Apond als provesidors fisables" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Apond la clau del provesidor (necessita tanben --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utiliza lo servidor de claus especificat per la recèrca de claus" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Apond un depaus novèl a partir de la linha deb especificada" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especificar un fichièr sources.list.d alternatiu al qual los depauses devon " "èsser aponduts" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Fa la lista de las claus dels provesidors de fisança" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Suprimís la clau de fisança qu'an l'emprencha especificada" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigura los paquets installats. Es possible de reglar la prioritat de " "las questions." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Prioritat debconf minimala de la question d'afichar" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Estacar pas al terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Autorizar los paquets que provenon de fonts pas autentificadas" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Aficha d'informacions suplementàrias suls paquets. Actualament unicament lo " "numèro de version" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "En espèra d'autentificacion" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Quitar pas lo demon s'es inactiu" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Cargar pas cap d'extension" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Afichar las informacions intèrnas de tractament" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Quitar e reaviar un demon en cors d'execucion" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "En escota sul bus de sesilha DBus (requesit unicament per de tèsts" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Efectua las operacions dins l’environament chroot especificat" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Enregistrar las estatisticas del perfil dins lo fichièr especificat" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Far pas cap de modificacion sul sistèma (Util solament pels desvolopaires)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Fichièr installat" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paquets installats" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Clau aponduda dempuèi un fichièr" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Escondedor mes a jorn" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Recèrca acabada" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Clau de fisança suprimida" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paquets suprimits" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paquets meses a jorn" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistèma mes a nivèl" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Cambiaments aplicats" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Installacion incompleta reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependéncias copadas reparadas" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Font de logicials aponduda" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Component de la distribucion activat" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Paquets telecargats suprimits" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Paquets installats reconfigurats" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Amb succès" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Anullat" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Fracàs" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installacion del fichièr" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installacion dels paquets" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Apondon de la clau dempuèi un fichièr" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Mesa a jorn de l'escondedor" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Supression de la clau de fisança" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Supression dels paquets" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Mesa a jorn dels paquets" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Mesa a nivèl del sistèma" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplicacion dels cambiaments" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparacion d'una installacion incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparacion dels logicials installats" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Apondon d'una font de logicials" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Activacion d'un component de la distribucion" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Supression dels paquets telecargats" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfiguracion dels paquets installats" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Recèrca en cors" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "L'installacion del paquet logicial a fracassat" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "L'installacion dels logicials a fracassat" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "L'apondon de la clau a la lista dels editors de logicials de fisança a " "fracassat." #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "L'actualizacion de la lista dels logicials a fracassat" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "La supression del provesidor de logicials de la lista dels provesidors " "fisables a fracassat." #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "La supression dels logicials a fracassat" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "La mesa a jorn dels logicials a fracassat" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "La mesa a jorn del sistèma a fracassat" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Las modificacions logicialas an fracassat." #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Fracàs de la reparacion d'una installacion incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Fracàs de la reparacion de las dependéncias copadas" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "L'apondon de la font de logicials a fracassat" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "L'activacion del component de la distribucion a fracassat" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "La supression dels paquets telecargats a fracassat" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "La recèrca a fracassat" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Apondon de la clau de licéncia" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Verificatz vòstra connexion a Internet" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Verificatz s'utilizatz de depauses de partidas tèrças. S'es lo cas, " "desactivatz-los perque de còps son font de problèmas.\n" "A mai d'aquò, executatz la comanda seguenta dins un terminal : sudo apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Benlèu lo fichièr seleccionat es pas una clau GPG o es possible que siá " "corrumput." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Impossible de suprimir la clau seleccionada. Verificatz que l'emprencha " "especificada es valida." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Verificatz s'executatz pas un autre gestionari de paquets, per exemple " "Synaptic o Aptitude. Una sola aisina es autorizada a aportar de cambiaments " "a l'encòp." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Aquò's un problèma seriós. Tornatz ensajar mai tard. Se lo problèma " "persistís, senhalatz-lo als desvolopaires." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Verificatz que lo nom del paquet es escrich corrèctament e que lo depaus " "apropriat es actiu." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Cap de mesa a jorn es pas necessària." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Cap d'installacion es pas necessària." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Cap de supression es pas necessària." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Avètz demandat a suprimir un paquet essencial al foncionament del sistèma." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "La connexion al demòni es estada perduda. Es probablament perque lo demòni a " "quitat inopinèament." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "L'installacion o la supression d'un paquet logicial a fracassat." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "La foncionalitat demandada es pas presa en carga." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Sembla qu'i a una error logiciala dins aptdaemon, lo programa que vos permet " "d'installar e suprimir de logicials e tout autre prètzfach ligat a la " "gestion dels paquets." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Aquesta error pòt èsser provocada per de paquets suplementaris requesits, " "mas absents ou pas installables. En otra, i poiriá aver un conflicte entre " "d'unes paquets que pòdon pas èsser installats a l'encòp." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Aquò necessita l'installacion de paquets dempuèi de fonts pas autentificadas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Benlèu que l'installacion a fracassat a causa d'una error dins lo paquet o " "perque es estada interrompuda brutalament. Vos cal corregir aquò abans de " "poder installar o suprimir d'autres logicials." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Copiatz lo fichièr sus vòstre ordenador e verificatz-ne las permissions." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "L'installacion d'un paquet que respècta pas los estandards de qualitat es " "pas autorizada. Aquò poiriá engendrar de problèmas dels grèus sus vòstre " "ordenador. Contactatz la persona o l'organizacion qu'a provesit aquel paquet " "en incluissent las entresenhas çaijós." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "La clau de licéncia telecargada qu'es necessària per aviar aqueste logicial " "es pas valabla o a pas pogut èsser installada corrèctament.\n" "Vejatz los detalhs per mai d'informacions." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Totas las mesas a jorn disponiblas son ja estadas installadas." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "La clau de licéncia que vos permet d'utilizar aqueste logicial a pas pogut " "èsser telecargada. Verificatz vòstra connexion ret." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "" "Avètz pas obtengut los privilègis requesits per executar aquesta accion." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Avètz ja dintrat un marrit senhal o tampat l'instància d'autorizacion.\n" "Tanben, es possible qu'i aja una rason tecnica a aquesta error s'avètz pas " "vist cap de dialòg de demanda de senhal : vòstre environament de burèu " "provesís pas un agent de sesilha PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Fracàs del telecargament dels paquets" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Fracàs del telecargament de las informacions del depaus" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Impossible de resòlvre las dependéncias del paquet" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Lo sistèma de paquets es copat" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "La clau es pas estada installada" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "La clau es pas estada suprimida" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Impossible de varrolhar lo gestionari de paquets" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Impossible de cargar la lista dels paquets" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Lo paquet existís pas" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Lo paquet es ja a jorn" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Lo paquet es ja installat" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Lo paquet es pas installat" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Impossible de suprimir un paquet essencial del sistèma" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Lo prètzfach pòt pas èsser seguit ni contrarotlat" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Fracàs de tractament del paquet" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Necessita l'installacion de paquets pas verificats" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "L'installacion precedenta èra incompleta" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Lo paquet es de marrida qualitat" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Impossible de dobrir lo paquet" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Foncionalitat pas presa en carga" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Fracàs del telecargament de la clau de licéncia" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Fracàs al moment de l'installacion de la clau de licéncia" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Lo sistèma es ja a jorn" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Avètz pas pogut èsser autorizat" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Sètz pas autorizat a executar aquesta accion" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Una error impossibla de tractar s'es producha" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "En espèra d'aviada del servici" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "En espèra" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "En espèra del mèdia requesit" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "En espèra de fin d'execucion d'un autre gestionari de paquets" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "En espèra d'una demanda de configuracion" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Execucion del prètzfach" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Telecargament" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Interrogacion de las Fonts de Logicials" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Netejatge" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Acabat" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Anullacion" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Cargament de la lista dels logicials" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installacion de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configuracion de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Supression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Supression completa de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Desaparicion de %s constatada" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Execucion de las accions diferidas (« trigger ») de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Mesa a jorn de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Descompression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Installacion de %s en preparacion" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparacion de la configuracion de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparacion de la supression de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparacion de la supression completa de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s es estat installat" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s es estat suprimit completament." #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s es estat suprimit" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Acabat" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "L'autentificacion a fracassat" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Recepcion" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Al repaus" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "La ret es pas disponibla" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Tractament de %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%s octets sus %s octets telecargats a %s octets/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%s octets sus %s octets telecargats" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalhs" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fichièr" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%s octets telecargats" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Telecargat" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Lo CD/DVD « %s » es requeqit" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Installatz lo CD çaisús dins lo lector « %s » per installar los paquet que " "s'i tròban." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontunhar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reïnstallar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Suprimir" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Purgar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Metre a jorn" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Tornar a una version anteriora" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Ignorar la mesa a nivèl" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Consultatz la lista dels cambiaments çaijós." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "De logicials suplementaris devon èsser installats." #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "De logicials suplementaris devon èsser reïnstallats." #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "De logicials suplementaris devon èsser desinstallats." #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "De logicials suplementaris devon èsser suprimits completament." #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "De logicials suplementaris devon èsser meses a jorn." #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" "De logicials suplementaris an d'èsser reînstallats en version mai anciana." #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Las mesas a jorn seràn ignoradas." #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "De cambiaments suplementaris son requesits." #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%s octets seràn telecargats al total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%s octets d'espaci de disc seràn liberats." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%s octets d'espaci de disc suplementari serà utilizat." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Remplaçar las modificacions qu'aviatz efectuadas dins '%s' per una version " "ulteriora del fichièr de configuracion ?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Se sabètz pas perqué lo fichièr es ja aicí, es generalament sens dangièr de " "lo remplaçar." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Modificacions" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Conservar" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Remplaçar" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalhs" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "En espèra de tampadura de %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Telecargament de %(files)s" msgstr[1] "Telecargament de %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "depaus local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Telecargament dempuèi %s" msgstr[1] "Telecargament dempuèi %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Composicion de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descripcion de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Descripcion de la signatura de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paquets disponibles dins lo depaus %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Fonts disponiblas dempuèi %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduccions disponiblas dempuèi %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduccions pel %s (%s) dins lo depaus %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduccions pel %s dins lo depaus %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduccions (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Lo paquet %s es pas disponible" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Lo paquet %s es pas installat" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "La version %s de %s es pas installada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Lo paquet %s es ja installat" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "La version %s de %s es pas disponibla" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "L'URL del servidor de claus es invalida : %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocòl del servidor invalid : %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Identificant de clau invalid : %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Fracàs del telecargament e de l'installacion de la clau %s a partir de %s :\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Impossible d'installar la clau %s : %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Impossible de suprimir la clau qu'an l'emprencha %s : %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Impossible de suprimir lo paquet %s" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "La version %s de %s es pas installada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Una version anteriora (%s) de %s es ja installada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "La version %s de %s es ja installada" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "La version %s de %s es pas disponibla" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Vos cal especificar la version cap a la quala volètz tornar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "La darrièra version (%s) de %s es ja installada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Lo paquet %s es pas disponible dins la distribucion %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Impossible de suprimir lo paquet %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Lo paquet provesís pas un camp de contraròtle de talha valida. Cf. politica " "Debian 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "La clau de licéncia es voida" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "La clau de licéncia pòt pas conténer de còde executable." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Lo camin de la clau de licéncia %s es pas valide" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "La clau de licéncia existís ja : %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "L'emplaçament de la clau de licéncia es pas securizat perque conten de " "ligams simbolics. Lo camin %s renvia a %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Lo dorsièr ont installar la clau existís pas pel moment : %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Fracàs al moment de l'escritura del fichièr clau dins : %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Los paquets seguents contenon de dependéncias pas satisfachas :" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mas es un paquet virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mas es pas installat" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mas serà pas installat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mas %s es installat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mas %s deu èsser installat" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "L'apondon de la clau a la lista dels provesidors de logicials de fisables " #~ "a fracassat." aptdaemon-1.1.1+bzr982/po/pl.po0000644000000000000000000013547512375372771014272 0ustar 00000000000000# Polish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-19 15:50+0000\n" "Last-Translator: GTriderXC \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" "X-Poedit-Country: Poland\n" "X-Poedit-Language: Polish\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista kluczy zaufanych dostawców" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Aby wyświetlić listę zaufanych kluczy, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Usunięcie pobranych pakietów" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Aby usunąć pobrane pakiety plików, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Zmiana konfiguracji oprogramowania" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Aby dokonać zmian, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Zmiana repozytorium oprogramowania" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Aby zmienić ustawienia repozytoriów oprogramowania, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalacja pliku pakietu" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Aby zainstalować ten pakiet, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Uaktualnianie informacji o pakietach" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Aby uaktualnić katalog oprogramowania, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalacja lub usuwanie pakietów" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Aby zainstalować lub usunąć oprogramowanie, należy się uwierzytelnić." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalacja oprogramowania z wysoce zaufanych repozytoriów białej listy." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Aby zainstalować oprogramowanie, należy się uwierzytelnić." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Dodaj nowe repozytorium i instaluj z niego pakiety" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Aby zainstalować oprogramowanie z nowego zasobu, należy się uwierzytelnić." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Dodaj nowe repozytorium zakupionego oprogramowania i instaluj z niego pakiety" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Aby zainstalować zakupione oprogramowanie, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Aktualizacja pakietów" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Aby zainstalować zaktualizowane oprogramowanie, należy się uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Anuluj zadanie innego użytkownika" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Aby anulować zmiany oprogramowania innego użytkownika, należy się " "uwierzytelnić." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Ustawienie pośrednika sieciowego do pobierania oprogramowania" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Aby użyć pośrednika sieciowego do pobierania oprogramowania, należy się " "uwierzytelnić." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "BŁĄD" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Pobrano %sB z %sB z prędkością %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Pobrano %sB z %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "BŁĄD:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Użytkownikowi nie wolno wykonać tego działania." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Kolejkowanie" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Rozwiązywanie zależności" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Następujący nowy pakiet zostanie zainstalowany (%(count)s):" msgstr[1] "Następujące (%(count)s) nowe pakiety zostaną zainstalowane:" msgstr[2] "(%(count)s) następujących nowych pakietów zostanie zainstalowanych:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Następujacy (%(count)s) pakiet zostanie zaktualizowany:" msgstr[1] "Następujace (%(count)s) pakiety zostaną zaktualizowane:" msgstr[2] "Następujacych (%(count)s) pakietów zostanie zaktualizowanych:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Następujacy (%(count)s) pakiet zostanie usunięty:" msgstr[1] "Następujace (%(count)s) pakiety zostaną usunięte:" msgstr[2] "Następujacych (%(count)s) pakietów zostanie usuniętych:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Następujacy (%(count)s) pakiet zostanie zdezaktualizowany:" msgstr[1] "Następujace (%(count)s) pakiety zostaną zdezaktualizowane:" msgstr[2] "Następujacych (%(count)s) pakietów zostanie zdezaktualizowanych:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Następujacy (%(count)s) pakiet zostanie przeinstalowany:" msgstr[1] "Następujace (%(count)s) pakiety zostaną przeinstalowane:" msgstr[2] "Następujacych (%(count)s) pakietów zostanie przeinstalowanych:" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Następujacy (%(count)s) pakiet został przywrócony:" msgstr[1] "Następujace (%(count)s) pakiety zostały przywrócone:" msgstr[2] "Następujacych (%(count)s) pakietów zostało przywróconych:" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Należy pobrać %sB archiwów." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Po tej operacji użyte zostanie %sB dodatkowego miejsca." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Po tej operacji zwolnione zostanie %sB dodatkowego miejsca." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Kontynuować [T/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Aby działać na więcej niż jednym pakiecie należy umieścić nazwy pakietów w " "cudzysłowach:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Odśwież bufor" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Spróbuj rozwiązać uszkodzone zależności. Potencjalnie niebezpieczne " "działanie, ponieważ może usunąć wiele pakietów." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Próbuje ukończyć poprzednią nieukończoną instalację" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instaluje podane pakiety" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Instaluje ponownie podane pakiety" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Usuwa podane pakiety" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Usuwa podane pakiety wraz z plikami konfiguracji" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Powrót do wcześniejszych wersji pakietów" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Przestarzałe: proszę użyć --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Aktualizuje system w bezpieczny sposób" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Aktualizuje system, usuwając i instalując pakiety" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Dodaje dostawcę do zaufanych" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Dodaje identyfikator klucza dostawcy (wymaga także --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Używa podanego serwera kluczy do wyszukiwania kluczy" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Dodaje nowe repozytorium z podanego wiersza deb" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Określa alternatywny plik sources.list.d, do których mają zostać dodane " "repozytoria." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Wyświetla listę kluczy zaufanych dostawców" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Usuwa zaufany klucz podanego odcisku palca" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Rekonfiguracja zainstalowanych pakietów. Opcjonalnie można sprecyzować " "priorytety zapytań systemowych." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Zostanie wyświetlona minimalna ilość zapytań debconf" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Bez załączania terminalu apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Zezwala na pakiety z nieuwierzytelnionych źródeł" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Wyświetlanie dodatkowych informacji o pakietach. Na tym etapie tylko numery " "wersji" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Oczekiwanie na uwierzytelnienie" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Nie wyłączaj usługi z powodu bezczynności" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Nie wczytuj żadnych wtyczek" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Wyświetlaj wewnętrzne informacje przetwarzania" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Zakończ i zamień już uruchomioną usługę" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Nasłuchiwanie na magistrali sesji DBus (wymagane tylko do testowania" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Przeprowadzenie oparacji na podanym chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Zachowa statystyki profilu w określonym pliku" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Nie dokonuj żadnych zmian w systemie (Tylko do użytku programistów)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Zainstalowano plik" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Zainstalowano pakiety" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Dodano klucz z pliku" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Zaktualizowano bufor" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Wyszukiwanie zakończone" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Usunięto zaufany klucz" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Usunięto pakiety" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Zaktualizowano pakiety" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Zaktualizowano system" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Zastosowano zmiany" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Naprawiono niekompletną instalację" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Naprawiono uszkodzone zależności" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Dodano żródło oprogramowania" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Składnik dystrybucji włączony" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Usunięte pobrane pliki pakietów" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Zrekonfigurowane zainstalowane pakiety" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Udane" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Anulowane" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Nieudane" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalowanie pliku" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalowanie pakietu" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Dodawanie klucza z pliku" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Aktualizowanie bufora" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Usuwanie zaufanego klucza" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Usuwanie pakietów" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Aktualizowanie pakietów" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Aktualizowanie systemu" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Zastosowywanie zmian" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Naprawianie niekompletnej instalacji" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Naprawa zainstalowanego oprogramowania" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Dodawanie żródła oprogramowania" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Włączanie składnika dystrybucji" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Usuwanie pobranych plików pakietów" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Rekonfigurowanie zainstalowanych pakietów" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Wyszukiwanie" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalacja pliku pakietu się nie powiodła" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalacja programu się nie powiodła" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Dodanie klucza do listy zaufanych dostawców oprogramowania nie powiodło się" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Odświeżenie listy oprogramowania się nie powiodło" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Usunięcie z listy zaufanych dostawców się nie powiodło" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Usunięcie programu się nie powiodło" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Aktualizacja programu się nie powiodła" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Aktualizacja systemu się nie powiodła" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Zastosowanie zmian w programie się nie powiodło" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Naprawa niekompletnej instalacji się nie powiodła" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Naprawa uszkodzonych zależności się nie powiodła" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Dodawanie żródła oprogramowania się nie powiodło" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Włączenie składnika dystrybucji się nie powiodło" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Usuwanie pobranych plików pakietów, zakończone niepowodzeniem" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Wyszukiwanie nie powiodło się" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Dodawanie klucza licencji" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Proszę sprawdzić połączenie internetowe." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Proszę sprawdzić, czy używane są repozytoria osób trzecich. Jeśli tak, to " "proszę je wyłączyć, ponieważ są częstym źródłem problemów.\n" "Następnie proszę uruchomić następujące polecenie w terminalu: apt-get " "install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Wybrany plik nie jest kluczem GPG lub jest uszkodzony." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Wybrany klucz nie mógł zostać usunięty. Proszę sprawdzić, czy podany odcisk " "palca jest prawidłowy." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Proszę sprawdzić, czy nie jest uruchomiony inny program do obsługi " "oprogramowania, np. Synaptic lub aptitude. Tylko jedno narzędzie w jednym " "czasie może wprowadzać zmiany." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "To poważny problem. Proszę spróbować później. Jeśli problem pojawi się " "ponownie, to proszę zgłosić błąd programistom." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Proszę sprawdzić pisownię nazwy pakiety i czy odpowiednie repozytorium " "zostało dodane." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nie ma potrzeby aktualizacji." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nie ma potrzeby instalacji" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nie ma potrzeby usunięcia." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Zażądano usunięcia pakietu, który jest niezbędnym elementem systemu." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Połączenie z usługą utracono. Najprawdopodobniej usługa w tle uległa awarii." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Instalacja lub usunięcie oprogramowania się nie powiodło." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Żądana opcja nie jest obsługiwana." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Zdaje się, że aptdaemon zawiera błąd programisty. Program ten pozwala na " "instalację i usuwanie oprogramowania oraz zarządzanie pakietami." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ten błąd mógł być spowodowany wymogiem dodatkowych pakietów oprogramowania, " "których brak lub nie można ich zainstalować. Może także istnieć konflikt " "pomiędzy pakietami oprogramowania, które nie mogą być zainstalowane w jednym " "czasie." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "Ta czynność wymaga zainstalowania pakietów pochodzących z " "nieuwierzytelnionych zasobów." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Instalacja mogła się nie powieść z powodu błędu w pakiecie oprogramowania " "lub została anulowana w nieodpowiedni sposób. Należy to naprawić przed " "instalowaniem lub usuwaniem dalszego oprogramowania." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Skopiuj plik na dysk komputera i sprawdź jego uprawnienia dostępu" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Instalacja tego pakietu, narusza standardy jakościowe i nie jest dozwolona. " "To działanie mogłoby wywołać poważne problemy z działaniem komputera. " "Skontaktuj się z dostawcą pliku pakietu, dołączając poniższe szczegóły." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Pobrany klucz licencyjny, wymagany do uruchomienia tego elementu, jest " "nieważny lub nie może zostać zainstalowany.\n" "Zobacz szczegóły aby uzyskać więcej informacji." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Wszystkie dostępne aktualizacje zostały już zainstalowane." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Klucz licencyjny, umożliwiający korzystanie z tego programu nie może zostać " "pobrany. Proszę sprawdzić połączenie sieciowe." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Brak wymaganych uprawnień do wykonania tej operacji." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Wprowadzono niepoprawne hasło lub anulowano autoryzację.\n" "Błąd mógł również wystąpić wskutek problemu technicznego, gdy pole " "wprowadzania hasła nie było widoczne: środowisko graficzne nie udostępnia " "klienta sesji PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Nieudane pobranie plików pakietów" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Nieudane pobranie informacji z repozytoriów" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Zależności pakietu nie mogą zostać rozwiązane" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "System pakietów jest uszkodzony" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Klucz nie został zainstalowany" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Klucz nie została usunięty" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Nieudane zablokowanie menedżera pakietów" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Nieudane wczytanie listy pakietów" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pakiet nie istnieje" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "To jest już najnowsza wersja tego pakietu" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pakiet jest już zainstalowany" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pakiet nie jest zainstalowany" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Nieudane usunięcie niezbędnego pakietu systemu" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Zadanie nie może być monitorowane ani kontrolowane" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Nieudane działanie pakietu" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Wymaga instalacji niezaufanych pakietów" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Poprzednia instalacja nie została ukończona" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Ten pakiet ma złą jakość" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Plik pakietu nie mógł zostać otwarty" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Opcja niedostępna" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Nie udało się pobrać klucza licencyjnego" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Nie udało się zainstalować klucza licencyjnego" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "System jest już w pełni zaktualizowany" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Autoryzacja nieudana" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Niestety nie wolno Tobie wykonać tej operacji." #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Wystąpił nieobsługiwany błąd" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Oczekiwanie na uruchomienie usługi" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Oczekiwanie" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Oczekiwanie na żądany nośnik" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Oczekiwanie na zakończenie pracy innych menedżerów oprogramowania" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Oczekiwanie na zapytanie pliku konfiguracji" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Przetwarzanie zadania" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Pobieranie" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Wysylanie zapytań do źródeł oprogramowania" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Sprzątanie" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Ukończono" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Anulowanie" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Wczytywanie listy oprogramowania" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalowanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Konfigurowanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Usuwanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Całkowite usuwanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Odnotowano zniknięcie pakietu %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Przetwarzanie wyzwalacza %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Aktualizowanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Rozpakowywanie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Przygotowanie do instalacji %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Przygotowanie do konfiguracji %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Przygotowanie do usunięcia %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Przygotowanie do całkowitego usunięcia %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Zainstalowano %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Całkowicie usunięto %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Usunięto %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Ukończono" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Uwierzytelnienie się nie powiodło" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Pobieranie" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Bezczynny" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Sieć jest niedostępna" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Przetwarzanie %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Pobrano %sB z %sB z prędkością %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Pobrano %sB z %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Szczegóły" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Plik" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Pobrano %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Pobrano" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Wymagany nośnik CD/DVD \"%s\"" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Proszę wsunąć powyższą płytę CD/DVD do napędu \"%s\", aby zainstalować z " "niej pakiety oprogramowania." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Kontynuuj" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Zaintaluj" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Zainstaluj ponownie" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Usuń" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Usuń z konfiguracją" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Zaktualizuj" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Przywróć poprzednią wersję" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Pomiń aktualizację" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Proszę obejrzeć na listę zmian poniżej." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Należy zainstalować dodatkowe oprogramowanie" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Należy zainstalować ponownie dodatkowe oprogramowanie" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Należy usunąć dodatkowe oprogramowanie" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Należy usunąć wraz z konfiguracją dodatkowe oprogramowanie" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Należy zaktualizować dodatkowe oprogramowanie" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Należy przywrócić poprzednią wersję dodatkowego oprogramowania" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Aktualizacje zostaną pominięte" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Wymagane są dodatkowe zmiany" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB do pobranie ogółem." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB miejsca na dysku zostanie zwolnione." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB więcej miejsca na dysku zostanie użyte." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "Czy zastąpić zmiany w '%s' późniejszymi plikami konfiguracji?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Jeżeli nie wiesz dlaczego plik już istnieje, najbezpieczniej będzie go " "zastąpić." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Zmiany" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "Za_chowaj" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Zamień" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Szczegóły" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Oczekiwanie na zamknięcie programu %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Pobieranie %(files)s" msgstr[1] "Pobieranie %(files)s" msgstr[2] "Pobieranie %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repozytorium lokalne" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Pobieranie z %s" msgstr[1] "Pobieranie z %s" msgstr[2] "Pobieranie z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktura %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Opis %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Opis sygnatury %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Dostępne pakiety z %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Dostępne źródła z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Dostępne tłumaczenia z %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Tłumaczenia dla języka %s (%s), z %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Tłumaczenia w języku %s z %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Tłumaczenia(%s) z %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pakiet %s jest niedostępny" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pakiet %s nie jest zainstalowany" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Wersja %s pakietu %s nie jest zainstalowana" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pakiet %s jest już zainstalowany" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Wersja %s pakietu %s jest niedostępna." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Adres URL serwera kluczy jest nieprawidłowy: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Nieprawidłowy protokół serwera: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Nieprawidłowy identyfikator klucza: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nie udało się pobrać i zainstalować klucza %s z %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Plik klucza %s nie mógł być zainstalowany: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Klucz z odciskiem palca %s nie mógł być usunięty: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Usunięcie pakietu %s nie jest możliwe." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Wersja %s pakietu %s nie jest zainstalowana" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Poprzednia wersja %s pakietu %s jest już zainstalowana" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Wersja %s pakietu %s jest już zainstalowana" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Wersja %s pakietu %s jest niedostępna" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Należy sprecyzować do której wersji zdezaktualizować %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Nowsza wersja %s pakietu %s jest już zainstalowana" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pakiet %s jest niedostępny w tym wydaniu %s ." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Pakiet %s nie może zostać usunięty" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Ten pakiet nie dostarcza aktualnej informacji o rozmiarze instalacji. " "Szczegóły w Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Klucz licencji jest pusty" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Klucz licencyjny nie może zawierać kodu wykonawczego." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Ścieżka %s klucza licencyjnego jest nieprawidłowa" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Klucz licencyjny już istnieje: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Lokalizacja klucza licencyjnego jest niezabezpieczona, ponieważ zawiera " "dowiązania symboliczne. Ścieżka %s prowadzi do %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" "Katalog, w którym ma być zainstalowany klucz, jeszcze nie istnieje: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Nie można zapisać pliku klucza do: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Zależności dla następujących pakietów, nie zostały spełnione:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "to jest pakiet wirtualny" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ale został zainstalowany" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ale nie zostanie zainstalowany" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ale %s jest zainstalowany" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ale %s zostanie zainstalowany" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Dodanie klucza do listy zaufanych dostawców się nie powiodło" aptdaemon-1.1.1+bzr982/po/pt.po0000644000000000000000000013413712375372771014274 0ustar 00000000000000# Portuguese translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-23 11:22+0000\n" "Last-Translator: Dark_Webster \n" "Language-Team: Portuguese \n" "Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Listar chaves de fornecedores de confiança" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Para ver a lista de chaves de confiança, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Remover ficheiros de pacotes transferidos" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Para apagar os pacotes transferidos, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Modificar configuração dos programas" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Para alterar as definições dos programas, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Alterar repositório de programas" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Para alterar as definições do repositório de aplicações, é necessária a sua " "autenticação." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalar ficheiro do pacote" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Para instalar este pacote, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualizar a informação do pacote" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Para actualizar o catálogo de programas, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalar ou remover pacotes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Para instalar ou remover programas, é necessária a sua autenticação." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Instalar software a partir de um repositório de alta confiança." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Para instalar software, precisa de autenticar-se." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Adicionar um novo repositório e instalar pacotes a partir dele" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Para instalar a partir de uma nova fonte, é necessária a sua autenticação." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Adicionar um novo repositório de programas pagos e instalar pacotes a partir " "dele" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Para instalar programas comprados, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Actualizar pacotes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Para instalar programas actualizados, é necessária a sua autenticação." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancelar a tarefa de outro utilizador" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Para cancelar as alterações feitas aos programas, é necessária a sua " "autenticação." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Estabelecer proxy para as transferências" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Para utilizar um proxy nas transferências, é necessária a sua autenticação." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERRO" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Transferidos %sB de %sB a %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Transferidos %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERRO:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Não tem permissão para realizar esta acção." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "A colocar na fila" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "A resolver dependências" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "O seguinte NOVO pacote será instalado (%(count)s):" msgstr[1] "Os seguintes NOVOS pacotes serão instalados (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "O seguinte pacote será actualizado (%(count)s):" msgstr[1] "Os seguintes pacotes serão actualizados (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "O seguinte pacote será REMOVIDO (%(count)s):" msgstr[1] "Os seguintes pacotes serão REMOVIDOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "O seguinte pacote será DESACTUALIZADO (%(count)s):" msgstr[1] "Os seguintes pacotes serão DESACTUALIZADOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "O seguinte pacote será reinstalado (%(count)s):" msgstr[1] "Os seguintes pacotes serão reinstalados (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "O seguinte pacote foi deixado para trás (%(count)s):" msgstr[1] "Os seguintes pacotes foram deixados para trás (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "É necessária a obtenção de %sB em arquivos." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Após esta operação, será utilizado %sB de espaço no disco." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Após esta operação, %sB de espaço no disco será libertada." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Deseja continuar [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Para utilizar mais do que um pacote coloque o nome do pacote entre aspas:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Actualizar a cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Tentar resolver dependências danificadas. A operação é potencialmente " "perigosa uma vez que pode tentar remover muitos pacotes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Tente terminar uma instalação anterior incompleta" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalar os pacotes indicados" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalar os pacotes indicados" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Remover os pacotes indicados" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remover os pacotes e ficheiros de configuração indicados" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Desactualizar os pacotes indicados" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsoleto: Por favor, utilize --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Actualizar o sistema de modo seguro" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Actualizar o sistema, provavelmente instalando e removendo pacotes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Adicionar o fornecedor aos de confiança" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Adicionar a chave de identificação do fornecedor (também necessita de --" "keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Utilizar o seguinte servidor de chaves para procurar chaves" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Adicionar o novo repositório da linha deb indicada" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especificar um ficheiro sources.list.d alternativo, no qual os repositórios " "devem ser adicionados." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Listar chaves de fornecedores confiáveis" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remover a chave confiável dos identificadores indicados" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurar pacotes instalados. Opcionalmente, pode ser especificada a " "prioridade mínima para perguntas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" "A prioridade mínima do debconf para eventuais perguntas a serem apresentadas" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Não adicionar ao terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permitir pacotes de fontes não autenticadas" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Exibir informação adicional sobre os pacotes. Actualmente só mostra o número " "da versão" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "À espera da autenticação" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Não encerrar o serviço devido a inactividade" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Não carregar quaisquer plugins" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostrar informações de processamento interno" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Sair e substituir o serviço em execução" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Receber informações Dbus (apenas para testes)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Executar operações do chroot indicado" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Armazenar as estatísticas do perfil no ficheiro especificado" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Não efectuar qualquer alteração ao sistema (apenas útil para programadores)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Ficheiro instalado" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pacotes instalados" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Chave do ficheiro adicionada" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache actualizada" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Pesquisa concluída" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Chave de confiança removida" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pacotes removidos" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pacotes actualizados" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema actualizado" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Alterações aplicadas" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instalação incompleta reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependências quebradas reparadas" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Adicionada fonte de aplicações" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Activado componente da distribuição" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Ficheiros de pacotes transferidos que foram removidos" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Pacotes instalados que foram reconfigurados" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Com sucesso" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelado" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Falhou" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "A instalar o ficheiro" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "A instalar pacotes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "A adicionar chave a partir do ficheiro" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "A actualizar a cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "A remover a chave de confiança" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "A remover pacotes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "A actualizar pacotes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "A actualizar o sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "A aplicar as alterações" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "A reparar instalação incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "A reparar software instalado" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "A adicionar fonte de aplicações" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "A activar componente da distribuição" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "A remover ficheiros de pacotes transferidos" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "A reconfigurar pacotes instalados" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "A procurar" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Falha ao adicionar o pacote" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Falha ao instalar a aplicação" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "A adição da chave à lista de vendedores de software de confiança falhou" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Falha ao actualizar a lista de aplicações" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Falha ao remover o fornecedor da lista de confiáveis" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Falha ao remover a aplicação" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Falha ao actualizar a aplicação" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Falha ao actualizar o sistema" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Falha ao aplicar as alterações" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Falha ao reparar instalação incompleta" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Falha ao reparar dependências quebradas" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Falha ao adicionar a fonte de aplicações" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Falha ao activar a componente da distribuição" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Falha ao remover os ficheiros de pacotes transferidos" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "A pesquisa falhou" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "A adicionar chave de licença" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Verifique a sua ligação à Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Verifique se está a usar repositórios de terceiros. Se sim desactive-os , " "pois são uma fonte comum de problemas.\n" "Além disso, execute o seguinte comando numa Consola: apt-get install-f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "O ficheiro seleccionado pode não ser um ficheiro de chave GPG ou pode estar " "corrompido." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "A chave seleccionada não pôde ser removida. Verifique se forneceu um " "identificador válido." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Verifique se está a utilizar outra ferramenta de gestão (Synaptic ou " "aptitude). Só pode utilizar uma aplicação de cada vez." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Este é um problema sério. Tente novamente mais tarde. Se o problema " "persistir, reporte o erro aos programadores." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Verifique a ortografia do nome do pacote e se o repositório apropriado está " "activo." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Não há qualquer necessidade de actualização." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Não há qualquer necessidade de instalação" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Não há qualquer necessidade de remoção." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Você pediu para remover um pacote que é uma parte essencial do seu sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Foi perdida a ligação com o serviço. O mais provável é o serviço de segundo " "plano ter bloqueado." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Falha ao instalar ou remover um pacote." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "A funcionalidade pedida não é suportada." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Parece que existe um problema no aptdaemon, a aplicação que lhe permite " "instalar ou remover programas e executar outras tarefas relacionadas com a " "gestão de pacotes." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Este erro pode estar relacionado com pacotes necessários que estão em falta " "ou não podem ser instalados. Poderá também existir conflito entre pacotes " "que não possam ser instalados em simultâneo." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Isto necessita que se instale pacotes de fontes não autenticadas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "A instalação pode ter falhado devido a um erro no correspondente pacote ou " "então foi cancelada de forma abrupta. Tem de reparar isto antes de poder " "instalar ou remover mais aplicações." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Por favor, copie o ficheiro para o seu computador e verifique as permissões." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Não é permitida a instalação de um pacote que viole os padrões de qualidade. " "Isto poderia causar sérios problemas ao seu computador. Por favor, contacte " "a pessoa ou organização que lhe forneceu este pacote e inclua os seguintes " "detalhes:" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "A chave de licença que é necessária para correr este software não é válida " "ou não pode ser instalada correctamente.\n" "Veja os detalhes para mais informações." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Todas as actualizações disponíveis já foram instaladas." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "A chave de licença que lhe permite usar este software não pode ser " "transferida. Por favor verifique a sua ligação à Internet." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Não tem privilégios suficientes para realizar esta acção." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Você forneceu uma password errada ou cancelou a autorização.\n" "No entanto pode também haver uma razão técnica para este erro se você não " "viu um diálogo de password: o seu ambiente de trabalho não suporta um agente " "de sessão PolicyKit" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Falha ao transferir os pacotes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Falha ao transferir as informações do repositório" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "As dependências do pacote não podem ser resolvidas" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "O sistema de pacotes está danificado" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "A chave não foi instalada" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "A chave não foi removida" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Falha ao bloquear o gestor de pacotes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "falha ao carregar a lista de pacotes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "O pacote não existe" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "O pacote já está em dia." #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "O pacote já está instalado" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "O pacote não está instalado" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Falha ao remover pacotes essenciais do sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "A tarefa não pode ser monitorizada ou controlada" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Falhou a operação com o pacote" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Requer instalação de pacotes não fiáveis" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "A instalação anterior não foi concluída" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Este pacote é de má qualidade" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "O ficheiro do pacote não pôde ser aberto" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Função não suportada" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Falhou ao transferir a chave da licença" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Falhou ao instalar a chave da licença" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "O sistema já está atualizado" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Você não pôde ser autorizado" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Não tem permissão para realizar esta acção" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ocorreu um erro não manipulável" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "À espera do inicio do serviço" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Em espera" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "À espera dos elementos necessários" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "À espera do encerramento dos outros gestores de pacotes" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "À espera do ficheiro de configuração inicial" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Tarefa em execução" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "A transferir" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "A perguntar às fontes de software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "A limpar" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Concluído" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "A cancelar" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "A carregar lista de aplicações" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "A instalar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "A configurar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "A remover %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "A remover completamente %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "A notar o desaparecimento de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "A correr o \"trigger\" de pós-instalação %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "A actualizar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "A desempacotar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "A preparar a instalação de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "A preparar a configuração de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "A preparar a remoção de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "A preparar a remoção completa de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instalado" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Removido completamente %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s removido" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Concluído" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Falha ao autenticar" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "A obter" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactivo" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "A rede não está disponível" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "A processar %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Transferidos %sB de %sB a %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Transferidos %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalhes" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Ficheiro" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB transferidos" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Transferido" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "É necessário o CD/DVD \"%s\"" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Insira na unidade \"%s\" o CD/DVD acima referido, de modo a instalar " "pacotes tendo como base o disco." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Remover" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Eliminar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Actualizar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Desactualizar" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Ignorar actualização" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Dê uma vista de olhos na seguinte lista de alterações." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "É necessária a instalação de programas adicionais" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "É necessária a reinstalação de programas adicionais" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "É necessária a remoção de programas adicionais" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "É necessária a eliminação de programas adicionais" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "É necessária a actualização de programas adicionais" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "É necessária a desactualização de programas adicionais" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "As actualizações serão ignoradas" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "São necessárias alterações adicionais" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "No total, serão transferidos %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Serão libertados %sB de espaço no disco." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Serão utilizados %sB de espaço no disco." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Substituir as suas alterações a \"%s\" com uma versão mais recente da " "configuração?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Se não souber porque é que o ficheiro já existe, é provável que este possa " "ser substituído." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Alterações" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Manter" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Substitui_r" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalhes" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Á espera de %s para sair." #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "A transferir %(files)s" msgstr[1] "A transferir %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositório local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "A transferir de %s" msgstr[1] "A transferir de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estrutura de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descrição de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Assinatura de descrição de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pacotes disponíveis de %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Fontes disponíveis de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduções disponíveis de %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduções em %s (%s) de %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduções em %s de %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduções (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "O pacote %s não está disponível." #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "O pacote %s não está instalado." #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "A versão %s de %s não está instalada." #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "O pacote %s já está instalado." #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "A versão %s de %s não está disponível." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "O URL do servidor chave é inválido: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocolo inválido do servidor: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "ID de chave inválido: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Falha ao transferir e instalar a chave %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Não foi possível instalar a chave %s : %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Não foi possível remover a chave %s e o seu identificador: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "O pacote %s não pode ser removido." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "A versão %s de %s não está instalada." #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "A antiga versão %s de %s já está instalada." #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "A versão %s de %s já está instalada." #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "A versão %s de %s não está disponível." #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Tem de especificar a versão anterior para desactualizar %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "A nova versão %s de %s já está instalada." #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "O pacote %s não está disponível para a versão %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "O pacote %s não pode ser removido" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "O pacote não fornece um campo válido para controlar o tamanho de instalação. " "Consulte a política Debian 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "A chave de licença está vazia" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "A chave de licença não pode conter código executável." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "O caminho da chave de licença %s é inválido" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "A chave de licença já existe: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "O local da chave de licença é inseguro dado que contém ligações simbólicas. " "O caminho %s mapeia para %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "O diretório para onde instalar a chave ainda não existe: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Falhou ao escrever o ficheiro da chave em: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Os seguintes pacotes têm dependências não resolvidas." #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mas é um pacote virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mas não está instalado" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mas não está em vias de instalação" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mas %s está instalado" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mas %s vai ser instalado" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Falha ao adicionar a chave à lista de fornecedores confiáveis" aptdaemon-1.1.1+bzr982/po/pt_BR.po0000644000000000000000000013345212375372771014656 0ustar 00000000000000# Brazilian Portuguese translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-30 02:39+0000\n" "Last-Translator: Pablo Diego Moço \n" "Language-Team: Brazilian Portuguese \n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista de fornecedores com chaves confiáveis" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Para ver a lista de chaves confiáveis, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Remover arquivos de pacote baixados" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Para limpar os arquivos do pacote baixado, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Alterar configurações de software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Para alterar as configurações de software, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Alterar repositório de software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Para alterar configurações de repositório de software, você precisa se " "autenticar." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalar arquivo de pacote" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Para instalar esse pacote, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Atualizar informações do pacote" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Para atualizar o catálogo de softwares, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalar ou remover pacotes" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Para instalar ou remover softwares, você precisa se autenticar." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instale programas a partir do repositório altamente confiável da lista " "branca." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Para instalar programas, você precisa se autenticar." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Adicionar um novo repositório e instalar pacotes a partir dele" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Para instalar um software de uma nova fonte, você precisa se autenticar." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Adicionar um novo repositório do software comprado e instalar pacotes a " "partir dele" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Para instalar um software comprado, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Atualizar pacotes" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Para instalar um software atualizado, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Cancelar a tarefa de outro usuário" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Para cancelar as alterações de outros softwares, você precisa se autenticar." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Definir um proxy para baixar softwares" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "Para usar um proxy para baixar o software, você precisa se autenticar." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERRO" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Baixados %sB de %sB em %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Baixados %sB de %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERRO:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Você não tem permissão para executar esta ação." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Enfileirando" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Resolvendo dependências" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "O NOVO pacote seguinte será instalado (%(count)s):" msgstr[1] "Os NOVOS pacotes seguintes serão instalados (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "O seguinte pacote será atualizado (%(count)s):" msgstr[1] "Os seguintes pacotes serão atualizados (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "O seguinte pacote será REMOVIDO (%(count)s):" msgstr[1] "Os seguintes pacotes serão REMOVIDOS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "O pacote a seguir será rebaixado (%(count)s):" msgstr[1] "Os pacotes a seguir serão desclassificados (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "O seguinte pacote será reinstalado (%(count)s):" msgstr[1] "Os seguintes pacotes serão reinstalados (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "O pacote a seguir será mantido (%(count)s):" msgstr[1] "Os pacotes a seguir serão mantidos (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Necessita baixar %sB de arquivos." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Depois dessa operação, %sB de espaço adicional do disco será usado." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Depois dessa operação, %sB de espaço de disco serão liberados." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Você quer continuar [S/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Para operar sobre mais do que um pacote, ponha os nomes dos pacote entre " "aspas:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Atualizar o cache" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Tenta resolver as dependências quebradas. Operação potencialmente perigosa, " "uma vez que poderia tentar remover muitos pacotes." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Tente terminar uma instalação incompleta anterior" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalar os pacotes dados" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalar os pacotes dados" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Removes os pacotes dados" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Remover os pacotes dados incluindo arquivos de configuração" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Desatualizar os pacotes a seguir" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Obsoleto: Por favor use --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Atualizar o sistema num modo seguro" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Atualizar o sistema, possivelmente instalando e removendo pacotes" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Adicionar o servidor aos confiáveis" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Adicionar a keyid do servidor (também precisa de --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Usar a keyserver dada para procurar as chaves." #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Adicionar novo repositório para a dada deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Especificar um sources.list.d alternativo onde os repositórios devem ser " "adicionados" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Listar as chaves dos servidores confiáveis" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Remover a chave confiável da referida impressão digital" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurar pacotes instalados. Opcionalmente, a prioridade mínima das " "perguntas podem ser especificadas" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "A prioridade mínima da questão do debconf a ser exibida" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Não anexar ao terminal apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permitir pacotes de fontes não autenticadas" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Mostrar informações adicionais sobre os pacotes. Atualmente, apenas o número " "da versão" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Aguardando pela autenticação" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Não desligar o daemon por causa de inatividade" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Não carregar quaisquer plug-ins" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Mostrar informações de processamento interno" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Sair e substituir um daemon já em execução" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Escutar no barramento de sessão DBus (Requerido apenas para testes" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realizar operações no chroot dado" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Armazenar estatísticas do perfil no arquivo especificado" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Não realizar nenhuma alteração no sistema (útil para desenvolvedores)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Arquivo instalado" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Pacotes instalados" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Chave adicionada de um arquivo" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Cache atualizado" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Pesquisa concluída" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Chave confiável removida" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Pacotes removidos" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Pacotes atualizados" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistema atualizado" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Alterações aplicadas" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Instação incompleta foi reparada" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Dependências quebradas foram reparadas." #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Fonde de software adicionado" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Componente da distribuição habilitado" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Pacotes baixados removidos" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Reconfigurando pacotes instalados" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Sucesso" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Cancelado" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Falhou" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Instalando arquivo" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Instalando pacotes" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Adicionando chave de um arquivo" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Atualizando cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Removendo chave confiável" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Removendo pacotes" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Atualizando pacotes" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Atualizando sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplicando mudanças" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparando instalação incompleta" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparando o programa instalado" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Adicionando fonte de software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Habilitando componente da distribuição" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Removendo pacotes baixados" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Reconfigurando pacotes instalados" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Pesquisando" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "A instalação do pacote falhou" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "A instalação do software falhou" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Erro ao adicionar a chave à lista de fornecedores de programas confiáveis." #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Falha ao atualizar a lista de softwares" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Falha ao remover o distribuidor da lista de distribuidores confiáveis" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Falha ao remover o software" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "A atualização do software falhou" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "A atualização do sistema falhou" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Falha ao aplicar as alterações do software" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Reparando instalação incompleta que falhou" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Reparando dependência quebrada que quebrou" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Adição de fonte de software falhou" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Habilitação do compoenente da distribuição falhou" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Removendo pacotes baixados com falhas" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "A pesquisa falhou" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Adicionar chave de licença" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Verificar sua conexão com a Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Verifique se você está utilizando repositórios de terceiros. Se estiver, " "desabilite-os, já que normalmente são fonte de problemas.\n" "Além disso, execute o seguinte comando em um Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "O arquivo selecionado pode não ser um arquivo de chave GPG ou pode estar " "corrompido." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "A chave selecionada não pôde ser removida. Confira se você deu uma " "identificação válida" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Confira se você está atualmente executando outro software para gerenciamento " "de pacotes, como o Synaptic ou o aptitude. Apenas um programa pode fazer " "mudanças por vez." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Este é um problema grave. Tente novamente mais tarde. Se o problema " "persistir, por favor relate um erro para os desenvolvedores." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Confira a escrita do nome do pacote, e se o repositório apropriado está " "ativado." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Não há qualquer necessidade de uma atualização." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Não há qualquer necessidade de uma instalação" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Não há qualquer necessidade de uma remoção." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Você solicitou remover um pacote que é uma parte essencial do seu sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "A conexão com o daemon foi perdida. Provavelmente o daemon de segundo plano " "fechou de maneira inesperada." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "A instalação ou remoção de pacote de software falhou." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "O recurso solicitado não é mais suportado" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Parece haver um erro de programação no aptdaemon, o software que permite que " "você instale/remova softwares e realize outras tarefas relacionadas ao " "gerenciamento de pacotes." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Este erro pode ser causado pacotes adicionais de softwares necessários que " "estão perdidos ou não são instaláveis. Além disso pode haver um conflito " "entre pacotes de software que não podem ser instalados ao mesmo tempo." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Isso exige a instalação de pacotes de fontes não autenticadas." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "A instalação pode ter falhado por causa de um erro no pacote do software " "correspondente ou foi cancelado de forma indesejada. Você deve reparar isso " "antes de você poder instalar ou remover qualquer software adicional." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Por favor, copie o arquivo para seu computador local e verificar as " "permissões do arquivo" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "A instalação de um pacote que viola as normas de qualidade não é permitido. " "Isso pode causar sérios problemas no seu computador. Entre em contato com a " "pessoa ou organização que forneceu este arquivo e inclua os detalhes abaixo." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "A chave de licença baixada, necessária para executar este programa, não é " "válida ou pode não ter sido instalada corretamente.\n" "Veja os detalhes para mais informações." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Todas as atualizações disponíveis já foram instaladas." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "A chave de licença necessária para usar este programa não pôde ser baixada. " "Por favor, cheque sua conexão com a rede." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Você não obteve os privilégios necessários para realizar essa ação." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Você forneceu uma senha errada ou cancelou a autorização.\n" "Além do mais, pode haver uma razão técnina para esse error se você não viu " "um diálogo de senha: seu ambiente de trabalho não fornece um agente se " "sessão PolicyKit," #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Falha ao baixar arquivos dos pacotes" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Falha ao baixar informações do repositório" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Dependências de pacotes não pode ser resolvida" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "O sistema de pacotes está quebrado" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Chave não foi instalada" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Chave não foi removida" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Falha ao travar gerenciador de pacotes" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Falha ao carregar a lista de pacotes" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pacote não existe" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pacote já está atualizado" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pacote já está instalado" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pacote não está instalado" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Falha na remoção de pacote essencial ao sistema" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tarefa não pode ser monitorada ou controlada" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Falha na operação do pacote" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Necessita instalação de pacotes não confiáveis" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Instalações anteriores não foram completadas" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "O pacote é de má qualidade" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "O pacote não pôde ser aberto" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Recurso não suportado" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Falha ao baixar a chave de licença" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Falha ao instalar a chave de licença" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "O sistema já está atualizado" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Você não obteve autorização" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Você não tem autorização para efetuar essa ação" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Um erro que não pode ser tratado ocorreu" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Aguardando o serviço para iniciar" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Aguardando" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Aguardando a mídia requerida" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Aguardando por outros gerenciadores de software para sair" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Aguardando o arquivo de configuração" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Executando tarefa" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Baixando" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Consultando os canais de software" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Limpando" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Concluído" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Cancelando" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Carregando lista de softwares" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Instalando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Configurando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Removendo %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Removendo completamente %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Observando o desaparecimento de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Executando gatilho pós-instalação %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Atualizando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Desempacotando %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Preparando a instalação de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Preparando a configuração de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Preparando a remoção de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Preparando a remoção completa de %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s instalado" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s completamente removido" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s removido" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Concluído" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Falha de autenticação" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Obtendo" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Ocioso" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Rede não está disponível" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Processando %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Baixados %sB de %sB em %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Baixados %sB de %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalhes" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Arquivo" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Baixado %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Baixado" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' é necessário" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Por favor insira o CD/DVD abaixo no drive '%s' para instalar pacotes dele." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuar" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalar" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalar" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Remover" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Eliminar" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Atualizar" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Desatualizar" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Pular atualização" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Por favor verifique a lista de mudanças abaixo." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Software adicional deve ser instalado" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Software adicional deve ser reinstalado" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Software adicional deve ser removido" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Software adicional será removido completamente" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Software adicional será atualizado" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Software adicional será rebaixado" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Atualizações serão evitadas" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Alterações adicionais são necessárias" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB serão baixados no total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB de espaço em disco será liberado." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB em espaço de disco serão liberados." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Deseja substituir as suas modificações em '%s' pela versão mais nova do " "arquivo de configuração?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Se você não sabe por que o arquivo já está no local, geralmente é seguro " "substituí-lo." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Alterações" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Manter" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Substitui_r" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalhes" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Esperando %s para sair" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Baixando %(files)s" msgstr[1] "Baixando %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "repositório local" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Baixando de %s" msgstr[1] "Baixando de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Estrutura de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descrição de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Descrição da assinatura de %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pacotes disponíveis em %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Fontes disponíveis de %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduções disponíves de %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduções para %s (%s) de %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduções para %s de %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traduções (%s) de %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "O pacote %s não está disponível" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pacote %s não está instalado" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "A versão %s de %s não está instalada" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "O pacote %s já está instalado" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "A versão %s do %s não está disponível." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "A URL do servidor de chaves é inválida: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protocolo do servidor é inválido: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "ID da chave é inválido: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Falha ao baixar e instalar a chave %s de %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Chave do arquivo %s não pôde ser instalado: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Chaves com impressões digitais %s não puderam ser removidas: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "O pacote %s não pode ser removido" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "A versão %s de %s não está instalada" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "A versão do mantenedor %s de %s já está instalada" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "A versão %s de %s já está instalado" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "A versão %s do %s não está disponível." #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Você precisa especificar uma versão de %s para rebaixar" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "A versão mais atual %s de %s já está instalada" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "O pacote %s não está disponível no lançamento %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "O pacote %s não pode ser removido" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "O pacote não prevê um campo de controle válido para o Tamanho instalado. " "Consulte a Política Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "A chave de licença está vazia" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "A chave de licença não é permitida por conter código executável." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "O caminho %s da chave de licença é inválido" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "A chave de licença já existe: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "O local da chave de licença é insegura se contiver links simbólicos. O " "caminho %s redireciona para %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "O diretório onde a chave será instalada ainda não existe: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Falhou ao escrever o arquivo da chave para: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Os seguintes pacotes têm dependências não satisfeitas:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "mas é um pacote virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "mas não está instalado" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "mas não vai ser instalado" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "mas a %s está instalada" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "mas a %s será instalada" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Falha ao adicionar a chave à lista de distribuidores confiáveis" aptdaemon-1.1.1+bzr982/po/ro.po0000644000000000000000000013472112375372771014270 0ustar 00000000000000# Romanian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # Lucian Adrian Grijincu , 2010. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-05-31 06:08+0000\n" "Last-Translator: Ursache Dogariu Daniel \n" "Language-Team: Romanian Gnome Team \n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n == 1 ? 0: (((n % 100 > 19) || ((n % 100 " "== 0) && (n != 0))) ? 2: 1));\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Listează cheile vânzătorilor de încredere" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Pentru a vedea lista cheilor de încredere, trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Elimină fișierele pachet descărcate" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Pentru a curăța fișierele pachet descărcate trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Schimbă configurația software" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Pentru a schimba setările software trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Schimbă depozitul de software" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Pentru a schimba configurările depozitelor de software, trebuie să vă " "autentificați." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalează pachetul" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Pentru a instala acest pachet, trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Actualizează informațiile despre pachete" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Pentru a actualiza catalogul de software, trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalează sau elimină pachete" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Pentru a instala sau elimina software, trebuie să vă autentificați." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Adaugă un nou depozit și instalează pachete din el" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Pentru a instala software dintr-o sursă nouă, trebuie să vă autentificați." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Adaugă un nou depozit de software cumpărat și instalează pachete din el" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Pentru a instala software cumpărat, trebuie să vă autentificați." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Înnoiește pachetele" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Pentru a instala software actualizat, trebuie să vă autentifcați." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Anulează acțiunile altui utilizator" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Pentru a anula schimbările altora asupra unor software, trebuie să vă " "autentificați." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Configurează un proxy pentru descărcări de software" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Pentru a folosi un server proxy pentru descărcarea de software, trebuie să " "vă autentificați." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "EROARE" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "S-au descărcat %sB din %sB la %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "S-au descărcat %sB din %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "EROARE:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Nu vă este permis să efectuați această acțiune." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Se așteaptă" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Se rezolvă dependențele" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Următorul pachet NOU va fi instalat (%(count)s):" msgstr[1] "Următoarele pachete NOI vor fi instalate (%(count)s):" msgstr[2] "Următoarele pachete NOI vor fi instalate (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Următorul pachet va fi înnoit (%(count)s):" msgstr[1] "Următoarele pachete vor fi înnoite (%(count)s):" msgstr[2] "Următoarele pachete vor fi înnoite (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Următorul pachet va fi eliminat (%(count)s):" msgstr[1] "Următoarele pachete vor fi eliminate (%(count)s):" msgstr[2] "Următoarele pachete vor fi eliminate (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Următorul pachet va fi adus la o versiune mai veche (%(count)s):" msgstr[1] "" "Următoarele pachete vor fi aduse la o versiune mai veche (%(count)s):" msgstr[2] "" "Următoarele pachete vor fi aduse la o versiune mai veche (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Următorul pachet va fi reinstalat (%(count)s):" msgstr[1] "Următoarele pachete vor fi reinstalate (%(count)s):" msgstr[2] "Următoarele pachete vor fi reinstalate (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "A fost reținut (%(count)s pachet ):" msgstr[1] "Au fost reținute următoarele (%(count)s) pachete:" msgstr[2] "Au fost reținute următoarele (%(count)s) de pachete:" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Este necesară obținerea a %sO de arhive." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "După acestă operație vor fi folosiți %sO de spațiu adițional pe disc." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" "După această operație vor fi eliberați %sO adiționali de spațiu pe disc." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Doriți să continuați [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Pentru a opera pe mai mult de un pachet puneți numele pachetelor între " "ghilimele:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Reîmprospăteză memoria tampon" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Încercați să rezolvați dependențe defecte. Operația este potențial " "periculoasă deoarece ar putea încerca să elimine multe pachete." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Încercați să finalizați instalarea anterioară incompletă" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalează pachetele date" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Reinstalează pachetele date" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Elimină pacehtele date" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Elimină pachetele date inclusiv fișierele de configurare" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Adu pachetele la o versiune mai veche" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Învechit: Folosiți --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Actualizează sistemul într-un mod sigur" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Actualizează sistemul, posibil instalând și eliminând pachete" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Adaugă vânzătorul la cei de încredere" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Adaugă keyid-ul vânzătorului (trebuie folosit şi --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Folosește keyserver-ul dat pentru a găsi cheile" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Adaugă un nou depozit din linia-deb dată" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specificați un fișier sources.list.d alternativ la care să fie adăugate " "depozitele." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Listează cheile vânzătorilor de încredere" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Elimină cheia de încredere a amprentei date" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Reconfigurați pachetele instalate. Opțional poate fi specificată prioritatea " "minimă pentru întrebări" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Prioritatea minimă debconf pentru întrebările afișate" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Nu atașa la terminalul apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Permite pachete de la surse neautentificate" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Arată informații suplimentare despre pachete. Acum numai numărul versiunii" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Se așteaptă autentificarea" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Nu închide serviciul din cauza inactivității" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Nu încărca niciun modul" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Arată informații despre procesare" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Închide și înlocuiește un serviciu care rulează" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Ascultă pe magistrala sesiunii DBus (Necesar numai pentru teste)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Realizează operații în mediul chroot specificat" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Stochează profilul în fișierul specificat" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Nu efectua schimbări în sistem (doar pentru uzul dezvoltatorilor)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "S-a instalat fișierul" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "S-au instalat pachetele" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "S-a adăugat cheia din fișier" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "S-a actualizat cache-ul" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Căutare încheiată" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "S-a eliminat cheie de autentificare" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "S-au eliminat pachetele" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "S-au actualizat pachetele" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "S-a înnoit sistemul" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "S-au aplicat modificările" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "S-a reparat instalarea incompletă" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "S-au reparat dependențele deteriorate" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Sursă software adăugată" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Activează componenta distribuției" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Pachete de fișiere descărcate și șterse" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Pacehete instalate reconfigurate" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Succes" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Anulat" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Eșuat" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Se instalează fișierul" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Se instalează pachetele" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Se adaugă cheia din fișier" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Se actualizează cache-ul" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Se elimină cheia de autentificare" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Se elimină pachetele" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Se actualizează pachetele" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Se înnoiește sistemul" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Se aplică modificările" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Se repară instalarea incompletă" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Se repară programele instalate" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Se adaugă sursa software" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Se activează componenta distribuției" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Se șterg pachetele de fișiere descărcate" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Se reconfigurează pachetele instalate" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Se caută" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalarea pachetului a eșuat" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalarea programului a eșuat" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Actualizarea listei de programe a eșuat" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Ștergerea distribuitorului din lista cu distribuitori siguri a eșuat" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Eliminarea programului a eșuat" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Actualizarea programului a eșuat" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Înnoirea sistemului a eșuat" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Aplicarea modificărilor asupra programelor a eșuat" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Repararea instalării incomplete a eșuat" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Repararea dependențelor deteriorate a eșuat" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Adăugarea sursei software a eșuat" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Activarea componentei distribuției a eșuat" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Ștergerea pachetelor de fișiere descărcate a eșuat" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Căutare eșuată" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Se adaugă cheia de licență" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Verificați conexiunea la Internet." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Verificați dacă utilizați arhive de la terțe părți. Dacă utilizați acest tip " "de arhive, dezactivați-le, fiind o sursă comună de probleme.\n" "Apoi rulați următoarea comandă în Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Fișierul selectat nu pare a fi o cheie GPG sau ar putea fi corupt." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Cheia selectată nu a putut fi eliminată. Verificați dacă ați furnizat o " "amprentă validă." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Verificați daca rulați momentan un alt utilitar de administrare software, " "ex. Synaptic sau aptitude. Doar un singur utilitar are permisiunea de a face " "modificări la un moment dat." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Aceasta este o problemă gravă. Încercați mai târziu. Dacă problema persistă, " "raportați eroarea dezvoltatorilor." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Verificați ortografia numelui pachetului, și dacă depozitul adecvat este " "activat." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nu este necesar să actualizați ceva." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nu este necesar să instalați ceva." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nu este necesar să eliminați ceva." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Ați cerut să eliminați un pachet care este o parte esențială a sistemului." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Conexiunea cu serviciul a fost pierdută. Probabil că serviciul din fundal s-" "a întrerupt neașteptat." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Instalarea sau eliminarea unui pachet de programe a eșuat." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Funcția solicitată nu există." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Se pare că există o eroare de programare în aptdaemon, software-ul care " "permite instalarea/ștergerea de programe și care realizează sarcini legate " "de administrarea pachetelor." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Această eroare ar putea fi cauzată de pachete software suplimentare necesare " "care lipsesc sau care nu sunt instalabile. În plus, ar putea exista un " "conflict între pachete software care nu au voie să fie instalate în același " "timp." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Este posibil ca instalarea să fi eșuat din cauza unei erori în pachetul " "software corespunzător sau să fi fost anulată într-un mod nesuportat. " "Trebuie să remediați această problemă înainte de a putea instala sau " "înlătura orice alt software." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Copiați fișierul în calculator și verificați permisiunile acestuia." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Instalarea unui pachet care încalcă standardele de calitate nu este permisă. " "Acest lucru poate cauza probleme serioase calculatorului dumneavoastră. " "Contactați persoana sau organizația care a furnizat acest pachet și " "includeți detaliile de mai jos." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Cheia de licență descărcată, care este necesară pentru rularea acestui " "program, nu este validă sau nu poate fi instalată corect.\n" "Pentru mai multe informații consultați detaliile." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Toate actualizările disponibile au fost instalate deja." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Cheia de licență care permite utilizarea acestui program nu poate fi " "descărcată. Verificați legătura la Internet." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Nu vă este permis să efectuați această acțiune." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Descărcarea pachetelor a eșuat" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Descărcarea informațiilor despre arhive a eșuat" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Dependențele pachetelor nu pot fi satisfăcute" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Sistemul de pachete este corupt" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Cheia de autentificare nu a fost instalată" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Cheia de autentificare nu a fost eliminată" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Blocarea administratorului de pachete a eșuat" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Încărcarea listei de pachete a eșuat" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Pachetul nu există" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Pachetul este actualizat deja" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Pachetul este deja instalat" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Pachetul nu este instalat" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Eliminarea pachetului esențial pentru sistem a eșuat" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Sarcina nu poate fi monitorizată sau controlată" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Acțiunea asupra pachetelor a eșuat" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Necesită instalarea unor pachete din surse neautentificate" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Instalarea anterioară nu a fost finalizată" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Acest pachet este de slabă calitate" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Pachetul nu se poate deschide" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Funcție inexistentă" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Eșec la descărcarea cheii de licență" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Eșec la instalarea cheii de licență" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistemul este actualizat deja" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "O eroare ce nu poate fi tratată a apărut" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Se așteaptă pornirea serviciului" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Se așteaptă" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Se așteaptă mediul de instalare necesar" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Se așteaptă închiderea altui administrator de pachete" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Se așteaptă solicitarea fișierului de configurare" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Se execută sarcina" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Se descarcă" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Se interoghează sursele de programe" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Se curăță" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Terminat" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Se renunță" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Se încarcă lista de programe" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Se instalează %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Se configurează %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Se șterge %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Se șterge complet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Se ia notă de dispariția lui %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Se rulează declanșatorul post-instalare %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Se înnoiește %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Se despachetează %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Se pregătește instalarea pentru %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Se pregătește configurarea pentru %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Se pregătește ștergerea pentru %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Se pregătește ștergerea completă pentru %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Instalat %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Șters complet %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Șters %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Gata" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentificarea a eșuat" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Se descarcă" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Inactiv" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Rețeaua nu este disponibilă" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Se procesează %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "S-au descărcat %sB din %sB la %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "S-au descărcat %sB din %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detalii" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fișier" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "S-au descărcat %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Descărcat" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Este necesar CD/DVD-ul „%s”" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Introduceți CD-ul/DVD-ul de mai sus în unitatea „%s” pentru a instala " "pachete software de pe el." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "C_ontinuă" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalează" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Reinstalează" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Elimină" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Elimină inclusiv fișierele de configurare" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Înnoiește" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Adu la o versiune anterioară" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Sari peste această înnoire" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Consultați lista modificărilor de mai jos." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Software suplimentar trebuie să fie instalat" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Software suplimentar trebuie să fie reinstalat" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Software suplimentar trebuie să fie eliminat" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Software suplimentar trebuie să fie eliminat complet" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Software suplimentar trebuie să fie înnoit" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Software suplimentar trebuie să fie adus la o versiune mai veche" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Actualizările vor fi ignorate" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Modificări suplimentare sunt necesare" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sO vor fi descărcați în total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Se vor elibera %sB spațiu de disc." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sO adiționali vor fi utilizați." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Înlocuiți schimbările din „%s” cu o versiune mai veche a fișierului de " "configurare?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Dacă nu știți de ce fișierul există deja în această configurare, este, de " "regulă, mai sigur să-l înlocuiți." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Modificări" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Păstrează" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "În_locuiește" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detalii" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Se așteaptă închiderea %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Se descarcă %(files)s fișier" msgstr[1] "Se descarcă %(files)s fișiere" msgstr[2] "Se descarcă %(files)s de fișiere" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "arhiva locală de programe" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Se descarcă de la %s" msgstr[1] "Se descarcă de la %s" msgstr[2] "Se descarcă de la %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Structură pentru %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Descriere pentru %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Descrierea semnăturii pentru %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Pachete disponibile de la %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Surse disponibile de la %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Traduceri disponibile de la %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Traduceri pentru %s (%s) de la %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Traduceri pentru %s de la %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Traducere (%s) de la %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Pachetul %s nu este disponibil" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Pachetul %s nu este instalat" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Această versiune %s a %s nu este instalată" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Pachetul %s este instalat deja" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versiunea %s a %s nu este disponibilă." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Eșec la descărcarea și instalarea cheii %s de la %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Fișierul cheie %s nu se poate instala: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Nu se poate șterge cheia cu amprenta %s: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Nu se poate șterge pachetul %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versiunea %s a %s nu este instalată" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Versiunea anterioară %s a %s este instalată deja" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versiunea %s a %s este instalată deja" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versiunea %s a %s nu este disponibilă" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" "Trebuie să specificați versiunea la care doriți să reveniți cu pachetul %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Ultima versiune %s a %s este instalată deja" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Pachetul %s nu este disponibil pentru versiunea %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Nu se poate șterge pachetul %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Acest pachet nu conține un câmp de control valid pentru dimensiunea " "instalată. Consultați Politicile Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Cheia de licență este goală" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Cheia de licență nu trebuie să conțină cod executabil." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Calea pentru cheia de licență %s nu este validă" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Cheia de licență există deja: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Locul în care se păstrează cheia de licență nu este sigur, deoarece conține " "legături simbolice. Calea %s duce către %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Dosarul în care instalați cheia nu există încă: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Eșec la scrierea fișierului cheie: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Următoarele pachete au dependenţe neîndeplinite:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "dar este un pachet virtual" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "dar nu este instalat" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "dar nu este pe cale de a fi instalat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "dar este instalată versiunea %s" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "dar versiunea %s este pe cale de a fi instalată" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Adăugarea cheii la lista distribuitorilor de de programe de încredere a " #~ "eșuat" aptdaemon-1.1.1+bzr982/po/ru.po0000644000000000000000000016062512375372771014300 0ustar 00000000000000# Russian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-12-30 08:29+0000\n" "Last-Translator: Aleksey Kabanov \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Список ключей доверенных поставщиков" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Для просмотра списка доверенных ключей требуется аутентификация." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Удалить файлы загруженных пакетов" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Вам необходимо авторизоваться для очистки файлов загруженных пакетов." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Изменить настройки программного обеспечения" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Вам необходимо авторизоваться для изменения настроек программного " "обеспечения." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Изменить репозиторий с программами" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Для изменения настроек репозитория с программами требуется аутентификация." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Установка файла пакета" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Для установки этого пакета требуется аутентификация." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Обновление информации о пакетах" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Для обновления каталога программного обеспечения требуется аутентификация." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Установить или удалить пакеты" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Для установки или удаления программ требуется аутентификация." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Установка приложений с проверенного репозитория." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Для установки программ требуется аутентификация." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Добавить новый репозиторий и установить пакеты с него" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Для установки приложений из нового источника вам необходимо пройти " "аутентификацию." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Добавить новый репозиторий платных приложений и установить пакеты с него" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Для установки купленных приложений необходима аутентификация." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Обновление пакетов" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Для установки обновлений требуется аутентификация." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Отменить задачу другого пользователя" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Для отмены не своих изменений в программном обеспечении требуется " "аутентификация." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Установить прокси-сервер для загрузок приложений" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Для использования прокси сервера для загрузки программного обеспечения " "требуется аутентификация." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ОШИБКА" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Загружено %sБ из %sБ на скорости %sБ/с" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Загружено %sБ из %sБ" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ОШИБКА:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Вам не разрешено выполнять эту операцию." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Организация очереди" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Разрешение зависимостей" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Следующий НОВЫЙ пакет будет установлен (%(count)s):" msgstr[1] "Следующие НОВЫЕ пакеты будут установлены (%(count)s):" msgstr[2] "Следующие НОВЫЕ пакеты будут установлены (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Следующий пакет будет обновлен (%(count)s):" msgstr[1] "Следующие пакеты будут обновлены (%(count)s):" msgstr[2] "Следующие пакеты будут обновлены (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Следующий пакет будет УДАЛЁН (%(count)s):" msgstr[1] "Следующие пакеты будут УДАЛЕНЫ (%(count)s):" msgstr[2] "Следующие пакеты будут УДАЛЕНЫ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Для следующего пакета будет произведен ОТКАТ (%(count)s):" msgstr[1] "Для следующих пакетов будет произведен ОТКАТ (%(count)s):" msgstr[2] "Для следующих пакетов будет произведен ОТКАТ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Следующий пакет будет переустановлен (%(count)s):" msgstr[1] "Следующие пакеты будут переустановлены (%(count)s):" msgstr[2] "Следующие пакеты будут переустановлены (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Следующий пакет был восстановлен (%(count)s):" msgstr[1] "Следующие пакеты были восстановлены (%(count)s):" msgstr[2] "Следующие пакеты были восстановлены (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Требуется получить %sБ архивов." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" "После этой операции будет использовано %sБ дополнительного дискового " "пространства." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "После этой операции будет освобождено %sБ дискового пространства." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Вы хотите продолжить [Y - Да, N - Нет]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Для произведения операций над несколькими пакетами заключите их имена в " "кавычки:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Обновить кэш" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Попытаться восстановить сломанные завсисмости. Эта операция потенциально " "опасна, поскольку может привести к удалению многих пакетов." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Попытайтесь закончить предыдущую незавершённую установку" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Установить данные пакеты" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Повторно установить данные пакеты" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Удалить данные пакеты" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Удалить данные пакеты, включая конфигурационные файлы" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Откат выбранных пакетов" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Запрещено: пожалуйста используйте --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Обновить систему безопасным способом" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Обновить систему устанавливая и удаляя пакеты (если возможно)" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Добавить поставщика в доверенные" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Добавить идентификатор ключа поставщика (нужна опция --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Использовать данный сервер для поиска ключей" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Добавить репозиторий из указанной deb-строки" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Указать альтернативный файл sources.list.d, в который следует добавлять " "репозитории." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Список доверенных ключей поставщика" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Удалить доверенный ключ для данной цифровой подписи" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Повторная настройка установленных пакетов. Дополнительно может быть указан " "минимальный приоритет вопросов" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Минимальный приоритет запроса debconf для отображения" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Не \"присоединяться\" к терминалу apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Разрешать пакеты из недоверенных источников" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Показать дополнительную информацию о пакете. В настоящее время только номер " "версии" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Ожидание аутентификации" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Не выключайте демона из-за его неактивности" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Не загружать никакие плагины" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Показывать информацию о внутренней обработке" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Выйти и заменить уже запущенный демон" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Ждать сигнала DBus для общей шины (Только для тестирования" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Проводить операции в данном корневом каталоге" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Хранить статистику профиля в указанном файле" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Не изменять файлы в системе (полезно только разработчикам)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Установленный файл" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Установленные пакеты" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Добавленный ключ из файла" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Обновлённые временные файлы" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Поиск завершён" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Удалённый доверительный ключ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Удалённые пакеты" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Обновлённые пакеты" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Обновлённая система" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Примененные изменения" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Исправленная неоконченная установка" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Исправленные нарушенные зависимости" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Добавленный источник приложений" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Подключенный компонент дистрибутива" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Удалённые файлы загруженных пакетов" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Перенастроенные пакеты" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Успешно" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Отменено" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Ошибка" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Установка файла" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Установка пакетов" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Добавление ключа из файла" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Обновление временных файлов" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Удаление доверенного ключа" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Удаление пакетов" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Обновление пакетов" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Обновление системы" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Применение изменений" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Исправление неоконченной установки" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Восстановление установленного ПО" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Добавление источника приложений" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Подключение компонента дистрибутива" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Удаление файлов загруженных пакетов" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Перенастройка установленных пакетов" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Выполняется поиск" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Не удалось установить файл пакета" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Не удалось установить программное обеспечение" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Не удалось добавить ключ в список доверенных поставщиков программного " "обеспечения" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Не удалось обновить список программ" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Не удалось исключить поставщика программ из списка доверенных" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Не удалось удалить программное обеспечение" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Не удалось обновить программное обеспечение" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Не удалось обновить систему" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Не удалось применить изменения в программном обеспечении" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Исправление неоконченной установки не удалось" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Исправление нарушенных зависимостей не удалось" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Не удалось добавить источник приложений" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Не удалось подключить компонент дистрибутива" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "При удалении загруженных файлов произошла ошибка" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Ошибка поиска" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Добавление лицензионного ключа" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Проверьте интернет-соединение." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Если вы используете сторонние источники приложений, отключите их, поскольку " "они являются частым\n" "источником проблем. После этого выполните в терминале следующую команду: apt-" "get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Возможно, выбранный файл не является файлом GPG ключа или поврежден." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Выбранный ключ невозможно удалить. Проверьте, что вы предоставили верную " "цифровую подпись." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Проверьте, не запущено ли другое приложение управления программами, например " "Synaptic или aptitude. Только одно приложение может вносить изменения в одно " "и тоже время." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Это серьёзная проблема. Попробуйте повторить позже. Если проблема возникнет " "вновь, пожалуйста, отправьте отчёт об ошибке разработчикам." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Проверьте правильно ли указано название пакета и включён ли соответствующий " "репозиторий." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "В обновлении нет необходимости." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "В установке нет необходимости" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "В удалении нет необходимости." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Вы запросили удаление пакета, который является неотъемлемой частью вашей " "системы." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Связь с демоном утеряна. Скорее всего, его работа внезапно завершилась." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Установка или удаление пакетов программ не удалось." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Возможность не поддерживается." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Судя по всему, в aptdaemon, программном обеспечении, позволяющем вам " "устанавливать/удалять программы и выполнять связанные с пакетами задачи, " "присутствует программная ошибка." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Эта ошибка могла возникнуть по причине дополнительных пакетов, которые " "невозможно установить или отсутствуют. К тому же может иметь место конфликт " "между пакетами, которые не должны быть установлены одновременно." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Необходимо установить пакеты из неавторизированных источников." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Установка могла пройти неудачно из-за ошибки в соответствующем пакете, либо " "она была прервана неправильным способом. Вам следует исправить это, прежде " "чем вы сможете устанавливать или удалять любые другие программы." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Пожалуйста, скопируйте файл на ваш локальный компьютер и проверьте права на " "файл." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Установка пакета, который не соответствует стандартам, не разрешена. Это " "может привести к серьёзным ошибкам на вашем компьютере. Пожалуйста, " "свяжитесь с теми, кто предоставили данный пакет, указав подробности, " "изложенные ниже." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Полученный лицензионный ключ, необходимый для выполнения этого компонента " "программы неправильный или не может быть установлен надлежащим образом.\n" "Для получения дополнительных сведений откройте подробности." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Все доступные обновления уже установлены." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Лицензионный ключ, который позволит вам использовать этот компонент " "программы, не может быть получен. Пожалуйста, убедитесь в работоспособности " "сетевого соединения." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Недостаточно прав для выполнения этого действия." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Предоставлен неправильный пароль или авторизация была отменена.\n" "Также ошибка могла произойти по техническим причинам, если не появлялось " "окно ввода пароля: используемое вами окружение рабочего стола не " "предоставило агента сеанса PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Не удалось закачать файлы пакета" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Ошибка при загрузке информации об источниках приложений" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Зависимости пакета не могут быть разрешены" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Система пакетов повреждена" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ключ не установлен" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ключ не удалён" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Невозможно заблокировать менеджер пакетов" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Не удалось загрузить список пакетов" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакет не существует" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Пакет в актуальном состоянии" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакет уже установлен" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакет не установлен" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Ошибка при удалении важного системного пакета" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Задание не может быть проконтролировано" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Ошибка операции над пакетом" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Требуется установка ненадёжных пакетов" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Предыдущая установка не была завершена" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Этот пакет плохого качества" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Не удалось открыть пакет" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Эта возможность не поддерживается" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Ошибка получения лицензионного ключа" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Ошибка установки лицензионного ключа" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Система в актуальном состоянии" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Авторизация пользователя не может быть выполнена" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Недостаточно прав для выполнения этого действия" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Произошла непреодолимая ошибка" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Ожидание запуска службы" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Ожидание" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Ожидание требуемого носителя информации" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Ожидание окончания работы других менеджеров программного обеспечения" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Ожидание запроса конфигурационного файла" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Запуск задачи" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Идёт загрузка" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Запрос источников программ" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Очистка" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Завершено" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Отмена" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Загрузка списка приложений" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Устанавливается %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Настройка %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Удаление %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Выполняется полное удаление %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Уведомление об исчезновении «%s»" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Выполняется послеустановочный триггер %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Обновление %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Извлечение %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Подготовка к установке %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Подготовка конфигурации %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Подготовка к удалению %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Подготовка к полному удалению %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s установлен" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s полностью удалён" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s удалён" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Выполнено" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Аутентификация не удалась" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Получение" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Ожидание" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Сеть недоступна" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Обработка %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Загружено %sБ из %sБ на скорости %sБ/с" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Загружено %sБ из %sБ" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Подробно" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Файл" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Загружено %sБ" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Загружено" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Требуется наличие CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Вставьте указанный выше CD/DVD в привод '%s' для установки пакетов с него." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "П_родолжить" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Установить" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Переустановить" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Удалить" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Очистить" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Обновить" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Понизить версию" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Пропустить обновление" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Пожалуйста, посмотрите на список изменений ниже." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Необходима установка дополнительных программ" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Необходима повторная установка дополнительных программ" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Необходимо удаление дополнительных программ" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Необходима очистка от дополнительных программ" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Необходимо обновление дополнительных программ" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Необходимо понижение версии дополнительных программ" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Обновления будут пропущены" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Требуются дополнительные изменения" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Всего будет загружено %sБ." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sБ места на жёстком диске будет освобождено." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sБ дискового пространства будет занято." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Заменить файл '%s' с внесенными вами изменениями более поздней версией?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Если вы не знаете, зачем был создан этот файл, то его скорее всего можно " "безопасно заменить." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Изменения" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Оставить как есть" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Заменить" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Подробнее" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Ожидание завершения работы %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Загрузка %(files)s" msgstr[1] "Загрузка %(files)s" msgstr[2] "Загрузка %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "локальный репозиторий" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Загрузка из %s" msgstr[1] "Загрузка из %s" msgstr[2] "Загрузка из %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Структура «%s»" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Описание %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Подпись описания %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Доступные пакеты из «%s»" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Доступные источники из «%s»" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Доступные переводы из «%s»" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Переводы на %s (%s) из %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Переводы на %s из %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Языковая поддержка (%s) с адреса %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Пакет %s не доступен" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Пакет %s не установлен" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Версия %s пакета %s не установлена" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Пакет %s уже установлен" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Версия %s пакета %s недоступна." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Неправильный адрес сервера ключей: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Неправильный протокол сервера: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Неправильный идентификатор ключа: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Не удалось загрузить и установить значение %s из %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Ключевой файл %s не может быть установлен: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ключ с цифровой подписью %s не может быть удалён: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Пакет %s не может быть удалён." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Версия %s пакета %s не установлена" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Предыдущая версия %s пакета %s уже установлена" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Версия %s пакета %s уже установлена" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Версия %s пакета %s недоступна" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Вам необходимо указать версию, чтобы произвести откат %s к" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Более новая версия %s пакета %s уже установлена" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Пакет %s недоступен в релизе %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Пакет %s не может быть удалён" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "В пакете не указано поле \"занятое место после установки\". См. правила " "Debian 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Лицензионный ключ не содержит данных" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Лицензионный ключ не должен содержать исполняемый код." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Недопустимое расположение лицензионного ключа %s" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Лицензионный ключ уже существует: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Местоположение лицензионного ключа не является безопасным, так как содержит " "символические ссылки. Адрес %s ссылается на %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" "Папка в которую будет выполняться установка ключа, ещё не существует: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Ошибка записи файла ключа в: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Следующие пакеты имеют неудовлетворённые зависимости:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "но это виртуальный пакет" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "но он не установлен" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "но он не будет установлен" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "но %s уже установлен" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "но %s должен быть установлен" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Не удалось добавить ключ в список доверенных поставщиков программ" aptdaemon-1.1.1+bzr982/po/se.po0000644000000000000000000010202112375372771014243 0ustar 00000000000000# Northern Sami translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-08-01 20:24+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Northern Sami \n" "Language: se\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "MEATTÁHUS" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "MEATTÁHUS:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Hálidat go don joatkit [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Lihkostuvai" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Gaskkalduvvon" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Filtii" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Ohcamin" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Vuordimin" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Viežžamat" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Geargan" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Sajáiduhttimin %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Geargan" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentiseren filtii" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Ealjoheapmi" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Bienat" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fiila" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Sajáiduhte" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Ođđasit sajáiduhttit" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Váldde eret" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Sihko" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Ođasmahte" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Vulos" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/shn.po0000644000000000000000000010142312375372771014431 0ustar 00000000000000# Shan translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-01-18 13:02+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Shan \n" "Language: shn\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n == 1) ? 0 : 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/si.po0000644000000000000000000011266312375372771014264 0ustar 00000000000000# Sinhalese translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-05-06 05:02+0000\n" "Last-Translator: පසිඳු කාවින්ද \n" "Language-Team: Sinhalese \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "විශ්වාසවන්ත විකිණුම්කරුවන්ගේ යතුරු ලැයිස්තුගත කරන්න" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "විශ්වසනීය යතුරු ලැයිස්තුව නැරඹීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "බාගත කරන ලද පැකේජ ගොනු ඉවත් කරන්න" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "බාගත කෙරූ පැකේජ ගොනු පවිත්‍ර කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "මෘදුකාංග හැඩහුරුව වෙනස් කරන්න" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "මෘදුකාංග සැකසුම් වෙනස් කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "මෘදුකාංග ගබඩාව වෙනස් කරන්න" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "මෘදුකාංග කෝෂ්ඨාගාර සැකසුම් වෙනස් කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "පැකේජ ගොනුවක් ස්ථාපනය කරන්න" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "මෙම පැකේජය ස්ථාපනය කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "පැකේජයේ තොරතුරු යාවත්කාලීන කරන්න" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "මෙම මෘදුකාංග නාමාවලිය යාවත්කාලීන කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "පැකේජ ස්ථාපනය හෝ අස්ථාපනය කරන්න" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "මෘදුකාංග ස්ථාපනය හෝ ඉවත් කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "අලුත් ගබඩාවක් එකතු කර එමගින් පැකේජ ස්ථාපනය කරන්න" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "නව මූලාශ්‍රයකින් මෘදුකාංග ස්ථාපනය කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "මිලදී ගත් මෘදුකාංගවල අලුත් ගබඩාවක් එකතු කර එමගින් පැකේජ ස්ථාපනය කරන්න" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "මිලදීගත් මෘදුකාංග ස්ථාපනය කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "පැකේජයන් උසස් කරන්න" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "යාවත්කාලීන කෙරූ මෘදුකාංග ස්ථාපනය කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "අනෙත් පරිශීලකගේ කාර්යන් අවලංගු කරන්න" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "වෙනත් අය විසින් සිදු කෙරූ මෘදුකාංග වෙනස්කම් අහෝසි කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "මෘදුකාංග අවපතන සඳහා පෙරකලාසිය සකසන්න" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "මෘදුකාංග බාගතකිරීමට පෙරකලාසි සර්වරයක් භාවිතා කිරීම සඳහා, ඔබට සත්‍යවත් කිරීමට සිදුවේ." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "දෝෂය" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "දෝෂය:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "මෙම ක්‍රියාව සිදු කිරීමට ඔබට ඉඩ ලබා නොදේ." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "ඔබට ඉදිරියට යාමට අවශ්‍යද [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "දී ඇති පැකේජයන් ස්ථාපනය කරන්න" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "දී ඇති පැකේජයන් යලි ස්ථාපනය කරන්න" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "දී ඇති පැකේජයන් අස්ථාපනය කරන්න" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "ස්ථාපිත ගොනුව" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "ස්ථාපිත පැකේජයන්" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "අස්ථාපනය කෙරූ පැකේජයන්" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "යාවත්කාලීන කෙරූ පැකේජයන්" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "උසස් කෙරූ පද්ධතිය" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "සාර්ථක" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "අහෝසි කල" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "අසාර්ථක විය" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ගොනුව ස්ථාපනය කරමින්" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "පැකේජයන් ස්ථාපනය කරමින්" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "පැකේජ ඉවත් කරමින්" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "පද්ධතිය උසස් කරමින්" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "සොයමින්" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "මෙම ක්‍රියාව සිදු කිරීමට ඔබට ඉඩ ලබා නොදේ." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "නමුත් %s ස්ථාපනය කොට ඇත" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "නමුත් %s ස්ථාපනය කිරීමට ඇත" aptdaemon-1.1.1+bzr982/po/sk.po0000644000000000000000000013455612375372771014273 0ustar 00000000000000# Slovak translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-03 12:58+0000\n" "Last-Translator: helix84 \n" "Language-Team: Slovak \n" "Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Vypísať kľúče dôveryhodných dodávateľov" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Ak chcete prehliadať zoznam dôveryhodných kľúčov je potrebné overiť vašu " "totožnosť." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Odobrať stiahnuté balíky súborov" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Na vyčistenie stiahnutých balíkov súborov je potrebné overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Zmeniť softvérovú konfiguráciu" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Na zmenu softvérových nastavení je potrebné overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Zmeniť zdroj softvéru" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Ak chcete zmeniť nastavenie zdroja softvéru je potrebné overiť vašu " "totožnosť." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Nainštalovať balík zo súboru" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Ak chcete nainštalovať tento balík je potrebné overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Aktualizovať informácie o balíkoch" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" "Ak chcete aktualizovať katalóg softvéru je potrebné overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Nainštalovať alebo odstrániť balíky" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Ak chcete nainštalovať alebo odstrániť softvér je potrebné overiť vašu " "totožnosť." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Inštalovať softvér zo zdroja pridaného medzi dôveryhodné." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Aby ste mohli inštalovať softvér, je nutné overenie totožnosti." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Pridať nový zdroj softvéru a nainštalovať z neho balíky" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Ak chcete nainštalovať softvér z nového zdroja je potrebné overiť vašu " "totožnosť." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Pridať nový zdroj zakúpeného softvéru a nainštalovať z neho balíky" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Ak chcete nainštalovať zakúpený softvér je potrebné overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Aktualizovať balíky" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Ak chcete nainštalovať aktualizovaný softvér je potrebné overiť vašu " "totožnosť." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Zrušiť úlohu iného používateľa" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Ak chcete zrušiť zmeny softvéru, ktoré vykonal niekto iný, je potrebné " "overiť vašu totožnosť." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Nastaviť proxy na sťahovanie softvéru" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Ak chcete použiť server proxy na sťahovanie softvéru, je potrebné overiť " "vašu totožnosť." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "CHYBA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Stiahnuté %sB z %sB pri %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Stiahnuté %sB z %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "CHYBA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Nemáte oprávnenie vykonať túto operáciu." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Zaraďuje sa do frontu" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Riešia sa závislosti" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Nasledovné NOVÉ balíky budu nainštalované (%(count)s):" msgstr[1] "Nasledovný NOVÝ balík bude nainštalovaný (%(count)s):" msgstr[2] "Nasledovné NOVÉ balíky budu nainštalované (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Nasledovné balíky budu aktualizované (%(count)s):" msgstr[1] "Nasledovný balík bude aktualizovaný (%(count)s):" msgstr[2] "Nasledovné balíky budu aktualizované (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Nasledovné balíky budu ODSTRANENÉ (%(count)s):" msgstr[1] "Nasledovný balík bude ODSTRÁNENÝ (%(count)s):" msgstr[2] "Nasledovné balíky budu ODSTRANENÉ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "VERZIA nasledovných balíkov bude ZNÍŽENÁ (%(count)s):" msgstr[1] "VERZIA nasledovného balíka bude ZNÍŽENÁ (%(count)s):" msgstr[2] "VERZIA nasledovných balíkov bude ZNÍŽENÁ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Nasledovné balíky budu preinštalované (%(count)s):" msgstr[1] "Nasledovný balík bude preinštalovaný (%(count)s):" msgstr[2] "Nasledovné balíky budu preinštalované (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Nasledovné balíky budú podržané (%(count)s):" msgstr[1] "Nasledovný balík bude podržaný (%(count)s):" msgstr[2] "Nasledovné balíky budú podržané (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Je potrebné stiahnuť %sB archívov." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Po tejto operácii bude využitých ďalších %sB miesta na disku." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Po tejto operácii sa uvoľní %sB miesta na disku." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Chcete pokračovať [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Ak chcete pracovať s viac ako jedným balíkom, uveďte názvy balíkov v " "úvodzovkách:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Aktualizovať vyrovnávaciu pamäť" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Pokúsiť sa vyriešiť poškodené závislosti. To je potenciálne nebezpečná " "operácia, pretože by sa mohla pokúsiť odstrániť veľké množstvo balíkov." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Pokúsiť sa dokončiť predošlú nedokončenú inštaláciu" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Nainštalovať dané balíky" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Znova nainštalovať dané balíky" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Odstrániť dané balíky" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Odstrániť dané balíky vrátane konfiguračných súborov" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Znížiť verziu uvedených balíkov" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Zavrhované: Prosím, použite --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Aktualizovať systém bezpečným spôsobom" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Aktualizovať systém, s možnou inštaláciou a odstránením balíkov" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Pridať dodávateľa do zoznamu dôveryhodných" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Pridať ID kľúča dodávateľa (tiež vyžaduje --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Použiť na vyhľadanie kľúčov uvedený server s kľúčmi" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Pridať nový zdroj softvéru zo zadaného riadka deb" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Zadajte alternatívny súbor v sources.list.d, do ktorého sa majú pridať " "zdroje softvéru." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Zoznam dôveryhodných kľúčov dodávateľov" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Odstrániť kľúč s uvedeným odtlačkom spomedzi dôveryhodných" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Znova nakonfigurovať nainštalované balíky. Je možné zadať minimálnu prioritu " "otázok." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Minimálna priorita otázok debconf, ktoré sa budú zobrazovať." #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Nepripájať sa k terminálu apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Povoliť inštaláciu balíkov z neoverených zdrojov" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Ďalšie informácie o balíkoch. Momentálne oba číslo verzie." #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Čaká sa na overenie totožnosti" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Nevypínať démona z dôvodu neaktivity" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Nenačítavať žiadne zásuvné moduly" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Zobraziť interné informácie o priebehu" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Ukončiť a nahradiť už bežiaceho démona" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Počúvať na zbernici DBus relácie (potrebné iba na testovanie)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Vykonať operácie v uvedenom chroote" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Ukladať štatistiky profilu v určenom súbore" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Nevykonávať žiadne zmeny v systéme (užitočné iba pre vývojárov)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Nainštalovaný súbor" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Nainštalované balíky" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Pridaný kľúč zo súboru" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Aktualizovaná vyrovnávacia pamäť" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Hľadanie dokončené" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Odstránený dôveryhodný kľúč" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Odstránené balíky" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Aktualizované balíky" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Aktualizovaný systém" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Zmeny boli aplikované" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Opravená neúplná inštalácia" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Opravené poškodené závislosti" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Pridaný zdroj softvéru" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Zapnutý komponent distribúcie" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Odstránené stiahnuté súbory balíkov" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Znovu nakonfigurované nainštalované balíky" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Úspešné" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Zrušené" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Zlyhalo" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Inštaluje sa súbor" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Inštalujú sa balíky" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Pridáva sa kľúč zo súboru" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Aktualizuje sa vyrovnávacia pamäť" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Odstraňuje sa dôveryhodný kľúč" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Odstraňujú sa balíky" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Aktualizujú sa balíky" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Aktualizuje sa systém" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Aplikujú sa zmeny" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Opravuje sa neúplná inštalácia" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Opravuje sa nainštalovaný softvér" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Pridáva sa zdroj softvéru" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Zapína sa komponent distribúcie" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Odstraňujú sa stiahnuté súbory balíkov" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Znovu sa konfigurujú nainštalované balíky" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Hľadá sa" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Inštalácia balíka zlyhala" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Inštalácia softvéru zlyhala" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Aktualizácia zoznamu softvéru zlyhala" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Odstraňovanie dodávateľa zo zoznamu dôveryhodných zlyhalo" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Odstraňovanie softvéru zlyhalo" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Aktualizácia zoznamu softvéru zlyhala" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Aktualizácia softvéru zlyhala" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Použitie zmien softvéru zlyhalo" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Oprava neúplnej inštalácie zlyhala" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Oprava poškodených závislostí zlyhala" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Pridanie zdroje softvéru zlyhalo" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Zapnutie komponentu distribúcie zlyhalo" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Odstránenie stiahnutých balíkov sa nepodarilo" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Hľadanie zlyhalo" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Pridáva sa licenčný kľúč" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Skontrolujte svoje pripojenie k internetu" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Skontrolujte, či nepoužívate zdroje softvéru tretích strán. Ak áno, zakážte " "ich, pretože sú častou príčinou problémov.\n" "Ďalej spustite v Termináli nasledujúci príkaz: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Vybraný súbor nie je autentifikačným kľúčom GPG alebo je poškodený." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Vybraný kľúč nebolo možné odstrániť. Skontrolujte, či ste poskytli platný " "odtlačok kľúča." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Skontrolujte, či práve nebeží iný nástroj na správu softvéru, napr. Synaptic " "alebo aptitude. Iba jeden zdroj naraz môže vykonávať zmeny." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Toto je vážny problém. Prosím, skúste to neskôr znova. Ak sa tento problém " "znova objaví, prosím nahláste chybu vývojárom." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Skontrolujte, či ste správne napísali názov balíka a či je príslušný zdroj " "softvéru zapnutý." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Aktualizácia nie je potrebná." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Inštalácia nie je potrebná." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Odstraňovanie nie je potrebné." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Požiadali ste o odstránenie balíka, ktorý je nevyhnutnou súčasťou vášho " "systému." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Spojenie s démonom bolo stratené. Pravdepodobne démon na pozadí havaroval." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Inštalácia alebo odstránenie softvérového balíka zlyhalo" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Požadovaná funkcia nie je podporovaná" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Zdá sa, že sa vyskytla chyba v aptdaemon, softvéri, ktorý vám umožňuje " "inštalovať a odstraňovať softvér a vykonávať iné úlohy súvisiace so správou " "softvéru." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Túto chybu mohli spôsobiť ďalšie balíky softvéru, ktoré buď chýbajú alebo " "ich nebolo možné nainštalovať. Okrem toho mohol nastať konflikt medzi " "balíkmi, ktoré nemožno nainštalovať súčasne." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Vyžaduje sa inštalovanie balíkov z nedôveryhodných zdrojov." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Inštalácia mohla zlyhať z dôvodu chyby príslušného balíka softvéru alebo " "bola zrušená nezvyčajným spôsobom. Musíte to opraviť predtým, než budete " "môcť inštalovať alebo odstraňovať ďalší softvér." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Prosím, skopírujte súbor na svoj lokálny počítač a skontrolujte oprávnenia " "súboru." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Inštalácia balíka, ktorý nezodpovedá štandardu kvality nie je povolená. To " "by mohlo spôsobiť vážne problémy s vaším počítačom. Prosím, kontaktujte " "osobu alebo organizáciu, ktorá poskytla tento balík a poskytnite dolu " "uvedené informácie." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Stiahnutý licenčný kód potrebný na beh tohto softvéru je neplatný alebo sa " "nedal korektne nainštalovať.\n" "Ďalšie informácie nájdete v podrobnostiach." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Všetky dostupné aktualizácie už boli nainštalované." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Licenčný kľúč, ktorý vám umožňuje používať tento softvér, nebolo možné " "stiahnuť. Prosím, skontrolujte vaše pripojenie k sieti." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Nemáte oprávnenie vykonať túto operáciu." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Zlyhalo sťahovanie balíkov" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Zlyhalo sťahovanie informácií o zdrojoch softvéru" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Závislosti balíkov sa nedali vyriešiť" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Systém balíkov je poškodený" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Kľúč nebol nainštalovaný" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Kľúč nebol odstránený" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Zlyhalo zamknutie správcu balíkov" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Zlyhalo načítanie zoznamu balíkov" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Balík neexistuje" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Balík je už aktuálny" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Balík už je nainštalovaný" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Balík nie je nainštalovaný" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Nepodarilo sa odstrániť nevyhnutný systémový balík" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Úlohu nemožno sledovať alebo kontrolovať" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Operácia s balíkom zlyhala" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Vyžaduje inštaláciu nedôveryhodných balíkov" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Predošlá inštalácia nebola dokončená" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Tento balík je nekvalitný" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Súbor balíka nebolo možné otvoriť" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Nepodporovaná funkcia" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Nepodarilo sa stiahnuť licenčný kľúč" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Nepodarilo sa nainštalovať licenčný kľúč" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Systém je už aktuálny" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Vyskytla sa neobslúžiteľná chyba" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Čaká sa na spustenie služby" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Čaká sa" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Čaká sa na požadovaný nosič" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Čaká sa na ukončenie iných nástrojov na správu softvéru" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Čaká sa na výzvu konfiguračného súboru" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Prebieha úloha" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Sťahuje sa" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Prebieha požiadavka na zdroje softvéru" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Prebieha čistenie" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Dokončené" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Ruší sa" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Načítava sa zoznam softvéru" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Inštaluje sa %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Nastavuje sa %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Odstraňuje sa %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Úplne sa odstraňuje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Zaznamenali sme zmiznutie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Vykonáva sa spúšťač post-installation %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Aktualizuje sa %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Rozbaľuje sa %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Pripravuje sa inštalácia %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Pripravuje sa konfigurácia %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Pripravuje sa odstránenie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Pripravuje sa úplné odstránenie %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Nainštalovaný balík %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Balík „%s“ je úplne odstránený" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Odstránený balík %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Hotovo" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Overenie totožnosti zlyhalo" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Sťahuje sa" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Nečinný" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Sieť nie je dostupná" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Prebieha spracovanie %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Stiahnuté %sB z %sB pri %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Stiahnuté %sB z %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Podrobnosti" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Súbor" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Stiahnutých %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Stiahnutých" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Vyžaduje sa CD/DVD „%s“" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Prosím, vložte vyššie uvedené CD/DVD do jednotky „%s“ aby ste z neho mohli " "nainštalovať softvérové balíky." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "P_okračovať" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Nainštalovať" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Znovu nainštalovať" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Odstrániť" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Odstrániť s konfiguráciou" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Aktualizovať" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Znížiť verziu" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Preskočiť aktualizáciu" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Prosím, skontrolujte zoznam zmien dolu." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Je potrebné nainštalovať ďalší softvér" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Je potrebné znovu nainštalovať ďalší softvér" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Je potrebné odstrániť ďalší softvér" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Je potrebné odstrániť s konfiguráciou ďalší softvér" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Je potrebné aktualizovať ďalší softvér" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Je potrebné znížiť verziu ďalšieho softvéru" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Aktualizácie sa preskočia" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Vyžadujú sa ďalšie zmeny" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Stiahne sa celkom %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Uvoľní sa %sB miesta na disku." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Použije sa ďalších %sB miesta na disku." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "Nahradiť vaše zmeny v „%s“ novšou verziou konfiguračného súboru?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ak neviete, prečo sa tu súbor už nachádza, je zvyčajne bezpečné ho nahradiť." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Zmeny" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Ponechať" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "Nah_radiť" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "Po_drobnosti" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Čaká sa na ukončenie %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Sťahuje sa %(files)s" msgstr[1] "Sťahuje sa %(files)s" msgstr[2] "Sťahuje sa %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokálny zdroj softvéru" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Sťahuje sa z %s" msgstr[1] "Sťahuje sa z %s" msgstr[2] "Sťahuje sa z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Štruktúra %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Popis %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Úplne sa odstraňuje %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Dostupné balíky z %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Dostupné zdroje z %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Dostupné preklady z %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Dostupné preklady %s (%s) z %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Dostupné preklady pre %s z %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Preklady (%s) z %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Balík %s nie je dostupný" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Balík %s nie je nainštalovaný" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Verzia %s %s nie je nainštalovaná" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Balík %s je už nainštalovaný" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Verzia %s %s nie je dostupná." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL servera kľúčov je neplatné: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Neplatný protokol servera: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Neplatný identifikátor kľúča: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Nepodarilo sa stiahnuť a nainštalovať kľúč %s z %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Súbor kľúča %s nebolo možné nainštalovať: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Kľúč s odtlačkom %s nebolo možné odstrániť: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Balík %s nie je možné odstrániť." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Verzia %s %s nie je nainštalovaná" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Predošlá verzia %s %s už je nainštalovaná" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Verzia %s %s už je nainštalovaná" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Verzia %s %s nie je dostupná" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Musíte uviesť verziu, na ktorú chcete znížiť balík %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Novšia verzia %s %s je už nainštalovaná" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Balík %s nie je dostupný vo vydaní %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Balík %s nie je možné odstrániť" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Balík neposkytuje platné pole Installed-Size v súbore control. Pozri Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licenčný kľúč je prázdny" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licenčný kľúč nemôže obsahovať spustiteľný kód" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Cesta %s k licenčnému kľúču je neplatná" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licenčný kľúč už existuje: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Umiestnenie licenčného kľúča nie je bezpečné, pretože obsahuje symbolické " "odkazy. Cesta %s sa mapuje na %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Adresár, kde sa má nainštalovať kľúč zatiaľ neexistuje: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Nepodarilo sa zapísať kľúč do: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Nasledovné balíky maú nesplnené závislosti:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ale je to virtuálny balík" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ale nie je nainštalovaný" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ale nebude sa inštalovať" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ale %s je nainštalovaný" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ale %s sa bude inštalovať" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Pridanie kľúča do zoznamu dôveryhodných dodávateľov softvéru zlyhalo" aptdaemon-1.1.1+bzr982/po/sl.po0000644000000000000000000013345512375372771014271 0ustar 00000000000000# Slovenian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-03-07 10:13+0000\n" "Last-Translator: Damir Jerovšek \n" "Language-Team: Slovenian \n" "Language: sl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" "%100==4 ? 3 : 0);\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Naštej ključe zaupanja vrednih ponudnikov" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Za ogled seznama zaupanih ključev se morate overiti." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Odstrani prejete datoteke paketov" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Za čiščenje prejetih paketnih datotek je zahtevana overitev." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Spremeni nastavitev programov" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Za spremembo programskih nastavitev je zahtevana overitev." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Spremeni skladišče programov" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Za spremembo nastavitev odložišč programov se morate overiti." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Namesti datoteko paketa" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Za namestitev tega paketa se morate overiti." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Posodobi podatke o paketu" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Za posodobitev seznama programske opreme se morate overiti." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Namesti ali odstrani pakete" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Za namestitev ali odstranitev programske opreme se morate overiti." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Namesti programsko opremo iz skladišča, ki je na dovoljenem seznamu in ima " "visoko stopnjo zaupanja." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Za namestitev programske opreme se morate overiti." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Dodaj novo skladišče in iz njega namesti pakete" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Za namestitev programske opreme iz novega vira se morate overiti." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Dodaj novo skladišče kupljene programske opreme in iz njega namesti pakete" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Za namestitev kupljene programske opreme se morate overiti." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Nadgradi pakete" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Za posodobitev programske opreme se morate overiti." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Prekliči nalogo drugega uporabnika" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Za preklic sprememb programske opreme nekoga drugega je zahtevana overitev." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Izberite posredniški strežnik za prejeme programov" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Za prejemanje programske opreme z uporabo posredniškega strežnika se morate " "overiti." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "NAPAKA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Prejetih %sB od %sB pri %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Prejetih %sB od %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "NAPAKA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Tega dejanja vam ni dovoljeno izvesti." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Dajanje v čakalno vrsto" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Razreševanje odvisnosti" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Naslednji NOVI paketi bodo nameščeni (%(count)s):" msgstr[1] "Naslednji NOV paket bo nameščen (%(count)s):" msgstr[2] "Naslednja NOVA paketa bosta nameščena (%(count)s):" msgstr[3] "Naslednji NOVI paketi bodo nameščeni (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Naslednji paketi bodo nadgrajeni (%(count)s):" msgstr[1] "Naslednji paket bo nadgrajen (%(count)s):" msgstr[2] "Naslednja paketa bosta nadgrajena (%(count)s):" msgstr[3] "Naslednji paketi bodo nadgrajeni (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Naslednji paketi bodo ODSTRANJENI (%(count)s):" msgstr[1] "Naslednji paket bo ODSTRANJEN (%(count)s):" msgstr[2] "Naslednja paketa bosta ODSTRANJENA (%(count)s):" msgstr[3] "Naslednji paketi bodo ODSTRANJENI (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Naslednji paketi bodo PODGRAJENI (%(count)s):" msgstr[1] "Naslednji paket bo PODGRAJEN (%(count)s):" msgstr[2] "Naslednja paketa bosta PODGRAJENA (%(count)s):" msgstr[3] "Naslednji paketi bodo PODGRAJENI (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Naslednji paketi bodo znova nameščeni (%(count)s):" msgstr[1] "Naslednji paket bo znova nameščen (%(count)s):" msgstr[2] "Naslednja paketa bosta znova nameščena (%(count)s):" msgstr[3] "Naslednji paketi bodo znova nameščeni (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Naslednji paketi so bili zadržani (%(count)s):" msgstr[1] "Naslednji paket je bil zadržan (%(count)s):" msgstr[2] "Naslednja paketa sta bila zadržana (%(count)s):" msgstr[3] "Naslednji paketi so bili zadržani (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Treba je dobiti %sB arhivov." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Po tem opravilu bo porabljenih dodatnih %sB prostora na disku." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Po tem opravilu bo sproščenega %sB prostora na disku." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Ali želite nadaljevati [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Za opravilo na več kot enem paketu vstavite ime paketa v navednice:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Osveži predpomnilnik" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Poskusi razrešiti pokvarjene odvisnosti. To dejanje je nevarno, saj lahko " "poskusi odstraniti veliko paketov." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Poskusi končati prejšnjo nedokončano namestitev" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Namesti dane pakete" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Znova namesti dane pakete" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Odstrani dane pakete" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Odstrani dane pakete, vključno z nastavitvenimi datotekami" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Podgradi dane pakete" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Zastarelo: uporabite --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Nadgradi sistem na varen način" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Nadgradi sistem, morda namesti in odstrani pakete" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Dodaj ponudnika med zaupanja vredne" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Dodaj id ponudnikovega ključa (potrebuje --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Uporabi dani strežnik s ključi za iskanje ključev" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Dodaj novo skladišče iz dane deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Navedite dodatno datoteko sources.list.d, h kateri naj bodo dodana skladišča." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Izpiši ključe zaupanja vrednih ponudnikov" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Odstrani zaupan ključ danega prstnega odtisa" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Znova nastavi nameščene pakete. Izbirno lahko določite najmanjšo prednost " "vprašanj" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Najmanjša debconf prednost vprašanj za prikaz" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Ne pripni terminala apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Dovoli pakete iz neoverjenih virov" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Pokaži dodatne podrobnosti o paketu. Trenutno le številko različice" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Čakanje na overitev" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Ne zapri ozadnjega programa zaradi nedejavnosti" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Ne naloži vstavkov" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Prikaži podrobnosti o notranji obdelavi podatkov" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Zapri in zamenjaj že zagnan ozadnji program" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Poslušaj na vodilu seje DBus (zahtevano le za preizkušanje" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Izvedi opravila za dano okolje chroot" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Shrani statistiko profila v navedeno datoteko" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Ne spreminjaj sistema (uporabno le za razvijalce)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Nameščena datoteka" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Nameščeni paketi" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Dodan je bil ključ iz datoteke" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Osvežen predpomnilnik" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Iskanje je končano" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Odstranjen je bil zaupanja vreden ključ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Odstranjeni paketi" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Posodobljeni paketi" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Nadgrajen sistem" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Uveljavljene spremembe" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Neuspela namestitev je popravljena" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Okvarjene odvisnosti so popravljene" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Vir programske opreme je dodan" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Komponenta distribucije je omogočena" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Prejete paketne datoteke so bile odstranjene" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Znova nastavljeni nameščeni paketi" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Uspešno" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Preklicano" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Ni uspelo" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Nameščanje datoteke" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Nameščanje paketov" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Dodajanje ključa iz datoteke" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Posodabljanje predpomnilnika" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Odstranjevanje zaupanja vrednega ključa" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Odstranjevanje paketov" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Posodabljanje paketov" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Nadgrajevanje sistema" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Uveljavljanje sprememb" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Popravljanje neuspele namestitve" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Popravljanje nameščene programske opreme" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Dodajanje vira programske opreme" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Omogočanje komponente distribucije" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Odstranjevanje prejetih paketnih datotek" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Ponovno nastavljanje nameščenih paketov" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Iskanje" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Namestitev paketne datoteke ni uspela" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Namestitev programa ni uspela" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Dodanje ključa na seznam zaupanja vrednih prodajalcev programske opreme je " "spodletelo" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Osveževanje seznama programov ni uspelo" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Odstranjevanje vnosa iz seznama zaupanja vrednih ponudnikov programov ni " "uspelo" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Odstranjevanje programa ni uspelo" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Posodabljanje programa ni uspelo" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Nadgrajevanje sistema ni uspelo" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Uveljavljanje programskih sprememb ni uspelo" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Popravljanje nedekončane namestitve ni uspelo" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Popravljanje pokvarjenih odvisnosti ni uspelo" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Dodajanje vira programske opreme ni uspelo" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Omogočanje sestavnega dela distribucije ni uspelo" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Odstranjevanje prejetih paketnih datotek ni uspelo" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Iskanje je spodletelo" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Dodajanje licenčnega ključa" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Preverite svojo internetno povezavo." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Preverite, ali uporabljate tudi neuradna skladišča. Če jih, jih onemogočite, " "saj so pogosto vir težav. \n" "Nato v terminalu zaženite naslednji ukaz: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Izbrana datoteka ni ključ GPG ali pa je pokvarjena." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Izbranega ključa ni mogoče odstraniti. Preverite, da ste zagotovili veljaven " "prstni odtis." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Preverite, da trenutno ne izvajate drugega orodja za upravljanje s programi, " "kot sta na primer Synaptic ali aptitude. Hkrati lahko spremembe izvaja le " "eno orodje." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "To je resna težava. Poskusite znova kasneje. Če se težava ponovi, javite " "napako razvijalcem." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Preverite črkovanje imena paketa in da je primerno skladišče omogočeno." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Ni potrebe po posodobitvi." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Ni potrebe po namestitvi." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Ni potrebe po odstranitvi." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Zahtevali ste odstranitev paketa, ki je ključen del vašega sistema." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Povezava z ozadnjim programom je bila izgubljena. Verjetno se je ozadnji " "program v ozadju sesul." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Namestitev ali odstranitev programskega paketa ni uspela." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Zahtevana zmožnost ni podprta." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Prišlo je do programske napake v programu aptdaemon, ki vam omogoča " "namestitev/odstranitev programske opreme in izvajanje drugih nalog, " "povezanih z upravljanjem paketov." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Do napake je lahko prišlo zaradi zahteve po dodatnih programskih paketih, ki " "manjkajo ali jih ni mogoče namestiti. Poleg tega je lahko prišlo do spora " "med programskimi paketi, ki ne morejo biti hkrati nameščeni." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "To zahteva namestitev paketov z nepooblaščenih virov." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Namestitev je bila mora neuspešna zaradi napake v ustreznem programskem " "paketu ali ker je bila prekinjena na neprijazen način. Pred namestitvijo ali " "odstranitvijo drugih programov morate to popraviti." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Kopirajte datoteko v svoj krajevni računalnik in preverite njena dovoljenja." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Namestitev paketa, ki krši kakovost standarda, ni dovoljena. To lahko " "povzroči resne težave na vašem računalniku. Stopite v stik z osebo ali " "organizacijo, ki ponuja to paketno datoteko in spodaj vključite podrobnosti." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Prenešeni licenčni ključ, ki je zahtevan za zagon te programske opreme, ni " "veljaven ali ga ni mogoče namestiti pravilno.\n" "Oglejte si podrobnosti." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Vse posodobitve, ki so na voljo, so bile nameščene." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Licenčnega ključa, ki vam dovoljuje uporabo te programske opreme, ni bilo " "mogoče prenesti. Preverite svojo omrežno povezavo." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Za izvedbo tega dejanja nimate zahtevanih dovoljenj." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Vnesli ste napačno geslo ali pa ste pooblastitev preklicali.\n" "Obstaja lahko tudi tehnični razlog za to napako, če niste videli pogovornega " "okna gesla: vaše namizno okolje morda ne podpira posrednika seje PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Prejem paketnih datotek je spodletel" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Prejem podrobnosti o skladišču je spodletel" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Odvisnosti paketov ni mogoče razrešiti" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Sistem paketov je pokvarjen" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ključ ni bil nameščen" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ključ ni bil odstranjen" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Upravljalnika paketov ni bilo mogoče zakleniti" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Seznama paketov ni bilo mogoče naložiti" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paket ne obstaja" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paket je že posodobljen" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paket je že nameščen" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paket ni nameščen" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Ni bilo mogoče odstraniti pomembnega sistemskega paketa" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Opravila ni mogoče nadzirati" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Opravilo s paketi je spodletelo" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Zahteva namestitev nepreverjenih paketov" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Predhodna namestitev ni bila dokončana" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paket je slabe kakovosti" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Paketne datoteke ni mogoče odpreti" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Zmožnost ni podprta" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Prejem licenčnega ključa je spodletel" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Namestitev programskega ključa je spodletela" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistem je že posodobljen" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Ni vas bilo mogoče pooblastiti" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Nimate dovoljenj za izvedbo tega dejanja." #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Prišlo je do neupravljane napake" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Čakanje na začetek postopka" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Čakanje" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Čakanje na zahtevan medij" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Čakanje, da se ostali upravljalniki paketov končajo" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Čakanje na poziv nastavitvene datoteke" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Izvajanje naloge" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Prejemanje" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Poizvedovanje po programskih virih" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Čiščenje" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Končano" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Preklicevanje" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Nalaganje seznama programov" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Nameščanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Nastavljanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Odstranjevanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Popolno odstranjevanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s je izginil" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Izvajanje ponamestitvenega zaporedja ukazov %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Nadgrajevanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Razširjanje %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Priprava namestitve %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Pripravljanje za nastavitev %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Pripravljanje za odstranitev %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Pripravljanje na popolno odstranitev %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Paket %s je nameščen." #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Paket %s je bil popolnoma odstranjen" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Paket %s je bil odstranjen" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Končano" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Overitev ni uspela" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Pridobivanje" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Nedejavno" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Omrežje ni na voljo" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Obdelovanje %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Prejetih %sB od %sB pri %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Prejetih %sB od %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Podrobnosti" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Datoteka" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Prejeto %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Prejeto" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Zahtevan je CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Vstavite zgornji CD/DVD v pogon '%s' za namestitev programskih paketov z " "njega." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Nadaljuj" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Namesti" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Znova namesti" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Odstrani" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Počisti" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Nadgradi" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Podgradi paket" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Preskoči nadgradnjo" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Oglejte si spodnji seznam sprememb." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Dodatno programsko opremo je treba namestiti" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Dodatno programsko opremo je treba znova namestiti" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Dodatno programsko opremo je treba odstraniti" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Dodatno programsko opremo je treba počistiti" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Dodatno programsko opremo je treba nadgraditi" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Dodatno programsko opremo je treba podgraditi" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Posodobitve bodo izpuščene" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Zahtevane so dodatne spremembe" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Skupaj bo prejetih %sB." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "Na disku bo sproščenega %s B prostora." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Porabljenega bo %sB več prostora na disku." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Ali želite zamenjati svoje spremembe v '%s' z novejšo različico v " "nastavitveni datoteki?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Če ne veste, zakaj datoteka na tem mestu obstaja, jo je običajno varno " "zamenjati." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Spremembe" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Ohrani" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Zamenjaj" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Podrobnosti" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Čakanje na končanje %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Prejemanje %(files)s" msgstr[1] "Prejemanje %(files)s" msgstr[2] "Prejemanje %(files)s" msgstr[3] "Prejemanje %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "Krajevno skladišče." #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Prejemanje od %s" msgstr[1] "Prejemanje od %s" msgstr[2] "Prejemanje od %s" msgstr[3] "Prejemanje od %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Zgradba %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Opis %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Podpis opisa %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paketi, na voljo iz %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Viri, na voljo iz %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Prevodi, na voljo iz %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Prevodi za %s (%s) iz %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Prevodi za %s iz %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Prevodi (%s) iz %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paket %s ni na voljo" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paket %s ni nameščen" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Različica %s %s ni nameščena" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paket %s je že nameščen" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Različica %s programa %s ni na voljo." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL strežnika s ključi je neveljaven: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Neveljaven strežniški protokol: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Neveljaven ID ključa: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Napaka med prejemom in nameščanjem ključa %s iz %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Datoteke ključa %s ni mogoče namestiti: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ključa s prstnim odtisom %s ni mogoče odstraniti: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paketa %s ni mogoče odstraniti." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Različica %s %s ni nameščena" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Prejšnja različica %s %s je že nameščena" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Različica %s %s je že nameščena" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Različica %s programa %s ni na voljo" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Navedite različico, na katero naj bo %s podgrajen" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Novejša različica %s %s je že nameščena" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paket %s ni na voljo v izdaji %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paketa %s ni mogoče odstraniti" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paket ne zagotavlja veljavnega nadzornega polja Nameščena velikost. Oglejte " "si Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licenčni ključ je prazen" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licenčni ključ ne sme vsebovati izvedljive kode." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Pot licenčnega ključa %s ni veljavna" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licenčni ključ že obstaja: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Mesto licenčnega ključa ni varno, saj vsebuje simbolne povezave. Pot %s kaže " "na %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Mapa za nemestitev ključa še ne obstaja: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Pisanje datoteke ključa v mapo %s je spodletelo" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Naslednji paketi imajo nerazrešene odvisnosti:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr ", vendar je navidezen paket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr ", vendar ni nameščen" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr ", vendar ne bo nameščen" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr ", vendar je nameščen paket %s" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr ", vendar bo nameščen paket %s" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Dodajanje ključa na seznam zaupanja vrednih ponudnikov programov ni uspelo" aptdaemon-1.1.1+bzr982/po/sq.po0000644000000000000000000013540112375372771014267 0ustar 00000000000000# Albanian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-03-07 14:25+0000\n" "Last-Translator: Vilson Gjeci \n" "Language-Team: Albanian \n" "Language: sq\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Listo çelësat e shitësave të besuar" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Për të shfaqur listën e çelësave të besuar, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Hiq skedarët e paketave të shkarkuara" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Për të pastruar skedarët e paketave të shkarkuara, ju duhet t identifikoheni." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ndrysho konfigurimin e programeve" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Për të ndryshuar parametrat e programeve, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Ndrysho magazinën e programeve" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Për të ndryshuar parametrat e magazinës, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Instalo skedarin e paketës" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Për të instaluar këtë paketë, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Përditëso informacionin e paketave" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Për të përditësuar katalogun e programeve, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Instalo ose hiq paketat" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Për të instaluar apo hequr programe, ju duhet të identifikoheni." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Instalo programe nga një magazinë shumë e besuar dhe në listën e bardhë." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Për të instaluar programe, ju duhet të identifikoheni." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Shto një magazinë të re dhe shto paketat prej saj" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Për të instaluar programe nga një burim i ri, ju duhet të identifikoheni." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Shto një magazinë të re të programeve të blera dhe instalo paketat prej saj" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Për të instaluar programet e blera, ju duhet të identiifkoheni." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Përditëso paketat" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Për të instaluar programet e përditësuara, ju duhet të identifikoheni." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Anullo detyrën e një përdoruesi tjetër" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Për të fshirë ndryshimet e programeve të dikujt tjetër, ju duhet të " "identifikoheni." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Vendos proksi për shkarkimet e programeve" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "Për të përdorur një server proksi, ju duhet të identifikoheni." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "GABIM" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "U Shkarkuan %sB të %sB në %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "U Shkarkua %sB e %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "GABIM:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Nuk ju lejohet të kryeni këtë veprim." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Duke kërkuar" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Duke zgjidhur vartësitë" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Paketa E RE që vijon do të instalohet (%(count)s):" msgstr[1] "Paketat E REJA që vijojnë do të instalohen (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Paketa që vijon do të përditësohet (%(count)s):" msgstr[1] "Paketat që vijojnë do të përditësohen (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Paketa që vijon do të HIQET (%(count)s):" msgstr[1] "Paketat që vijojnë do të HIQEN (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Paketa që vijon do të ULET NË NIVEL (%(count)s):" msgstr[1] "Paketat që vijojnë do të ULEN NË NIVEL (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Paketa që vijon do të riinstalohet (%(count)s):" msgstr[1] "Paketat që vijojnë do të riinstalohen (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Paketa që vijon është mbajtur (%(count)s):" msgstr[1] "Paketat që vijojnë janë mbajtur (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Kam nevojë të marr %sB nga arkivat." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Pas këtij veprimi, %sB hapësirë shtesë në disk do të përdoret." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Pas këtij veprimi, %sB hapësirë shtesë në disk do të lirohet." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Dëshironi të vazhdoni [P/j]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Për të vepruar me më tepër se një paketë vendosini emrat e paketave me " "thonjëza:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Rifresko magazinën" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Përpiquni të zgjidhni vartësitë e dëmtuara. Veprim potencialisht i " "rrezikshëm, sepse do të përpiqet të heqë shumë paketa." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Përpiqu të përfundosh një instalim të mëparshëm të pa kompletuar" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Instalo paketat e dhëna" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Riinstalo paketat e dhëna" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Hiqi paketat e dhëna" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Hiqi paketat e dhëna duke përfshirë edhe skedarët e konfigurimit" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Uli një shkallë paketat e dhëna" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "I Papërdorshëm: Ju lutemi të përdorni --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Përditësoje sistemin në një mënyrë të sigurtë" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Përditësoni sistemin, mundësisht duke instaluar dhe hequr paketat" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Shtojeni shitësin e burimet e besueshme" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Shto keyid të shitësit (gjithashtu ka nevojë për --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Përdor serverin e dhënë të çelësave për të parë çelësat" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Shto një magazinë të re nga deb-line e dhënë" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Specifikoni një skedar alternativ sources.list.d tek i cili mund të shtohen " "magazinat." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Listo çelësat e besueshëm të shitësve" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Hiqeni çelësin e besuar të gjurmës së gishtërinjve të dhënë" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Rikonfiguro të gjitha paketat e instaluara. Në mënyrë opsionale përparësia " "minimale e pyetjeve mund të specifikohet" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Prioriteti minimal i pyetjes debconf mund të shfaqet" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Mos e bashkangjitni terminalin apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Lejo paketat nga bruime të paidentifikuara" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Shfaq informacion shtesë rreth paketave. Për momentin vetëm numri i versionit" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Duke pritur për identifikim" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Mos e mbyll daemon për shkak të mungesës së veprimtarisë" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Mos ngarko asnjë plugin" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Shfaq informacionin për proçeset e brendshme" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Dil dhe zëvendësoje një daemon që është tashmë në gjendje pune" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Dëgjoni në bus të seksionit DBus (Kërkohet vetëm për testim)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Kryeni verpimin në chroot të dhënë" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Ruaj gjendjet e profilit në skedarin e përcaktuar" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Mos bëni asnjë ndryshim në sistem (Vetëm për tu përdorur nga zhvilluesit)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Skedari i instaluar" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Paketat e instaluara" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Çelës i shtuar nga skedari" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Magazinë e përditësuar" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Kërkimi u krye" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Çelës i besueshëm i hequr" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Paketa të hequra" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Paketa të përditësuara" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Sistem i përditësuar" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Ndryshimet e kryera" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "U riparua instalimi i pa kompletuar" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "U riparuan vartësitë e dëmtuara" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "U shtua burimi i programit" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Aktivizo përbërësin e versionit" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Hiqi skedarët e shkarkuar të paketave" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Paketat e instaluara të konfiguruara sërisht" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Me Sukses" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Anulluar" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Dështoi" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Duke instaluar skedarin" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Duke instaluar paketat" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Duke shtuar çelësin nga skedari" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Duke përditësuar magazinën" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Duke hequr çelësin e besuar" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Duke hequr paketat" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Duke përditësuar paketat" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Duke përditësuar sistemin" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Duke aplikuar ndryshimet" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Duke riparuar instalimin e pa kompletuar" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Duke riparuar programet e instaluara" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Duke shtuar burim programesh" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Duke aktivizuar përbërësin e versionit" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Duke hequr paketat e shkarkuara të skedarëve" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Duke rikonfiguruar paketat e instaluara" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Duke kërkuar" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Instalimi i skedarit të paketës dështoi" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Instalimi i programit dështoi" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" "Shtimi i çelësit tek lista e shitësve të besueshëm të programeve dështoi" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Rifreskimi i listës së programeve dështoi" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Heqja e shitësit nga lista e të besueshmeve dështoi" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Heqja e programit dështoi" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Përditësimi i programit dështoi" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Përditësimi i sistemit dështoi" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Dështoi aplikimi i ndryshimit të programeve" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Riparimi i instalimit të pakompletuar dështoi" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Riparimi i vartësive të dëmtuara dështoi" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Shtimi i burimit të skedarëve dështoi" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Aktivizimi i përbërësit të distribucionit dështoi" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Heqja e paketave të shkarkuara dështoi" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Kërkimi dështoi" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Duke shtuar çelësin e liçensës" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kontrollo lidhjen tënde me internetin." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontrollo nëse je duke përdorur magazina të palëve të treta. nëse po, " "çaktivizoji ato, sepse ato janë një burim i zakonshëm i problemeve.\n" "Veç kësaj nis komandën që vijon në një Terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "E dhëna e zgjedhur sipas të gjitha gjasave nuk është GPG-çelës ose është e " "dëmtuar." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Çelësi i përzgjedhur nuk mund të hiqej. Kontolloni nëse keni dhënë një " "gjurmë gishtërinjsh të vlefshme." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kontrolloni nëse keni hapur një mjet tjetër për menaxhimin e programeve, " "psh. Synaptic apo aptitude. Vetëm një mjet lejohet të bëjë ndryshime në një " "kohë të caktuar." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ky është një problem serioz. Provo përsëri më vonë. Nëse problemi shfaqet " "përsëri, ju lutemi t'i raportoni një gabim zhvilluesve." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Kontrolloni shqiptimin e emrit të paketës dhe shikoni që magazina e duhur të " "aktivizohet." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Nuk ka nevojë për një përditësim." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Nuk ka nevojë për një instalim" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Nuk ka nevojë për të hequr gjë." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Ju kërkuat të hiqni një paketë e cila është pjesë thelbësore e sistemit tuaj." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Lidhja me daemon humbi. Ka shumë mundësi që daemon i sfondit të ketë pasur " "një defekt." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Instalimi apo heqja e një pakete programesh dështoi." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Mjeti i kërkuar nuk suportohet." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Duket se ka një gabim programimi në aptdaemon, programi që ju lejon të " "instaloni/hiqni programt dhe për të performuar detyra të tjera të lidhura me " "menaxhimin e paketave." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ky gabim mund të jetë shkaktuar nga paketat shtesë të programeve të kërkuara " "që mungojnë apo nuk janë të instalueshme. Për më tepër mund të ketë një " "konflikt midis paketave të programeve të cilat nuk lejohet të instalohen në " "të njëjtën kohë." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Kjo kërkon instalimin e paketave nga burime të paidentifikuara." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Instalimi mund të ketë dështuar për shkak të një gabimi në paketën " "korresponduese të programit ose është anulluar në një mënyrë jo miqësore. " "Juve ju duhet të riparoni këtë para se të instaloni apo hiqni çdo program të " "mëvonshëm." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Ju lutemi ta kopjoni skedarin në kompjuterin tuaj lokal dhe të kontrolloni " "për lejet e skedarit." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Instalimi i një pakete e cila dhunon standartet e cilësisë nuk lejohet. Kjo " "mund të shkaktojë probleme serioze në kompjuterin tuaj. Ju lutemi të " "kontaktoni personin apo organizatën që bëri të disponueshme këtë paketë dhe " "të përfshini detajet më poshtë." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Çelësi i shkarkuar i liçensës që kërkohet për të nisur këtë program nuk " "është i vlefshëm ose nuk mund të instalohet siç duhet.\n" "Shikoni detajet për më tepër informacion." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Të gjitha përditësimet e disponueshme janë instaluar tashmë." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Çelësi i liçensës që ju mundëson ta nisni këtë program nuk mund të " "shkarkohet. Ju lutemi të kontrolloni lidhjen tuaj me rrjetin." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Ju nuk keni privilegjet e kërkuara për të kryer këtë veprim." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Juve ose keni dhënë një fjalëkalim të gabuar ose anulluat autorizimin.\n" "Për më tepër mund të ketë edhe një arsye teknike për këtë gabim nëse nuk " "keni parë një dialog për fjalëkalimin: ambienti juaj i desktopit nuk jep një " "agjent të seksionit për PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Dështuam në shkarkimin e skedarëve të paketave" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Dështuam në shkarkimin e informacionit të magazinave" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Vartësitë e paketave nuk mund të zgjidhen" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Sistemi i paketave është i dëmtuar" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Çelësi nuk është instaluar" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Çelësi nuk është hequr" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Dështuam në bllokimin e menaxhuesit të paketave" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Dështuam në ngarkimin e listës së paketave" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paketa nuk ekziston" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paketa është e përditësuar tashmë" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paketa është e instaluar tashmë" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paketa nuk është e instaluar" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Dështuam në heqjen e një pakete thelbësore për sistemin" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Detyra nuk mund të monitorohet apo kontrollohet" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Veprimi i paketave dështoi" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Kërkon instalimin e paketave të pa kontrolluara" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Instalimi i mëparshëm nuk është kompletuar" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paketa ka cilësi të keqe" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Skedari i paketës nuk mund të hapet" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Mjet i pa suportuar" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Dështova në shkarkimin e çelësit të liçensës" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Dështova në instalimin e çelësit të liçensës" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistemi është i përditësuar tashmë" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Nuk mudëm t'iu autorizonim" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Juve nuk iu lejohet ta kryeni këtë veprim" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ndodhi një gabim i pakorrigjueshëm" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Duke pritur që shërbimi të rinisë" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Në pritje" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Duke pritur për median e kërkuar" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Duke pritur të dalin menaxhuesit e tjerë të programeve" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Duke pritur për daljen e skedarit të konfigurimit" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Duke nisur detyrën" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Duke shkarkuar" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Duke grumbulluar burimet e programeve" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Duke pastruar" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Përfunduar" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Duke anulluar" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Duke ngarkuar listën e programeve" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Duke instaluar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Duke konfiguruar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Duke fshirë %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Duke hequr plotësisht %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Njoftoj zhdukjen e %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Duke kryer veprimet e pas instalimit për %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Duke Përditësuar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Duke hapur %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Duke përgatitur instalimin e %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Duke përgatitur konfigurimin e %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Duke përgatitur heqjen e %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Duke përgatitur heqjen e plotë të %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "U instalua %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "U hoq plotësisht %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "U hoq %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "U Bë" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Identifikimi dështoi" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Duke mbledhur" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Në Pritje" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Rrjeti nuk është i disponueshëm" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Duke përpunuar %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "U Shkarkuan %sB të %sB në %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "U Shkarkua %sB e %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detajet" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Skedari" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "U Shkarkuan %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Të shkarkuara" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' kërkohet" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Ju lutemi të vendosni CD/DVD e mësipërm në draiv '%s' për të instaluar " "paketat e programeve prej tij." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Vazhd_o" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Instalo" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Riinstalo" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Hiqe" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Pastro" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Përditëso" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Çoje një shkallë më poshtë" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Anashkalo përditësimin" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Ju lutemi ti hidhni një sy listës së ndryshimeve më poshtë." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Duhen instaluar programe shtesë" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Duhen riinstaluar programe shtesë" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Programe shtesë duhet të hiqen" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Programe shtesë duhen hequr" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Programe shtesë duhen përditësuar" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Programe shtesë do ulen një shkallë më poshtë" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Përditësimet do të anashkalohen" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Ndryshime shtesë kërkohen" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB do të shkarkohen në total." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB hapësirë në disk do të lirohet." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB më tepër hapësirë në disk do të përdoret." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Ti zëvendësoj ndryshimet tuaja në '%s' me një version të mëvonshëm të " "skedarit të konfigurimit?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Nëse nuk e didni pse skedari tashmë është aty, zakonisht është i sigurtë " "zëvendësimi i tij." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Ndryshimet" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Mbaje" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Zëvendëso" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detaje" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Duke pritur për %s që të mbyllet" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Duke shkarkuar %(files)s" msgstr[1] "Duke shkarkuar %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "depozita lokale" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Duke shkarkuar nga %s" msgstr[1] "Duke shkarkuar nga %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktura e %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Përshkrimi i %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Firma përshkruese e %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Paketat e disponueshme nga %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Burimet e disponueshme nga %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Përkthimet e disponueshme nga %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Përkthimet për %s (%s) nga %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Përkthimet për %s nga %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Përkthime (%s) nga %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paketa %s nuk është e disponueshme" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "paketa %s nuk është instaluar" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Versioni %s i %s nuk është instaluar" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paketa %s është instaluar tashmë" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Versioni %s i %s nuk është i disponueshëm" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "URL e serverit të çelësave është e pavlefshme: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Protokoll i pavlefshëm i serverit: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Identiteti i çelësit nuk është i saktë: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Dështova në shkarkimin e çelësit të instalimit %s nga %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Skedari i çelësit %s nuk mund të instalohej: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Çelësi me gjurmën e gishtërinjve %s nuk mund të hiqej: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paketa %s nuk mund të hiqej." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Versioni %s i %s nuk është instaluar" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Versioni i mëparshëm %s i %s është instaluar tashmë" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Versioni %s i %s është instaluar tashmë" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Versioni %s i %s nuk është i disponueshëm" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" "Ju nevojitet të specifikoni një version për të ulur një shkallë më poshtë %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Versioni i fundit %s i %s është instaluar tashmë" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paketa %s nuk është e disponueshme në versionin %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paketa %s nuk mund të hiqet" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paketa nuk jep një fushë kontrolli të vlefshme për Përmasën e Instalimit. " "Shikoni çertifikatën e Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Çelësi i liçensës është bosh" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Çelësi i liçensës nuk lejohet të mbajë kod të ekzekutueshëm." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Shtegu i çelësit të liçensës %s është i pavlefshëm" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Çelësi i liçensës ekziston tashmë: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Vendndodhja e çelësit të liçensës është e pasigurtë përderisa përmban lidhje " "simbolike. Shtegu %s të drejton tek %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Drejtoria ku instalon çelësin nuk ekziston tashmë: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Dështova në shkrimin e skedarittë çelësit tek: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Paketat që vijojnë kanë vartësi të paplotësuara:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "Por është një paketë virtuale" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "Por nuk është instaluar" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "Por nuk do të instalohet" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "por %s është instaluar" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "Por %s do të instalohet" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Shtimi i çelësit në listën e shitësve të besueshëm të programeve dështoi" aptdaemon-1.1.1+bzr982/po/sr.po0000644000000000000000000015555412375372771014303 0ustar 00000000000000# Serbian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # Мирослав Николић , 15.12.2010. msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-02-01 00:49+0000\n" "Last-Translator: Марко М. Костић \n" "Language-Team: Ubuntu serbian Translators\n" "Language: serbian (sr)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Списак кључева поузданих продаваца" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Да бисте видели списак поузданих кључева, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Уклони преузете датотеке пакета" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Да бисте очистили преузете датотеке пакета, треба да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Промени конфигурацију софтвера" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Да бисте изменили поставке софтвера, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Промени ризницу софтвера" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Да бисте изменили поставке ризнице софтвера, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Инсталирај датотеку пакета" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Да бисте инсталирали овај пакет, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Допуни информације о пакету" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Да бисте ажурирали каталог софтвера, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Инсталирај или уклони пакете" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" "Да бисте инсталирали или уклонили софтвер, требате да потврдите идентитет." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "Инсталирај програме из проверене ризнице која се налази на белом списку." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Да бисте инсталирали програм, потребно је да се идентификујете." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Додај нову ризницу и инсталирај пакете из ње" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Да бисте инсталирали софтвер из новог извора, требате да потврдите идентитет." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Додај нову ризницу купљеног софтвера и инсталирај пакете из ње" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Да бисте инсталирали купљени софтвер, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Надогради пакете" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" "Да бисте инсталирали ажурирани софтвер, требате да потврдите идентитет." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Откажи задатак другог корисника" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Да бисте отказали измене софтвера другог корисника, требате да потврдите " "идентитет." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Постави посредника за преузимање софтвера" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Да бисте користили посреднички сервер за преузимање софтвера, требате да " "потврдите идентитет." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ГРЕШКА" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Преузето је %sB од %sB при %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Преузето је %sB од %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ГРЕШКА:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Вама није дозвољено да извршите ову радњу." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Чекање у реду" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Разрешавам зависности" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Биће инсталиран %(count)s НОВ пакет:" msgstr[1] "Биће инсталирана %(count)s НОВА пакета:" msgstr[2] "Биће инсталирано %(count)s НОВИХ пакета:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Биће надограђен %(count)s пакет:" msgstr[1] "Биће надограђена %(count)s пакета:" msgstr[2] "Биће надограђено %(count)s пакета:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Биће УКЛОЊЕН %(count)s пакет:" msgstr[1] "Биће УКЛОЊЕНА %(count)s пакета:" msgstr[2] "Биће УКЛОЊЕНО %(count)s пакета:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Биће РАЗГРАЂЕН %(count)s пакет:" msgstr[1] "Биће РАЗГРАЂЕНА %(count)s пакета:" msgstr[2] "Биће РАЗГРАЂЕНО %(count)s пакета:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Биће поново инсталиран %(count)s пакет:" msgstr[1] "Биће поново инсталирана %(count)s пакета:" msgstr[2] "Биће поново инсталирано %(count)s пакета:" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Биће задржан %(count)s пакет:" msgstr[1] "Биће задржана %(count)s пакета:" msgstr[2] "Биће задржано %(count)s пакета:" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Морам да набавим %sB архива." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Након ове операције, %sB додатног простора на диску биће искоришћено." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Након ове операције, %sB додатног простора на диску биће ослобођено." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Да ли желите да наставите [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Да радите са више од једним пакетом ставите имена пакета под наводницима:\n" "aptdcon --install „foo bar“" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Освежава кеш" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Покушаће да реши оштећене зависности. Потенцијално опасна операција јер може " "покушати да уклони многе пакете." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Покушаће да заврши претходно недовршену инсталацију" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Инсталираће дате пакете" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Поново ће инсталирати дате пакете" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Уклониће дате пакете" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Уклониће дате пакете, укључујући датотеке подешавања" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Разградиће дате пакете" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Застарело: Молим користите „--safe-upgrade“" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Надограђује систем на безбедан начин" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Надограђује систем, могуће је инсталирање и уклањање пакета" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Додаје продавца међу поверљиве" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Додаје продавчев ид кључа (такође треба --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Користи дати сервер кључева за претраживање кључева" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Додаје нову ризницу из дате деб линије" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Наведите алтернативну „sources.list.d“ датотеку у коју требају бити додате " "ризнице." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Списак кључева поузданих продаваца" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Уклони поверљиви кључ датог отиска прста" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Поново ће подесити инсталиране пакете. Опционално може бити наведен најмањи " "приоритет питања." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Најмањи приоритет питања деб подешавања која ће бити приказана" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Немој придодати апт терминалу" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Дозволи пакете са непроверених извора" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Приказаће додатне информације о пакетима. Тренутно само број верзије" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Чекам на потврђивање идентитета" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Не гаси демона због неактивности" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Не учитава никакве прикључке" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Прикажи информације о унутрашњим процесима" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Заустави и замени већ започет демон програм" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Ослушкује на магистрали ДБус сесије (потребно је само за тестирање)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Извршава операције у датом „chroot“-у" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Сачувај стање профила у посебно одређену датотеку" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Не уноси никакве промене на систему (Корисно је само програмерима)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Датотека је инсталирана" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Пакети су инсталирани" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Кључ из датотеке је додат" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Кеш је освежен" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Претрага је обављена" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Поверљиви кључ је уклоњен" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Пакети су уклоњени" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Пакети су унапређени" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Систем је надограђен" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Измене су примењене" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Незавршена инсталација је оправљена" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Оштећене зависности су оправљене" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Извор софтвера је додат" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Компонента дистрибуције је омогућена" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Уклоњене преузете датотеке пакета" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Поново подешени инсталирани пакети" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Успешно" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Отказано" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Неуспело" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Инсталирам датотеку" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Инсталирам пакете" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Додајем кључ из датотеке" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Освежавам кеш" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Уклањам поверљиви кључ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Уклањам пакете" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Освежавам пакете" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Надограђујем систем" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Примењујем измене" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Оправљам незавршену инсталацију" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Поправљам инсталиран софтвер" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Додајем извор софтвера" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Омогућавам компоненту дистрибуције" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Поново подешени инсталирани пакети" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Поново подешавам инсталиране пакете" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Претраживање" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Нисам успео да инсталирам датотеку пакета" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Нисам успео да инсталирам софтвер" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "Додавање кључа у списак проверених произвођача програма је неуспешно" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Нисам успео да обновим списак софтвера" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Нисам успео да уклоним продавца са листе поверљивих" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Нисам успео да уклоним софтвер" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Нисам успео да освежим софтвер" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Нисам успео да надоградим систем" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Нисам успео да применим измене софтвера" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Нисам успео да оправим незавршену инсталацију" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Нисам успео да оправим оштећене зависности" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Нисам успео да додам извор софтвера" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Нисам успео да омогућим компоненту дистрибуције" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Нисам успео да уклоним преузете датотеке пакета" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Претрага није успела" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Додајем кључ лиценце" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Проверите вашу интернет везу." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Проверите да ли користите незваничне ризнице. Уколико их користите, " "искључите их јер су оне често узрок проблема.\n" "Касније покрените следећу наредбу у Терминалу: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Датотека коју сте изабрали је оштећена или не представља ГПГ кључ." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Не могу да уклоним изабрани кључ. Проверите да ли сте обезбедили важећи " "отисак прста." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Проверите да тренутно можда нисте покренули неки други алат за управљање " "софтвером, нпр. Синаптик или аптитјуд. Допуштено је да само један алат може " "да врши измене у исто време." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Ово је врло озбиљан проблем. Пробајте касније. Ако се исти проблем појави и " "касније, молимо Вас пошаљите извештај програмерима." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Проверите да ли сте исправно уписали име пакета и да ли сте укључили " "одговарајућу ризницу." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Нема никакве потребе за освежавањем." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Нема никакве потребе за инсталирањем" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Нема никакве потребе за уклањањем." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Затражили сте уклањање пакета који је кључни део Вашег система." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Веза са демоном је изгубљена. Највероватније да је позадински демон изненада " "прекинуо с радом." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Инсталација или уклањање софтверског пакета није успела." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Затражена функција није подржана." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Изгледа да постоји програмерска грешка у апт позадинцу, програму који вам " "омогућава да инсталирате/уклањате програме као и да обављате друге послове у " "вези управљања пакетима." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ова грешка може бити изазвана захтевањем додатних софтверских пакета који " "недостају или нису инстаљиви. Такође може постојати сукоб између софтверских " "пакета којима није дозвољено да буду инсталирани у исто време." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Овај захват укључује инсталирање пакета из непроверених извора." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Инсталација можда није успела због грешке у одговарајућем софтверском пакету " "или је отказана на неодговарајући начин. Морате да поправите ово пре него " "што будете могли да инсталирате или уклоните будући софтвер." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Молим умножите датотеку на ваш локални рачунар и проверите овлашћења " "датотеке." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Инсталирање пакета који крше стандарде квалитета није дозвољено. То може " "изазвати озбиљне проблеме на вашем рачунару. Молим контактирајте особу или " "организацију која је обезбедила овај пакет и укључите детаље испод." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Преузети кључ лиценце који је потребан за покретање овог програма није " "исправан или не може бити исправно инсталиран.\n" "Погледајте појединости за више података." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Све доступне надоградње су већ инсталиране." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Кључ лиценце који вам омогућава да користите овај програм не може бити " "преузет. Проверите вашу мрежну везу." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Нисте овлашћени да извршите овај захват." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Унели сте погрешну лозинку или сте поништили овлашћивање.\n" "Такође, можда је узрок ове грешке техничке природе. Ако нисте видели прозор " "за унос лозинке онда ваше графичко окружење нема PolicyKit." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Нисам успео да преузмем датотеке пакета" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Нисам успео да преузмем информације ризнице" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Зависности пакета не могу бити решене" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Систем пакета је оштећен" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Кључ није инсталиран" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Кључ није уклоњен" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Нисам успео да закључам управника пакета" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Нисам успео да учитам списак пакета" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакет не постоји" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Пакет је већ ажуриран" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакет је већ инсталиран" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакет није инсталиран" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Нисам успео да уклоним кључни пакет система" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Задатак не може бити праћен или контролисан" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Извршавање задатог није успело" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Захтева инсталирање неповерљивих пакета" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Претходна инсталација није била завршена" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Пакет је лошег квалитета" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Датотека пакета не може бити отворена" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Неподржана функција" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Нисам успео да преузмем кључ лиценце" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Нисам успео да инсталирам кључ лиценце" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Систем је већ ажуриран" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Неуспех при овлашћивању." #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Нисте овлашћени да извршите овај захват" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Дошло је до грешке којом се не може управљати" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Чекам на услугу да започне" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Чекам" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Чекам на затражени медијум" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Чекам на друге управнике пакета да заврше" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Чекам на промпт датотеке подешавања" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Извршавам задатак" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Преузимам" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Пропитујем изворе софтвера" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Чистим" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Завршено" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Отказујем" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Уносим списак софтвера" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Инсталирам „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Подешавам „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Уклањам „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Уклањам потпуно %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Бележим нестанак за %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Извршавам пост-инсталационе белешке „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Надограђујем „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Распакивам %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Припремам „%s“ за инсталацију" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Припремам подешавање за „%s“" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Припремам „%s“ за уклањање" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Припремам „%s“ за потпуно уклањање" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s је инсталиран" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s је уклоњен потпуно" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Уклоњено %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Урађено" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Потврђивање идентитета није успело" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Набављам" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Мирујем" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Мрежа није доступна" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Обрађујем %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Преузето је %sB од %sB при %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Преузето је %sB од %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Детаљи" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Датотека" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Преузето је %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Преузето је" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Потребан је „%s“ ЦД/ДВД диск" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Убаците доле наведени ЦД/ДВД диск у уређај „%s“ да би са њега инсталирали " "софтверске пакете." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "Н_астави" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Инсталирај" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Поново инсталирај" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Уклони" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Избаци" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Надогради" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Разгради" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Прескочи надоградњу" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Молим погледајте списак промена испод." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Додатни софтвер мора да буде инсталиран" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Додатни софтвер мора да буде поново инсталиран" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Додатни софтвер мора да буде уклоњен" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Додатни софтвер мора да буде избачен" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Додатни софтвер мора да буде надограђен" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Додатни софтвер мора да буде разграђен" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Исправке ће бити прескочене" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Додатне измене су захтеване" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB укупно ће бити преузето." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB простора на диску биће ослобођено." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB простора на диску ће бити још искоришћено." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Да ли да заменим Ваше измене у „%s“ с најновијом верзијом датотеке " "подешавања?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Ако не знате зашто је датотека већ тамо, обично је сигурно заменити је." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Измене" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Задржи" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "За_мени" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Детаљи" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Чекам на „%s“ да заврши" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Преузимам %(files)s" msgstr[1] "Преузимам „%(files)s“" msgstr[2] "Преузимам „%(files)s“" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "локална ризница" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Преузимам из %s" msgstr[1] "Преузимам из %s" msgstr[2] "Преузимам из %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Структура за %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Опис за %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Потпис описа за %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Доступни пакети из %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Доступни извори из %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Доступни преводи од %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Преводи за %s (%s) од %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Преводи за %s од %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Преводи (%s) из %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Пакет „%s“ није доступан" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Пакет „%s“ није инсталиран" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Верзија %s „%s“ пакета није инсталирана" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Пакет „%s“ је већ инсталиран" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Верзија %s „%s“ пакета није доступна." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Адреса кључног сервера је неисправна: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Неисправан протокол сервера: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Неважећи ИБ кључа: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Нисам успео да преузмем и да инсталирам кључ „%s“ са „%s“:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Датотека кључа „%s“ не може бити инсталирана: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Кључ са отиском „%s“ не може бити уклоњен: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Пакет „%s“ не може бити уклоњен." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Верзија %s „%s“ пакета није инсталирана" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Бивша верзија %s „%s“ пакета је већ инсталирана" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Верзија %s „%s“ пакета је већ инсталирана" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Верзија %s „%s“ пакета није доступна" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Треба да наведете верзију на коју ће „%s“ бити разграђен" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Каснија верзија %s „%s“ пакета је већ инсталирана" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Пакет „%s“ није доступан у издању %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Пакет „%s“ не може бити уклоњен" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Пакет не обезбеђује исправно поље за контролу инсталиране величине. " "Погледајте Дебиан сигурност 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Кључ лиценце је празан" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Није дозвољено да кључ лиценце садржи извршни код." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Путања кључа лиценце %s није исправна." #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Кључ лиценце већ постоји: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Место кључа лиценце није безбедно јер садржи симболичне везе. Путања %s " "укаазује на %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Директоријум за инсталирање кључа не постоји још увек: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Нисам успео да запишем датотеку кључа у: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Следећи пакети имају незадовољене међузависности:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "али то је виртуелни пакет" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "али није инсталиран" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "али неће бити инсталиран" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "али инсталиран је „%s“" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "али биће инсталиран „%s“" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "Нисам успео да додам кључ на листу поверљивих продаваца софтвера" aptdaemon-1.1.1+bzr982/po/sv.po0000644000000000000000000013144212375372771014275 0ustar 00000000000000# Swedish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-03 15:40+0000\n" "Last-Translator: Arve Eriksson \n" "Language-Team: Swedish \n" "Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Lista nycklar för pålitliga leverantörer" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Du måste autentisera dig för att visa listan över pålitliga nycklar." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Ta bort hämtade paketfiler" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Du måste autentisera dig för att tömma hämtade paketfiler." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Ändra programkonfiguration" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Du måste autentisera dig för att ändra programinställningar." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Ändra programförråd" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" "Du måste autentisera dig för att ändra inställningar för programförråd." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Installera paketfil" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Du måste autentisera dig för att installera detta paket." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Uppdatera paketinformation" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Du måste autentisera dig för att uppdatera programkatalogen." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Installera eller ta bort paket" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Du måste autentisera dig för att installera eller ta bort program." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Lägg till ett nytt förråd och installera paket från det" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Du måste autentisera dig för att installera program från en ny källa." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "Lägg till ett nytt förråd för inköpta program och installera paket från det" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Du måste autentisera dig för att installera inköpta program." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Uppgradera paket" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Du måste autentisera dig för att installera uppdaterade program." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Avbryt åtgärden för en annan användare" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Du måste autentisera dig för att avbryta någon annans programändringar." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Ställ in en proxyserver för programhämtningar" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Du måste autentisera dig för att använda en proxyserver för att hämta " "program." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "FEL" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Hämtat %sB av %sB i %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Hämtat %sB av %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "FEL:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Du har inte behörighet att genomföra denna åtgärd." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Kölägger" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Löser beroenden" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Följande NYTT paket kommer att installeras (%(count)s):" msgstr[1] "Följande NYA paket kommer att installeras (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Följande paket kommer att uppgraderas (%(count)s):" msgstr[1] "Följande paket kommer att uppgraderas (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Följande paket kommer att TAS BORT (%(count)s):" msgstr[1] "Följande paket kommer att TAS BORT (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Följande paket kommer att NEDGRADERAS (%(count)s):" msgstr[1] "Följande paket kommer att NEDGRADERAS (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Följande paket kommer att installeras om (%(count)s):" msgstr[1] "Följande paket kommer att installeras om (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Följande paket har hållits tillbaka (%(count)s):" msgstr[1] "Följande paket har hållits tillbaka (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Behöver hämta %sB arkiv." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Efter denna åtgärd kommer ytterligare %sB diskutrymme att användas." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Efter denna åtgärd kommer %sB diskutrymme att frigöras." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Vill du fortsätta [J/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Ange paketnamnet inom citattecken för att göra åtgärder på fler än ett " "paket:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Uppdatera cachen" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Försök att lösa trasiga beroenden. Potentiellt sett en farlig åtgärd " "eftersom den kan försöka att ta bort många paket." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Försök att färdigställa en tidigare ofullständig installation" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Installera angivna paket" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Installera om angivna paket" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Ta bort angivna paket" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Ta bort angivna paket inklusive konfigurationsfiler" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Nedgradera de angivna paketen" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Föråldrad: Använd --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Uppgradera systemet på ett säkert sätt" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Uppgradera systemet, möjligen installera och ta bort paket" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Lägg till leverantören till de pålitliga" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Lägg till leverantörens nyckel-id (kräver också --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Använd angiven nyckelserver för att slå upp nycklar" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Lägg till nytt förråd från angiven deb-rad" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Ange en alternativ sources.list.d-fil som vilka förråden ska läggas till i." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Lista pålitliga leverantörsnycklar" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Ta bort pålitlig nyckel för angivet fingeravtryck" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Konfigurera om installerade paket. Det går även att valfritt ange minsta " "prioritet för frågor" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Minsta prioritet för debconf-frågor att visa" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Anslut inte till apt-terminalen" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Tillåt paket från icke-autentiserade källor" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Visa ytterligare information om paketen. För närvarande endast versionsnumret" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Väntar på autentisering" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Stäng inte av daemonen på grund av inaktivitet" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Läs inte in några insticksmoduler" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Visa intern processinformation" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Avsluta och ersätt en redan körande demon" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Lyssna på DBus-sessionsbussen (krävs endast för tester" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Genomför åtgärder i angivet chroot-miljö" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Lagra profilstatistik i angiven fil" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Gör inte några ändringar i systemet (endast för utvecklare)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Installerade fil" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Installerade paket" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Lade till nyckel från fil" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Uppdaterade cache" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Sökningen är färdig" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Tog bort pålitlig nyckel" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Tog bort paket" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Uppdaterade paket" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Uppgraderade systemet" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Verkställde ändringar" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Reparerade ofullständig installation" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Reparerade trasiga beroenden" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Lade till programkälla" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Aktiverade komponent för distributionen" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Tog bort hämtade paketfiler" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Konfigurera om installerade paket" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Lyckades" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Avbruten" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Misslyckades" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Installerar fil" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Installerar paket" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Lägger till nyckel från fil" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Uppdaterar cache" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Tar bort pålitlig nyckel" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Tar bort paket" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Uppdaterar paket" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Uppgraderar systemet" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Verkställer ändringar" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Reparerar ofullständig installation" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Reparerar installerad programvara" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Lägger till programkälla" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Aktiverar komponent för distributionen" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Tar bort hämtade paketfiler" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Konfigurerar om installerade paket" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Söker" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Installation av paketfilen misslyckades" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Installation av programvaran misslyckades" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Uppdatering av programlistan misslyckades" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Borttagning av leverantören från listan över pålitliga leverantörer " "misslyckades" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Borttagning av programvaran misslyckades" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Uppdatering av programvaran misslyckades" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Uppgradering av systemet misslyckades" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Verkställandet av programändringar misslyckades" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Reparation av ofullständig installation misslyckades" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Reparation av trasiga beroenden misslyckades" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Tillägg av programkällan misslyckades" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Aktivering av komponent för distributionen misslyckades" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Borttagning av hämtade paketfiler misslyckades" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Sökningen misslyckades" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Lägger till licensnyckel" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kontrollera din internetanslutning." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kontrollera om du använder tredjepartsförråd. Inaktivera dem i så fall " "eftersom de är en vanlig problemkälla.\n" "Kör även följande kommando i en terminal: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Den valda filen verkar inte vara en GPG-nyckel eller så är filen trasig." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Den valda nyckeln kunde inte tas bort. Kontrollera att du angav ett giltigt " "fingeravtryck." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kontrollera om du för närvarande kör ett annat verktyg för programhantering, " "tex. Synaptic eller aptitude. Endast ett verktyg åt gången tillåts att göra " "ändringar." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Detta är ett allvarligt problem. Försök igen senare. Om problemet sker igen " "så rapportera detta som ett fel till utvecklarna." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Kontrollera stavningen av paketnamnet och att rätt förråd är aktiverat." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Det finns inget behov för en uppdatering." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Det finns inget behov för en installation" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Det finns inget behov för en borttagning." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Du begärde att ta bort ett paket som är en systemkritisk del av ditt system." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Anslutningen till demonen tappades. Mest sannolikt är att bakgrundsdemonen " "kraschade." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Installationen eller borttagningen av ett programpaket misslyckades." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Den begärda funktionen stöds inte." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Det verkar finnas ett programmeringsfel i aptdaemon, programvaran som låter " "dig installera/ta bort program och genomföra andra åtgärder relaterade till " "pakethantering." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Detta fel kan orsakas av att ytterligare nödvändiga programpaket saknas " "eller inte är installerbara. Det kan även finnas en konflikt mellan " "programpaket som inte tillåts att installeras på samma gång." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Installationen kan ha misslyckats på grund av ett fel i programpaketet eller " "att den avbröts på ett onormalt sätt. Du måste reparera detta innan du kan " "installera eller ta bort ytterligare program." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "Kopiera filen till din lokala dator och kontrollera filrättigheterna." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Installation av ett paket som strider mot kvalitetsstandarderna tillåts " "inte. Detta kan orsaka allvarliga problem på din dator. Kontakta personen " "eller organisationen som tillhandahöll denna paketfil och inkludera " "nedanstående information." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Den hämtade licensnyckeln som krävs för att köra denna programvara är inte " "giltig eller kunde inte installeras korrekt.\n" "Se detaljerad information för ytterligare felsökning." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Alla tillgängliga uppgraderingar har redan installerats." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Licensnyckeln som låter dig använda denna programvara kunde inte hämtas. " "Kontrollera din nätverksanslutning." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Du har inte behörighet att genomföra denna åtgärd." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Misslyckades med att hämta paketfiler" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Misslyckades med att hämta förrådsinformation" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Paketberoenden kan inte lösas" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Paketsystemet är trasigt" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Nyckeln installerades inte" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Nyckeln togs inte bort" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Misslyckades med att låsa pakethanteraren" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Misslyckades med att läsa in paketlistan" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paketet finns inte" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paketet är redan uppdaterat" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paketet är redan installerat" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paketet är inte installerat" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Misslyckades med att ta bort ett systemkritiskt paket" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Åtgärden kan inte övervakas eller kontrolleras" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Paketåtgärden misslyckades" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Kräver installation av ej pålitliga paket" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Tidigare installation har inte färdigställts" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paketet är av dålig kvalitet" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Paketfilen kunde inte öppnas" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Funktionen stöds inte" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Misslyckades med att hämta licensnyckeln" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Misslyckades med att installera licensnyckeln" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Systemet är redan uppdaterat" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Ett ohanterat fel inträffade" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Väntar på att tjänsten ska starta" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Väntar" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Väntar på nödvändigt media" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Väntar på att andra programhanterare ska avslutas" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Väntar på prompt för konfigurationsfil" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Kör aktivitet" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Hämtar" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Kontrollerar programkällor" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Rensar upp" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Färdig" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Avbryter" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Läser in programlista" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Installerar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Konfigurerar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Tar bort %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Tar fullständigt bort %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Uppmärksammar att %s försvinner" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Kör efterinstallationsutlösare %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Uppgraderar %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Packar upp %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Förbereder installation av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Förbereder konfiguration av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Förbereder borttagning av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Förbereder fullständig borttagning av %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Installerade %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Tog bort hela %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Tog bort %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Färdig" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Autentisering misslyckades" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Hämtar" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Overksam" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Nätverket är inte tillgängligt" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Behandlar %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Hämtat %sB av %sB i %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Hämtat %sB av %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Detaljer" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Fil" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Hämtat %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Hämtat" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Cd/dvd-skivan \"%s\" krävs" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Mata in ovanstående cd/dvd-skiva i enheten \"%s\" för att installera " "programpaket från den." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "F_ortsätt" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Installera" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Installera om" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Ta bort" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Rensa" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Uppgradera" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Nedgradera" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Hoppa över uppgradering" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Ta en titt på ändringslistan nedan." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Ytterligare program behöver installeras" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Ytterligare program behöver installeras om" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Ytterligare program behöver tas bort" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Ytterligare program behöver rensas bort" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Ytterligare program behöver uppgraderas" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Ytterligare program behöver nedgraderas" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Uppdateringar kommer att hoppas över" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Ytterligare ändringar krävs" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB kommer totalt att hämtas." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB diskutrymme kommer att frigöras." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB ytterligare diskutrymme kommer att användas." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Ersätt dina ändringar i \"%s\" med en senare version av konfigurationsfilen?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Om du inte vet varför filen redan finns där så är det oftast det bästa att " "ersätta den." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Ändringar" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Behåll" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Ersätt" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detaljer" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Väntar på att %s ska avslutas" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Hämtar %(files)s" msgstr[1] "Hämtar %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "lokalt förråd" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Hämtar från %s" msgstr[1] "Hämtar från %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Struktur för %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Beskrivning för %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Beskrivningssignatur för %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Tillgängliga paket från %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Tillgängliga källor från %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Tillgängliga översättningar från %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Översättningar till %s (%s) från %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Översättningar till %s från %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Översättningar (%s) från %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Paketet %s finns inte tillgängligt" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Paketet %s är inte installerat" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Version %s av %s är inte installerat" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Paketet %s är redan installerat" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Version %s av %s finns inte tillgänglig." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Misslyckades med att hämta och installera nyckeln %s från %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Nyckelfilen %s gick inte att installera: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Nyckeln med fingeravtrycket %s kunde inte tas bort: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Paketet %s kan inte tas bort." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Version %s av %s är inte installerad" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Den tidigare versionen %s av %s är redan installerad" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Version %s av %s är redan installerad" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Version %s av %s finns inte tillgänglig" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Du måste ange en version att nedgradera %s till" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Den senare versionen %s av %s är redan installerad" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Paketet %s finns inte tillgängligt i utgåvan %s." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Paketet %s kan inte tas bort" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Paketet tillhandahåller inte ett giltigt Installed-Size-kontrollfält. Se " "Debian Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Licensnyckeln är tom" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Licensnyckeln får inte innehålla körbar kod." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Sökvägen till licensnyckeln %s är ogiltig" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Licensnyckeln finns redan: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Licensnyckelns plats är osäker eftersom den innehåller symboliska länkar. " "Sökvägen %s mappas till %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Katalogen där nyckeln ska installeras finns ännu inte: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Kunde inte skriva nyckelfilen till: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Följande paket har otillfredsställda beroenden:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "men det är ett virtuellt paket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "men är inte installerat" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "men kommer inte att installeras" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "men %s är installerat" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "men %s kommer att installeras" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Misslyckades med att lägga till nyckeln till listan över pålitliga " #~ "programleverantörer" aptdaemon-1.1.1+bzr982/po/ta.po0000644000000000000000000012262112375372771014250 0ustar 00000000000000# Tamil translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-12-15 16:33+0000\n" "Last-Translator: Barneedhar \n" "Language-Team: Tamil \n" "Language: ta\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "நம்பகமான விற்பனையாளர்களின் சாவிகளைப் பட்டியலிடவும்" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "நம்பகமான சாவிகள் பட்டியலைக் காண வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "பதிவிறக்கப்பட்ட தொகுப்பு கோப்புகளை நீக்கவும்" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "பதிவிறக்கப்பட்ட தொகுப்புக் கோப்புகளை சுத்தம் செய்யவேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "மென்பொருள் கட்டமைப்பை மாற்றவும்" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "மென்பொருள் அமைப்புகளை மாற்றவேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "மென்பொருள் களஞ்சியத்தை மாற்றவும்" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "மென்பொருள் களஞ்சிய அமைப்புகளை மாற்றவேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "பொதிக் கோப்பை நிறுவு" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "இந்த தொகுப்பை நிறுவ வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "பொதித் தகவலை இற்றைப்படுத்து" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "மென்பொருள் வரிசைப்பட்டியலைப் புதுப்பிக்க வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "தொகுப்புகளை நிறுவுக அல்லது நீக்குக" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "மென்பொருள்களை நிறுவவோ அல்லது நீக்கவோ வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "புதிய களஞ்சியத்தைச் சேர்த்து, அதிலிருந்து தொகுப்புகளை நிறுவவும்" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "புதிய மூலத்தில் இருந்து மென்பொருள்களை நிறுவ வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" "விற்பனைக்கிருக்கும் மென்பொருள்களைக் கொண்டிருக்கும் புதிய களஞ்சியத்தைச் சேர்த்து, அதிலிருந்து " "தொகுப்புகளை நிறுவவும்" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "வாங்கப்பட்ட மென்பொருள்களை நிறுவ வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "பொதிகளை திறமுயர்த்து" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "புதுப்பிக்கப்பட்ட மென்பொருள்களை நிறுவ வேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "மற்ற பயனாளரின் பணியை ரத்து செய்யவும்" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "மற்றவரின் மென்பொருள் மாற்றங்களை ரத்து செய்யவேண்டுமானால், நீங்கள் அங்கீகரிக்க வேண்டும்." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "மென்பொருள் பதிவிறக்கங்களுக்கு பதிலியை அமைக்கவும்" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "மென்பொருளைப் பதிவிறக்குவதற்கு பதிலி சேவையகத்தைப் பயன்படுத்த வேண்டுமானால், நீங்கள் " "அங்கீகரிக்க வேண்டும்." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "பிழை" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB %sB லிருந்து %sB/s வேகத்தில் பதிவிறக்கப்பட்டுள்ளது" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "%sB %sB லிருந்து பதிவிறக்கப்பட்டுள்ளது" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "பிழை:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "கொடுக்கப்பட்டுள்ளத் தொகுப்புகளை நிறுவவும்" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "கொடுக்கப்பட்டுள்ளத் தொகுப்புகளை மீண்டும் நிறுவவும்" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "கொடுக்கப்பட்டுள்ளத் தொகுப்புகளை நீக்கவும்" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "பாதுக்காப்பான முறையில் கணினியை மேம்படுத்துக" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "நம்பகமான விற்பனையாளர் சாவிகளைப் பட்டியலிடவும்" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "அங்கீகரிக்கப்படாத மூலங்களிலிருந்து தொகுப்புகளை அனுமதிக்கவும்" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "அங்கீகாரத்திற்காக காத்திருக்கிறது" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "உட்புற செயலாக்கத் தகவலைக் காண்பிக்கவும்" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "நிறுவப்பட்ட கோப்பு" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "நிறுவப்பட்ட பொதிகள்" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "கோப்பிலிருந்து சாவி சேர்க்கப்பட்டுள்ளது" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "தேடல் முடிந்தது" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "நீக்கப்பட்ட பொதிகள்" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "இற்றைப்படுத்தப்பட்ட பொதிகள்" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "திறமுயர்த்தப்பட்ட அமைப்பு" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "மென்பொருள் மூலம் சேர்க்கப்பட்டுள்ளது" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "பதிவிறக்கப்பட்ட தொகுப்புக் கோப்புகள் நீக்கப்பட்டுள்ளது" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "வெற்றிகரமாக முடிந்தது" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "இரத்து செய்யப்பட்டது" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "தோல்வியடைந்தது" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "கோப்பை நிறுவுகிறது" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "பொதிகளை நிறுவுகிறது" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "பொதிகளை நீக்குகிறது" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "பொதிகளை இற்றைப்படுத்துகிறது" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "அமைப்பை திறமுயர்த்துகிறது" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "மாற்றங்களை செயல்படுத்துகிறது" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "மென்பொருள் மூலம் சேர்க்கப்படுகிறது" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "பதிவிறக்கப்பட்ட தொகுப்புக் கோப்புகள் நீக்கப்படுகிறது" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "தேடப்படுகிறது" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "மென்பொருளை நீக்குவது தோல்வியடைந்தது" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "மென்பொருளைப் புதுப்பிப்பது தோல்வியடைந்தது" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "கணினியை மேம்படுத்துவது தோல்வியடைந்தது" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "மென்பொருள் மூலத்தைச் சேர்ப்பது தோல்வியடைந்தது" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "பதிவிறக்கப்பட்டத் தொகுப்புக் கோப்புகளை நீக்குவது தோல்வியடைந்தது" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "தேடல் தோல்வியடைந்தது" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "உமது இணைய இணைப்பை சோதிக்கவும்." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "காத்துக் கொண்டிருக்கிறது" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "பதிவிறக்கப்படுகிறது" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "முடிந்தது" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "ரத்து செய்யப்படுகிறது" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "முடிவுற்றது" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "அங்கீகாரம் தோல்வியடைந்தது" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB %sB லிருந்து %sB/s வேகத்தில் பதிவிறக்கப்பட்டுள்ளது" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "%sB %sB லிருந்து பதிவிறக்கப்பட்டுள்ளது" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "விவரங்கள்" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "கோப்பு" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "பதிவிறக்கப்பட்டது %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "பதிவிறக்கப்பட்டது" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "தொடரவும் (_o)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "நிறுவுக" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "மீண்டும் நிறுவுக" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "நீக்குக" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "மேம்படுத்துக" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "மாற்றங்கள் (_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "வைத்துக்கொள்க (_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "மாற்று (_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "விவரங்கள் (_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/te.po0000644000000000000000000013727212375372771014264 0ustar 00000000000000# Telugu translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-03-28 03:43+0000\n" "Last-Translator: Praveen Illa \n" "Language-Team: Telugu \n" "Language: te\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "నమ్మదగిన అమ్మకందారు యొక్క కీలను జాబితాగాచూపు" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "విశ్వసించిన 'కీ'ల జాబితాను చూచుటకు, మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "డౌన్‌లోడ్ చేసిన ప్యాకేజీ ఫైళ్ళను తొలగించు" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "డౌన్‌లోడ్‌చేయబడిన ప్యాకేజీ ఫైళ్లను శుభ్రంచేయుటకు మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "సాఫ్ట్‍వేర్ స్వరూపణాన్ని మార్చు" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "సాఫ్ట్‍వేర్ అమరికలను మార్చుటకు మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "సాఫ్ట్‍వేర్ భాండాగారాన్ని మార్చు" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "సాఫ్ట్‍వేర్ భాండాగార అమరికలను మార్చుటకు మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "ప్యాకేజీ ఫైల్‌ని స్థాపించు" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "ఈ ప్యాకేజీని స్థాపించుటకు, మీరు ధృవీకరించవలసి ఉంటుంది." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "ప్యాకేజీ సమాచారాన్ని నవీకరించు" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "సాఫ్ట్‍వేర్ జాబితాను నవీకరించుటకు మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "ప్యాకేజీలను స్థాపించు లేదా తొలగించు" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "సాఫ్ట్‍వేర్ స్థాపించుటకు లేదా తొలగించుటకు, మీరు ధృవీకరించవలసిఉంటుంది." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "ఒక కొత్త భాండాగారాన్ని జతచేసి దానినుండి ప్యాకేజీలను స్థాపించు" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "ఒక కొత్త మూలాధారం నుండి సాఫ్ట్‍వేర్ స్థాపించుటకు, మీరు ధృవీకరించవలసివుంటుంది." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "కొనుగోలుచేసిన సాఫ్ట్‍వేర్ యొక్క కొత్త భాండాగారాన్ని జతచేసి దానినుండి ప్యాకేజీలను స్థాపించు" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "కొన్న సాఫ్ట్‍వేర్ స్థాపించుటకు, మీరు ధృవీకరించవలసి ఉంటుంది." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "ప్యాకేజీలను ఉన్నతీకరించు" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "నవీకరించబడిన సాఫ్ట్‍వేర్ స్థాపించుటకు, మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "ఇంకొక వాడుకరి యొక్క కార్యాన్ని రద్దుచేయి" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "వేరేఇతర సాఫ్ట్‍వేర్ మార్పులను రద్దుచయుటకు మీరు ధృవీకరించవలసిఉంటుంది." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "సాఫ్ట్‍వేర్ డౌన్‌లోడ్‌లకు ఒక ప్రోక్సీని అమర్చు" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "ప్రోక్సీ సేవిక వాడి సాఫ్ట్‍వేర్ డౌన్‌లోడ్‌చేయుటకు, మీరు ధృవీకరణ చేయవలసిఉంటుంది." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "దోషం" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "దోషం:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "ఈ చర్యను చేయుటకు మీకు అనుమతి లేదు" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "వరుసలోచేరుస్తోంది" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "ఆధారితత్వాలను పరిష్కరిస్తోంది" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "కిందపేర్కొన్న కొత్త ప్యాకేజీ స్థాపించబడుతుంది (%(count)s):" msgstr[1] "కిందపేర్కొన్న కొత్త ప్యాకేజీలు స్థాపించబడతాయి (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "కిందపేర్కొన్న ప్యాకేజీ ఉన్నతీకరించబడతుంది (%(count)s):" msgstr[1] "కిందపేర్కొన్న ప్యాకేజీలు ఉన్నతీకరించబడతాయి (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "కిందపేర్కొన్న ప్యాకేజీ తొలగించబడుతుంది (%(count)s):" msgstr[1] "కిందపేర్కొన్న ప్యాకేజీలు తొలగించబడతాయి (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "కిందపేర్కొన్న ప్యాకేజీ డౌన్‌గ్రేడ్‌చేయబడుతుంది (%(count)s):" msgstr[1] "కిందపేర్కొన్న ప్యాకేజీలు డౌన్‌గ్రేడ్‌చేయబడుతాయి (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "కిందపేర్కొన్న ప్యాకేజీ పునఃస్థాపించబడుతుంది (%(count)s):" msgstr[1] "కిందపేర్కొన్న ప్యాకేజీలు పునఃస్థాపించబడతాయి (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB ఆర్చీవ్‌లను పొందవలసిఉంది." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "ఈ ఆపరేషన్ తరువాత, %sB డిస్కు స్థలం అదనంగా వినియోగించబడుతుంది." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "ఈ ఆపరేషన్ తరువాత, %sB డిస్కు స్థలం అదనంగా ఖాళీ అవుతుంది." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "మీరు కొనసాగాలనుకుంటున్నారా [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "క్యాచీని తాజాపరుచు" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "ఇంతకుముందు అసంపూర్ణ స్థాపనను పూర్తిచేయుటకు ప్రయత్నించండి" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "ఇవ్వబడిన ప్యాకేజీలను స్థాపించు" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "ఇవ్వబడిన ప్యాకేజీలను మళ్ళీ స్థాపించు" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "ఇవ్వబడిన ప్యాకేజీలను తొలగించు" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "సురక్షిత మార్గంలో వ్యవస్థను ఉన్నతీకరించు" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "సాధ్యమైనంతవరకూ ప్యాకేజీలను స్థాపించడం మరియు తొలగించడం ద్వారా వ్యవస్థను ఉన్నతీకరించు" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "ఇవ్వబడిన deb-line నుంచి కొత్త భాండాగారాన్ని జతచేయండి" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "విశ్వసించదగిన అమ్మకందారు 'కీ'లు జాబితాగాచూపు" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "ధృవీకరించబడని మూలాధారాల నుండి ప్యాకేజీలను అనుమతించు" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "ప్యాకేజీల గురించిన అదనపు సమాచారాన్ని చూపించు. ప్రస్తుతం వెర్షన్ సంఖ్య మాత్రమే" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "ధృవీకరణ కోసం నిరీక్షిస్తోంది" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "అంతర్గతంగా జరుగుతున్న ప్రక్రియ సమాచారాన్ని చూపించు" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "ఇవ్వబడిన chroot లో ఆపరేషన్‌లను చేయి" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "స్థాపించబడిన ఫైల్" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "స్థాపించబడిన ప్యాకేజిలు" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "ఫైలు నుంచి కీ జతచేయబడింది" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "క్యాచీ నవీకరించబడింది" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "నమ్మదగిన కీ తొలగించబడింది" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "తొలగించబడిన ప్యాకేజీలు" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "నవీకరించబడిన ప్యాకేజీలు" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "ఉన్నతీకరించబడిన వ్యవస్థ" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "మార్పులు అనువర్తించబడినవి" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "అసంపూర్ణ స్థాపన బాగుచేయబడింది" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "విరిగిన ఆధారితత్వాలు బాగుచేయబడినవి" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "సాఫ్ట్‍వేర్ మూలాధారం జతచేయడింది" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "డౌన్‌లోడ్‌చేసిన ప్యాకేజీ ఫైళ్ళు తొలగించబడ్డాయి" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "స్థాపించబడిన ప్యాకేజీలు పునఃస్వరూపించబడ్డాయి" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "విజయవంతమైంది" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "రద్దుచేయబడింది" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "విఫలమైంది" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ఫైలును స్థాపిస్తోంది" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "ప్యాకేజీలు స్థాపించబడుతున్నాయి" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ఫైల్ నుండి కీ జతచేస్తోంది" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "క్యాచీని నవీకరిస్తోంది" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "నమ్మదగిన కీ తొలగించబడుతోంది" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "ప్యాకేజీలను తొలగిస్తోంది" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "ప్యాకేజీలను నవీకరిస్తోంది" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "వ్యవస్థను ఉన్నతీకరిస్తోంది" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "మార్పులను అనువర్తిస్తోంది" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "అసంపూర్ణ స్థాపనను బాగుచేస్తోంది" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "సాఫ్ట్‍వేర్ మూలాధారం జతచేయబడుతోంది" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "డౌన్‌లోడుచేసిన ప్యాకేజీ ఫైళ్ళను తొలగిస్తోంది" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "స్థాపించబడిన ప్యాకేజీలు పునఃస్వరూపించబడుతోన్నాయి" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "ప్యాకేజీ ఫైల్ యొక్క స్థాపన విఫలమైంది" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "సాఫ్ట్‍వేర్ స్థాపన విఫలమైంది" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "సాఫ్ట్‍వేర్ జాబితాను తాజాపరుచుటలో విఫలమైంది" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "సాఫ్ట్‍వేర్‌ను తొలగించుటలో విఫలమైంది" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "సాఫ్ట్‍వేర్‌ను నవీకరించుటలో విఫలమైంది" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "వ్యవస్థను ఉన్నతీకరించుటలో విఫలమైనది" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "సాఫ్ట్‍వేర్ మార్పులు అనువర్తించుటలో విఫలమైంది" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "అసంపూర్ణ స్థాపనను బాగుచేయుటలో విఫలమయింది" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "విరిగిన ఆధారితత్వాలను బాగుచేయుటలే విఫలమైంది" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "సాఫ్ట్‍వేర్ మూలాధారం జతచేయుటలో విఫలమైనది" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "డౌన్‌లోడుచేసిన ప్యాకేజీ ఫైళ్ళను తొలగించుటలో విఫలమైంది" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "మీ అంతర్జాల అనుసంధానాన్ని సరిచూడండి." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "తొలగించడానికి అక్కడ ఏదీ లేదు." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "ఈ చర్యను చేయుటకు మీకు అనుమతి లేదు" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "ప్యాకేజీ ఫైళ్ళను డౌన్‌లోడుచేయుటలో విఫలమైంది" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "భాండాగార సమాచారాన్ని డౌన్‌లోడ్‌చేయుటలో విఫలమైంది" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "ప్యాకేజీ వ్యవస్థ విరిగినది" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "కీ స్థాపించబడలేదు" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "కీ తొలగించబడలేదు" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "ప్యాకేజీ నిర్వాహకిని లాక్‌చేయుటలో విఫలంచెందినది" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "ప్యాకేజీ జాబితా లోడ్ చేయుటలో విఫలమైంది" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "ప్యాకేజీ ఉనికిలోలేదు" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "ప్యాకేజీ ఇదివరకే స్థాపించడింది" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "ప్యాకేజీ స్థాపించబడలేదు" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "ముఖ్యమైన వ్యవస్థ ప్యాకేజీని తొలగించుటలో విఫలమయ్యింది" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "ప్యాకేజీ ఆపరేషన్ విఫలమైంది" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "ప్యాకేజీ చెత్త గుణాలను కలిగిఉంది" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "ప్యాకేజీ ఫైల్ తెరువలేము" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "ఒక వ్యవహరించలేని దోషం సంభవించింది" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "నిరీక్షిస్తోంది" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "అవసరమైన మాధ్యమం కోసం నిరీక్షిస్తోంది" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "నిష్క్రమించడానికి ఇతర సాఫ్ట్‍వేర్ నిర్వాహకి కోసం నిరీక్షిస్తోంది" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "నడుస్తున్న కార్యం" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "డౌన్‌లోడ్‌చేస్తోంది" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "శుభ్రపరుస్తోంది" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "పూర్తయింది" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "రద్దుచేస్తోంది" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "సాఫ్ట్‍వేర్ జాబితాను నింపుతోంది" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s స్థాపించబడుతోంది" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s స్వరూపించబడుతోంది" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s తొలగించబడుతోంది" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s ఉన్నతీకరించబడుతోంది" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "అయినది" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "ధృవీకరణ విఫలమైంది" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "తెచ్చుచున్నది" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "వాడుక లేని" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "నెట్‌వర్కు అందుబాటులోలేదు" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "వివరాలు" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "ఫైల్" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB డౌన్‌లోడ్అయినది" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "డౌన్‌లోడ్అయినది" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' అవసరం" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "కొనసాగించు (_o)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "స్థాపించు" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "మరల స్థాపించు" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "తొలగించు" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "ఉన్నతీకరించు" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "డౌన్‌గ్రేడ్" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "ఉన్నతీకరణ దాటవేయి" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "అదనపు సాఫ్ట్‍వేర్‌ను స్థాపించాలి" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "అదనపు సాఫ్ట్‍వేర్‌ను పునఃస్థాపించాలి" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "అదనపు సాఫ్ట్‍వేర్‌ను తొలగించాలి" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "అదనపు సాఫ్ట్‍వేర్‌ను ఉన్నతీకరించాలి" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "నవీకరణలు దాటవేయబడతాయి" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "అదనపు మార్పులు అవసరం" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "మార్పులు (_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "ఉంచు(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "పునఃస్థాపించు (_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "వివరాలు (_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s డౌన్‌లోడ్‌చేస్తోంది" msgstr[1] "%(files)s డౌన్‌లోడ్‌చేస్తోంది" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "%s ప్యాకేజీ అందుబాటులోలేదు" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "%s ప్యాకేజీ స్థాపించబడలేదు" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s ప్యాకేజీ ఇదివరకే స్థాపించబడింది" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "%s ప్యాకేజీని తొలగించుట సాధ్యపడదు" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "%s ప్యాకేజీని తొలగించుట సాధ్యపడదు" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/th.po0000644000000000000000000015655612375372771014275 0ustar 00000000000000# Thai translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-09-11 01:49+0000\n" "Last-Translator: Manop Pornpeanvichanon(มานพ พรเพียรวิชานนท์) \n" "Language-Team: Thai \n" "Language: th\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "รายการคีย์ของผู้ตัวแทนที่เชื่อถือได้" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อดูรายการกุญแจที่เชื่อถือได้" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "เอาแฟ้มแพกเกจต่าง ๆ ที่ดาว์โหลดมาแล้วออก" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อล้างแฟ้มแพกเกจต่าง ๆ" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "การการตั้งค่าซอฟต์แวร์" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อเปลี่ยนการตั้งค่าโปรแกรม" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "เปลี่ยนคลังแพกเกจของโปรแกรม" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อทำการเปลี่ยนการตั้งค่าคลังแพกเกจของโปรแกรม" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "ติดตั้งแฟ้มของแพกเกจ" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อติดตั้งแพกเกจนี้" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "ปรับข้อมูลแพกเกจ" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อปรับปรุงหมวดหมู่โปรแกรม" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "ติดตั้งและถอดถอนแพกเกจ" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อติดตังหรือถอดถอนโปรแกรม" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "เพิ่มคลังแพกเกจอันใหม่และทำการติดตั้งแพกเกจต่าง ๆ จากคลังนี้" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อติดตั้งแพกเกจจากแหล่งใหม่" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "เพิ่มคลังเก็บโปรแกรมที่ซื้อมาแล้วและใช้ติดตั้งโปรแกรม" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อติดตั้งโปรแกรมที่ซื้อมา" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "ปรับรุ่นแพกเกจ" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อติดตั้งการปรับปรุงโปรแกรม" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "ยกเลิกงานของผู้ใช้อื่น" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "คุณต้องยืนยันตัวเพื่อยกเลิกการแก้ไขโปรแกรมของคนอื่น" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "ตั้งพร็อกซีสำหรับดึงโปรแกรม" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "คุณต้องยืนยันตัวในการใช้พร็อกซีทำการดาวน์โหลดโปรแกรม" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ผิดพลาด" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "ดาวน์โหลด %sB แล้วจาก %sB ที่ความเร็ว %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "ดาวน์โหลด %sB แล้วจาก %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ผิดพลาด:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "ไม่คุณไม่ได้รับอนุญาติให้กระทำการนี้" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "กำลังเข้าคิว" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "กำลังแก้ปัญหาการขึ้นต่อกัน" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "แพกเกจใหม่ตามนี้จะถูกติดตั้ง (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "แพกเกจตามนี้จะถูกปรับรุ่นขึ้น (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "แพกเกจตามนี้จะถูกเอาออก (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "แพกเกจ (%(count)s) อันจะถูกปรับรุ่นลง:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "แพกเกจเหล่านี้จะถูกติดตั้งใหม่ (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "แพกเกจพวกนี้ถูกเก็บแล้ว (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "ต้องใช้อีก %sB จากเป้าหมาย" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "พื้นที่ว่างบนแผ่นจะถูกใช้ %sB หลังจากการทำงานนี้" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "จะมีพื้นที่ว่าง %sB หลังจากการทำงานนี้" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "ต้องการทำต่อ [Y/n]" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "ให้ใส่เครื่องหมายคำพูดครอบชื่อแพกเกจเพื่อทำงานพร้อมกันหลาย ๆ แพกเกจ:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "เรียกข้อมูลชั่วคราวใหม่" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "ลองซ่อมการขึ้นกันที่มีปัญหาดู การกระทำนี้ควรระวังเพราะจะมีการลบแพกเกจจำนวนมาก" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "ลองทำงานติดตั้งที่ยังค้างอยู่ให้เสร็จ" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "ติดตั้งแพกเกจที่จัดให้" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "ติดตั้งแพกเกจที่จัดให้ใหม่" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "เอาแพกเกจที่ระบุออก" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "เอาแพกเกจพร้อมทั้งแฟ้มตั้งค่าที่ระบุออก" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "ปรับรุ่นแพกเกจเหล่านี้ลง" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "ล้าสมัยแล้ว: โปรดใช้ --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "ปรับรุ่นระบบด้วยวิธีที่ปลอดภัย" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "ปรับรุ่นระบบด้วยด้วยการติดตั้งและถอดถอนแพกเกจเพิ่ม" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "เพิ่มผู้จำหน่ายที่เชื่อถือได้" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "เพิ่มผู้จำหน่าย keyid (อาจจะต้องการ --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "มองหากุญแจจากแม่ข่ายกุญแจที่จัดให้" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "เพิ่มคลังแพกเกจใหม่จาก deb-line" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "ระบบแฟ้น sources.list.d อันอื่นเพื่อดูคลังโปรแกรมที่อาจถูกเพิ่ม" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "รายการผู้แจกกุญแจที่เชื่อถือได้" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "เอากุญแจที่เชื่อถือได้ออกตามลายนิวมือที่จัดใหเ้" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "ตั้งค่าแพกเกจที่ถูกติดตั้งแล้วใหม่ ทางเลือกนี้จะมีคำถามที่เกี่ยวกับลำดับความสำคัญน้อยที่สุด" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "ลำดับ defconf คำถามที่ถูกแสดงน้่อยที่สุด" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "ไม่ต้องต่อเข้ากับเทอร์มินัลของ apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "อณุญาติแพกเกจที่ไม่ระบุที่มา" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "แสดงข่าวสารเพิ่มเติ่มเกี่ยวกับแพกเกจตัวนี้ เฉพาะ้เลขรุ่นนี้เท่านั้น" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "กำลังรอการยืนยัน" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "ห้ามปิดดีมอนเพียงเพราะว่ามันไม่ได้ทำงาน" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "แสดงข้อมูลการประมวลผลภายใน" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "ออกและแทนที่ดีมอนที่กำลังทำงานอยู่" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "ฟังที่วาระของ DBUS(เฉพาะทดสอบเท่านั้น)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "ให้กระทำใน chroot ที่จัดให้" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "เก็บสถิติโพรไฟล์ลงในแฟ้มที่ระบุไว้" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "ห้ามทำการเปลี่ยนแปลงระบบ (ใช้เฉพาะนักพัฒนาเท่านั้น)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "แฟ้มที่ถูกติดตั้งแล้ว" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "แพกเกจที่ถูกติดตั้งแล้ว" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "เพิ่มคีย์จากแฟ้มแล้ว" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "ปรับปรุงแคช" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "กุญแจความเชื่อถือถอดถอนแล้ว" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "เแพกเกจที่ถอดถอนแล้ว" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "แพกเกจที่ปรับปรุงแล้ว" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "ระบบที่ปรับรุ่นแล้ว" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "ปรับใช้การเปลี่ยนแปลง" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "ซ่อมการติดตั้งที่ยังไม่เรียบร้อยเสร็จแล้ว" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "ซ่อมแซมการขึ้นต่อกันที่เสียหาย" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "เพิ่มแหล่งโปรแกรมแล้ว" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "ให้องค์ประกอบทำงานแบบกระจ่ายได้" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "เอาแฟ้มแพกเกจที่ดูดมาออก" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "ปรับแต่งแพกเกจที่ถูกติดตั้งแล้วใหม่" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "สำเร็จ" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "ยกเลิกแล้ว" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "ล้มเหลว" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "กำลังติดตั้งแฟ้ม" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "กำลังติดตั้งแพกเกจ" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "กำลังเพิ่มคีย์จากแฟ้ม" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "กำลังปรับปรุงแคช" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "กำลังถอดถอนคีย์ที่เชื่อถือ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "กำลังถอดถอนแพกเกจ" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "กำลังปรับปรุงแพกเกจ" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "กำลังปรับรุ่นระบบ" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "กำลังปรับใช้การเปลี่ยนแปลง" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "ซ่อมแซมการติดตั้งที่ไม่เสร็จ" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "กำลังเพิ่มแหล่งโปรแกรม" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "เปิดการทำงานองค์ประกอบแบบกระจ่าย" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "กำลังเอาแฟ้มแพกเกจที่ดูดมาออก" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "กำลังปรับแต่งแพกเกจที่ถูกติดตั้งแล้วใหม่" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "การติดตั้งแฟ้มจากแพกเกจล้มเหลว" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "การติดตั้งซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "การปรับปรุงรายการซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "การเอาผู้จำหน่ายออกจากรายการที่เชื่อถือได้ล้มเหลว" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "การถอดถอนซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "การปรับปรุงซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "การปรับรุ่นระบบล้มเหลว" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "การปรับใช้การเปลี่ยนแปลงซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "การซ่อมแซมการติดตั้งที่ยังไม่เสร็จล้มเหลว" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "การซ่อมแซมความขึ้นต่อกันที่เสียหาย ล้มเหลว" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "การเพิ้มแหล่งโปรแกรมล้มเหลว" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "การเปิดใช้งานองค์ประกอบทำงานแบบกระจายล้มเหลวแล้ว" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "การเอาแฟ้มแพกเกจที่ดูดมาออกล้มเหลว" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "โปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "ตรวจดูว่าใช้คลังแพกเกจของเจ้าอื่นหรือเปล่า ถ้าปิดการทำงานคลังนั้น ๆ เนือกจากปัญหาจากแหล่งที่มา\n" "ให้ลองเรียกคำส่งในเทอร์มินัล: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "แฟ้มที่เลือกไว้อาจไม่ใช่แฟ้มกุญแจ GPG หรือมันอาจเสียหาย" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "กุญแจที่เลือกไว้ไม่สามารถถอดถอนได้ ให้ตรวจดูว่าลายนิวมือที่คุณให้ไว้ถูกต้องหรือไม่" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "ตรวจดูว่าคุณกำลังทำงานกับโปรแกรมจัดการตัวอื่น ๆ อยู่หรือเปล่า เช่น Synaptic หรือ aptitude " "อณุญาตแค่โปรแกรมเดียวเท่านั้นที่สามารถทำการเปลี่ยนแปลงในเวลาเดียวกันได้" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "นี้เป็นปัญหาร้ายแรง โปรดลองใหม่ภายหลัง ถ้ายังพบปัญหานี้อีก โปรดรายงานข้อผิดพลาดไปที่นักพัฒนา" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "ตรวจดูว่าสะกดชื่อแพกเกจถูกหรือเปล่า และ คลังแพกเกจที่ถูกต้องถูกเปิดใช้งานแล้ว" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "ไม่มีความต้องการใด ๆ ที่จะปรับปรุง" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "นั่นไม่มีความจำเป็นต้องติดตั้ง" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "นั่นไม่มีความจำเป็นต้องถอดถอน" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "คุณได้ร้องขอให้ถอดถอนแพกเกจซึ่งเป็นส่วนสำคัญของระบบของคุณ" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "การเชื่อมต่อไปที่ดีมอนหลุดแล้ว ดูเหมือนกับว่าดีมอนที่ทำงานอยู่ฉากหลังขัดข้อง" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "การติดตั้งหรือถอดถอนแพกเกจของซอฟต์แวร์ล้มเหลว" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "น่าจะเป็นข้อผิดพลาดจากการเขียนโปรแกรมใน aptdaemon โปรแกรมนี้ทำการติดตั้ง/" "ถอดถอนโปรแกรมและจัดการด้านแพกเกจหรืองานต่าง ๆ ที่เกียวข้อง" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "ข้อผิดพลาดนี้สาเหตุมาจากไม่พบแพกเกจโปรแกรมเพิ่มเติมที่ต้องการ " "หรือไม่ก็เกิดจากการขัดกันของแพกเกจโปรแกรมที่ไม่อนุญาติให้ติดตั้งพร้อมกัน" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "การติดตั้งนี้ล้มเหลวเพราะว่ามีข้อผิดพลาดจาดแพกเกจโปรแกรม หรือ ถูกยกเลิกการติดตั้งในทางที่ไม่ปกติ " "คุณควรซ่อมแซมเรื่องนี้ก่อนที่จะติดตั้งหรือถอดถอดโปรแกรมอื่น ๆ เพิ่ม" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "โปรดคัดลอกแฟ้มไปที่เครื่องของคุณแล้วตรวจดูสิทธิ์ที่อนุญาตของแฟ้ม" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "ไม่อนุญาติให้ทำการติดตั้งแพกเกจที่มีคุณภาพต่ำกว่ามาตราฐาน " "เรื่องนี้อาจทำให้เกิดปัญหาร้ายแรงมากกับเครื่องคอมพิวเตอร์ของคุณ " "โปรดติดตั้งคนหรือองค์กรณ์ที่ทำการจำหน่ายแฟ้มแพกเกจนี้รวมถึงรายละเอียดอื่น ๆ ด้วย" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "ไม่คุณไม่ได้รับอนุญาติให้กระทำการนี้" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "การดาวน์โหลดแฟ้มแพกเกจล้มเหลว" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "การดาวน์โหลดแฟ้มข้อมูลคลังล้มเหลว" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "ไม่สามารถแก้ปัญหาการขึ้นต่อกันของแพกเกจได้" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "แพกเกจของระบบพัง" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "กุญแจยังไม่ถูกติดตั้ง" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "กุญแจยังไม่ถูกถอดถอน" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "การล็อคโปรแกรมจัดการแพกเกจล้มเหลว" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "การโหลดรายชื่อแพกเกจล้มเหลว" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "ไม่พบแพกเกจ" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "แพกเกจถูกติดตั้งแล้ว" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "แพกเกจยังไม่ถูกติดตั้ง" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "การถอดถอนแพกเกจสำคัญของระบบล้มเหลว" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "ไม่สามารถตามดูหรือควบคุมงานได้" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "การดำเนินการเกี่ยวกับแพกเกจล้มเหลว" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "ต้องการติดตั้งแพกเกจที่ยังไม่ได้รับความเชื่อถือ" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "การติดตั้งครั้งก่อนยังไม่สมบูรณ์" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "คุณภาพแพกเกจแย่มาก" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "แฟ้มแพกเกจเปิดไม่ได้" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "มีปัญหาที่จัดการไม่ได้เกิดขึ้น" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "กำลังรอเซอร์วิสเริ่มทำงาน" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "กำลังรอ" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "กำลังรอความต้องการระดับกลาง" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "กำลังรอให้โปรแกรมจัดการแพกเกจอื่น ๆ ปิด" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "กำลังรอการตั้งค่าแฟ้มพรอมต์" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "งานที่กำลังทำงาน" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "กำลังดาวน์โหลด" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "กำลังเก็บกวาด" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "เสร็จสิ้น" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "กำลังยกเลิก" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "กำลังโหลดรายชื่อซอฟต์แวร์" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "กำลังติดตั้ง %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "กำลังตั้งค่า %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "กำลังถอดถอน %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "กำลังทำงาน %s หลังการติดตั้ง" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "กำลังปรับรุ่น %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "เรียบร้อย" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "การยืนยันล้มเหลว" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "กำลังดึงข้อมูล" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "ว่าง" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "ไม่มีเครื่อข่าย" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "ดาวน์โหลด %sB แล้วจาก %sB ที่ความเร็ว %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "ดาวน์โหลด %sB แล้วจาก %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "รายละเอียด" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "แฟ้ม" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "ดาว์โหลดแล้ว %s ไบต์" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "ดาวน์โหลดแล้ว" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "ต้องมีซีดี/ดีวีดี '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "โปรดใส่แผ่น CD/DVD ข้างต้นไปที่ไดรว์ '%s' เพื่อติดตั้งแพกเกจโปรแกรม" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_ต่อไป" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "ติดตั้ง" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "ติดตั้งใหม่" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "เอาออก" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "กำจัด" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "ปรับรุ่น" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "ลดรุ่น" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "ข้ามการปรับรุ่น" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "โปรดดูที่รายการเปลี่ยนแปลงข้างล่าง" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "โปรแกรมเสริมถูกติดตั้งแล้ว" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "โปรแกรมเสริมถูกติดตั้งใหม่แล้ว" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "โปรแกรมเสริมถูกถอดถอนแล้ว" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "โปรแกรมเสริมถูกทำให้หยุดทำงาน" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "โปรแกรมเสริมถูกปรับรุ่นแล้ว" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "โปรแกรมเสริมถูกปรับรุ่นลงแล้ว" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "การปรับปรุงจะถูกข้ามไป" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "ต้องการการเปลี่ยนแปลงเพิ่มเติม" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sไบต์ถูกดาว์โหลดจากทั้งหมด" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "จะทำให้มี %s ไบต์ของพื้นที่ว่างของดิสก์" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "จะใช้พื้นที่บนดิสก์อีก %s ไบต์" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "แทนที่การเปลี่ยนแปลงของคุณ '%s' ด้วยแฟ้มการตั้งค่าล่าสุดหรือไม่" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "ถ้าคุณไม่รู้ว่าทำไมแฟ้มมาอยู่ที่นี้ มักปลอดภัยที่จะแทนที่แฟ้มนั้น" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "เ_ปลี่ยนแปลง" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "เ_ก็บไว้" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "แ_ทนที่" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_รายละเอียด" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "กำลังรอ %s เพื่อออก" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "กำลังดาว์โหลด %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "ไม่มีแพกเกจ %s" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "แพกเกจ %s ไม่ได้ถูกติดตั้ง" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "รุ่น %s ของ %s ไม่ได้ถูกติดตั้ง" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "แพกเกจ %s ถูกติดตั้งอยู่แล้ว" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "รุ่น %s ของ %s ยังไม่ได้ถูกติดตั้ง" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "ล้มเหลวที่จะดาว์โหลดและติดตั้งกุญแจ %s จาก %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "แฟ้มคีย์ %s ติดตั้งไม่ได้: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "กุญแจกับลายนิวมือ %s ไม่สามารถถอดถอนได้: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "ถอดถอนแพกเกจ %s ไม่ได้" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "รุ่น %s ของ %s ยังไม่ถูกติดตั้ง" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "รุ่น %s of %s ถูกติดตั้งไว้อยู่แล้ว" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "รุ่น %s ของ %s ถูกติดตั้งแล้ว" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "รุ่น %s ของ %s ไม่มี" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "คุณต้องระบุรุ่นของ %s ที่ปรับรุ่นลง" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "รุ่นล่าสุด %s ของ %s ถูกติดตั้งอยู่แล้ว" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "แพกเกจ %s ยังไม่มีในรุ่น %s" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "เอาแพกเกจ %s ออกไม่ได้" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "แพกเกจนี้มีข้อมูลขนาดการติดตั้งที่ไม่ถูกต้อง ดูรายละเอียดในนโยบาย Debian 5.6.20" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "แพกเกจต่อไปนี้ขาดแพกเกจที่ต้องใช้:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "แต่แพกเกจนี้เป็นแพกเกจเสมือน" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "แต่มันยังไม่ได้ถูกติดตั้ง" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "แต่แพกเกจนี้จะไม่ถูกติดตั้ง" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "แต่ %s ถูกติดตั้งแล้ว" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "แต่ %s กำลังจะถูกติดตั้ง" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "การเพิ่มคีย์ไปที่รายการผู้จำหน่ายซอฟต์แวร์ที่เชื่อถือได้ล้มเหลว" aptdaemon-1.1.1+bzr982/po/tr.po0000644000000000000000000013316112375372771014272 0ustar 00000000000000# Turkish translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2013-01-19 21:59+0000\n" "Last-Translator: Volkan Gezer \n" "Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Güvenilir sağlayıcıların anahtarlarını listele" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" "Güvenilir anahtarların listesini görmek için kimlik doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "İndirilen paket dosyalarını kaldır" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "İndirilen paket dosyalarını temizlemek için, kimliğinizi doğrulamalısınız." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Yazılım yapılanmasını değiştir" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Yazılım ayarlarını değiştirmek için, kimliğinizi doğrulamalısınız." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Yazılım deposunu değiştir" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Yazılım depo ayarlarını değiştirmek için kimlik doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Paket dosyasını kur" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Bu paketi kurmak için kimlik doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Paket bilgisini güncelleştir" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Yazılım rehberini güncelleştirmek için kimlik doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Paketleri kur ya da kaldır" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Yazılım kurmak ya da kaldırmak için kimlik doğrulaması gerekli." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Yazılımı beyaz listedeki güvenilir bir depodan yükle." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Yazılımını yüklemek için kimlik doğrulaması gerekiyor." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Yeni bir depo ekle ve oradan paket kur" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" "Yeni kaynaktan yazılım yüklemek için yetkilendirilmiş olmanız gerekmektedir." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Ücretli bir paket deposu ekle ve oradan paket kur" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" "Ücretli yazılım yükleyebilmeniz için yetkilendirilmiş olmanız gerekmektedir." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Paketleri yükselt" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Güncelleştirilen yazılımı kurmak için kimlik doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Başka bir kullanıcının görevini iptal et" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Başka birisinin yazılım değişikliklerini iptal edebilmek için kimlik " "doğrulaması gerekli." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Yazılım indirmeleri için vekil sunucu ayarla" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Yazılım indirirken bir vekil sunucu kullanmak için kimlik doğrulaması " "gerekli." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "HATA" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "%sB of %sB at %sB/s İndirildi" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "HATA:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Bu işlemi gerçekleştirmenize izin verilmiyor." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Kuyruğa alınıyor" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Bağımlılıklar çözümleniyor" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Aşağıdaki (%(count)s) YENİ paket kurulacak:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Aşağıdaki (%(count)s) paket yükseltilecek:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Aşağıdaki (%(count)s) paket kaldırılacak:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Aşağıdaki (%(count)s) paketin sürümü düşürülecek:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Aşağıdaki paketler tekrar kurulacak (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Aşağıdaki (%(count)s) paket değiştirilmeyecek:" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "%sB arşivlerinin alınması gerekli." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Bu işlemden sonra, ilave disk alanından %sB kullanılacak." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Bu işlemden sonra, ilave disk alanından %sB boş olacak." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Devam etmek istiyor musunuz[E/H]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Birden fazla paket üzerinde işlem yapmak için paket isimlerini tırnak " "işaretleri içine koyun:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Önbelleği yenile" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Kırık bağımlılıkların çözülmeye çalışılması. Çok sayıda paket " "kaldırılabileceğinden dolayı tehlikeli bir işlemdir." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Daha önceki tamamlanmayan kurulumu bitirmeye çalış" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Verilen paketleri kur" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Verilen paketleri tekrar kur" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Verilen paketleri kaldır" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Yapılandırma dosyalarını içeren verilmiş paketleri kaldır" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Verilen paketlerin sürümlerini düşür" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Onaylanmadı: Lütfen --güvenli-yükseltme kullanın" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Sistemi güvenli bir şekilde yükselt" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" "Sistemi yükseltin, bu işlem sırasında bazı paketler kurulabilir ve " "kaldırılabilir" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Sağlayıcıyı güvenilenler listesine ekleyin" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Üretici anahtar kimliği ekleyin (ayrıca gereken --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Anahtarları aramak için verilen anahtar sunucuyu kullanın" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Verilen deb-satırından yeni depo ekleyin" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Hangi depoların ekleneceğini belirleyen alternatif bir source.list.d dosyası " "belirtin." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Güvenilir sağlayıcı anahtarlarını listele" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Parmak izi verilen doğrulanmış anahtarı kaldırın" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Yüklenen paketleri yeniden yapılandır. Seçimsel olarak soruların önem " "derecesi belirlenebilir" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Görüntülenecek sorunun en küçük debconf önceliği" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "apt uç birimine iliştirmeyin" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Tasdiklenmemiş kaynaklardan paketlere izin verir" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "Paketler hakkındaki ek bilgileri göster. Şu an sadece sürüm numarası " "görüntüleniyor" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Kimlik doğrulaması için bekleniyor" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Hareketsizlik nedeniyle sihirbazı kapatmayın" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Hiçbir eklentiyi yükleme" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "İç işlem bilgisini göster" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Çık ve çalışan bir süreçle değiştir" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBus oturum arabirimi üzerinden dinle (Sadece test için gerekli" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "İşlemleri verilen chroot içinde yap" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Profil bilgilerini seçilen dosyada sakla" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Sistem üzerinde herhangi bir değişiklik yapmayınız ( Yalnızca " "geliştiricilerin kullanımı için)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Yüklenen dosya" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Kurulan paketler" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Dosyadan anahtar eklendi" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Önbellek güncelleştirildi" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Arama tamamlandı" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Güvenilir anahtar silindi" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Kaldırılan paketler" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Güncelleştirilen paketler" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Yükseltilen sistem" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Uygulanan değişiklikler" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Onarılan tamamlanmamış kurulum" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Onarılan kırık bağımlılıklar" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Depo eklendi" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Etkinleştirilen dağıtım bileşeni" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "İndirilen paket dosyaları kaldırıldı" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Kurulan paketler yeniden yapılandırıldı" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Başarılı" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "İptal Edildi" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Başarısız" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Dosya yükleniyor" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Paketler kuruluyor" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Dosyadan anahtar ekleniyor" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Önbellek güncelleniyor" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Güvenilir anahtar siliniyor" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Paketler siliniyor" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Paketler güncelleniyor" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Sistem yükseltiliyor" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Değişiklikler uygulanıyor" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Tamamlanmamış kurulum onarılıyor" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Kurulu yazılım onarılıyor" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Depo ekleme" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Dağıtım bileşeni etkinleştiriliyor" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "İndirilen paket dosyaları kaldırılıyor" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Yüklenen paketler yeniden yapılandırılıyor" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Arıyor" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Paket dosyasının kurulumu başarısız oldu" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Yazılım kurulumu başarısız oldu" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "Anahtarı, güvenilir yazılım sağlayıcı listesine ekleme başarısız" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Yazılım listesinin yenilenmesi başarısız oldu" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Sağlayıcı güvenilir olanlar listesinden kaldırma başarısız oldu" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Yazılımın kaldırılması başarısız oldu" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Yazılım güncellemesi başarısız oldu" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Sistem yükseltmesi başarısız oldu" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Yazılım değişiklikleri uygulaması başarısız oldu" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Tamamlanmamış kurulum onarımı başarısız oldu" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Kırık bağımlılıkların onarımı başarısız oldu" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Depo eklenemedi" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Dağıtım bileşeni etkinleştirilemedi" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "İndirilen paketlerin kaldırılması başarısız oldu" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Arama başarısız oldu" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Lisans anahtarı ekleniyor" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "İnternet bağlantınızı kontrol edin." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Üçüncü parti paket depoları kulanıp kullanmadığını denetleyin.Eğer " "kullanıyorsanız problemlerin kaynağı genellikle onlardır.\n" "Ayrıca konsolda şu komutu girin: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Seçili dosya bir GPG anahtar dosyası olmayabilir veya bozuk olabilir." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Seçilen anahtar kaldırılamıyor. Geçerli bir parmak izi sağladığınızı kontrol " "edin." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Başka bir yazılım yönetim aracını şu anda çalıştırıp çalıştırmadığınızı " "kontrol edin, örneğin Synaptic veya aptitude. Bir seferde sadece bir araç " "değişiklik yapabilir." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Bu ciddi bir problem. Daha sonra tekrar deneyin. Eğer bu problem tekrar " "gözükürse, lütfen geliştiricilere hatayı rapor edin." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "Paket adının yazımını ve uygun deponun etkinliğini denetleyin." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Güncelleştirmeye ihtiyaç yok." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Bir kuruluma ihtiyaç yok" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Kaldırmak için herhangi bir neden yok." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" "Sisteminizin temel bölümlerinden olan bir paketi kaldırmak istiyorsunuz." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Sihirbazla olan bağlantı kesildi. Büyük olasılıkla arka plan sihirbazı çöktü." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Bir paketin kurulumu ya da kaldırılması başarısız oldu." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Talep edilen özellik desteklenmiyor." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Yazılım kurmanızı/kaldırmanızı ve paket yönetimi ile ilgili diğer görevleri " "gerçekleştirmenizi sağlayan aptdaemon'da bir programlama hatası var gibi " "gözüküyor." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Bu hata, bulunamayan veya kurulabilir olmayan gerekli ek yazılım " "paketlerinden kaynaklanıyor olabilir ya da aynı anda kurulamayan yazılım " "paketleri arasındaki çakışmadan kaynaklanıyor da olabilir." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Bu kurulum doğrulanmamış kaynaklardan yükleme yapmayı gerektiriyor." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Yükleme işlemi ilgili yazılım paketindeki bir hata yüzünden veya uygun " "olmayan bir biçimde kapatılmasından dolayı başarısız olmuş olabilir. Başka " "bir yazılım yüklemeden veya kaldırmadan önce bu durumu düzeltmelisiniz." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Lütfen dosyayı yerel bilgisayarınıza kopyalayın ve dosya izinlerini kontrol " "ediniz." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Nitelik standartlarını bozan bu paketin kurulumuna izin verilmedi. Bu, " "bilgisayarınızla ilgili ciddi sorunlara neden olabilir. Lütfen bu paketi " "sağlayan kişiyle ya da kurumla iletişime geçin ve paket paketin altına " "ayrıntıları da ekleyin." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Bu yazılımı çalıştırabilmek için indirilen lisans anahtarı geçerli değil ya " "da düzgün bir şekilde yüklenemedi.\n" "Daha fazla bilgi için ayrıntılara bakın." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Kullanılabilir tüm güncellemeler zaten yüklenmiş durumda." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Bu yazılımı kullanabilmeniz için gerekeli lisans anahtarı indirilemedi. " "Lütfen ağ bağlantınızı kontrol edin." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Bu işlemi gerçekleştirmek için yeterli yetkiye sahip değilsiniz." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" "Yanlış bir şifre girmiş olabilir veya yetkilendirmeyi iptal etmiş " "olabilirsiniz.\n" "Ayrıca, eğer bir şifre iletisi görmediyseniz, teknik bir sebep olabilir: " "masaüstü ortamınız PolicyKit oturum aracı sağlamıyor." #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Paket dosyalarını indirme başarısız" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Depo bilgisini indirme başarısız" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Paket bağımlılıkları çözülemiyor" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Paket sistemi bozuk" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Anahtar kurulmadı" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Anahtar kaldırılmadı" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Paket yöneticisini kilitleme başarısız" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Paket listesini yükleme başarısız" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Paket yok" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Paket zaten güncel durumda." #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Paket zaten kurulmuş" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Paket kurulu değil" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Temel sistem paketlerini kaldırma başarısız" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "İşlem gösterilemiyor ya da kontrol edilemiyor" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Paket işlemi başarısız" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Güvenilir olmayan paketlerin kurulumunu gerektirir" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Önceki kurulum tamamlanmadı" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Paket kötü kalitede" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Paket dosyası açılamadı" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Desteklenmeyen özellik" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Lisans anahtarı indirme işlemi başarısız oldu" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Lisans anahtarı kurulumu başarısız oldu" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Sistem zaten güncel" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "Yetkilendirilemediniz" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "Bu işlemi gerçekleştirme izniniz yok" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Üstesinden gelinemeyecek bir sorun oluştu" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Başlamak için servis bekleniyor" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Beklemede" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Gerekli ortam için bekleniyor" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Diğer yazılım yöneticilerinin çıkış yapması için bekleniyor" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "İstenen yapılandırma dosyası için bekleniyor" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Çalışan görev" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "İndiriliyor" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Yazılım kaynakları sorgulanıyor" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Temizlik yapılıyor" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Bitti" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "İptal ediliyor" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Yazılım listesi yükleniyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "%s kuruluyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "%s yapılandırılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "%s kaldırılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "%s tamamen kaldırılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s paketinin kaybolduğu not ediliyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Son-kurulum tetikleyicisi %s çalışıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "%s yükseltiliyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "%s paketi açılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "%s paketini yüklemeye hazırlanılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "%s paketini yapılandırmaya hazırlanılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "%s paketini kaldırmaya hazırlanılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "%s paketinin tamamen kaldırılmasına hazırlanılıyor" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s kuruldu" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s tamamen kaldırıldı" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s kaldırıldı" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Yapıldı" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Kimlik doğrulama başarısız oldu" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Alınıyor" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Boşta" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Ağ kullanılabilir durumda değil" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "%s işleniyor" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "%sB of %sB at %sB/s İndirildi" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Downloaded %sB of %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Ayrıntılar" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Dosya" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "%sB İndirildi" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "İndirilen" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "'%s' CD/DVD gerekli" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Lütfen yazılım paketlerini yüklemek için üzerindeki CD/DVD'yi '%s' " "sürücüsüne takın." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "D_evam Et" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Kur" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Yeniden kur" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Kaldır" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Temizle" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Yükselt" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Sürüm düşür" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Yükseltmeyi atla" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Lütfen, aşağıdaki değişiklik listesine bir göz atın." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Ek yazılım kurulması gerekiyor" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Ek yazılımın yeniden kurulması gerekiyor" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Ek yazılım kaldırılması gerekiyor" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Ek yazılımın temizlenmesi gerekiyor" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Ek yazılım yükseltmesi gerekiyor" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Ek yazılımın sürümünün düşürülmesi gerekiyor" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Güncelleştirmeler atlanacak" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Ek değişiklikler gerekli" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "%sB tamamıyla indirilecek." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB disk alanı boşalacak." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB daha disk alanı kullanılacak." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "'%s' içindeki değişiklikleriniz yapılandırma dosyasının sonraki bir sürümü " "ile değiştirilsin mi?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Eğer dosyanın neden hala burada olduğunu bilmiyorsanız, yerinde tutmak " "genellikle daha güvenlidir." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Değişiklikler" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Koru" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Değiştir" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Detaylar" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Çıkmak için %s bekleniyor" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "%(files)s İndiriliyor" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "Yerel yazılım kaynağı" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "%s'ten indiriliyor" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s paketinin yapısı" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s paketinin açıklaması" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s paketinin açıklama imzası" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "%s deposundaki kullanılabilir paketler" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "%s deposundaki kullanılabilir kaynaklar" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "%s deposundaki kullanılabilir çeviriler" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) için %s deposundaki çeviriler" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s için %s deposundaki çeviriler" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "\"%s\" çevirilerinin deposu: %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "%s Paketi erişilebilir değil" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "%s paketi yüklenmedi" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s 'in %s sürümü yüklü değil." #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s Paketi daha önceden yüklenmiş" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s in %s sürümü mevcut değil" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Anahtar sunucu adresi geçersiz: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Sunucu için geçersiz iletişim kuralları: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Geçersiz anahtar kimliği: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "%s Anahtarının %s adresinden indirilmesi ve yüklenmesi başarısız oldu:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "%s Anahtar dosyası yüklenemedi: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "%s iziyle olan anahtarlar silinemedi :%s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "%s paketi kaldırılamadı." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "%s öğesinin %s sürümü kurulu değil" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "%s'ın daha eski sürümü olan %s zaten yüklenmiş." #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "%s öğesinin %s sürümü zaten kurulu" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s in %s sürümü mevcut değil" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "%s Paketini düşürmek istediğiniz sürümü belirtmelisiniz" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "%s 'in daha yeni sürümü %s zaten yüklenmiş." #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s paketi %s sürümünde mevcut değil." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "%s Paketi kaldırılamadı" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Kurulan paket geçerli bir Yükleme-Boyut kontrol alanı sağlamıyor. Debian " "sözleşmesi 5.6.20'ye bakınız." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Lisans anahtarı boş" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Lisans anahtarı çalıştırılabilir kod içeremez" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "%s lisans anahtar yolu geçersiz" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Lisans anahtarı zaten mevcut: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Sembolik bağlantılar içerdiğinden dolayı lisans anahtarının konumu güvenli " "değil. %s yolu %s'e çıkıyor" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Anahtarın yükleneceği dizin henüz bulunmuyor: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Anahtar dosyası şu konuma yazılamadı: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Aşağıdaki paketler karşılanmamış bağımlılıklara sahip:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "ama bu bir sanal paket" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "ama kurulu değil" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "ama kurulmayacak" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "ama %s kurulu" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "ama %s kurulacak" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Güvenilir yazılım sağlayıcılarının listesine anahtar ekleme başarısız oldu" aptdaemon-1.1.1+bzr982/po/ug.po0000644000000000000000000015415112375372771014262 0ustar 00000000000000# Uyghur translation for aptdaemon # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the aptdaemon package. # Gheyret T.Kenji , 2010. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-09 23:47+0000\n" "Last-Translator: Gheyret T.Kenji \n" "Language-Team: Uyghur Computer Science Association \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "ئىشەنچلىك vendor لارنىڭ ئاچقۇچلىرىنى كۆرسىتىش" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "ئىشەنچلىك ئاچقۇچلارنى كۆرۈش ئۈچۈن سالاھىيەت دەلىللەش زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "چۈشۈرگەن بوغچا ھۆججەتلىرىنى ئۆچۈر" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "چۈشۈرگەن بوغچا ھۆججەتلىرىنى تازىلاش ئۈچۈن، سالاھىيىتىڭىزنى تەكشۈرۈش زۆرۈر." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "يۇمشاق دېتال سەپلىمىسىنى ئۆزگەرت" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "يۇمشاق دېتال سەپلىمىسىنى ئۆزگەرتىش ئۈچۈن، سالاھىيىتىڭىزنى تەكشۈرۈش زۆرۈر." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "يۇمشاق دېتال خەزىنىسىنى ئۆزگەرتىش" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "يۇمشاق دېتال خەزىنە تەڭشىكىنى ئۆزگەرتىش ئۈچۈن دەلىللەش زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "بوغچا ھۆججىتىنى ئورنىتىش" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "بۇ بوغچىنى ئورنىتىش ئۈچۈن دەلىللەش زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "بوغچىغا مۇناسىۋەتلىك ئۇچۇرلارنى يېڭىلاش" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "يۇمشاق دېتال كاتالوگىنى يېڭىلاش ئۈچۈن دەلىللەش زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "بوغچىلارنى ئورنىتىش ياكى ئۆچۈرۈش" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "يۇمشاق دېتال ئورنىتىش ياكى ئۆچۈرۈش ئۈچۈن دەلىللەش زۆرۈردۇر." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" "ئاق تىزىمدىكى، يۇقىرى ئىشەنچلىك خەزىنىلەردىن يۇمشاق دېتاللارنى ئورناتسۇن." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "يۇمشاق دېتالنى ئورنىتىش ئۈچۈن كىملىك دەلىللەش زۆرۈردۇر." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "يېڭى خەزىنە قوشۇپ بوغچىلارنى ئۇنىڭدىن ئورنىتىش" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "يېڭى مەنبەدىن يۇمشاق دېتال ئورنىتىش ئۈچۈن دەلىللەش زۆرۈردۇر" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "سېتىۋالغان يۇمشاق دېتالنىڭ خەزىنىسى قوشۇپ بوغچىلارنى ئۇنىڭدىن ئورنىتىش" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "يۇمشاق دېتال سېتىۋېلىش ئۈچۈن دەلىللەش زۆرۈردۇر." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "بوغچىلارنى يۈكسەلدۈرۈش" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "يېڭىلانغان يۇمشاق دېتالنى ئورنىتىش ئۈچۈن دەلىللەش زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" "باشقا ئىشلەتكۈچىنىڭ ۋەزىپىسىنى(ئىجرا قىلىۋاتقان پروگراممىسىنى) ئەمەلدىن " "قالدۇرۇش" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "باشقىلار ئېلىپ يۇمشاق دېتال ئۆزگەرتىشلىرىنى ئەمەلدىن قالدۇرۇش ئۈچۈن دەلىللەش " "زۆرۈردۇر" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "يۇمشاق دېتال چۈشۈرۈشتە ئىشلىتىدىغان ۋاكالەتچىنى بېكىتىش" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "يۇمشاق دېتال چۈشۈرۈشتە ئىشلىتىلىدىغان ۋاكالەتچى مۇلازىمېتىرنى ئىشلىتىش ئۈچۈن " "دەلىللەش زۆرۈردۇر" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ERROR" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "چۈشۈرۈلگىنى %sB / %sB، تېزلىكى %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "چۈشۈرۈلگىنى %sB / %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ERROR:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "سىزنىڭ بۇ مەشغۇلاتنى قىلىش ھوقۇقىڭىز يوق." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "رەتكە تىزىلىش" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "بېقىندىلىق مۇناسىۋەتنى ھەل قىلىۋاتىدۇ" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "تۆۋەندىكى (%(count)s) دانە يېڭى بوغچىلار ئورنىتىلىدۇ:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "تۆۋەندىكى (%(count)s) دانە بوغچىنىڭ نەشرى يۇقىرىلىتىلىدۇ:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "تۆۋەندىكى (%(count)s) دانە بوغچا ئۆچۈرۈلىدۇ:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "تۆۋەندىكى (%(count)s) دانە بوغچىنىڭ نەشرى تۆۋەنلىتىلىدۇ:" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "تۆۋەندىكى (%(count)s) دانە بوغچا قايتا ئورنىتىلىدۇ:" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "تۆۋەندىكى بوغچىلار ساقلاپ قېلىندى(%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "ئارخىپتىن %sB ئوقۇش زۆرۈر." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "بۇ مەشغۇلات تاماملانسا، %sB دىسكا بوشلۇقى ئىشلىتىلىدۇ." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "بۇ مەشغۇلات تاماملانسا، %sB دىسكا بوشلۇقى بىكارلىنىدۇ." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "داۋاملاشتۇرامسىز[Y/n]؟" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "بىر ياكى بىر قانچە بوغچىغا مەشغۇلات قىلماقچى بولسىڭىز، بوغچا ئاتلىرىنى " "تىرناق ئىچىگە ئېلىڭ:\n" "aptdcon --install \"boghcha ati\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "غەملەكنى يېڭىلا" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "بۇزۇلغان بېقىنىشچانلىقنى ھەل قىلىشنى سىناپ كۆرۈڭ. بۇ مەشغۇلات خەتەرلىك، " "چۈنكى ئۇ نۇرغۇن بوغچىلارنى ئۆچۈرۈش ئېھتىماللىقى بار." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "ئالدىنقى قېتىملىق چالا ئورنىتىشنى تاماملاشنى سىناپ كۆرۈڭ." #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "بېرىلگەن بوغچىلارنى ئورنىتىش" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "بېرىلگەن بوغچىلارنى قايتا ئورنىتىش" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "بېرىلگەن بوغچىلارنى ئۆچۈرۈش" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "بېرىلگەن بوغچىلارنى تەڭشەك ھۆججەتلىرى بىلەن قوشۇپ ئۆچۈرۈش" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "بېرىلگەن بوغچىلارنىڭ نەشرىنى تۆۋەنلىتىدۇ" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "چەكلەنگەن: --safe-upgrade نى ئىشلىتىڭ" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "سىستېمىنى بىخەتەر يۈكسەلدۈرىدۇ" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "سىستېمىنى يۈكسەلدۈرىدۇ، بەلكىم بوغچىلارنى ئورنىتىدۇ ياكى ئۆچۈرىدۇ" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "vendor نى ئىشەنچلىك قاتارىغا قوش" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "vendor keyid نى قوشۇڭ(--keyserver مۇ زۆرۈردۇر)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "ئاچقۇچلارنى ئىزدەپ تېپىش ئۈچۈن بېرىلگەن keyserver نى ئىشلىتىڭ" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "بېرىلگەن deb-line نى ئارقىلىق يېڭى خەزىنە قوشۇش" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "خەزىنە قوشىدىغان باشقا بىر sources.list.d ھۆججىتىنى كۆرسىتىڭ" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "ئىشەنچلىك vendor ئاچقۇچلىرىنى كۆرسىتىش" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "بېرىلگەن fingerprint نىڭ ئىشەنچلىك ئاچقۇچىنى ئۆچۈرۈش" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "ئورنىتىلىپ بولغان بوغچىلارنى قايتا سەپلەيدۇ. تاللانما ئارقىلىق سوئالنىڭ " "ئالدىنلىقىنى ئەڭ كىچىككە تەڭشەشكە بولىدۇ" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "debconf نىڭ ئالدىنقى ئەڭ تۆۋەن بولغان سوئالنىلا كۆرسىتىدۇ" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "apt تېرمىنالغا باغلانما" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "دەلىللەنمىگەن مەنبەدىكى بوغچىلارنى ئىشلەتسۇن" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" "بۇ بوغچا ھەققىدىكى قوشۇمچە ھۆججەتلەرنى كۆرسىتىدۇ. نۆۋەتتە نەشر نومۇرىلا " "كۆرسىتىلگەن." #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "دەلىللەشنى ساقلاۋاتىدۇ" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "پاسسىپ بولغانلىقى ئۈچۈن مۇئەككەلنى تاقىما" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "ھېچقانداق قىستۇرمىنى ئوقۇمىسۇن" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "ئىچكى processing ئۇچۇرلىرىنى كۆرسىتىش" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "ئىجرا بولۇۋاتقان مۇئەككەلنى توختات ۋە ئالماشتۇر" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "DBus ئەڭگىمە باش لىنىيىسىدە تىڭشا (سىناقتىلا زۆرۈر بولىدۇ" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "بېرىلگەن chroot مۇھىتىدا مەشغۇلات قىلىدۇ" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "profile stats نى بەلگىلەنگەن ھۆججەتكە ساقلاش" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "سىستېمىغا قول تەگكۈزمە(ئىجادىيەتچىلەر ئۈچۈنلا)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "ئورنىتىلغان ھۆججەت" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "ئورنىتىلغان بوغچىلار" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "ھۆججەتتىن قوشۇلغان ئاچقۇچ" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "يېڭىلانغان غەملەك" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "ئىزدەش تامام" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "ئۆچۈرۈلگەن ئىشەنچلىك ئاچقۇچ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "ئۆچۈرۈلگەن بوغچىلار" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "يېڭىلانغان بوغچىلار" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "يۈكسەلدۈرۈلگەن سىستېما" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "قوللىنىلغان ئۆزگەرتىشلەر" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "رېمونت قىلىنغان چالا ئورناتما" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "رېمونت قىلىنغان بۇزۇلغان بېقىنىشچانلىقلار" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "قوشۇلغان يۇمشاق دېتال مەنبەسى" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "تارقىتىلمىنىڭ ئىناۋەتلىك قىلىنغان بۆلەكلىرى." #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "ئۆچۈرۈلگەن چۈشۈرگەن بوغچا ھۆججەتلىرى" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "قايتا سەپلەنگەن ئورنىتىلغان بوغچىلار" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "غەلىبىلىك تاماملاندى" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "قالدۇرۇۋېتىلدى" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "مەغلۇپ بولدى" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "ھۆججەت ئورنىتىۋاتىدۇ" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "بوغچىلارنى ئورنىتىۋاتىدۇ" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "ھۆججەتتىن ئاچقۇچ قوشۇۋاتىدۇ" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "غەملەكنى يېڭىلاۋاتىدۇ" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "ئىشەنچلىك ئاچقۇچنى ئۆچۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "بوغچىلار ئۆچۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "بوغچىلار يېڭىلاۋاتىدۇ" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "سىستېمىنى يۈكسەلدۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "ئۆزگەرتىشلەرنى قوللىنىۋاتىدۇ" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "چالا ئورناتمىلارنى تۈزىتىۋاتىدۇ" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "ئورنىتىلغان يۇمشاق دېتالنى ئوڭشاۋاتىدۇ" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "يۇمشاق دېتال مەنبەسىنى قوشۇۋاتىدۇ" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "distribution نىڭ component نى ئىناۋەتلىك قىلىۋاتىدۇ" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "چۈشۈرگەن بوغچا ھۆججەتلىرى ئۆچۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "ئورنىتىلغان بوغچىلارنى قايتا سەپلەۋاتىدۇ" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "ئىزدەۋاتىدۇ" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "بوغچا ھۆججىتىنى ئورنىتىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "يۇمشاق دېتال ئورنىتىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "يۇمشاق دېتال تىزىمىنى يېڭىلاش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "vendors نى ئىشەنچلىك تىزىمىدىن ئۆچۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "يۇمشاق دېتالنى ئۆچۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "يۇمشاق دېتالنى يېڭىلاش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "سىستېمىنى يۈكسەلدۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "يۇمشاق دېتال ئۆزگەرتىشلىرىنى قوللىنىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "چالا ئورناتمىلارنى رېمونت قىلىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "بۇزۇلغان بېقىنىشچانلىقنى رېمونت قىلىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "يۇمشاق دېتال مەنبەسىنى قوشۇش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "distribution نىڭ component نى ئىناۋەتلىك قىلىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "چۈشۈرگەن بوغچا ھۆججەتلىرى ئۆچۈرۈۋاتقاندا مەغلۇپ بولدى" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "ئىزدەش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "ئىجازەتنامە ئاچقۇچىنى قوشۇۋاتىدۇ" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "ئىنتېرنېت باغلىنىشنى تەكشۈرۈڭ." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "باشقا بىر يۇمشاق دېتال خەزىنىسىنى ئىشلىتىۋاتامسىز؟ شۇنداق بولسا ئۇنى " "ئېتىۋېتىڭ، چۈنكى ئۇ نۇرغۇن مەسىلىلەرنىڭ سەۋەبكارىدۇر. ئۇنىڭدىن كېيىن " "تېرمىنالدا: apt-get install -f دېگەن بۇيرۇقنى ئىجرا قىلىڭ." #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "تاللانغان ھۆججەت GPG ئاچقۇچ ھۆججىتى ئەمەس ياكى بۇزۇلغان." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "تاللانغان ئاچقۇچنى ئۆچۈرگىلى بولمىدى. ئىناۋەتلىك fingerprint بېرىلگەنمۇ " "تەكشۈرۈڭ" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "باشقا بىر يۇمشاق دېتال باشقۇرۇش قورالى(Synaptic ياكى aptitude) " "ئىشلىتىۋاتامسىز؟ ئادەتتە پەقەت بىرىنىلا ئىشلىتىپ مەشغۇلات قىلغىلى بولىدۇ." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "بۇ ناھايىتى ئېغىر مەسىلە. كېيىن يەنە سىناپ كۆرۈڭ. ئەگەر يەنە تەكرارلانسا، " "ئىجادىيەتچىگە مەلۇم قىلىڭ." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "بوغا ئاتى توغرىمۇ، مۇناسىۋەتلىك خەزىنىنى ئىشلەتكىلى بولامدۇ تەكشۈرۈڭ." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "يېڭىلاشنىڭ زۆرۈرىيىتى يوق." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "ئورنىتىشنىڭ زۆرۈرىيىتى يوق." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "ئۆچۈرۈشنىڭ زۆرۈرىيىتى يوق." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "سىستېمىنىڭ ئاساسلىق بولىقىنى ئۆچۈرمەكچى بولدىڭىز." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" "Demon بىلەن بولغان باغلىنىش ئۈزۈلدى. ئارقا تەرەپ مۇئەككەلى توختاپ قالغاندەك " "قىلىدۇ" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "يۇمشاق دېتال بولىقىنى ئورنىتىش ياكى ئۆچۈرۈش مەغلۇپ بولدى." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "تەلەپ قىلغان ئىقتىدارىنى قوللىمايدۇ." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "پروگراممىنى ئورنىتىش/چىقىرىۋېتىش ۋە باشقا بوغچا باشقۇرۇشقا مۇناسىۋەتلىك " "ئىشلارنى قىلىدىغان aptdaemon پروگراممىسىدا خاتالىق باردەك قىلىدۇ." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "بۇ خاتالىق، زۆرۈر قوشۇمچە يۇمشاق دېتال بوغچىسىنىڭ يوقلۇقى ياكى ئۇنى " "ئورناتقىلى بولماسلىقى سەۋەبىدىن كېلىپ چىققان. يەنە كېلىپ بىرگە ئورناتقىلى " "بولمايدىغان يۇمشاق دېتال بوغچىسى(چىقىشالمايدىغان) ئارىسىدا توقۇنۇش كېلىپ " "چىققان ئېھتىماللىقمۇ بار." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" "بۇنىڭ ئۈچۈن كىملىكى دەلىللەنمىگەن مەنبەلەردىن بوغچىلارنى ئورنىتىش زۆرۈر." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "بۇ خاتالىق ماس يۇمشاق دېتال بولىقىدا خاتالىق بولغاچقا ياكى ئۇنىڭ نورمال " "ئاخىرلاشتۇرۇلمىغانلىقىدىن كېلىپ چىقىدۇ. باشقا بوغچىلارنى ئورنىتىش ياكى " "ئۆچۈرۈشتىن ئاۋۋال بۇ خاتالىقنى تۈزىتىڭ." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "ھۆججەتنى كومپيۇتېرىڭىزغا كۆچۈرۈپ ئۇنىڭ ئىمتىيازلىرىنى تەكشۈرۈڭ." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "سۈپەتكە كاپالەتلىك قىلىنمىغان بۇزۇق بوغچىلارنى ئورنىتىشقا يول قويۇلمايدۇ. " "بۇلارنىڭ كومپيۇتېرغا ئېغىر زىيانلارنى سېلىش ئېھتىماللىقى بار. شۇڭا مۇشۇ " "بوغچىنى ياسىغان ئادەم ياكى ئورۇن بىلەن ئالاقە قىلىپ كۆرۈڭ." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "پروگراممىنى ئىجرا قىلىشقا زۆرۈر بولغان چۈشۈرۈلگەن ئىجازەتنامە ئاچقۇچى " "ئىناۋەتسىز، ياكى توغرا ئورناتقىلى بولمىدى.\n" "تېخىمۇ كوپ بىلمەكچى بولسىڭىز تەپسىلاتلىرىغا قاراڭ." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "بار بولغان بارلىق يېڭىلانمىلار ئورنىتىلغان." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "پروگراممىنى ئىجرا قىلىشقا زۆرۈر بولغان ئىجازەتنامە ئاچقۇچىنى چۈشۈرگىلى " "بولمىدى. تور باغلىنىشىنى تەكشۈرۈڭ." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "سىزنىڭ بۇ مەشغۇلاتنى قىلىش ھوقۇقىڭىز يوق." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "بوغچا ھۆججەتلىرىنى چۈشۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "خەزىنە ئۇچۇرلىرىنى چۈشۈرۈش مەغلۇپ بولدى." #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "بوغچا بېقىنىشچانلىقىنى ھەل قىلغىلى بولمىدى" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "بوغچا سىستېمىسى بۇزۇلغان" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "ئاچقۇچ ئورنىتىلمىغان" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "ئاچقۇچ ئۆچۈرۈلمىگەن" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "بوغچا باشقۇرغۇچنى قۇلۇپلاش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "بوغچا تىزىمىنى ئوقۇش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "بوغچا مەۋجۇت ئەمەس" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "بوغچا ئەڭ يېڭى ھالەتتە" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "بوغچا ئاللىقاچان ئورنىتىلغان" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "بوغچا ئورنىتىلمىغان" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "ئاساسلىق سىستېما بوغچىلىرىنى ئۆچۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "ۋەزىپىنى كۆزەتكىلى ياكى باشقۇرغىلى بولمىدى" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "بوغچا مەشغۇلاتى مەغلۇپ بولدى" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "ئىشەنچسىز بوغچىنى ئورنىتىشنى تەلەپ قىلىۋاتىدۇ." #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "ئالدىنقى قېتىملىق ئورنىتىش تاماملانماپتۇ" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "بۇ بوغچىنىڭ سۈپىتى بەك ناچار ئىكەن" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "بوغچا ھۆججىتىنى ئاچقىلى بولمىدى" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "قوللىمايدىغان ئىقتىدار" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "ئىجازەتنامە ئاچقۇچىنى چۈشۈرۈش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "ئىجازەتنامە ئاچقۇچىنى ئورنىتىش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "سىستېمىڭىز ئاللىقاچان ئەڭ يېڭى ھالەتتە" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "تۇتقىلى بولمايدىغان خاتالىق يۈز بەردى" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "مۇلازىمەتنىڭ ئىجرا بولۇشىنى كۈتۈۋاتىدۇ" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "كۈتۈۋاتىدۇ" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "زۆرۈر بولغان CD/DDV نى كۈتۈۋاتىدۇ" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "باشقا يۇمشاق دېتال باشقۇرۇش پروگراممىلىرىنىڭ تاماملىنىشىنى كۈتۈۋاتىدۇ" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "سەپلىمە ھۆججىتىنىڭ كۆرسەتمە چىقىرىشىنى ساقلاۋاتىدۇ." #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "ۋەزىپىنى ئىجرا قىلىۋاتىدۇ" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "چۈشۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "يۇمشاق دېتال مەنبەلىرىنى سۈرۈشتۈرۈۋاتىدۇ" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "تازىلاۋاتىدۇ" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "تاماملاندى" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "ئەمەلدىن قالدۇرۇۋاتىدۇ" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "يۇمشاق دېتال تىزىمىنى ئوقۇۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "ئورنىتىۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "سەپلەۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "ئۆچۈرۈۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "تولۇق ئۆچۈرۈۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "%s نىڭ يوقىلىشىنى خاتىرىلەۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "ئورنىتىلغاندىن كېيىنكى trigger %s نى ئىجرا قىلىۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "يۈكسەلدۈرۈۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "يېيىۋاتقىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "بوغچا %s نى ئورنىتىشقا تەييارلىنىۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "بوغچا %s نى سەپلەشكە تەييارلىنىۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "بوغچا %s نى چىقىرىۋەتىشكە تەييارلىنىۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "بوغچا %s نى تولۇق چىقىرىۋەتىشكە تەييارلىنىۋاتىدۇ" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "ئورنىتىلغىنى %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "بوغچا %s تولۇق چىقىرىۋېتىلدى" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "چىقىرىۋېتىلگىنى %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "تامام" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "سالاھىيەت دەلىللەش مەغلۇپ بولدى" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "ئېلىۋاتىدۇ" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "بىكار" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "تورنى ئىشلەتكىلى بولمايدۇ" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "بىر تەرەپ قىلىۋاتقىنى %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "چۈشۈرۈلگىنى %sB / %sB، تېزلىكى %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "چۈشۈرۈلگىنى %sB / %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "تەپسىلاتلار" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "ھۆججەت" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "چۈشۈرۈلگىنى %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "چۈشۈرۈلدى" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "'%s' دېگەن CD/DVD زۆرۈر." #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "ئۇستىدىكى CD/DVD دىن يۇمشاق دېتال بوغچىلىرىنى ئورنىتىش ئۈچۈن، ئۇنى قوزغاتقۇچ " "'%s' غا سېلىڭ" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "داۋاملاشتۇر(_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "ئورنات" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "قايتا ئورنات" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "ئۆچۈر" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "پاكىزلا" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "يۈكسەلدۈر" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "نەشرىنى تۆۋەنلەت" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "يۈكسەلدۈرۈشنى ئۆتكۈزۈۋەت" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "تۆۋەندىكى ئۆزگىرىشلەرنىڭ تىزىمىغا قاراپ چىقىڭ." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "ئورنىتىلىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "قايتا ئورنىتىلىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "ئۆچۈرۈلىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "پاكىزلىنىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "يۈكسەلدۈرىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "نەشرىنى تۆۋەنلىتىدىغان قوشۇمچە يۇمشاق دېتال" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "يېڭىلاش ئۆتكۈزۈۋېتىلىدۇ" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "قوشۇمچە ئۆزگىرىشلەر تەلەپ قىلىنىدۇ" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "جەمئىي %sB چۈشۈرۈلىدۇ" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB بوشلۇق بىكارلىنىدۇ." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "%sB بوشلۇق ئىشلىتىلىدۇ." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "'%s' نىڭدىكى ئۆزگىرىشلەرنى كېيىنكى نەشرىدىكى سەپلىمە ھۆججەتلەر بىلەن " "قاپلىۋېتەمسىز؟" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "بۇ ھۆججەتنىڭ بۇ يەرگە قانداق پەيدا بولۇپ قالغانلىقىنى بىلمىسىڭىز خاتىرجەم " "قاپلىۋېتىڭ." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "ئۆزگىرىشلەر(_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "تەگمە(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "ئالماشتۇر(_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "تەپسىلاتلار(_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "%s نىڭ ئاخىرلىشىشىنى كۈتۈۋاتىدۇ" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "چۈشۈرۈۋاتقىنى %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "يەرلىك خەزىنە" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "خەزىنە %s دىن چۈشۈرۈۋاتىدۇ" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "خەزىنە %s نىڭ قۇرۇلمىسى" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "خەزىنە %s نىڭ چۈشەندۈرۈلۈشى" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "خەزىنە %s چۈشەندۈرۈش ئىمزاسى" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "خەزىنە %s نىڭدا بار بوغچىلار" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "خەزىنە %s نىڭدا بار مەنبەلەر" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "خەزىنە %s نىڭدا بار تەرجىمىلەر" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s) نىڭ %s تەرجىمىسى" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s نىڭ %s تەرجىمىسى" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "(%s) چە تەرجىمىسى، %s ئامباردىن كەلگەن" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "%s بوغچا مەۋجۇت ئەمەس" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "%s بوغچا ئورنىتىلمىدى" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s نەشرىنىڭ %s ئورنىتىلمىغان" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s بوغچا ئاللىقاچان ئورنىتىلغان" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s نەشرىنىڭ %s نى ئىشلەتكىلى بولمايدۇ" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "ئاچقۇچ مۇلازىمېتىر(keyserver) نىڭ تور ئادرېسى ئىناۋەتسىز: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "مۇلازىمېتىر كېلىشىمنامىسى ئىناۋەتسىز: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "ئاچقۇچ id سى ئىناۋەتسىز: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "ئاچقۇچ %s نى %s دىن چۈشۈرۈپ ئورنىتىش مەغلۇپ بولدى:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "ئاچقۇچ %s نى ئورناتقىلى بولمىدى: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "بارماق ئىزى %s بولغان ئاچقۇچنى چىقىرىۋەتكىلى بولمىدى: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "%s بوغچىنى چىقىرىۋەتكىلى بولمىدى" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "%s نەشرىنىڭ %s ئورنىتىلمىغان" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "ئىلگىرىكى %s نەشرىنىڭ %s ئاللىقاچان ئورنىتىلغان" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "%s نەشرىنىڭ %s ئاللىقاچان ئورنىتىلغان" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s نەشرىنىڭ %s نى ئىشلەتكىلى بولمايدۇ" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "تۆۋەنلىتىدىغان نەشرى %s نى بەلگىلىشىڭىز كېرەك." #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "ئەڭ يېڭى %s نەشرىنىڭ %s ئاللىقاچان ئورنىتىلغان" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s دېگەن بوغچا %s نەشرىدە يوق." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "%s بوغچىنى چىقىرىۋەتكىلى بولمىدى" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "بۇ بوغچىدا ئىناۋەتلىك ئورنىتىش چوڭلۇقى(Install-Size) بۆلىكى يوق. Debian " "Policy 5.6.20 غا قاراڭ" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "ئىجازەتنامە ئاچقۇچى قۇرۇق" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "ئىجازەتنامە ئاچقۇچى تەركىبىدە ئىجرا بولىدىغان كود بولسا بولمايدۇ." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "ئىجازەتنامە ئاچقۇچىنىڭ يولى %s ئىناۋەتسىز" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "ئىجازەتنامە ئاچقۇچى مەۋجۇت: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "ئىجازەتنامە ئاچقۇچى تەركىبىدە symbolic ئۇلانمىلار بولغاچقا ئۇنىڭ ئورنى ئېنىق " "ئەمەس. يول %s ، خەرىتىسى %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "ئاچقۇچنى ئورنىتىدىغان مۇندەرىجە تېخى مەۋجۇت ئەمەس: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "ئاچقۇچ ھۆججىتىنى يېزىش مەغلۇپ بولدى: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "تۆۋەندىكى بوغچا بېقىنىش تەلىپىنى قاندۇرالمىدى:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "بىراق ئۇ بىر مەۋھۇم بوغچا" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "بىراق ئۇ ئورنىتىلمىغان" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "بىراق ئۇ ئورنىتىلمايدۇ" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "بىراق %s ئورنىتىلغان" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "بىراق %s ئورنىتىلىدۇ" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "ئاچقۇچنى ئىشەنچلىك يۇمساق دېتال vendors تىزىمىغا قوشۇش مەغلۇپ بولدى" aptdaemon-1.1.1+bzr982/po/uk.po0000644000000000000000000015460712375372771014274 0ustar 00000000000000# Ukrainian translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-04-04 10:54+0000\n" "Last-Translator: Сергій Найтінгейл \n" "Language-Team: Ukrainian \n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Перелік ключів надійних постачальників ПЗ" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Щоб переглянути перелік довірених ключів, треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Вилучити завантажені пакунки" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "Для вилучення завантажених пакунків треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Змінити налаштування програмного забезпечення" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" "Щоб мати змогу змінювати налаштування програм, треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Змінити сховище програм" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Для зміни налаштувань сховищ програм, вам треба автентифікуватися." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Встановлення файла пакунка" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Щоб встановити цей пакунок, треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Оновлення інформації про пакунки" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Щоб оновити перелік програм, треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Встановити чи вилучити пакунки" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Для встановлення і вилучення програм, треба автентифікуватися." #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Додати нове сховище і встановити з нього пакунки." #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Щоб встановити програми з нового джерела, треба автентифікуватись." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Додати сховище для платних програм і встановити з нього пакунки" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Щоб встановити платні програми, треба автентифікуватись." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Оновлення пакунків" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Щоб встановити оновлення, требя автентифікуватись" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Скасувати завдання іншого користувача" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "Щоб скасувати чужі зміни в ПЗ, треба автентифікуватися." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Налаштувати проксі для завантаження програм" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Щоб використовувати проксі сервер для завантаження програм, треба " "автентифікуватись." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "ПОМИЛКА" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Завантажено %sB з %sB за %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Завантажено %sB з %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "ПОМИЛКА:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Ви не можете виконувати цю дію." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Створення черги" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Розв’язання залежностей" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Буде встановлено наступний НОВИЙ пакунок (%(count)s):" msgstr[1] "Буде встановлено наступні НОВІ пакунки (%(count)s):" msgstr[2] "Буде встановлено наступні НОВІ пакунки (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Наступний пакунок буде оновлений (%(count)s):" msgstr[1] "Наступні пакунки будуть оновлені (%(count)s):" msgstr[2] "Наступні пакунки будуть оновлені (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Наступний пакунок буде ВИЛУЧЕНО (%(count)s):" msgstr[1] "Наступні пакунки буде ВИЛУЧЕНО (%(count)s):" msgstr[2] "Наступні пакунки буде ВИЛУЧЕНО (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Буде встановлено СТАРА ВЕРСІЯ наступного пакунку (%(count)s):" msgstr[1] "Буде встановлено СТАРІ ВЕРСІЇ наступних пакунків (%(count)s):" msgstr[2] "Буде встановлено СТАРІ ВЕРСІЇ наступних пакунків (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Наступний пакунок буде перевстановлено (%(count)s):" msgstr[1] "Наступні пакунки буде перевстановлено (%(count)s):" msgstr[2] "Наступні пакунки буде перевстановлено (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Наступний пакунок буде утримано (%(count)s):" msgstr[1] "Наступні пакунки буде утримано (%(count)s):" msgstr[2] "Наступні пакунки буде утримано (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Треба отримати архіви розміром %sБ" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Після проведення операції буде використано %sБ вільного місця диску." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Після проведення операції буде звільнено %sБ на диску." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Бажаєте продовжити [Т/н]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Щоб обробити декілька пакунків, візьміть їхні назви у лапки:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Оновити кеш" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Спробувати налагодити порушені залежності. Ця операція потенційно " "небезпечна, оскільки може призвести до вилучення великої кількості пакунків." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Спробувати закінчити попереднє незавершене встановлення" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Встановити вказані пакунки" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Перевстановлення вказаних пакунків" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Вилучити вказані пакунки" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Вилучити вказані пакунки разом з налаштуваннями" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Встановити стару версію вказаних пакунків" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Застаріло: використовуйте --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Оновити систему безпечним чином" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Оновити систему, можливо встановлюючи та вилучаючи пакунки" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Додати розповсюджувача ПЗ до списку тих, кому можна довіряти" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" "Додати keyid розповсюджувача ПЗ (також вимагає використання опції --" "keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Використовувати вказаний сервер для пошуку ключів" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Додати нове сховище із вказаного deb-рядка" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Вказати альтернативний файл sources.list.d, у який треба додавати сховища." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Показати ключі довірених розпосюджувачів ПЗ" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Вилучити довірчий ключ для цього цифрового підпису" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Переналаштувати встановлені пакунки. Можливо, потрібно буде відповісти на " "кілька запитань" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Будуть показанні запитання із низьким приоритетом" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Не прив’язуватись до apt терміналу" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Дозволити пакунки з неавтентифікованих джерел" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Показати додаткову інформацію про пакунки. Наразі лише номер версії" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Очікування завершення автентифікації" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Не вимикайте фонову службу через її неактивність" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Не завантажувати жодних втулків" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Показувати інформацію про внутрішню обробку" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Вийти і замінити вже запущену службу" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Слухати транспорт сесій DBus (Потрібен лише для тестування)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Виконати операцію в окремому середовищі" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Зберігати статистику профілю у вказаному файлі" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "Не вносьте жодних змін до системи (тільки для розробників)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Встановлений файл" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Встановлені пакунки" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Доданий з файла ключ" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Кэш оновлений" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Пошук завершено" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Вилучений довірчий ключ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Вилучені пакунки" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Оновлені пакунки" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Система оновлена" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Застосовані зміни" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Виправлене незавершене встановлення" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Виправлені порушені залежності" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Додано джерело программного забезпечення" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Увімкнено компонент дистрибутива" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Вилучені файли завантажених пакунків" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Переналаштовано встановлені пакунки" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Успішно" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Скасовано" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Збій" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Встановлення файлу" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Встановлення пакунків" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Додавання ключа з файлу" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Оновлення кешу" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Вилучення довірчого ключа" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Вилучення пакунків" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Оновлення пакунків" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Оновлення системи" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Застосування змін" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Виправлення незавершеного встановлення" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Виправлення встановленого програмного забезпечення" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Додавання джерела программного забезпечення" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Вмикання компоненту дистрибутива" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "ВИлучення завантажених файлів пакунків" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Переналаштування встановлених пакунків" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Пошук" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Збій встановлення файлу пакунка" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Збій встановлення програмного забезпечення" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Збій оновлення списку програмного забезпечення" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" "Збій вилучення елемента зі списку надійних розповсюджувачів програмного " "забезпечення" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Збій вилучення програмного забезпечення" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Збій оновлення програмного забезпечення" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Збій оновлення системи" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Збій застосування змін програмного забезпечення" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Збій виправлення незавершеного встановлення" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Не вдалося задовольнити порушені залежності" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Збій додавання джерела программного забезпечення" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Збій вмикання компоненту дистрибутива" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Збій під час вилучення завантажених файлів пакунків" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Не вдалося виконати пошук" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Додавання ліцензійного ключа" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Перевірте інтернет-з’єднання" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Якщо Ви використовуєте сторонні джерела програм, відключіть їх, оскільки " "вони часто є джерелом проблем.\n" "Потім виконайте в терміналі наступну команду: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "Вибраний файл, можливо, не є файлом GPG ключа або він пошкоджений." #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Не вдалося вилучити вибраний ключ. Переконайтесь, що вказано коректний " "цифровий підпис." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Перевірте чи не запущено іншу програму керування пакунками, наприклад " "Synaptic чи aptitude. Не можна використовувати кілька програм одночасно." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Це серйозна проблема. Спробуйте повторити пізніше. Якщо проблема виникне " "знову, будь ласка, надішліть звіт про помилку розробникам." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Перевірте написання назви пакунку і що відповідне сховище дозволено " "використовувати." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Немає потреби в оновленні." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Немає потреби в установці." #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Немає потреби у вилученні." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Ви запросили вилучення пакунка, який є невід’ємною частиною системи." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Втрачено з’єднання з фоновою службою. Швидше за все, вона впала." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Збій під час встановлення або вилучення пакунка." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Запитаний параметр не підтримується." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Схоже, виникла програмна помилка в aptdaemon — програмі, що дозволяє " "встановлювати/вилучати програмне забезпечення та виконати інші пов’язані з " "ним завдання" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Ця помилка може бути зумовлена потребою додаткових програмних пакунків, які " "відсутні або не можуть бути встановлені. Крім того, певні пакунки можуть " "конфліктувати між собою, тому їх не можна встановлювати одночасно." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Збій під час встановлення міг виникнути через помилки у відповідному " "пакунку, або воно було перерване у неприпустимий спосіб. Вам слід виправити " "ці помилки, перш ніж ви зможете встановлювати або вилучати будь-які інші " "програми." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Будь-ласка, скопіюйте файл на локальний комп’ютер та перевірте права на " "нього." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Встановлення пакунку, що порушує стандарти якості не дозволено. Це може " "призвести до серйозних проблем для Вашого комп’ютера. Будь-ласка, зверніться " "до особи або організації, що надали цей пакунок та додайте деталі, приведені " "нижче." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Завантажений ключ ліцензії, який потребує дане програмне забезпечення, не " "дійсний або міг бути встановлений\n" "не правильно. Перегляньте деталі для більш конкретної інформації." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Всі можливі оновлення встановлені." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Ліцензійний ключ, що дозволяє використовувати дане програмне забезпечення не " "можливо завантажити. Будь-ласка перевірте Ваше з’єднання з мережею." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Ви не можете виконувати цю дію." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Не вдалось завантажити файли пакунка" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Не вдалося завантажити інформацію про сховище" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Залежності пакунків не можуть бути розв’язані" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Система пакунків пошкоджена" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Ключ не встановлений" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Ключ не вилучений" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Не вдалося заблокувати менеджер пакунків" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Не вдалося завантажити список пакунків" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Пакунка не існує" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Пакунок вже оновлено" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Пакунок вже встановлено" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Пакунок не встановлений" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Не вдається вилучити важливий системний пакунок" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Завдання не може бути відстежене чи проконтрольоване" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Помилка операції з пакунком" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Потрібне встановлення ненадійних пакунків" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Попередне встановленя не було завершене" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Пакунок поганої якості" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Неможливо відкрити файл пакунку" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Функція не підтримується" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Невдале завантаження ліцензійного ключа" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Помилка при встановленні ліцензійного ключа" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Систему оновлено" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Виникла неконтрольована помилка" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Очікування запуску служби" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Очікування" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Очікування потрібного носія з інформацією" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Очікування закінчення роботи інших менеджерів програмного забезпечення" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Очікування запиту конфігураційного файла" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Виконання завдання" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Звантаження" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Запит джерел програмного забезпечення" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Очищення" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Завершено" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Скасування" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Завантаження списку програм" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Встановлення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Налаштування %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Вилучення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Повне вилучення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Нічого не відзначено з %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Запуск після-інсталяційного тригера %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Оновлення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Розпакування %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Підготовка до встановлення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Підготовка налаштувань %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Підготовка вилучення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Підготовка повного вилучення %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Встановлено %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Повністю вилучено %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Вилучено %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Виконано" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Помилка автентификації" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Отримання" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Очікування" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Мережеве з’єднання недоступне" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Опрацювання %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Завантажено %sB з %sB за %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Завантажено %sB з %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Докладніше" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Файл" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Завантажено %sБ" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Завантажено" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "Потрібен CD/DVD '%s'" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" "Будь-ласка, вставте вищевказаний CD/DVD диск до приводу '%s', щоб встановити " "пакунки з нього." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "П_родовжити" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Встановити" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Перевстановити" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Вилучити" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Очистити" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Оновити" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Понизити версію" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Пропустити оновлення" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Будь-ласка, гляньте на перелік змін нижче." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Треба встановити додаткове програмне забезпечення" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Треба перевстановити додаткове програмне забезпечення" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Треба вилучити додаткове програмне забезпечення" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Треба очистити додаткове програмне забезпечення" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Треба оновити додаткове програмне забезпечення" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Треба понизити версію додаткового програмного забезпечення" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Оновлення буде пропущено" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Треба внести додаткові зміни" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Загалом буде завантажено %sБ" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sБ диску буде звільнено" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Буде використано %sБ вільного місця на диску" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "Замінити ваші зміни в '%s' новішою версією файлу налаштувань?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Якщо ви не знаєте, що це за файл і нащо він там, зазвичай можна безпечно " "його замінити." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Зміни" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "З_алишити як є" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Замінити" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Детальніше" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Очікую завершення %s" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Завантаження %(files)s" msgstr[1] "Завантаження %(files)s" msgstr[2] "Завантаження %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "локальне сховище" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Завантаження з %s" msgstr[1] "Завантаження з %s" msgstr[2] "Завантаження з %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Структура %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Опис %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Опис підпису %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Доступні пакунки з %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Доступне джерело %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Доступний переклад %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Переклад для %s (%s) з %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Переклад для %s з %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Переклад (%s) з %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Пакунок %s недоступний" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Пакунок %s не встановлено" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Версія %s з %s не встановлена" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Пакунок %s вже встановлено" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Версія %s з %s відсутня" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Помилка завантаження та встановлення ключа %s з %s:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Файл ключа %s не може бути встановлений: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Ключ з відбитком %s не може бути вилученим: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Неможливо вилучити пакунок %s." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Версія %s з %s не встановлена" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Попередня версія %s з %s вже встановлена" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Версію %s з %s вже встановлено" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Версія %s з %s відсутня" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" "Ви повинні вказати версію %s, до якої потрібно виконати зниження версії" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Найпізніша версія %s з %s вже встановлена" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Пакунок %s відсутній у випуску %s" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Пакунок %s не може бути вилучений" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Пакунок не надає відповідного контрольного поля Installed-Size. Див. Правила " "Debian 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Ключ ліцензії відсутній" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Ліцензійний ключ не має містити в собі коду для виконання." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "%s невірний шлях для ключа ліцензії" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Ключ ліцензії існує: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Розташування ключа ліцензії небезпечне з тих пір, як шлях містить символічні " "посилання. Шлях %s — символічне посилання %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Шлях куди встановлюється ключ більше не існує: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Збій запису файлу ключа до %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Наступні пакунки мають незадоволені залежності:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "але це віртуальний пакунок" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "але він не встановлений" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "але він не буде встановлений" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "але %s встановлено" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "але %s має бути встановлено" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Збій додавання ключа до списку надійних розповсюджувачів програмного " #~ "забезпечення" aptdaemon-1.1.1+bzr982/po/ur.po0000644000000000000000000010212112375372771014263 0ustar 00000000000000# Urdu translation for aptdaemon # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2011-06-23 23:56+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Urdu \n" "Language: ur\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "پیکج تجدید" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "غلطی" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "غلطی:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "آپ کو اجازت نہیں دی نہیں اس کارروائی کو انجام دینے کی." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "قطار میں ڈالا جا رہا ہے" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "انحصاریوں کا اندازہ کررہا ہے" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "آپ کو اجازت نہیں دی نہیں اس کارروائی کو انجام دینے کی." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/uz.po0000644000000000000000000010154512375372771014304 0ustar 00000000000000# Uzbek translation for aptdaemon # Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-05-13 14:21+0000\n" "Last-Translator: Akmal Xushvaqov \n" "Language-Team: Uzbek \n" "Language: uz\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Ишончли етказиб берувчилар калитлари рўйхати" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "" #: ../aptdaemon/console.py:249 #, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "" #: ../aptdaemon/console.py:255 #, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "" msgstr[1] "" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" #: ../aptdaemon/enums.py:475 msgid "You don't have the required privileges to perform this action." msgstr "" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "" msgstr[1] "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "" aptdaemon-1.1.1+bzr982/po/vi.po0000644000000000000000000014002512375372771014260 0ustar 00000000000000# Vietnamese translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-02 13:00+0000\n" "Last-Translator: Huynh Trong Nghia \n" "Language-Team: Vietnamese \n" "Language: vi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "Liệt kê khóa của các nhà cung cấp uy tín" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "Để xem danh sách các khóa tin tưởng, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "Gỡ bỏ những tập tin của các gói đã tải về" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "" "Để xóa sạch những tập tin của các gói đã tải về, bạn cần xác thực quyền." #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "Thay đổi cấu hình phần mềm" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "Để thay đổi tùy chỉnh của phần mềm, bạn cần xác thực quyền." #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "Thay đổi kho phần mềm" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "Để thay đổi các cài đặt kho phần mềm, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "Cài đặt tập tin gói" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "Để cài đặt gói này, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "Cập nhật thông tin gói" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "Để cập nhật mục lục phần mềm, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "Cài đặt hay gỡ bỏ các gói" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "Để cài đặt hay gỡ bỏ phần mềm, bạn cần phải xác thực quyền" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "Cài đặt phần mềm từ kho chứa uy tín." #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "Để cài đặt phần mềm, bạn cần phải xác thực." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "Thêm một kho phần mềm mới và cài đặt các gói từ đó" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "Để cài đặt phần mềm từ một nguồn mới, bạn cần phải xác thực quyền." #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "Thêm một kho phần mềm trả phí mới và cài đặt các gói từ đó" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "Để cài đặt phần mềm trả phí, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "Nâng cấp gói" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "Để cài đặt các phần mềm cập nhật, bạn cần phải xác thực quyền." #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "Hủy bỏ nhiệm vụ của một người dùng khác" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "" "Để hủy bỏ các thay đổi phần mềm của một ai đó khác, bạn cần phải xác thực " "quyền." #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "Cài đặt một proxy cho việc tải phần mềm" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "" "Để sử dụng một máy chủ proxy cho việc tải phần mềm, bạn cần phải xác thực " "quyền." #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "LỖI" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "Đã tải %sB của %sB với tốc độ %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "Đã tải về %sB của %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "Lỗi:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "Bạn không được phép thực hiện hành động này." #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "Đang xếp hàng" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "Đang giải quyết các phụ thuộc" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "Những gói mới sau đây sẽ được cài đặt (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "Những gói sau đây sẽ được nâng cấp (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "Những gói sau đây sẽ được GỠ BỎ (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "Những gói sau đây sẽ được HẠ CẤP (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "Những gói sau đây sẽ được cài đặt lại (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "Những gói sau đây đã được giữ lại (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "Cần lấy %sB lưu trữ." #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "Sau hành động này, %sB không gian đĩa sẽ được sử dụng." #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "Sau hành động này, %sB không gian đĩa sẽ được giải phóng." #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "Bạn có muốn tiếp tục [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "Để thực hiện trên nhiều gói hãy để tên các gói trong dấu ngoặc kép:\n" "aptcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "Làm tươi bộ đệm" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "" "Cố gắng để giải quyết các phụ thuộc bị hỏng. Đây là hành động tiềm tàng nguy " "hiểm vì nó có thể sẽ gỡ bỏ rất nhiều gói." #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "Cố gắng để hoàn tất một cài đặt không đầy đủ trước đó" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "Cài đặt các gói cho trước" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "Cài đặt lại các gói cho trước" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "Gỡ bỏ các gói cho trước" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "Gỡ bỏ các gói cho trước bao gồm cả các tập tin cấu hình" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "Hạ cấp những gói đã chọn" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "Bị phản đối: Hãy sử dụng --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "Nâng cấp hệ thống một cách an toàn" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "Nâng cấp hệ thống, có thể cài đặt hay gỡ bỏ các gói" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "Thêm nhà cung cấp vào danh sách uy tín" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "Thêm keyid của nhà cung cấp (cũng cần --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "Sử dụng máy chủ khóa cho trước để tìm các khóa" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "Thêm kho phần mềm mới từ dòng deb cho trước" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "" "Chỉ định một tập tin sources.list.d thay thế chứa các kho phần mềm được thêm " "vào." #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "Liệt kê các khóa của nhà cung cấp uy tín" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "Gỡ bỏ khóa uy tín của dấu vân tay cho trước" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "" "Cấu hình lại những gói đã cài. Quyền ưu tiên tối thiểu của các vấn đề có thể " "được xác định (không bắt buộc)." #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "Quyền ưu tiên tối thiểu của các vấn đề về debconf được hiển thị" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "Không được gắn vào dòng lệnh apt" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "Cho phép các gói từ những nguồn chưa xác thực" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "Hiển thị thông tin bổ sung về các gói. Hiện tại chỉ có số phiên bản" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "Đang chờ xác thực" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "Không nên tắt trình nền vì nó không hoạt động" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "Không nạp trình bổ sung nào" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "Hiển thị thông tin xử lý nội bộ" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "Thoát và thay thế một trình nền đang chạy sẵn" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "Nhận tín hiệu từ các bus phiên chạy DBus (Chỉ yêu cầu để chạy thử" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "Tiến hành các thao tác trong chroot đã cho trước" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "Lưu trữ thông tin hồ sơ trong tập tin được chỉ định" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "" "Đừng tạo bất cứ thay đổi nào tới hệ thống (Chỉ dùng cho các lập trình viên)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "Tập tin đã cài đặt" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "Các gói đã cài đặt" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "Các phím đã được thêm vào từ tập tin" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "Bộ đêm đã cập nhật" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "Tìm kiếm xong" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "Các phím tin tưởng đã gỡ bỏ" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "Các gói đã gỡ bỏ" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "Các gói đã cập nhật" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "Hệ thông đã nâng cấp" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "Các thay đổi đã áp dụng" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "Đã sửa hệ thống cài đặt không đầy đủ" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "Đã sửa lỗi giữa các gói phụ thuộc lẫn nhau" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "Nguồn phần mềm đã thêm" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "Bật thành phần của bản phân phối" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "Những tập tin thuộc các gói đã gỡ bỏ" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "Cấu hình lại các gói đã cài đặt" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "Thành công" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "Đã hủy" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "Bị thất bại" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "Đang cài đặt tập tin" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "Đang cài đặt các gói" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "Đang thêm khóa từ tập tin" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "Đang cập nhật bộ đệm" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "Đang gỡ bỏ các khóa tin cậy" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "Đang gỡ bỏ các gói" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "Đang cập nhật các gói" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "Đang nâng cấp hệ thống" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "Đang áp dụng các thay đổi" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "Đang sửa hệ thống đã cài đặt không đầy đủ" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "Đang sửa chữa phần mềm đã cài đặt" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "Đang thêm nguồn phần mềm" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "Đang bật thành phần của bản phân phối" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "Đang gỡ bỏ những tập tin thuộc các gói đã tải về" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "Đang cấu hình lại những gói đã cài đặt" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "Đang tìm kiếm" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "Cài đặt tập tin gói đã thất bại" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "Cài đặt phần mềm đã thất bại" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "Cập nhật lại danh sách phần mềm đã thất bại" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "Loại bỏ nhà cung cấp phần mềm từ danh sách tin cậy đã thất bại" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "Loại bỏ phần mềm đã thất bại" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "Cập nhật phần mềm đã thất bại" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "Cập nhật hệ thống đã thất bại" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "Áp dụng các thay đổi cho phần mềm đã thất bại" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "Việc sửa hệ thống cài đặt không đầy đủ đã thất bại" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "Việc sửa lỗi giữa các gói phụ thuộc lẫn nhau đã thất bại" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "Thêm nguồn phần mềm thất bại" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "Bật thành phần của bản phân phối thất bại" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "Gỡ bỏ những tập tin thuộc các gói không thành công" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "Tìm kiếm thất bại" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "Đang thêm khóa chứng nhận" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "Kiểm tra kết nối Internet của bạn." #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "Kiểm tra xem liệu bạn có đang sử dụng kho phần mềm của hãng thứ ba. Nếu có " "hãy vô hiệu hóa chúng, vì chúng là một nguồn chung của các vấn đề.\n" "Hơn nữa hãy sử dụng lệnh sau đây trong Cửa sổ dòng lệnh: apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "" "Tập tin đã chọn có thể không phải là một tập tin khóa GPG hoặc nó cũng có " "thể đã bị hỏng" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "" "Khóa đã chọn không thể được gỡ bỏ. Hãy kiểm tra liệu bạn có cung cấp một dấu " "vân tay có giá trị." #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "Kiểm tra nếu hiện tại bạn đang chạy một công cụ quản lý phần mềm khác, ví dụ " "Synaptic hay aptitude. Chỉ một công cụ được cho phép tạo thay đổi trong một " "thời điểm." #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "Đây là một vấn đề nghiêm trọng. Hãy thử lại sau. Nếu vấn đề này xuất hiện " "một lần nữa, xin vui lòng báo cáo lỗi tới các nhà phát triển." #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "" "Soát lỗi chính tả của tên gói và kiểm tra xem kho phần mềm thích hợp đã được " "kích hoạt hay chưa." #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "Hiện tại việc cập nhật là không cần thiết." #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "Hiện tại việc cài đặt là không cần thiết" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "Hiện tại việc gỡ bỏ là không cần thiết." #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "Bạn đã yêu cầu gỡ bỏ một gói thiết yếu trong hệ thống của bạn." #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "Kết nối đến trình nền đã mất. Nhiều khả năng trình nền đã sụp đổ." #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "Việc cài đặt hoặc gỡ bỏ một gói phần mềm đã thất bại." #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "Chức năng đang được yêu cầu không được hỗ trợ." #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "Có vẻ như xuất hiện lỗi lập trình trong aptdaemon, phần mềm này giúp bạn cài " "đặt/gõ bỏ phần mềm và thực hiện những tác vụ liên quan khác đến việc quản lý " "gói." #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "Lỗi này có thể được gây ra bởi các gói phần mềm cần thêm vào bị thiếu hay " "không thể cài đặt. Hơn nữa có thể đã xảy ra xung đột giữa các gói không được " "phép cài đặt trong cùng một lúc." #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "Nó yêu cầu cài đặt các gói từ các nguồn chưa được chứng thực." #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "Sự cài đặt đã thất bại do một lỗi sai trong gói phần mềm hoặc do quá trình " "cài đặt đã bị kết thúc một cách không chuẩn. Bạn phải sửa lại lỗi này trước " "khi có khả năng cài đặt hoặc loại bỏ bất kỳ một phần mềm nào khác." #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "" "Vui lòng sao chép tập tin này đến máy cục bộ và kiểm tra quyền truy cập tập " "tin." #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "Cài đặt một gói vi phạm tiêu chuẩn chất lượng là không được chấp nhận. Việc " "này có thể gây ra những vấn đề nghiêm trọng cho máy tính của bạn. Vui lòng " "liện lạc với cá nhân hoặc tổ chức cung cấp gói này và kèm các chi tiết bên " "dưới." #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "Khóa chứng nhận cần thiết để chạy phần mềm này đã được tải về nhưng khóa đó " "không đúng hay không thể được cài đặt một cách đúng đắn.\n" "Xem chi tiết để biết thêm thông tin." #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "Tất cả bản nâng cấp có hiệu lực đã được cài đặt rồi." #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "" "Không thể tải xuống khóa chứng nhận dùng để cho phép bạn sử dụng bộ phận " "phần mềm này. Vui lòng kiểm tra lại kết nối mạng." #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "Bạn không được phép thực hiện hành động này." #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "Việc tải các tập tin gói đã thất bại" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "Việc tải về thông tin kho phần mềm đã thất bại" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "Các phụ thuộc gói phần mềm không thể được giải quyết" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "Hệ thống gói bị hỏng" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "Khóa đã không được cài đặt" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "Khóa đã không được gỡ bỏ" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "Việc khóa bộ quản lý gói thất bại" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "Việc nạp danh sách gói thất bại" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "Gói không tồn tại" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "Gói là mới nhất rồi" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "Gói đã được cài đặt rồi" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "Gói chưa được cài đặt" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "Việc gỡ bỏ gói hệ thống thiết yếu thất bại" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "Tác vụ không thể được quản lý hay điều khiển" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "Hoạt động gói thất bại" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "Yêu cầu cài đặt các gói không đáng tin cậy" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "Lần cài đặt trước chưa hoàn thành xong" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "Gói này có chất lượng kém" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "Không thể mở tập tin cài gói" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "Chức không được hỗ trợ" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "Lỗi khi tải khóa chứng nhận xuống" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "Lỗi khi cài đặt khóa chứng nhận" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "Hệ thống này là mới nhất rồi" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "Một lỗi không xử lý được đã xảy ra" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "Đang chờ cho dịch vụ để bắt đầu" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "Đang đợi" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "Đang chờ môi trường cần thiết" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "Đang chờ các bộ quản lý phần mềm khác thoát" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "Đang chờ nhắc tập tin cấu hình" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "Đang chạy tác vụ" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "Đang tải về" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "Đang truy vấn nguồn phần mềm" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "Đang dọn dẹp" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "Đã hoàn tất" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "Đang hủy bỏ" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "Đang nạp danh sách phần mềm" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "Đang cài đặt %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "Đang cấu hình %s..." #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "Đang gỡ bỏ %s..." #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "Đang gỡ bỏ hoàn toàn %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "Đang ghi nhận tình trạng biến mất của %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "Đang chạy bộ gây nên tiến trình cuối cùng cài đặt %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "Đang nâng cấp %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "Đang mở gói %s..." #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "Đang chuẩn bị cài đặt %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "Đang chuẩn bị cấu hình %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "Đang chuẩn bị gỡ bỏ %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "Đang chuẩn bị gỡ bỏ hoàn toàn %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "Đã cài đặt %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "Đã gỡ bỏ hoàn toàn %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "Đã gỡ bỏ %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "Hoàn tất" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "Xác thực thất bại" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "Đang lấy về" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "Rảnh" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "Mạng không có sẵn" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "Đang xử lý %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "Đã tải %sB của %sB với tốc độ %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "Đã tải về %sB của %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "Chi tiết" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "Tập tin" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "Đã tải %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "Đã tải về" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "CD/DVD '%s' là bắt buộc" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "Hãy đưa CD/DVD bên trên vào ổ '%s' để cài đặt các gói phần mềm từ nó." #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "_Tiếp tục" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "Cài đặt" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "Cài lại" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "Gỡ bỏ" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "Làm sạch" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "Nâng cấp" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "Hạ cấp" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "Bỏ qua nâng cấp" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "Hãy nhìn một chút vào danh sách các thay đổi dưới đây." #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "Phần mềm phụ thêm cần được cài đặt" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "Phần mềm phụ thêm cần được cài đặt lại" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "Phần mềm phụ thêm cần được gỡ bỏ" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "Phần mềm phụ thêm cần được làm sạch" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "Phần mềm phụ thêm cần được nâng cấp" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "Phần mềm phụ thêm cần được hạ cấp" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "Các cập nhật sẽ bị bỏ qua" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "Các thay đổi phụ thêm là cần thiết" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "Tổng cộng %sB sẽ được tải." #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "%sB không gian đĩa sẽ được giải phóng." #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "Thêm %sB không gian đĩa sẽ được sử dụng." #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "" "Thay thế những thay đổi của bạn trong '%s' bằng một tập tin cấu hình phiên " "bản mới hơn?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "" "Nếu bạn không biết lý do tại sao đã có tệp này rồi, thì việc thay thế nó " "thường sẽ an toàn." #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "_Các thay đổi" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "_Giữ lại" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "_Thay thế" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "_Chi tiết" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "Chờ %s để thoát" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "Đang tải về %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "kho cục bộ" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "Đang tải từ %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "Cấu trúc của %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "Diễn giải của %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "Diễn giải chữ ký của %s" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "Những gói sẵn dùng từ %s" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "Những nguồn sẵn dùng từ %s" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "Những bản dịch sẵn dùng từ %s" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "Dịch sang %s (%s) từ %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "Dịch sang %s từ %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "Các bản dịch (%s) từ %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "Gói %s không sẵn có" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "Gói %s chưa được cài đặt" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "Phiên bản %s của %s chưa được cài đặt" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "Gói %s đã được cài đặt rồi" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "Phiên bản %s của %s không sẵn có." #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "Đường dẫn URL khóa máy chủ không hợp lệ: %s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "Giao thức máy chủ không hợp lệ: %s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "Khóa kí danh không hợp lệ: %s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "Tải về và cài đặt khóa %s từ %s không thành công:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "Tập tin khóa %s không thể cài đặt: %s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "Khóa với vân tay %s không thể gỡ bỏ: %s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "Gói %s không thể gỡ bỏ." #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "Phiên bản %s của %s chưa được cài đặt" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "Phiên bản cũ %s của %s đã được cài đặt rồi" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "Phiên bản %s của %s đã được cài đặt rồi" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "Phiên bản %s của %s không sẵn có" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "Bạn cần xác định một phiên bản để hạ cấp %s xuống" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "Phiên bản mới %s của %s đã được cài rồi" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "Gói %s chưa sẵn có trong bản phát hành %s này." #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "Gói %s không thể gỡ bỏ" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "Gói này không cung cấp một trường Installed-Size hợp lệ. Tham khảo Debian " "Policy 5.6.20." #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "Khóa chứng nhận trống" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "Khóa chứng nhận không được phép chứa mã thực thi." #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "Đường dẫn khóa chứng nhận %s không thích hợp" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "Khóa chứng nhận đã tồn tại: %s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "" "Vị trí của khóa chứng nhận không an toàn do nó chứa liên kết tượng trưng. " "Đường dẫn %s dẫn tới %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "Chưa tồn tại thư mục để cài khóa: %s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "Thất bại khi ghi tập tin khóa vào: %s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "Những gói sau không chưa được thỏa mãn về các gói phụ thuộc:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "nhưng nó là một gói ảo" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "nhưng nó chưa được cài đặt" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "nhưng nó sẽ không được cài đặt" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "nhưng %s đã được cài đặt" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "nhưng %s sẽ được cài đặt" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "" #~ "Bổ sung khóa xác thực vào danh sách nhà cung cấp tin cậy đã thất bại" aptdaemon-1.1.1+bzr982/po/zh_CN.po0000644000000000000000000012407712375372771014654 0ustar 00000000000000# Simplified Chinese translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # # YunQiang Su , 2012. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-01 12:30+0000\n" "Last-Translator: Aron Xu \n" "Language-Team: Chinese (simplified) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "列出信任的来源" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "要列出信任的来源,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "删除已下载的软件包" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "需要授权以删除已下载的软件包文件。" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "修改软件设置" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "需要授权以更改软件设置。" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "修改软件源" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "要更改软件源设置,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "安装软件包文件" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "要安装这个软件包,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "更新软件包信息" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "要更新软件目录,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "安装或卸载软件包" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "要安装或卸载软件,您需要进行验证。" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "从高度受信的白名单软件仓库中安装软件。" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "您需要经过认证方可安装软件。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "添加一个新软件源并从中安装软件包" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "要从新的软件源中安装软件,您需要进行验证。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "添加一个新的付费软件源并从中安装软件包" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "要安装付费软件,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "升级软件包" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "要安装更新的软件,您需要进行验证。" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "取消另一用户的任务" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "要取消其他人的软件变更,您需要进行身份认证。" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "为软件下载设置代理服务器" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "要使用代理服务器下载软件,您需要进行验证。" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "错误" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "下载 %sB / %sB 速度 %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "已下载 %sB,共 %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "错误:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "不允许您执行此操作。" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "队列" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "正在解决依赖关系" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "将要安装下列新软件包 (%(count)s 个):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "将要升级下列软件包 (%(count)s 个):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "将要卸载下列软件包 (%(count)s 个):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "将要降级下列软件包 (%(count)s 个):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "将要重新安装下列软件包 (%(count)s 个):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "将不更新下列软件包 (%(count)s 个):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "需要获取 %sB 文件。" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "执行此操作后,将会使用 %sB 磁盘空间。" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "执行此操作后,将会释放 %sB 磁盘空间。" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "您想要继续吗 [Y/n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "要操作多于一个包,将包的名称用引号括起来:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "刷新缓存" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "尝试修复损坏的依赖关系。这可能有危险,可能会尝试卸载许多软件包。" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "尝试完成上次不完整的安装" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "安装给定的软件包" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "重新安装给定的软件包" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "删除给定的包" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "删除给定的包和配置文件" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "降级当前软件包" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "不推荐:请使用 --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "用安全的方式升级系统" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "升级系统,可能会安装、卸载软件包" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "信任将该制造商" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "添加制造商密钥标识 (同时需要 --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "使用指定的密钥服务器来查找密钥" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "从给定的 deb 行添加软件源" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "指定一个附加的 sources.list.d 文件来添加软件源。" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "列出信任的制造商密钥" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "移除给定指纹对应的信任密钥" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "重新配置已经安装的软件包。可以指定的最低优先级的问题。" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "将显示事项的最低 debconf 优先级" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "不要附加到 apt 终端" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "允许来自未认证源的软件包" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "显示该软件包的附加信息。当前仅显示版本号。" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "正在等待验证" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "不活动时不关闭后台程序" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "不要加载任何插件" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "显示内部处理信息" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "退出并替换当前正在运行的后台程序" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "在 DBus 会话总线上监听(仅用于测试)" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "在指定的 chroot 中执行操作" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "在指定的文件里存储配置状态" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "不要对系统进行任何改动 (仅供发者使用)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "已安装文件" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "已安装软件包" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "已从文件添加密钥" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "已更新缓存" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "搜索完毕" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "已移除信任密钥" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "已删除的软件包" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "已更新的软件包" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "已升级的系统" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "已应用的更改" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "修复了不完整的安装" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "修复了损坏的依赖关系" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "已添加软件源" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "启用发行版的组件" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "删除已下载的软件包文件" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "重新配置已安装的软件包" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "成功" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "取消" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "失败" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "正在安装文件" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "正在安装软件包" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "正从文件添加密钥" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "正在更新缓存" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "正移除信任密钥" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "正在删除软件包" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "正在升级软件包" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "正在升级系统" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "正在应用更改" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "正在修复不完整的安装" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "正在修复已安装的软件" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "正在添加软件源" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "正在启用发行版的组件" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "正在删除已下载的软件包文件" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "正在重新配置已安装的软件包" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "正在搜索" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "包文件安装失败" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "软件安装失败" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "刷新软件列表失败" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "一旦失败则从信任列表中移除提供者" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "移除软件失败" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "更新软件失败" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "升级系统失败" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "应用变更失败" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "修复不完整的安装 失败" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "修复损坏的依赖关系 失败" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "添加软件源失败" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "启用发行版的组件失败" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "无法删除已下载的软件包文件" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "搜索失败" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "正在添加许可密钥" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "检查您的网络连接。" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "检查您是否使用了第三方源。如果是就禁用它们,它们常常导致问题。\n" "然后在终端中运行以下命令:apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "所选文件可能不是 GPG 密钥文件或者已经损坏。" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "所选的密钥无法移除。检查您提供的指纹是否有效。" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "检查您有没有运行其他软件包管理工具,比如新立得或者 aptitude。在同一时间只有一" "个工具可以进行更改。" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "" "这是个很严重的问题。请稍后重试。如果问题还出现,请向开发人员报告一个错误。" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "检查包名的拼写是否正确,以及是否启用了相应的仓库。" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "不需要进行更新。" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "不需要进行安装" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "不需要进行卸载。" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "您请求移除一个软件包,而它是系统必需的组件。" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "与后台程序的连接丢失。可能后台程序已崩溃。" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "安装或移除软件包失败。" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "不支持所请求的功能。" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "aptdaemon 中似乎有编程错误,该软件用于安装、卸载软件并且执行其他的软件包管理" "任务。" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "这个错误可能是需要不存在或不可安装的软件包引起的。或者可能在软件包之间有冲" "突,它们不能同时安装。" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "此操作需要从未验证的源安装软件包。" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "安装失败可能是因为对应软件包的错误或者被意外取消。您必须修复这个问题才能继续" "安装或移除软件。" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "请将该文件复制到您的本地电脑中并检查文件的权限。" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "安装会违反质量标准的软件包不被允许,因这可能对您的计算机造成问题。请联系提供" "此软件包文件的组织或个人,并提供以下详细信息。" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "已下载的运行这款软件所需的许可密钥无效,或者无法正确安装。\n" "有关更多信息,请参见详细信息。" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "所有可用更新均已安装。" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "无法下载可使您使用这款软件的许可密钥。请检查您的网络连接。" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "不允许您执行此操作。" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "下载软件包文件失败" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "下载软件仓库信息失败" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "无法解决软件包依赖" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "软件包系统已损坏" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "没有安装密钥" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "没有移除密钥" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "锁定软件包管理器失败" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "载入软件包列表失败" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "软件包不存在" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "软件包已是最新" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "软件包已安装" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "软件包没有安装" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "移动系统必需软件包失败" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "无法监视或控制任务" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "软件包操作失败" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "需要安装不能信任的软件包" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "上次安装未完成" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "该软件包质量欠佳" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "无法打开软件包文件" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "不支持的功能" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "无法下载许可密钥" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "无法安装许可密钥" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "该系统已是最新" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "发生了一个无法处理的错误" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "正在等待服务启动" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "等待中" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "等待所需的媒体" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "等待其他软件管理程序退出" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "等待配置文件呼应" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "正在运行任务" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "下载中" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "正在查询软件源" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "清理中" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "完成" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "正在取消" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "正在载入软件列表" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "正在安装 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "正在配置 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "正在卸载 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "正在完全删除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "正在记录 %s 的消失" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "运行安装后的触发器 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "正在升级 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "正在解压缩 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "正在准备安装 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "正在准备配置 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "正在准备删除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "正在准备完全删除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "%s 已安装" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "%s 已完全删除" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "%s 已删除" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "完成" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "认证失败" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "获取中" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "空闲" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "网络不可用" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "正在处理 %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "下载 %sB / %sB 速度 %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "已下载 %sB,共 %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "详情" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "文件" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "已下载 %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "已下载" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "需要光盘“%s”" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "请将以上光盘插入光驱“%s”以安装光盘中的软件包。" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "继续(_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "安装" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "重新安装" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "删除" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "清理" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "升级" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "降级" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "跳过升级" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "请查看下面的修改列表。" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "需要安装额外的软件" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "需要重新安装额外的软件" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "需要删除额外的软件" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "需要清理额外的软件" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "需要升级额外的软件" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "需要降级额外的软件" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "将跳过更新" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "需要附加的更改" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "总共将下载 %sB。" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "将释放 %sB 磁盘空间。" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "将多占用 %sB 的磁盘空间。" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "用配置文件的更新版本覆盖您在“%s”中的更改吗?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "如果您不知道此文件为什么已经存在,那么覆盖它通常是安全的。" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "变更(_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "维持原状(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "替换(_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "细节(_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "正在等待 %s 退出" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "下载中 %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "本地软件仓库" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "正在从 %s 下载" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s 的结构" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s 的描述" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s 的描述签名" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "可从 %s 获得的软件包" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "可从 %s 获得的源码" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "可从 %s 获得的翻译" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "%s (%s)的翻译,来自 %s" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "%s 的翻译,来自 %s" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "%s 翻译,来自 %s 仓库。" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "软件包 %s 不可用。" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "未安装软件包 %s" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "%s 版本的 %s 未安装" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "已安装软件包 %s" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s 版本的 %s 不可用。" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "密钥服务器 URL 无效:%s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "无效的服务器协议:%s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "无效的密钥 ID:%s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "下载并安装密钥 %s 从 %s 时失败:\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "无法安装密钥文件 %s:%s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "无法删除指纹 %s 的密钥文件:%s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "无法卸载软件包 %s" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "没有安装 %s 版本的 %s" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "已经安装更早的 %s 版本的 %s" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "已经安装 %s 版本的 %s" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s 版本的 %s 不可用" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "您需要指定一个版本号以降级 %s" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "更新的 %s 版本的 %s 已经安装" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "软件包 %s 在发行版 %s 中不可用。" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "无法卸载软件包 %s" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "" "软件包没有提供合法的 Installed-Size 控制字符串。查看 Debian Policy 5.6.20。" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "许可密钥为空" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "许可密钥不允许包含可执行代码。" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "许可密钥路径 %s 无效" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "许可密钥已存在:%s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "许可密钥的位置不安全,因为其包含符号链接。路径 %s 映射到 %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "该密钥要安装到目录尚不存在:%s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "无法将密钥文件写入到:%s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "下列软件包未满足的依赖关系:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "但是它是虚拟软件包" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "但是 %s 没有安装" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "但是无法安装 %s" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "但是 %s 已经安装" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "但是将要安装 %s" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "添加密钥到可信任程序提供者列表失败" aptdaemon-1.1.1+bzr982/po/zh_HK.po0000644000000000000000000012434112375372771014650 0ustar 00000000000000# Chinese (Hong Kong) translation for aptdaemon # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the aptdaemon package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-28 02:37+0000\n" "Last-Translator: Walter Cheuk \n" "Language-Team: Chinese (Hong Kong) , 2009. # msgid "" msgstr "" "Project-Id-Version: aptdaemon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:36+0200\n" "PO-Revision-Date: 2012-10-28 02:36+0000\n" "Last-Translator: Walter Cheuk \n" "Language-Team: Traditional Chinese \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Launchpad-Export-Date: 2013-03-09 23:28+0000\n" "X-Generator: Launchpad (build 16523)\n" #: ../data/org.debian.apt.policy.in.h:1 msgid "List keys of trusted vendors" msgstr "列出信任廠商的金鑰" #: ../data/org.debian.apt.policy.in.h:2 msgid "To view the list of trusted keys, you need to authenticate." msgstr "若要檢視信任金鑰清單,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:3 ../aptdaemon/console.py:619 msgid "Remove downloaded package files" msgstr "移除已下載的套件檔案" #: ../data/org.debian.apt.policy.in.h:4 msgid "To clean downloaded package files, you need to authenticate." msgstr "若要清空下載的套件檔案,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:5 msgid "Change software configuration" msgstr "變更軟體組態" #: ../data/org.debian.apt.policy.in.h:6 msgid "To change software settings, you need to authenticate." msgstr "若要變更軟體設定值,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:7 msgid "Change software repository" msgstr "變更軟體套件庫" #: ../data/org.debian.apt.policy.in.h:8 msgid "To change software repository settings, you need to authenticate." msgstr "若要變更軟體套件庫設定值,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:9 msgid "Install package file" msgstr "安裝套件檔案" #: ../data/org.debian.apt.policy.in.h:10 msgid "To install this package, you need to authenticate." msgstr "若要安裝此套件,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:11 msgid "Update package information" msgstr "更新套件資訊" #: ../data/org.debian.apt.policy.in.h:12 msgid "To update the software catalog, you need to authenticate." msgstr "若要更新軟體型錄,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:13 msgid "Install or remove packages" msgstr "安裝或移除套件" #: ../data/org.debian.apt.policy.in.h:14 msgid "To install or remove software, you need to authenticate." msgstr "若要安裝或移除軟體,您需要通過認證。" #. This priviledge will be requested when installing a package #. from a high trusted repository that can be explicitely whitelisted. #. #. The defaults for this action are the same as #. "org.debian.apt.install-or-remove-packages". #. #. The admin can override them to e.g. allow passwordless installs for #. leightweight applications like unity-webapps or for packages #. comming from high trust repositories (like internal repositories) #. #: ../data/org.debian.apt.policy.in.h:25 msgid "Install software from a high-trust whitelisted repository." msgstr "從白名單中高度信任的套件庫安裝軟體" #: ../data/org.debian.apt.policy.in.h:26 msgid "To install software, you need to authenticate." msgstr "若要安裝軟體,您需要先通過身份驗證。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #: ../data/org.debian.apt.policy.in.h:32 msgid "Add a new repository and install packages from it" msgstr "加入新套件庫並且安裝它所提供的套件" #: ../data/org.debian.apt.policy.in.h:33 msgid "To install software from a new source, you need to authenticate." msgstr "若要從新來源安裝軟體,您需要通過認證。" #. This privilege allows to call AddRepository, UpdateCache(Partially) #. and InstallPackages in a row and only authenticating once. #. #. The client has to authenticate for this privilege before calling #. the aptdaemon methods. #. #. The only difference to install-packages-from-new-repo is the wording #. of the message. It is required by Ubuntu's Software-Center. #: ../data/org.debian.apt.policy.in.h:42 msgid "Add a new repository of purchased software and install packages from it" msgstr "加入購買軟體的新套件庫並且安裝它提供的套件" #: ../data/org.debian.apt.policy.in.h:43 msgid "To install purchased software, you need to authenticate." msgstr "若要安裝購買的軟體,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:44 msgid "Upgrade packages" msgstr "升級套件" #: ../data/org.debian.apt.policy.in.h:45 msgid "To install updated software, you need to authenticate." msgstr "若要安裝更新版的軟體,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:46 msgid "Cancel the task of another user" msgstr "取消另一位使用者的任務" #: ../data/org.debian.apt.policy.in.h:47 msgid "To cancel someone else's software changes, you need to authenticate." msgstr "若要取消其它人所作出的軟體變更,您需要通過認證。" #: ../data/org.debian.apt.policy.in.h:48 msgid "Set a proxy for software downloads" msgstr "設定用來下載軟體的代理伺服器" #: ../data/org.debian.apt.policy.in.h:49 msgid "" "To use a proxy server for downloading software, you need to authenticate." msgstr "若要使用代理伺服器以下載軟體,您需要通過認證。" #: ../aptdaemon/console.py:215 msgid "ERROR" msgstr "錯誤" #: ../aptdaemon/console.py:249 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB at %(rate)sB/s" msgstr "已下載 %sB,共 %sB,速率 %sB/s" #: ../aptdaemon/console.py:255 #, fuzzy, python-format msgid "Downloaded %(cur)sB of %(total)sB" msgstr "已下載 %sB,共 %sB" #: ../aptdaemon/console.py:385 ../aptdaemon/console.py:390 msgid "ERROR:" msgstr "錯誤:" #: ../aptdaemon/console.py:386 msgid "You are not allowed to perform this action." msgstr "您不被許可執行此動作。" #: ../aptdaemon/console.py:409 ../aptdaemon/console.py:537 msgid "Queuing" msgstr "正在佇列" #: ../aptdaemon/console.py:417 ../aptdaemon/enums.py:527 msgid "Resolving dependencies" msgstr "解析相依性中" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:459 #, python-format msgid "The following NEW package will be installed (%(count)s):" msgid_plural "The following NEW packages will be installed (%(count)s):" msgstr[0] "下列「新」套件將被安裝 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:467 #, python-format msgid "The following package will be upgraded (%(count)s):" msgid_plural "The following packages will be upgraded (%(count)s):" msgstr[0] "會升級以下套件 (%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:475 #, python-format msgid "The following package will be REMOVED (%(count)s):" msgid_plural "The following packages will be REMOVED (%(count)s):" msgstr[0] "下列套件將被「移除」(%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:484 #, python-format msgid "The following package will be DOWNGRADED (%(count)s):" msgid_plural "The following packages will be DOWNGRADED (%(count)s):" msgstr[0] "下列套件將被「降級」(%(count)s):" #. TRANSLATORS: %s is the number of packages #: ../aptdaemon/console.py:492 #, python-format msgid "The following package will be reinstalled (%(count)s):" msgid_plural "The following packages will be reinstalled (%(count)s):" msgstr[0] "下列套件將被重新安裝 (%(count)s):" #: ../aptdaemon/console.py:499 #, python-format msgid "The following package has been kept back (%(count)s):" msgid_plural "The following packages have been kept back (%(count)s):" msgstr[0] "下列套件會維持不變 (%(count)s):" #: ../aptdaemon/console.py:507 #, python-format msgid "Need to get %sB of archives." msgstr "需要取得 %sB 的檔案。" #: ../aptdaemon/console.py:510 #, python-format msgid "After this operation, %sB of additional disk space will be used." msgstr "在此項操作之後,將使用 %sB 的額外磁碟空間。" #: ../aptdaemon/console.py:514 #, python-format msgid "After this operation, %sB of additional disk space will be freed." msgstr "在此項操作之後,將釋放 %sB 的額外磁碟空間。" #: ../aptdaemon/console.py:522 ../aptdaemon/console.py:524 msgid "Do you want to continue [Y/n]?" msgstr "您想要繼續嗎 [是 Y/否 n]?" #: ../aptdaemon/console.py:545 msgid "" "To operate on more than one package put the package names in quotation " "marks:\n" "aptdcon --install \"foo bar\"" msgstr "" "若要同時操作多個套件,請將套件名稱置於英式引號 (\"\") 內:\n" "aptdcon --install \"foo bar\"" #: ../aptdaemon/console.py:551 msgid "Refresh the cache" msgstr "重新整理快取" #: ../aptdaemon/console.py:554 msgid "" "Try to resolve broken dependencies. Potentially dangerous operation since it " "could try to remove many packages." msgstr "嘗試解決損壞的相依關係。本操作有潛在危險,因為它會嘗試移除許多套件。" #: ../aptdaemon/console.py:559 msgid "Try to finish a previous incompleted installation" msgstr "嘗試完成前次的不完整安裝" #: ../aptdaemon/console.py:563 ../aptdaemon/console.py:576 msgid "Install the given packages" msgstr "安裝給定的套件" #: ../aptdaemon/console.py:566 msgid "Reinstall the given packages" msgstr "重新安裝給定的套件" #: ../aptdaemon/console.py:569 msgid "Remove the given packages" msgstr "移除給定的套件" #: ../aptdaemon/console.py:572 msgid "Remove the given packages including configuration files" msgstr "移除給定的套件與其組態檔" #: ../aptdaemon/console.py:579 msgid "Downgrade the given packages" msgstr "降級指定的套件" #: ../aptdaemon/console.py:582 msgid "Deprecated: Please use --safe-upgrade" msgstr "已棄用:請使用 --safe-upgrade" #: ../aptdaemon/console.py:586 msgid "Upgrade the system in a safe way" msgstr "以安全的方式升級系統" #: ../aptdaemon/console.py:589 msgid "Upgrade the system, possibly installing and removing packages" msgstr "升級系統,可能會安裝與移除套件" #: ../aptdaemon/console.py:593 msgid "Add the vendor to the trusted ones" msgstr "加入該廠商為信任廠商" #: ../aptdaemon/console.py:596 msgid "Add the vendor keyid (also needs --keyserver)" msgstr "加入該廠商的金鑰 id (還需要 --keyserver)" #: ../aptdaemon/console.py:600 msgid "Use the given keyserver for looking up keys" msgstr "使用給定的金鑰伺服器來查詢金鑰" #: ../aptdaemon/console.py:604 msgid "Add new repository from the given deb-line" msgstr "從給定的 deb-line 加入新套件庫" #: ../aptdaemon/console.py:608 msgid "" "Specify an alternative sources.list.d file to which repositories should be " "added." msgstr "指定套件庫應加入其中的替代性 sources.list.d 檔案。" #: ../aptdaemon/console.py:612 msgid "List trusted vendor keys" msgstr "列出信任的廠商金鑰" #: ../aptdaemon/console.py:615 msgid "Remove the trusted key of the given fingerprint" msgstr "移除給定指紋的信任金鑰" #: ../aptdaemon/console.py:622 msgid "" "Reconfigure installed packages. Optionally the minimum priority of questions " "can be specified" msgstr "重新組態已安裝套件。可以選擇是否要指定問題的最小優先等級" #: ../aptdaemon/console.py:627 msgid "The minimum debconf priority of question to be displayed" msgstr "要顯示的問題其最小 debconf 優先等級" #: ../aptdaemon/console.py:631 msgid "Do not attach to the apt terminal" msgstr "不要附加至 apt 終端" #: ../aptdaemon/console.py:635 msgid "Allow packages from unauthenticated sources" msgstr "允許來自未認證來源的套件" #: ../aptdaemon/console.py:639 msgid "" "Show additional information about the packages. Currently only the version " "number" msgstr "顯示關於套件的額外資訊。目前只有版本號碼" #: ../aptdaemon/console.py:647 ../aptdaemon/enums.py:532 msgid "Waiting for authentication" msgstr "正在等候認證" #: ../aptdaemon/core.py:2135 msgid "Do not shutdown the daemon because of inactivity" msgstr "請勿因背景服務無動作而關閉之" #: ../aptdaemon/core.py:2140 msgid "Do not load any plugins" msgstr "不要載入任何外掛程式" #: ../aptdaemon/core.py:2144 msgid "Show internal processing information" msgstr "顯示內部處理資訊" #: ../aptdaemon/core.py:2149 msgid "Quit and replace an already running daemon" msgstr "退出及替換已在執行中的背景服務" #: ../aptdaemon/core.py:2154 msgid "Listen on the DBus session bus (Only required for testing" msgstr "監聽 DBus 作業階段 bus (只有測試需要" #: ../aptdaemon/core.py:2158 msgid "Perform operations in the given chroot" msgstr "在給定的 chroot 環境中執行操作" #: ../aptdaemon/core.py:2163 msgid "Store profile stats in the specified file" msgstr "在指定的檔案中儲存設定狀態" #: ../aptdaemon/core.py:2168 msgid "Do not make any changes to the system (Only of use to developers)" msgstr "不要對系統作任何變更(只對開發者有用)" #: ../aptdaemon/enums.py:337 msgid "Installed file" msgstr "已安裝的檔案" #: ../aptdaemon/enums.py:338 msgid "Installed packages" msgstr "已安裝的套件" #: ../aptdaemon/enums.py:339 msgid "Added key from file" msgstr "從檔案中加入金鑰" #: ../aptdaemon/enums.py:340 msgid "Updated cache" msgstr "更新快取" #: ../aptdaemon/enums.py:341 msgid "Search done" msgstr "搜尋完成" #: ../aptdaemon/enums.py:342 msgid "Removed trusted key" msgstr "已移除的可信任金鑰" #: ../aptdaemon/enums.py:343 msgid "Removed packages" msgstr "已移除的套件" #: ../aptdaemon/enums.py:344 msgid "Updated packages" msgstr "已更新的套件" #: ../aptdaemon/enums.py:345 msgid "Upgraded system" msgstr "已升級的系統" #: ../aptdaemon/enums.py:346 msgid "Applied changes" msgstr "已套用的變更" #: ../aptdaemon/enums.py:347 msgid "Repaired incomplete installation" msgstr "已修復的不完整安裝" #: ../aptdaemon/enums.py:348 msgid "Repaired broken dependencies" msgstr "已修復的不完整相依性" #: ../aptdaemon/enums.py:349 msgid "Added software source" msgstr "已加入軟體來源" #: ../aptdaemon/enums.py:350 msgid "Enabled component of the distribution" msgstr "已啟用發行版元件" #: ../aptdaemon/enums.py:351 msgid "Removed downloaded package files" msgstr "已移除下載的套件檔案" #: ../aptdaemon/enums.py:352 msgid "Reconfigured installed packages" msgstr "已重新組態已安裝套件" #: ../aptdaemon/enums.py:356 msgid "Successful" msgstr "成功" #: ../aptdaemon/enums.py:357 msgid "Canceled" msgstr "已取消" #: ../aptdaemon/enums.py:358 ../aptdaemon/enums.py:569 msgid "Failed" msgstr "失敗" #: ../aptdaemon/enums.py:361 msgid "Installing file" msgstr "安裝檔案中" #: ../aptdaemon/enums.py:362 msgid "Installing packages" msgstr "安裝套件中" #: ../aptdaemon/enums.py:363 msgid "Adding key from file" msgstr "從檔案新增金鑰中" #: ../aptdaemon/enums.py:364 msgid "Updating cache" msgstr "更新快取中" #: ../aptdaemon/enums.py:365 msgid "Removing trusted key" msgstr "移除信任的金鑰中" #: ../aptdaemon/enums.py:366 msgid "Removing packages" msgstr "移除套件中" #: ../aptdaemon/enums.py:367 msgid "Updating packages" msgstr "更新套件中" #: ../aptdaemon/enums.py:368 msgid "Upgrading system" msgstr "升級系統中" #: ../aptdaemon/enums.py:369 ../aptdaemon/enums.py:528 msgid "Applying changes" msgstr "套用變更中" #: ../aptdaemon/enums.py:370 msgid "Repairing incomplete installation" msgstr "正在修復不完整的安裝" #: ../aptdaemon/enums.py:371 msgid "Repairing installed software" msgstr "正在修復安裝的軟體" #: ../aptdaemon/enums.py:372 msgid "Adding software source" msgstr "正在加入軟體來源" #: ../aptdaemon/enums.py:373 msgid "Enabling component of the distribution" msgstr "正在啟用發行版元件" #: ../aptdaemon/enums.py:374 msgid "Removing downloaded package files" msgstr "正在移除已下載的套件檔案" #: ../aptdaemon/enums.py:375 msgid "Reconfiguring installed packages" msgstr "正在重新組態已安裝的套件" #: ../aptdaemon/enums.py:376 ../aptdaemon/enums.py:517 msgid "Searching" msgstr "正在搜尋" #: ../aptdaemon/enums.py:380 msgid "Installation of the package file failed" msgstr "套件檔案安裝失敗" #: ../aptdaemon/enums.py:381 msgid "Installation of software failed" msgstr "軟體安裝失敗" #: ../aptdaemon/enums.py:382 msgid "Adding the key to the list of trusted software vendors failed" msgstr "" #: ../aptdaemon/enums.py:384 msgid "Refreshing the software list failed" msgstr "重新整理軟體列表失敗" #: ../aptdaemon/enums.py:385 msgid "Removing the vendor from the list of trusted ones failed" msgstr "從可信任列表中移除供應者失敗" #: ../aptdaemon/enums.py:387 msgid "Removing software failed" msgstr "移除軟體失敗" #: ../aptdaemon/enums.py:388 msgid "Updating software failed" msgstr "更新軟體失敗" #: ../aptdaemon/enums.py:389 msgid "Upgrading the system failed" msgstr "升級系統失敗" #: ../aptdaemon/enums.py:390 msgid "Applying software changes failed" msgstr "套用軟體改變失敗" #: ../aptdaemon/enums.py:391 msgid "Repairing incomplete installation failed" msgstr "不完整的安裝修復失敗" #: ../aptdaemon/enums.py:393 msgid "Repairing broken dependencies failed" msgstr "損壞的相依性修復失敗" #: ../aptdaemon/enums.py:394 msgid "Adding software source failed" msgstr "加入軟體來源時失敗" #: ../aptdaemon/enums.py:395 msgid "Enabling component of the distribution failed" msgstr "啟用發行版元件時失敗" #: ../aptdaemon/enums.py:397 ../aptdaemon/enums.py:398 msgid "Removing downloaded package files failed" msgstr "移除已下載的套件失敗" #: ../aptdaemon/enums.py:399 msgid "Search failed" msgstr "搜尋失敗" #: ../aptdaemon/enums.py:400 msgid "Adding license key" msgstr "正在加入授權金鑰" #: ../aptdaemon/enums.py:404 ../aptdaemon/enums.py:405 msgid "Check your Internet connection." msgstr "檢查您的網際網路連線。" #: ../aptdaemon/enums.py:406 msgid "" "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" msgstr "" "檢查您是否正在使用第三方套件庫。若有使用請關閉它們,因為它們是常見的問題來" "源。\n" "此外在終端機中執行以下指令:apt-get install -f" #: ../aptdaemon/enums.py:411 msgid "The selected file may not be a GPG key file or it might be corrupt." msgstr "選定的檔案可能不是 GPG 金鑰,或者內容已損壞。" #: ../aptdaemon/enums.py:413 msgid "" "The selected key couldn't be removed. Check that you provided a valid " "fingerprint." msgstr "所選的金鑰無法移除。請檢查您提供的指紋是否有效。" #: ../aptdaemon/enums.py:415 msgid "" "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." msgstr "" "請檢查您目前是否正在執行其它軟體管理工具,例如:Synaptic 或 aptitude。同一時" "間內只允許一項工具處理變更。" #: ../aptdaemon/enums.py:418 msgid "" "This is a serious problem. Try again later. If this problem appears again, " "please report an error to the developers." msgstr "有一個嚴重問題。請稍候重試。若此問題再次出現,請向開發者回報錯誤。" #: ../aptdaemon/enums.py:421 msgid "" "Check the spelling of the package name, and that the appropriate repository " "is enabled." msgstr "請檢查套件名稱的拼寫,以及是否啟用合適的套件庫。" #: ../aptdaemon/enums.py:423 msgid "There isn't any need for an update." msgstr "不需要任何更新。" #: ../aptdaemon/enums.py:424 msgid "There isn't any need for an installation" msgstr "不需要任何安裝" #: ../aptdaemon/enums.py:426 msgid "There isn't any need for a removal." msgstr "不需要任何移除" #: ../aptdaemon/enums.py:427 msgid "" "You requested to remove a package which is an essential part of your system." msgstr "您要求移除一個系統必要的套件。" #: ../aptdaemon/enums.py:430 msgid "" "The connection to the daemon was lost. Most likely the background daemon " "crashed." msgstr "背景服務的連線已遺失。背景服務很有可能已當機。" #: ../aptdaemon/enums.py:432 msgid "The installation or removal of a software package failed." msgstr "安裝或移除軟體套件失敗。" #: ../aptdaemon/enums.py:434 msgid "The requested feature is not supported." msgstr "請求的功能尚未支援。" #: ../aptdaemon/enums.py:435 msgid "" "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." msgstr "" "在 aptdaemon 中似乎有程式上的設計錯誤。該軟體允許您安裝或移除軟體,以及執行其" "他與套件管理相關的事務。" #: ../aptdaemon/enums.py:439 msgid "" "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." msgstr "" "此錯誤可能由於所需的額外軟體套件遺失或無法安裝所造成。甚至軟體套件間可能存在" "衝突,使得無法同時安裝。" #: ../aptdaemon/enums.py:445 msgid "This requires installing packages from unauthenticated sources." msgstr "這需要安裝來自未受驗證來源的套件。" #: ../aptdaemon/enums.py:447 msgid "" "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." msgstr "" "這個安裝可能已失敗,可能起因於對應的軟體套件有錯誤,或是安裝過程被以一種不友" "善的方式取消。在您可以進一步安裝或移除任何軟體前,您必須修復此安裝。" #: ../aptdaemon/enums.py:453 msgid "" "Please copy the file to your local computer and check the file permissions." msgstr "請將該檔案複製到您的本地電腦上並檢查檔案權限。" #: ../aptdaemon/enums.py:456 msgid "" "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." msgstr "" "不允許安裝違反品質標準的套件。這可能對您的電腦造成嚴重傷害。請聯絡提供此套件" "檔案的個人或組織,並將下方的細節轉送給他們。" #: ../aptdaemon/enums.py:463 msgid "" "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." msgstr "" "要執行這份軟體需要下載授權金鑰,但此金鑰無效或無法正確安裝。\n" "請見詳細資料瞭解更多訊息。" #: ../aptdaemon/enums.py:469 msgid "All available upgrades have already been installed." msgstr "已經安裝所有可用的升級。" #: ../aptdaemon/enums.py:471 msgid "" "The license key which allows you to use this piece of software could not be " "downloaded. Please check your network connection." msgstr "無法下載讓您使用這份軟體的授權金鑰。請檢查您的網路連線。" #: ../aptdaemon/enums.py:475 #, fuzzy msgid "You don't have the required privileges to perform this action." msgstr "您不被許可執行此動作。" #: ../aptdaemon/enums.py:477 msgid "" "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." msgstr "" #: ../aptdaemon/enums.py:485 msgid "Failed to download package files" msgstr "下載套件檔案失敗" #: ../aptdaemon/enums.py:486 msgid "Failed to download repository information" msgstr "下載套件庫資訊失敗" #: ../aptdaemon/enums.py:488 msgid "Package dependencies cannot be resolved" msgstr "套件相依性無法解析" #: ../aptdaemon/enums.py:489 msgid "The package system is broken" msgstr "套件系統損壞" #: ../aptdaemon/enums.py:490 msgid "Key was not installed" msgstr "金鑰未安裝" #: ../aptdaemon/enums.py:491 msgid "Key was not removed" msgstr "金鑰未移除" #: ../aptdaemon/enums.py:492 msgid "Failed to lock the package manager" msgstr "鎖定套件管理員失敗" #: ../aptdaemon/enums.py:493 msgid "Failed to load the package list" msgstr "載入套件列表失敗" #: ../aptdaemon/enums.py:494 msgid "Package does not exist" msgstr "套件不存在" #: ../aptdaemon/enums.py:495 msgid "Package is already up to date" msgstr "套件已經是最新狀態" #: ../aptdaemon/enums.py:496 msgid "Package is already installed" msgstr "套件已經安裝" #: ../aptdaemon/enums.py:497 msgid "Package isn't installed" msgstr "套件未安裝" #: ../aptdaemon/enums.py:498 msgid "Failed to remove essential system package" msgstr "移除必要系統套件失敗" #: ../aptdaemon/enums.py:500 msgid "Task cannot be monitored or controlled" msgstr "任務無法被監控或控制" #: ../aptdaemon/enums.py:501 msgid "Package operation failed" msgstr "套件作業失敗" #: ../aptdaemon/enums.py:502 msgid "Requires installation of untrusted packages" msgstr "需要安裝未受信任的套件" #: ../aptdaemon/enums.py:504 msgid "Previous installation hasn't been completed" msgstr "上一次的安裝尚未完整" #: ../aptdaemon/enums.py:505 msgid "The package is of bad quality" msgstr "該套件品質不良" #: ../aptdaemon/enums.py:506 msgid "Package file could not be opened" msgstr "無法開啟套件檔案" #: ../aptdaemon/enums.py:507 msgid "Not supported feature" msgstr "未支援的功能" #: ../aptdaemon/enums.py:508 msgid "Failed to download the license key" msgstr "無法下載授權金鑰" #: ../aptdaemon/enums.py:509 msgid "Failed to install the license key" msgstr "無法安裝授權金鑰" #: ../aptdaemon/enums.py:510 msgid "The system is already up to date" msgstr "系統已經是最新狀態" #: ../aptdaemon/enums.py:511 msgid "You could not be authorized" msgstr "" #: ../aptdaemon/enums.py:512 msgid "You are not allowed to perform this action" msgstr "" #: ../aptdaemon/enums.py:513 msgid "An unhandlable error occured" msgstr "遭遇到無法處理的錯誤" #: ../aptdaemon/enums.py:516 msgid "Waiting for service to start" msgstr "等待服務啟動中" #: ../aptdaemon/enums.py:518 msgid "Waiting" msgstr "正在等待" #: ../aptdaemon/enums.py:519 msgid "Waiting for required medium" msgstr "等待需要的媒體中" #: ../aptdaemon/enums.py:520 msgid "Waiting for other software managers to quit" msgstr "等帶其它軟體管理員退出中" #: ../aptdaemon/enums.py:521 msgid "Waiting for configuration file prompt" msgstr "等待設定檔提示中" #: ../aptdaemon/enums.py:523 msgid "Running task" msgstr "執行任務中" #: ../aptdaemon/enums.py:524 msgid "Downloading" msgstr "正在下載" #: ../aptdaemon/enums.py:525 msgid "Querying software sources" msgstr "正在查詢軟體來源" #: ../aptdaemon/enums.py:526 msgid "Cleaning up" msgstr "清理中" #: ../aptdaemon/enums.py:529 msgid "Finished" msgstr "已完成" #: ../aptdaemon/enums.py:530 msgid "Cancelling" msgstr "取消中" #: ../aptdaemon/enums.py:531 msgid "Loading software list" msgstr "載入軟體列表中" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:536 #, python-format msgid "Installing %s" msgstr "正在安裝 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:538 #, python-format msgid "Configuring %s" msgstr "正在設定 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:540 #, python-format msgid "Removing %s" msgstr "正在移除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:542 #, python-format msgid "Completely removing %s" msgstr "正在完全移除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:544 #, python-format msgid "Noting disappearance of %s" msgstr "剛注意到 %s 消失" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:546 #, python-format msgid "Running post-installation trigger %s" msgstr "正在執行安裝後套件後續處理程式 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:548 #, python-format msgid "Upgrading %s" msgstr "正在升級 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:550 #, python-format msgid "Unpacking %s" msgstr "正在解開 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:552 #, python-format msgid "Preparing installation of %s" msgstr "正在準備安裝 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:554 #, python-format msgid "Preparing configuration of %s" msgstr "正在準備設定 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:556 #, python-format msgid "Preparing removal of %s" msgstr "正在準備移除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:558 #, python-format msgid "Preparing complete removal of %s" msgstr "正在準備完整移除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:560 #, python-format msgid "Installed %s" msgstr "已安裝 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:562 #, python-format msgid "Completely removed %s" msgstr "已完整移除 %s" #. TRANSLATORS: %s is the name of a package #: ../aptdaemon/enums.py:564 #, python-format msgid "Removed %s" msgstr "已移除 %s" #: ../aptdaemon/enums.py:567 msgid "Done" msgstr "完成" #: ../aptdaemon/enums.py:568 msgid "Authentication failed" msgstr "認證失敗" #: ../aptdaemon/enums.py:570 msgid "Fetching" msgstr "接收中" #: ../aptdaemon/enums.py:571 msgid "Idle" msgstr "閒置" #: ../aptdaemon/enums.py:572 msgid "Network isn't available" msgstr "網路不可用" #: ../aptdaemon/enums.py:704 #, python-format msgid "Processing %s" msgstr "正在處理 %s" #: ../aptdaemon/gtk3widgets.py:306 #, python-format msgid "Downloaded %sB of %sB at %sB/s" msgstr "已下載 %sB,共 %sB,速率 %sB/s" #: ../aptdaemon/gtk3widgets.py:311 ../aptdaemon/gtk3widgets.py:510 #, python-format msgid "Downloaded %sB of %sB" msgstr "已下載 %sB,共 %sB" #: ../aptdaemon/gtk3widgets.py:323 msgid "Details" msgstr "詳細資料" #: ../aptdaemon/gtk3widgets.py:474 msgid "File" msgstr "檔案" #. TRANSLATORS: header of the progress download column #: ../aptdaemon/gtk3widgets.py:479 msgid "%" msgstr "%" #: ../aptdaemon/gtk3widgets.py:515 #, python-format msgid "Downloaded %sB" msgstr "已下載 %sB" #: ../aptdaemon/gtk3widgets.py:518 msgid "Downloaded" msgstr "已下載" #. TRANSLATORS: %s represents the name of a CD or DVD #: ../aptdaemon/gtk3widgets.py:853 #, python-format msgid "CD/DVD '%s' is required" msgstr "需要 CD/DVD 「%s」" #. TRANSLATORS: %s is the name of the CD/DVD drive #: ../aptdaemon/gtk3widgets.py:855 #, python-format msgid "" "Please insert the above CD/DVD into the drive '%s' to install software " "packages from it." msgstr "請將上述的 CD/DVD 置入光碟機「%s」以從該碟片安裝軟體套件。" #: ../aptdaemon/gtk3widgets.py:859 ../aptdaemon/gtk3widgets.py:880 msgid "C_ontinue" msgstr "繼續(_O)" #: ../aptdaemon/gtk3widgets.py:931 msgid "Install" msgstr "安裝" #: ../aptdaemon/gtk3widgets.py:932 msgid "Reinstall" msgstr "重新安裝" #: ../aptdaemon/gtk3widgets.py:933 msgid "Remove" msgstr "移除" #: ../aptdaemon/gtk3widgets.py:934 msgid "Purge" msgstr "徹底清除" #: ../aptdaemon/gtk3widgets.py:935 msgid "Upgrade" msgstr "升級" #: ../aptdaemon/gtk3widgets.py:936 msgid "Downgrade" msgstr "降級" #: ../aptdaemon/gtk3widgets.py:937 msgid "Skip upgrade" msgstr "略過升級" #. If there is only one type of changes (e.g. only installs) expand the #. tree #. FIXME: adapt the title and message accordingly #. FIXME: Should we have different modes? Only show dependencies, only #. initial packages or both? #: ../aptdaemon/gtk3widgets.py:948 msgid "Please take a look at the list of changes below." msgstr "請查看下方的變更清單。" #: ../aptdaemon/gtk3widgets.py:956 msgid "Additional software has to be installed" msgstr "必須安裝額外軟體" #: ../aptdaemon/gtk3widgets.py:958 msgid "Additional software has to be re-installed" msgstr "必須重新安裝額外軟體" #: ../aptdaemon/gtk3widgets.py:960 msgid "Additional software has to be removed" msgstr "必須移除額外軟體" #: ../aptdaemon/gtk3widgets.py:962 msgid "Additional software has to be purged" msgstr "必須徹底移除額外軟體" #: ../aptdaemon/gtk3widgets.py:964 msgid "Additional software has to be upgraded" msgstr "必須升級額外軟體" #: ../aptdaemon/gtk3widgets.py:966 msgid "Additional software has to be downgraded" msgstr "必須降級額外軟體" #: ../aptdaemon/gtk3widgets.py:968 msgid "Updates will be skipped" msgstr "將略過更新" #: ../aptdaemon/gtk3widgets.py:976 msgid "Additional changes are required" msgstr "需要額外變更" #: ../aptdaemon/gtk3widgets.py:981 #, python-format msgid "%sB will be downloaded in total." msgstr "總共要下載 %sB。" #: ../aptdaemon/gtk3widgets.py:985 #, python-format msgid "%sB of disk space will be freed." msgstr "將釋放 %sB 的磁碟空間。" #: ../aptdaemon/gtk3widgets.py:989 #, python-format msgid "%sB more disk space will be used." msgstr "將使用大於 %sB 的磁碟空間。" #. TRANSLATORS: %s is a file path #: ../aptdaemon/gtk3widgets.py:1061 #, python-format msgid "" "Replace your changes in '%s' with a later version of the configuration file?" msgstr "在 '%s' 中以較新的設定檔版本取代您的變更?" #: ../aptdaemon/gtk3widgets.py:1063 msgid "" "If you don't know why the file is there already, it is usually safe to " "replace it." msgstr "若您不清楚為何此檔案已經存在,通常取代它是安全的。" #: ../aptdaemon/gtk3widgets.py:1072 msgid "_Changes" msgstr "變更(_C)" #: ../aptdaemon/gtk3widgets.py:1075 msgid "_Keep" msgstr "保留(_K)" #: ../aptdaemon/gtk3widgets.py:1076 msgid "_Replace" msgstr "取代(_R)" #: ../aptdaemon/gtk3widgets.py:1179 msgid "_Details" msgstr "詳細資料(_D)" #. TRANSLATORS: %s is the name of a package manager #: ../aptdaemon/lock.py:182 #, python-format msgid "Waiting for %s to exit" msgstr "正在等候 %s 結束" #. TRANSLATORS: %s is a list of package names #: ../aptdaemon/progress.py:169 #, python-format msgid "Downloading %(files)s" msgid_plural "Downloading %(files)s" msgstr[0] "正在下載 %(files)s" #. TRANSLATORS: the string is used as a fallback if we cannot #. get the URI of a local repository #: ../aptdaemon/progress.py:281 ../aptdaemon/progress.py:320 msgid "local repository" msgstr "本地端套件庫" #. TRANSLATORS: %s is a list of repository names #: ../aptdaemon/progress.py:284 #, python-format msgid "Downloading from %s" msgid_plural "Downloading from %s" msgstr[0] "正在從 %s 下載" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:324 #, python-format msgid "Structure of %s" msgstr "%s 的結構" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:327 #, python-format msgid "Description of %s" msgstr "%s 的描述" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:330 #, python-format msgid "Description signature of %s" msgstr "%s 的描述簽章" #: ../aptdaemon/progress.py:335 #, python-format msgid "Available packages from %s" msgstr "來自 %s 的可用套件" #: ../aptdaemon/progress.py:339 #, python-format msgid "Available sources from %s" msgstr "來自 %s 的可用來源" #. TRANSLATORS: repo is the name of a repository #: ../aptdaemon/progress.py:342 #, python-format msgid "Available translations from %s" msgstr "來自 %s 的可用翻譯" #: ../aptdaemon/progress.py:359 #, python-format msgid "Translations for %s (%s) from %s" msgstr "來自 %s 的 %s (%s) 翻譯" #. TRANSLATORS: %s is the name of a language. The second one is #. the name of the repository #: ../aptdaemon/progress.py:363 #, python-format msgid "Translations for %s from %s" msgstr "來自 %s 的 %s 翻譯" #. TRANSLATORS: %s is the code of a language, e.g. ru_RU. #. The second one is the name of the repository #: ../aptdaemon/progress.py:368 #, python-format msgid "Translations (%s) from %s" msgstr "翻譯 (%s) 從 %s" #: ../aptdaemon/worker/aptworker.py:374 ../aptdaemon/worker/aptworker.py:671 #: ../aptdaemon/worker/aptworker.py:748 ../aptdaemon/worker/aptworker.py:791 #, python-format msgid "Package %s isn't available" msgstr "套件 %s 無法使用" #: ../aptdaemon/worker/aptworker.py:379 ../aptdaemon/worker/aptworker.py:675 #: ../aptdaemon/worker/aptworker.py:752 ../aptdaemon/worker/aptworker.py:795 #, python-format msgid "Package %s isn't installed" msgstr "套件 %s 未安裝" #: ../aptdaemon/worker/aptworker.py:383 #, python-format msgid "The version %s of %s isn't installed" msgstr "版本 %s 的 %s 未安裝" #: ../aptdaemon/worker/aptworker.py:398 #, python-format msgid "Package %s is already installed" msgstr "%s 套件已經安裝" #: ../aptdaemon/worker/aptworker.py:407 ../aptdaemon/worker/aptworker.py:821 #, python-format msgid "The version %s of %s isn't available." msgstr "%s 版本的 %s 無法使用" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:565 #, python-format msgid "The keyserver URL is invalid: %s" msgstr "金鑰伺服器 URL 無效:%s" #. TRANSLATORS: %s is the URL of GnuPG #. keyserver #: ../aptdaemon/worker/aptworker.py:571 #, python-format msgid "Invalid protocol of the server: %s" msgstr "無效的伺服器協定:%s" #. TRANSLATORS: %s is the id of a GnuPG key #. e.g. E08ADE95 #: ../aptdaemon/worker/aptworker.py:579 ../aptdaemon/worker/aptworker.py:623 #, python-format msgid "Invalid key id: %s" msgstr "無效的金鑰 id:%s" #: ../aptdaemon/worker/aptworker.py:587 #, python-format msgid "" "Failed to download and install the key %s from %s:\n" "%s" msgstr "" "無法下載與安裝金鑰 %s (來自 %s):\n" "%s" #: ../aptdaemon/worker/aptworker.py:604 #, python-format msgid "Key file %s couldn't be installed: %s" msgstr "金鑰檔案 %s 無法安裝:%s" #: ../aptdaemon/worker/aptworker.py:628 #, python-format msgid "Key with fingerprint %s couldn't be removed: %s" msgstr "指紋為 %s 的金鑰無法移除:%s" #: ../aptdaemon/worker/aptworker.py:679 #, python-format msgid "Package %s cannot be removed." msgstr "%s 套件無法移除。" #: ../aptdaemon/worker/aptworker.py:683 #, python-format msgid "The version %s of %s is not installed" msgstr "版本 %s 的 %s 未安裝" #: ../aptdaemon/worker/aptworker.py:763 #, python-format msgid "The former version %s of %s is already installed" msgstr "較舊版本 %s 的 %s 已經安裝" #: ../aptdaemon/worker/aptworker.py:768 ../aptdaemon/worker/aptworker.py:814 #, python-format msgid "The version %s of %s is already installed" msgstr "版本 %s 的 %s 已經安裝" #: ../aptdaemon/worker/aptworker.py:775 #, python-format msgid "The version %s of %s isn't available" msgstr "%s 版本的 %s 無法使用" #: ../aptdaemon/worker/aptworker.py:779 #, python-format msgid "You need to specify a version to downgrade %s to" msgstr "您需要指定要將 %s 降級至哪個版本" #: ../aptdaemon/worker/aptworker.py:807 #, python-format msgid "The later version %s of %s is already installed" msgstr "較新版本 %s 的 %s 已經安裝" #: ../aptdaemon/worker/aptworker.py:838 #, python-format msgid "The package %s isn't available in the %s release." msgstr "%s 套件在 %s 發行版本內無法使用" #: ../aptdaemon/worker/aptworker.py:1026 #, python-format msgid "Package %s cannot be removed" msgstr "套件 %s 無法移除" #: ../aptdaemon/worker/aptworker.py:1123 msgid "" "The package doesn't provide a valid Installed-Size control field. See Debian " "Policy 5.6.20." msgstr "套件未提供有效的已安裝大小控制欄位。請見 Debian Policy 5.6.20。" #: ../aptdaemon/worker/aptworker.py:1265 msgid "The license key is empty" msgstr "授權金鑰為空白" #: ../aptdaemon/worker/aptworker.py:1281 msgid "The license key is not allowed to contain executable code." msgstr "授權金鑰不可含有執行代碼。" #: ../aptdaemon/worker/aptworker.py:1290 #, python-format msgid "The license key path %s is invalid" msgstr "授權金鑰路徑 %s 無效" #: ../aptdaemon/worker/aptworker.py:1294 #, python-format msgid "The license key already exists: %s" msgstr "授權金鑰已存在:%s" #: ../aptdaemon/worker/aptworker.py:1299 #, python-format msgid "" "The location of the license key is unsecure since it contains symbolic " "links. The path %s maps to %s" msgstr "授權金鑰的位置不安全,因為它包含符號連結。路徑 %s 對應至 %s" #: ../aptdaemon/worker/aptworker.py:1307 #, python-format msgid "The directory where to install the key to doesn't exist yet: %s" msgstr "金鑰所要安裝的目錄尚未存在:%s" #: ../aptdaemon/worker/aptworker.py:1318 #, python-format msgid "Failed to write key file to: %s" msgstr "無法寫入金鑰檔至:%s" #: ../aptdaemon/worker/aptworker.py:1353 msgid "The following packages have unmet dependencies:" msgstr "下列套件有無法滿足的相依關係:" #: ../aptdaemon/worker/aptworker.py:1406 msgid "but it is a virtual package" msgstr "但它只是虛擬套件" #: ../aptdaemon/worker/aptworker.py:1409 msgid "but it is not installed" msgstr "但是 %s 卻尚未安裝" #: ../aptdaemon/worker/aptworker.py:1411 msgid "but it is not going to be installed" msgstr "但是它卻不會被安裝" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1415 #, python-format msgid "but %s is installed" msgstr "但是 %s 卻已經安裝" #. TRANSLATORS: %s is a version number #: ../aptdaemon/worker/aptworker.py:1419 #, python-format msgid "but %s is to be installed" msgstr "但是 %s 卻已經安裝" #~ msgid "Adding the key to the list of trused software vendors failed" #~ msgstr "加入信任的軟體供應者金鑰至列表失敗" aptdaemon-1.1.1+bzr982/tests/__init__.py0000644000000000000000000000000011233377205016110 0ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/_test_py2_string_handling.py0000644000000000000000000000772312067677576021562 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- # Copyright (C) 2011 Michael Vogt # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 """Regression test for a unicode decoding error in the status_details, progress_download or error_properties attributes of the transaction, see LP #724735. """ __author__ = "Michael Vogt " import os import sys import unittest import dbus from dbus.lowlevel import ErrorMessage, Message from aptdaemon.core import Transaction from aptdaemon.errors import TransactionFailed from aptdaemon.test import AptDaemonTestCase, Chroot class TestUnicodeDecoding(AptDaemonTestCase): """Test the workaround.""" def setUp(self): self.chroot = Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.start_dbus_daemon() self.dbus = dbus.bus.BusConnection(self.dbus_address) self.trans = Transaction(None, "role-test", None, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", bus=self.dbus) def test(self): # ensure we don't crash regardless if str or unicode is passed here self.trans.status_details = "äää" self.trans.status_details = u"äää" self.trans.progress_download = ("äö", "ß", "üöä", 1L, 2L, "ö") self.trans.progress_download = (u"äö", u"ß", u"üöä", 1L, 2L, u"ö") self.trans.error = TransactionFailed("ERROR_TEST", "Mixed ä %s", u"öä") self.trans.error = TransactionFailed("ERROR_TEST", u"Mixed ü %s", "öä") self.trans.error = TransactionFailed("ERROR_TEST", "Str ä %s", "öä") self.trans.error = TransactionFailed("ERROR_TEST", u"Uni ä %s", u"öä") def test_dbus_exception(self): """This tests simulates the steps taken by the DBus bindings to send an error reply, see LP# 761386""" # The original error message that we get from python-apt orig = "E:Die Paketliste oder die Statusdatei konnte nicht " \ "eingelesen oder ge\xc3\xb6ffnet werden." for msg in [u"E:Die Paketliste oder die Statusdatei konnte nicht " u"eingelesen oder geöffnet werden.", "E:Die Paketliste oder die Statusdatei konnte nicht " "eingelesen oder geöffnet werden.", orig]: # Create a simple DBus exception error = TransactionFailed("ERROR_TEST", msg) # Taken from dbus.service._method_reply_error() name = error.get_dbus_name() content = error.get_dbus_message() self.assertEqual(orig, content[12:]) # The constructor of the ErrorMessage fails since we only use # a fake Message self.assertRaises(MemoryError, ErrorMessage, Message(), name, content) def test_dbus_exception_lp846044(self): e = TransactionFailed("foo", "bar") e.details = u"ä" foo = unicode(e) self.assertEqual(foo, u"Transaction failed: None\nä") foo = str(e) self.assertEqual(foo, u"Transaction failed: None\nä".encode("utf-8")) if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/_test_py3_string_handling.py0000644000000000000000000000277712067677576021567 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- # Copyright (C) 2011 Michael Vogt # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 """Regression test for a unicode decoding error in the status_details, progress_download or error_properties attributes of the transaction, see LP #724735. """ __author__ = "Michael Vogt " import unittest from aptdaemon.errors import TransactionFailed from aptdaemon.test import AptDaemonTestCase class TestUnicodeDecodingPy3(AptDaemonTestCase): def test_dbus_exception_lp846044(self): e = TransactionFailed("foo", "bar") e.details = "ä" self.assertEqual(str(e), "Transaction failed: None\nä") if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/aptdaemon0000755000000000000000000000000011513557417020011 2../aptdaemonustar 00000000000000aptdaemon-1.1.1+bzr982/tests/data/0000755000000000000000000000000012015705450014716 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/dbus.conf0000644000000000000000000000124411647032121015610 0ustar 00000000000000 system unix:tmpdir=/tmp aptdaemon-1.1.1+bzr982/tests/debconf/0000755000000000000000000000000011352340645015411 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/dpkg-wrapper.sh0000755000000000000000000000006211512534676016760 0ustar 00000000000000#!/bin/sh exec /usr/bin/fakeroot /usr/bin/dpkg $* aptdaemon-1.1.1+bzr982/tests/fake-polkitd.py0000755000000000000000000000375612054642213016747 0ustar 00000000000000#!/usr/bin/python3 """Fake a PolicyKit daemon.""" from optparse import OptionParser import sys import dbus import dbus.mainloop.glib import dbus.service from gi.repository import GLib # Setup the DBus main loop dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) class FakePolicyKitDaemon(dbus.service.Object): def __init__(self, allowed_actions): self.allowed_actions = allowed_actions bus_name = dbus.service.BusName("org.freedesktop.PolicyKit1", dbus.SystemBus(), do_not_queue=True) dbus.service.Object.__init__(self, bus_name, "/org/freedesktop/PolicyKit1/Authority") self.loop = GLib.MainLoop() def run(self): self.loop.run() @dbus.service.method("org.freedesktop.PolicyKit1.Authority", in_signature='(sa{sv})sa{ss}us', out_signature='(bba{ss})') def CheckAuthorization(self, subject, action_id, details, flags, cancellation_id): if "all" in self.allowed_actions: allowed = True else: allowed = action_id in self.allowed_actions challenged = False details = {"test": "test"} return (allowed, challenged, details) @dbus.service.method("org.freedesktop.PolicyKit1.Authority", in_signature='', out_signature='') def Quit(self): GLib.idle_add(self._quit) def _quit(self): self.loop.quit() sys.exit() def main(): parser = OptionParser() parser.add_option("-a", "--allowed-actions", default="", action="store", type="string", dest="allowed_actions", help="Comma separated list of allowed action ids") options, args = parser.parse_args() polkitd = FakePolicyKitDaemon(options.allowed_actions.split(",")) polkitd.run() if __name__ == "__main__": main() aptdaemon-1.1.1+bzr982/tests/fakeroot-apt-key0000755000000000000000000000004711763657365017142 0ustar 00000000000000#!/bin/sh fakeroot /usr/bin/apt-key $* aptdaemon-1.1.1+bzr982/tests/regressions/0000755000000000000000000000000011531401314016342 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/repo/0000755000000000000000000000000011512533510014747 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/test_cdrom.py0000644000000000000000000000610312375366203016532 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the client module.""" import logging import time import unittest import defer import dbus import aptdaemon.client import aptdaemon.loop import aptdaemon.enums import aptdaemon.test DEBUG = True class CDROMTestCase(aptdaemon.test.AptDaemonTestCase): """Test the installation from removable media, e.g. CDROMs.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.chroot.add_trusted_key() self.chroot.add_cdrom_repository() # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(1) self.called = False @defer.inline_callbacks def _on_medium_required_cancel(self, trans, medium, mount_point): yield trans.cancel() @defer.inline_callbacks def _on_medium_required(self, trans, medium, mount_point): if self.called: # Abort if we get asked twice for the cdrom yield trans.cancel() self.chroot.mount_cdrom() self.called = True yield trans.provide_medium(medium) def _on_finished(self, trans, exit): """Callback to stop the mainloop after a transaction is done.""" aptdaemon.loop.mainloop.quit() def test(self): """Test changing media.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-depend-base"]) trans.connect("finished", self._on_finished) trans.connect("medium-required", self._on_medium_required) yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) def test_cancel(self): """Test cancelling a required medium request.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-depend-base"]) trans.connect("finished", self._on_finished) trans.connect("medium-required", self._on_medium_required_cancel) yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_CANCELLED) self.chroot.mount_cdrom() deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_client.py0000644000000000000000000001404312067677576016726 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the client module.""" import logging import time import unittest import dbus import defer from gi.repository import GObject import aptdaemon.client import aptdaemon.loop import aptdaemon.enums import aptdaemon.errors import aptdaemon.test DEBUG = True class ClientTestNotAuthorized(aptdaemon.test.AptDaemonTestCase): """Test the python client.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.chroot.add_test_repository() # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon and disallow all actions self.start_fake_polkitd("none") time.sleep(1) def _on_finished(self, trans, exit): """Callback to stop the mainloop after a transaction is done.""" aptdaemon.loop.mainloop.quit() def test_auth_failed(self): """Test the failing of an unauthorized transaction""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.update_cache() trans.connect("finished", self._on_finished) try: yield trans.run() except aptdaemon.errors.NotAuthorizedError as error: print(error) except Exception as error: self.fail("Wrong exception: %s" % error) else: self.fail("Authorization passed (sic!)") defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.error.code, aptdaemon.enums.ERROR_NOT_AUTHORIZED) class ClientTest(aptdaemon.test.AptDaemonTestCase): """Test the python client.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.chroot.add_test_repository() # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(1) def _on_finished(self, trans, exit): """Callback to stop the mainloop after a transaction is done.""" aptdaemon.loop.mainloop.quit() def test_sync(self): """Test synchronous calls to the client.""" self.client = aptdaemon.client.AptClient(self.bus) trans = self.client.update_cache() trans.connect("finished", self._on_finished) trans.run() aptdaemon.loop.mainloop.run() self.assertEqual(trans.exit, aptdaemon.enums.EXIT_SUCCESS) def test_deferred(self): """Test deferred calls to the client.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.update_cache() trans.connect("finished", self._on_finished) yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) def test_client_methods_sync(self): """ Test most client methods (syncronous) """ test_methods = [ ("enable_distro_component", ("universe",)), ("add_repository", ("deb", "http://archive.ubuntu.com/ubuntu", "lucid", "restricted"))] client = aptdaemon.client.AptClient(self.bus) for (method, args) in test_methods: f = getattr(client, method) exit = f(*args, wait=True) self.assertEqual(exit, aptdaemon.enums.EXIT_SUCCESS) def test_simulation_error(self): """Test if a simulation fails in a correct way.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-broken"]) trans.connect("finished", self._on_finished) yield trans.simulate() self.fail("We should never have been here") yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.value.code, aptdaemon.enums.ERROR_DEP_RESOLUTION_FAILED) def test_run_error(self): """Test if a simulation during run fails in a correct way.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-broken"]) trans.connect("finished", self._on_finished) yield trans.run() self.fail("We should never have been here") defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.value.code, aptdaemon.enums.ERROR_DEP_RESOLUTION_FAILED) def test_tid_caching(self): """Test if calling Client with identical TIDs uses caching.""" tid = "/meep" trans = aptdaemon.client.AptTransaction(tid, bus=self.bus) trans2 = aptdaemon.client.AptTransaction(tid, bus=self.bus) trans3 = aptdaemon.client.AptTransaction("/meep2", bus=self.bus) self.assertEqual(trans, trans2) self.assertNotEqual(trans, trans3) if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_configfileprompt.py0000644000000000000000000001314012375366203020774 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the config file handling.""" import logging import os import time import unittest import defer import dbus import aptdaemon.client import aptdaemon.loop import aptdaemon.enums import aptdaemon.test DEBUG = True REPO_PATH = os.path.join(aptdaemon.test.get_tests_dir(), "repo") class ConfigFilePromptTestCase(aptdaemon.test.AptDaemonTestCase): """Test the replacement of config files.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.chroot.add_test_repository() # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(1) self.called = False # Create a fake config file which gets overwritten by silly-config self.config_path = os.path.join(self.chroot.path, "etc/silly-packages.cfg") with open(self.config_path, "w") as config: config.write("BliBlaBlub") @defer.inline_callbacks def _on_config_file_conflict(self, trans, config_old, config_new, answer): self.assertEqual(trans.config_file_conflict, (config_old, config_new)) if answer == "urgs": # Check if cancelling is forbidden try: yield trans.cancel() except aptdaemon.errors.AptDaemonError as error: self.assertTrue(str(error), "org.debian.apt: Could not cancel transaction") # Check if we fail correctly on wrong answers try: yield trans.resolve_config_file_conflict(config_old, "a&&dasmk") except aptdaemon.errors.AptDaemonError as error: self.assertTrue(str(error).index("Invalid value")) yield trans.resolve_config_file_conflict(config_old, "replace") else: self.fail("Failed to detect invalid answer") else: yield trans.resolve_config_file_conflict(config_old, answer) def _on_finished(self, trans, exit): """Callback to stop the mainloop after a transaction is done.""" aptdaemon.loop.mainloop.quit() def test_keep(self): """Test keeping the current configuration file.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-config"]) trans.connect("finished", self._on_finished) trans.connect("config-file-conflict", self._on_config_file_conflict, "keep") yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) with open(self.config_path) as config: self.assertEqual(config.read(), "BliBlaBlub") with open("%s.dpkg-dist" % self.config_path) as config_dist: self.assertEqual(config_dist.read(), "#Just another config file.\n") def test_replace(self): """Test replacing the current configuration file.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-config"]) trans.connect("finished", self._on_finished) trans.connect("config-file-conflict", self._on_config_file_conflict, "replace") yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) with open(self.config_path) as config: self.assertEqual(config.read(), "#Just another config file.\n") with open("%s.dpkg-old" % self.config_path) as config_old: self.assertEqual(config_old.read(), "BliBlaBlub") def test_fail(self): """Test failing correctly.""" @defer.inline_callbacks def run(): self.client = aptdaemon.client.AptClient(self.bus) trans = yield self.client.install_packages(["silly-config"]) yield trans.set_locale("C") trans.connect("finished", self._on_finished) trans.connect("config-file-conflict", self._on_config_file_conflict, "urgs") yield trans.run() defer.return_value(trans) deferred = run() aptdaemon.loop.mainloop.run() self.assertEqual(deferred.result.exit, aptdaemon.enums.EXIT_SUCCESS) with open(self.config_path) as config: self.assertEqual(config.read(), "#Just another config file.\n") with open("%s.dpkg-old" % self.config_path) as config_old: self.assertEqual(config_old.read(), "BliBlaBlub") if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_configparser.py0000644000000000000000000000652112375367700020117 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides unit tests for the APT configuration file parser""" # Copyright (C) 2010 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 __author__ = "Sebastian Heinlein " import os import sys import unittest import apt_pkg from aptdaemon.config import ConfigWriter class ConfigurationParserTestCase(unittest.TestCase): """Test suite for the configuration parser.""" def setUp(self): self.parser = ConfigWriter() def test_comment_in_value(self): """ ensure that comment strings in values are parsed correctly """ s = """// Server information for apt-changelog APT { Changelogs { # bar Server "http://changelogs.ubuntu.com/changelogs"; // foo } } """ cf = self.parser.parse(s.split("\n")) self.assertEqual(cf["apt::changelogs::server"].string, "http://changelogs.ubuntu.com/changelogs") def test_multi_line_comments(self): s = """/* * APT configuration file for Zope Debian packages. */ DPkg { Post-Invoke {"which dzhandle";}; } """ cf = self.parser.parse(s.split("\n")) self.assertEqual(cf["dpkg::post-invoke"][0].string, "which dzhandle") def test_(self): config = {} config_check = {} for filename in os.listdir("/etc/apt/apt.conf.d"): path = "/etc/apt/apt.conf.d/%s" % filename config_apt = apt_pkg.Configuration() with open(path, "r") as fd: apt_pkg.read_config_file(config_apt, path) config = self.parser.parse(fd.readlines()) for key in config_apt.keys(): if key.endswith("::"): key = key[:-2] value_list_apt = config_apt.value_list(key) if value_list_apt: value_list = [val.string for val in config[key.lower()]] self.assertTrue(value_list_apt == value_list, "%s: %s != %s" % (key, value_list_apt, value_list)) else: value_apt = config_apt[key] if value_apt: self.assertTrue( value_apt == config[key.lower()].string) @unittest.skipIf(sys.version_info.major < 3, "Only Python3") def setUp(): pass if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_dbus_type.py0000644000000000000000000002011112173232253017410 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Test index handling.""" from collections import namedtuple import os import re import sys import unittest import dbus from gi.repository import GLib from aptdaemon.worker import aptworker from aptdaemon import core from aptdaemon import enums from aptdaemon import test REGEX_SIG = "([ibxsdt])|(a{[ibxsdt]+?})|(a[ixbsdt]+?)|(\([ibxsdt]+?\))" REGEX_IFACE = r"\n(org\.debian\.apt[a-z\.]*) --- " REGEX_ATTRIB = (r"\n\.\.\s+attribute::\s+(?P[a-zA-Z]+)\s+:\s+" "(?P[a-z\(\)\{\}]+)") # Setup the DBus main loop dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) DOC_PATH = os.path.join(test.get_tests_dir(), "../doc") class DBusTypeTest(test.AptDaemonTestCase): """Make sure that the specified types are returned over D-Bus.""" def setUp(self): # Extract the property type specification from the documentation self.ifaces = {} with open(os.path.join(DOC_PATH, "source/dbus.rst")) as rst_file: docu = rst_file.read() doc = "" iface = "" for match in re.split(REGEX_IFACE, docu, re.MULTILINE): if match.startswith("org.debian.apt"): iface = match self.ifaces[iface] = {} doc = "" else: doc = match if doc and iface: for match_attrib in re.finditer(REGEX_ATTRIB, doc): name = match_attrib.group("name") sig = match_attrib.group("sig") self.ifaces[iface][name] = sig self.start_dbus_daemon() self.dbus = dbus.bus.BusConnection(self.dbus_address) self.loop = GLib.MainLoop() self.error = None def _on_property_changed(self, name, value, iface): if name == "Progress" and value == 100: self.loop.quit() try: self._check_property_type(iface, name, value) except: self.loop.quit() raise def _check_property_type(self, iface, name, value, signature=None): if signature is None: signature = self.ifaces[iface][name] if isinstance(value, dbus.String): self.assertEqual(signature, "s", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.String): self.assertEqual(signature, "s", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Int32): self.assertEqual(signature, "i", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Int64): self.assertEqual(signature, "x", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.UInt64): self.assertEqual(signature, "t", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Double): self.assertEqual(signature, "d", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Boolean): self.assertEqual(signature, "b", "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Dictionary): self.assertEqual(signature, "a{%s}" % value.signature, "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) elif isinstance(value, dbus.Struct): if value.signature: self.assertEqual(signature, "s(%s)" % value.signature, "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) else: # The dbus proxy doesn't set the signature property for val, sig in map(lambda x, y: (x, y), value, ["".join(matches) for matches in re.findall(REGEX_SIG, signature[1:-1])]): self._check_property_type(iface, name, val, sig) elif isinstance(value, dbus.Array): self.assertEqual(signature, "a%s" % value.signature, "Property %s on %s doesnt' comply with the " "spec: %s" % (name, iface, value)) else: raise Exception("Unkown type %s for property %s of %s" % (type(value), name, iface)) def _error_cb(self, error): """Errback of the GetAll call.""" self.loop.quit() raise error def _get_all_cb(self, iface, props): """Callback of the GetAll call.""" try: for name, value in props.items(): self._check_property_type(iface, name, value) except Exception as error: self.error = error raise finally: self.loop.quit() @unittest.skip("Requires to be convert to a C based test client") def test_transaction_properties(self): """Test object properties.""" trans = core.Transaction(None, enums.ROLE_REMOVE_PACKAGES, None, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", bus=self.dbus) proxy = self.dbus.get_object(core.APTDAEMON_DBUS_INTERFACE, trans.tid) iface = core.APTDAEMON_TRANSACTION_DBUS_INTERFACE proxy.GetAll(iface, reply_handler=lambda x: self._get_all_cb(iface, x), error_handler=self._error_cb, dbus_interface=dbus.PROPERTIES_IFACE) self.loop.run() self.assertEqual(self.error, None, self.error) @unittest.skip("Requires to be convert to a C based test client") def test_transaction_signals(self): """Test signal emittion.""" trans = core.Transaction(None, enums.ROLE_COMMIT_PACKAGES, None, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", bus=self.dbus, packages=[["silly-base"], [], [], [], [], []]) proxy = self.dbus.get_object("org.debian.apt", trans.tid) proxy.connect_to_signal("PropertyChanged", self._on_property_changed, dbus_interface="org.debian.apt.transaction", interface_keyword="iface") chroot = test.Chroot() self.addCleanup(chroot.remove) chroot.setup() chroot.add_test_repository() apt_worker = aptworker.AptWorker(load_plugins=False, chroot=chroot.path) apt_worker.run(trans) self.loop.run() self.assertEqual(self.error, None) @unittest.skip("Requires to be convert to a C based test client") def test_aptdaemon_properties(self): """Test aptdaemon properties.""" Options = namedtuple("Options", "dummy") opt = Options(True) self.daemon = core.AptDaemon(opt, bus=self.dbus) proxy = self.dbus.get_object(core.APTDAEMON_DBUS_SERVICE, core.APTDAEMON_DBUS_PATH) iface = core.APTDAEMON_DBUS_INTERFACE proxy.GetAll(iface, reply_handler=lambda x: self._get_all_cb(iface, x), error_handler=self._error_cb, dbus_interface=dbus.PROPERTIES_IFACE) self.loop.run() self.assertEqual(self.error, None) if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_debconf.py0000644000000000000000000001120212070255144017013 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the debconf forwarding""" import logging import os import subprocess import sys import tempfile import unittest import apt_pkg from gi.repository import GLib from aptdaemon import test from aptdaemon.debconf import DebconfProxy DEBUG = False class DebconfTestBasic(unittest.TestCase): def _stop(self): self.proxy.stop() self.loop.quit() def setUp(self): self.loop = GLib.MainLoop() self.debconf_socket_path = tempfile.mktemp(prefix="debconf-socket-") self._set_input_value() self.proxy = DebconfProxy("editor", self.debconf_socket_path) self.proxy.start() def _set_input_value(self, template="aptdaemon/test", value="lalelu"): os.environ["DEBIAN_PRIORITY"] = "high" os.environ["EDITOR"] = "sed -ie 's/\\(%s=\\).*/\\1\\\"%s\\\"/i'" % \ (template.replace("/", "\\/"), value) def _spawn_config_script(self, config_db_path, command=None): if command is None: command = [os.path.join(test.get_tests_dir(), "debconf/aptdaemon.config")] env = {} env["DEBCONF_DB_REPLACE"] = "File{%s}" % config_db_path env["DEBIAN_FRONTEND"] = "passthrough" env["DEBCONF_PIPE"] = self.debconf_socket_path if DEBUG: env["DEBCONF_DEBUG"] = ".*" env_str = ["%s=%s" % (key, val) for key, val in env.items()] proc = subprocess.Popen(command, env=env) return proc def testBasic(self): def config_done(pid, cond): self.assertEqual(cond, 0, "Config script failed: %s" % os.WEXITSTATUS(cond)) self._stop() debconf_db_path = tempfile.mktemp(suffix=".dat", prefix="config-basic-") proc = self._spawn_config_script(debconf_db_path) GLib.child_watch_add(GLib.PRIORITY_DEFAULT, proc.pid, config_done) self.loop.run() # Check the results self._check_value(debconf_db_path) @unittest.skipIf(sys.version_info.major < 3 and "nose" in sys.modules, "For unknown reasons lets other tests fail " "(test_simulate) if performed under Python2 and nose") def testSerial(self): """Run several config scripts in a row.""" def config_done(pid, cond): self.assertEqual(cond, 0, "Config script failed: %s" % os.WEXITSTATUS(cond)) self.config_scripts -= 1 if self.config_scripts <= 0: self._stop() else: proc = self._spawn_config_script(debconf_db_path) GLib.child_watch_add(GLib.PRIORITY_DEFAULT, proc.pid, config_done) debconf_db_path = tempfile.mktemp(suffix=".dat", prefix="config-row-") self.config_scripts = 10 proc = self._spawn_config_script(debconf_db_path) GLib.child_watch_add(GLib.PRIORITY_DEFAULT, proc.pid, config_done) self.loop.run() # Check the results self._check_value(debconf_db_path) def testRace(self): def config_done(pid, cond): self.assertEqual(cond, 0, "Config script failed: %s" % os.WEXITSTATUS(cond)) self.workers -= 1 if self.workers <= 0: self._stop() debconf_dbs = [] self.workers = 0 for i in range(10): debconf_db_path = tempfile.mktemp(suffix=".dat", prefix="config-race-") proc = self._spawn_config_script(debconf_db_path) GLib.child_watch_add(GLib.PRIORITY_DEFAULT, proc.pid, config_done) debconf_dbs.append(debconf_db_path) self.workers += 1 self.loop.run() # Check the results for db_path in debconf_dbs: self._check_value(db_path) def _check_value(self, db_path, template=None, value="lalelu"): with open(db_path) as db_file: for section in apt_pkg.TagFile(db_file): if template == section["Template"] or template is None: self.assertEqual(section["Value"], value) return os.remove(db_path) self.fail("Database doesn't contain any matching value or template") def tearDown(self): os.remove(self.debconf_socket_path) self.proxy = None self.loop.quit() self.loop = None if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_gtk3widgets.py0000644000000000000000000000262612114153047017662 0ustar 00000000000000#!/usr/bin/env python3 """Test gtk3widgets.py.""" import os import codecs import shutil import tempfile import unittest from aptdaemon.gtk3widgets import DiffView class TestLP1120322(unittest.TestCase): def setUp(self): tempdir = tempfile.mkdtemp() self.addCleanup(shutil.rmtree, tempdir) self.a = os.path.join(tempdir, 'a.txt') self.b = os.path.join(tempdir, 'b.txt') with codecs.open(self.a, 'w', encoding='utf-8') as f: f.write('one\n') with codecs.open(self.b, 'w', encoding='utf-8') as f: f.write('onee\n') def test_lp_1120322(self): # UnboundLocalError when the diff is one line long. dv = DiffView() # This simply should not traceback. dv.show_diff(self.a, self.b) class TestGoodPath(unittest.TestCase): def setUp(self): tempdir = tempfile.mkdtemp() self.addCleanup(shutil.rmtree, tempdir) self.a = os.path.join(tempdir, 'a.txt') self.b = os.path.join(tempdir, 'b.txt') with codecs.open(self.a, 'w', encoding='utf-8') as f: f.write('one\ntwo\n') with codecs.open(self.b, 'w', encoding='utf-8') as f: f.write('one\ntoo\n') def test_lp_1120322(self): # UnboundLocalError when the diff is multiple lines long. dv = DiffView() # This simply should not traceback. dv.show_diff(self.a, self.b) aptdaemon-1.1.1+bzr982/tests/test_high_trust_repository_whitelist.py0000644000000000000000000001757712352743243024220 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides unit tests for the APTDAEMON high-trust-repo feature.""" # Copyright (C) 2011 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 __author__ = "Michael Vogt " import os import sys import time import unittest import dbus from gi.repository import GLib from mock import ( patch) import aptdaemon.client from aptdaemon.policykit1 import ( PK_ACTION_INSTALL_PACKAGES_FROM_HIGH_TRUST_REPO as PK_ACTION) import aptdaemon.test from aptdaemon.worker.aptworker import ( _read_high_trust_repository_whitelist_file, read_high_trust_repository_dir, trans_only_installs_pkgs_from_high_trust_repos, AptWorker) from aptdaemon.core import Transaction from aptdaemon import enums REPO_PATH = os.path.join(aptdaemon.test.get_tests_dir(), "repo") PY3K = sys.version_info.major > 2 class BaseHighTrustTestCase(aptdaemon.test.AptDaemonTestCase): def setUp(self): self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.loop = GLib.MainLoop() class HighTrustRepositoryTestCase(BaseHighTrustTestCase): """ Test the worker low-level bits of the high-trust repo implementation""" def setUp(self): super(HighTrustRepositoryTestCase, self).setUp() self.queue = aptdaemon.test.MockQueue() self.worker = AptWorker(chroot=self.chroot.path, load_plugins=False) self.worker.connect("transaction-done", lambda w, t: self.loop.quit()) self.worker.connect("transaction-simulated", lambda w, t: self.loop.quit()) def test_read_high_trust_repository_whitelist_dir(self): whitelist = read_high_trust_repository_dir( os.path.join(aptdaemon.test.get_tests_dir(), "data/high-trust-repository-whitelist.d")) self.assertEqual( whitelist, set([("Ubuntu", "main", "foo.*"), ("Debian-Security", "non-free", "^bar$")])) def test_read_high_trust_repository_whitelist(self): whitelist = _read_high_trust_repository_whitelist_file( os.path.join(aptdaemon.test.get_tests_dir(), "data/high-trust-repository-whitelist.cfg")) self.assertEqual( whitelist, set([("Ubuntu", "main", "foo.*"), ("Debian-Security", "non-free", "^bar$")])) @patch("aptdaemon.worker.log") def test_read_high_trust_repository_whitelist_broken(self, mock_log): """ test that a broken repo file results in a empty whitelist """ whitelist = _read_high_trust_repository_whitelist_file( os.path.join(aptdaemon.test.get_tests_dir(), "data/high-trust-repository-whitelist-broken.cfg")) self.assertEqual(whitelist, set()) # ensure we log a error if the config file is broken mock_log.error.assert_called() @patch("aptdaemon.worker.log") def test_read_high_trust_repository_whitelist_not_there(self, mock_log): whitelist = _read_high_trust_repository_whitelist_file( "lalalala-not-there-really.cfg") self.assertEqual(whitelist, set()) # ensure we log no error if there is no config file self.assertFalse(mock_log.called) def test_high_trust_repository(self): """Test if using a high_trust repo is working """ self.chroot.add_repository(os.path.join(aptdaemon.test.get_tests_dir(), "repo/whitelisted")) # setup a whitelist self.worker._high_trust_repositories.add( ("Ubuntu", "", "silly.*")) # a high-trust whitelisted pkg and a non-whitelisted one trans = Transaction(None, enums.ROLE_INSTALL_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[["silly-base", "other-pkg"], [], [], [], [], []]) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.high_trust_packages, ["silly-base"]) self.assertFalse( trans_only_installs_pkgs_from_high_trust_repos( trans, self.worker._high_trust_repositories)) # whitelisted only trans = Transaction(None, enums.ROLE_INSTALL_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[["silly-base"], [], [], [], [], []]) self.worker.simulate(trans) self.loop.run() self.assertTrue( trans_only_installs_pkgs_from_high_trust_repos( trans, self.worker._high_trust_repositories)) class HighTrustRepositoryIntegrationTestCase(BaseHighTrustTestCase): """ Test the whitelist feature inside the chroot """ def setUp(self): super(HighTrustRepositoryIntegrationTestCase, self).setUp() # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) # setup the environment first including the high-trust whitelist self.chroot.add_repository(os.path.join(aptdaemon.test.get_tests_dir(), "repo/whitelisted")) whitelist_file = os.path.join( self.chroot.path, "etc", "aptdaemon", "high-trust-repository-whitelist.d", "test.cfg") os.makedirs(os.path.dirname(whitelist_file)) with open(whitelist_file, "w") as f: f.write(""" [test repo"] origin = Ubuntu component = pkgnames = silly.* """) # *after* that start the aptdaemon self.start_session_aptd(self.chroot.path) time.sleep(1) # start policykit and *only* allow from-whitelisted repo pk action self.start_fake_polkitd(PK_ACTION) time.sleep(1) def test_high_trust_polkit_ok(self): self.client = aptdaemon.client.AptClient(self.bus) # test that the high trust whitelist works trans = self.client.install_packages(["silly-base"]) trans.simulate() trans.connect("finished", lambda a, b: self.loop.quit()) trans.run() self.loop.run() self.assertEqual(trans.exit, aptdaemon.enums.EXIT_SUCCESS) # plus ensure removal will not work trans = self.client.remove_packages(["silly-base"]) with self.assertRaises(aptdaemon.errors.NotAuthorizedError): trans.run() def test_high_trust_polkit_not_ok(self): self.client = aptdaemon.client.AptClient(self.bus) # ensure that non-whitelisted packages can not be installed trans = self.client.install_packages(["other-pkg"]) trans.simulate() trans.connect("finished", lambda a, b: self.loop.quit()) with self.assertRaises(aptdaemon.errors.NotAuthorizedError): trans.run() if __name__ == "__main__": # import logging # logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_index.py0000644000000000000000000000254111752330114016525 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Test index handling.""" import os.path import apt import apt_pkg import unittest import aptdaemon.test class IndexRaceTest(unittest.TestCase): """If the indexes are deleted or manipulated at the time apt.Cache.required_download was called we get the following error: SystemError: I wasn't able to locate file for the XXX package. This might mean you need to manually fix this package. See lp:#659438 """ def setUp(self): self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.chroot.add_test_repository() # Check if installing an uninstalled package works self.cache = apt.Cache(rootdir=self.chroot.path) self.cache["silly-base"].mark_install() self.assertEqual(self.cache.required_download, 0) self.cache.clear() def test(self): lists_path = apt_pkg.config.find_dir("Dir::State::Lists") for file_name in os.listdir(lists_path): if file_name.endswith("Packages"): os.remove(os.path.join(lists_path, file_name)) self.cache["silly-base"].mark_install() self.assertRaises(SystemError, lambda: self.cache.required_download) # self.cache.required_download if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_lock.py0000644000000000000000000001226212174674317016366 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests locking.""" import logging import os import socket import subprocess import sys import unittest import aptdaemon.test import aptdaemon.worker.aptworker DEBUG = False import apt_pkg apt_pkg.init() class LockTest(unittest.TestCase): REMOTE_REPO = "deb copy://%s/repo ./" % aptdaemon.test.get_tests_dir() def setUp(self): self.chroot = aptdaemon.test.Chroot("-lock-test") self.chroot.setup() self.addCleanup(self.chroot.remove) # Required to change the lock pathes to the chroot self.worker = aptdaemon.worker.aptworker.AptWorker( chroot=self.chroot.path, load_plugins=False) pkg_path = os.path.join(aptdaemon.test.get_tests_dir(), "repo/silly-base_0.1-0_all.deb") self.dpkg_cmd = ["fakeroot", "dpkg", "--root", self.chroot.path, "--log=%s/var/log/dpkg.log" % self.chroot.path, "--install", pkg_path] self.inst_cmd = ('apt-get install silly-base ' '-o "Dir"="%s" ' '-o "Dir::state::status"="%s/var/lib/dpkg/status" ' '-o "Dir::Bin::Dpkg"="%s/dpkg-wrapper.sh" ' '-o "DPkg::Options::"="--root=%s" -y --force-yes' % (self.chroot.path, self.chroot.path, aptdaemon.test.get_tests_dir(), self.chroot.path)) self.apt_cmd = ('apt-get update -o "Dir"="%s" -o "Dir::state::status="' '"%s/var/lib/dpkg/status"' % (self.chroot.path, self.chroot.path)) # ensure to kill /etc/apt/apt.conf.d, otherwise stuff like # the (root only) Dpkg::Post-Invoke actions are run with open("%s/etc/apt/apt.conf" % self.chroot.path, "w") as conf: conf.write('Dir::Etc::parts "/directory-does-not-exist";') self.env = { # override the default apt conf to kill off apt.conf.d includes "APT_CONFIG": "%s/etc/apt/apt.conf" % self.chroot.path, # provide a path for dpkg "PATH": "/sbin:/bin:/usr/bin:/usr/sbin"} def test_global_lock(self): """Check if the lock blocks dpkg and apt-get.""" # Lock! aptdaemon.worker.aptworker.lock.acquire() self.assertEqual(2, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(100, subprocess.call(self.apt_cmd, env=self.env, shell=True)) # Relase and all should work again! aptdaemon.worker.aptworker.lock.release() self.assertEqual(0, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(0, subprocess.call(self.apt_cmd, env=self.env, shell=True)) def test_status_lock(self): """Test the lock on the status lock.""" # Lock! aptdaemon.worker.aptworker.lock.status_lock.acquire() self.assertEqual(2, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(100, subprocess.call(self.apt_cmd, env=self.env, shell=True)) # Relase and all should work again! aptdaemon.worker.aptworker.lock.status_lock.release() self.assertEqual(0, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(0, subprocess.call(self.apt_cmd, env=self.env, shell=True)) def test_lists_lock(self): """Test the lock on the repository packages lists.""" # Lock! aptdaemon.worker.aptworker.lock.lists_lock.acquire() # Dpkg doesn't care about the lock self.assertEqual(0, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(100, subprocess.call(self.apt_cmd, env=self.env, shell=True)) # Relase and all should work again! aptdaemon.worker.aptworker.lock.lists_lock.release() self.assertEqual(0, subprocess.call(self.apt_cmd, env=self.env, shell=True)) def test_archives_lock(self): """Test the lock on the download archives.""" # Skip the test if we don't have networking aptdaemon.worker.aptworker.lock.archive_lock.acquire() lst_path = os.path.join(self.chroot.path, "etc/apt/sources.list") with open(lst_path, "w") as lst_file: lst_file.write(self.REMOTE_REPO) # Dpkg and apt-get doen't care about the lock as long as there aren't # any downloads required self.assertEqual(0, subprocess.call(self.dpkg_cmd, env=self.env)) self.assertEqual(0, subprocess.call(self.apt_cmd, env=self.env, shell=True)) self.assertEqual(100, subprocess.call(self.inst_cmd, env=self.env, shell=True)) # Relase and all should work again! aptdaemon.worker.aptworker.lock.archive_lock.release() self.assertEqual(0, subprocess.call(self.inst_cmd, env=self.env, shell=True)) @unittest.skipIf(sys.version_info.major < 3, "Python 3 only") def setUp(): pass if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_lock_location.py0000644000000000000000000000336212067677576020272 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests locking.""" import imp import logging import os import subprocess import sys import unittest DEBUG = False class LockFileLocationTest(unittest.TestCase): def test_lock_file_location(self): """Make sure that the correct lock files are used.""" # Make sure that the lock module is reloaded if called from # within a test suite (to ensure no stale apt_pkg.config values # hanging around) import aptdaemon.lock imp.reload(aptdaemon.lock) # the actual test self.assertEqual(aptdaemon.lock.status_lock.path, os.path.join(os.path.dirname(self.STATUS_PATH), "lock")) self.assertEqual(aptdaemon.lock.lists_lock.path, os.path.join(self.LISTS_PATH, "lock")) self.assertEqual(aptdaemon.lock.archive_lock.path, os.path.join(self.ARCHIVES_PATH, "lock")) def setUp(self): """Extract the currently used pathes.""" for var, lock in [("self.STATUS_PATH", "'dir::state::status'/f"), ("self.LISTS_PATH", "'dir::state::lists'/d"), ("self.ARCHIVES_PATH", "'dir::cache::archives'/d")]: cmd = subprocess.Popen("/usr/bin/apt-config shell %s %s" % (var, lock), shell=True, stdout=subprocess.PIPE) exec(cmd.communicate()[0]) @unittest.skipIf(sys.version_info.major < 3, "Only Python 3") def setUp(): pass if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_pep8.py0000644000000000000000000000267512067677576016334 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Make sure that the code conforms the PEP8 conventions.""" # Copyright (C) 2012 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 __author__ = "Sebastian Heinlein " import subprocess import unittest class AptDaemonPep8TestCase(unittest.TestCase): def test(self): """Check if the source code matches the PEP8 style conventions.""" subprocess.check_call(["pep8", "--statistics", "--show-source", "--show-pep8", "--exclude", "pkenums.py", "aptdaemon", "tests"]) if __name__ == "__main__": unittest.main() aptdaemon-1.1.1+bzr982/tests/test_pk.py0000644000000000000000000005767712274521074016063 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the PackageKit compatibility layer. Since the PackageKit client doesn't support changing system D-Bus sockets, run the tests only by using nose (e.g. nosetests3 tests.test_pk.PackageKitTest) or by running the main routine (python3 test_pk.py). If a test fails all subsequent ones will fail, too. You will get the following error message: gi._glib.GError: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name :1.16 was not provided by any .service files """ import atexit import logging import os import os.path import shutil import subprocess import tempfile import time import sys import unittest import apt_pkg import apt.auth from gi.repository import GLib from gi.repository import PackageKitGlib as pk import aptdaemon.test REPO_PATH = os.path.join(aptdaemon.test.get_tests_dir(), "repo") DEBUG = True class PackageKitTest(aptdaemon.test.AptDaemonTestCase): """Test the PackageKit compatibility layer.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.chroot.add_test_repository() # set up scratch dir self.workdir = tempfile.mkdtemp() # allow tests to add plugins, etc. self.orig_pythonpath = os.environ.get("PYTHONPATH") os.environ["PYTHONPATH"] = "%s:%s" % (self.workdir, os.environ.get("PYTHONPATH", "")) # write apt config for calling apt-key apt_conf = os.path.join(self.chroot.path, 'aptconfig') with open(apt_conf, 'w') as f: f.write('Dir "%s";\n' % self.chroot.path) os.environ['APT_CONFIG'] = apt_conf # if tests install keys, have aptd query a local fake server os.environ['APTDAEMON_KEYSERVER'] = 'hkp://localhost:19191' self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(2.0) def tearDown(self): shutil.rmtree(self.workdir) if self.orig_pythonpath: os.environ["PYTHONPATH"] = self.orig_pythonpath def test_install(self): """Test installing a package.""" pkg_name = "silly-depend-base" client = pk.Client() # Resolve the id of the package res = client.resolve(pk.FilterEnum.NONE, [pkg_name], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) ids = [] for pkg in res.get_package_array(): self.assertEqual(pkg.get_name(), pkg_name) ids.append(pkg.get_id()) break else: self.fail("Failed to resolve %s" % pkg_name) # Simulate res = client.install_packages(2 ** pk.TransactionFlagEnum.SIMULATE, ids, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) for pkg in res.get_package_array(): self.assertEqual(pkg.get_name(), "silly-base") self.assertEqual(pkg.get_info(), pk.info_enum_from_string("installing")) break else: self.fail("Failed to get dependencies of %s" % pkg_name) # Install res = client.install_packages(pk.TransactionFlagEnum.NONE, ids, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) # verify list of files res = client.get_files(ids, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) files = res.get_files_array()[0].get_property('files') # ships two files, plus directories self.assertGreaterEqual(len(files), 2, 'expect two files in ' + str(files)) self.assertTrue('/usr/share/doc/silly-depend-base/copyright' in files, files) def test_install_files(self): """Test installing local package files.""" path_pkg_lintian_fail = os.path.join( REPO_PATH, "silly-depend-base-lintian-broken_0.1-0_all.deb") path_pkg = os.path.join( REPO_PATH, "silly-depend-base_0.1-0_all.deb") client = pk.Client() # Fail if more than package should be installed try: client.install_files(pk.TransactionFlagEnum.NONE, [path_pkg_lintian_fail, path_pkg], None, lambda p, t, d: True, None) except GLib.GError as error: self.assertTrue("Only one package" in error.message) else: self.fail("Installing multiple package files didn't fail") # Check simulating res = client.install_files(2 ** pk.TransactionFlagEnum.SIMULATE, [path_pkg], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = res.get_package_array() if len(pkgs) != 1: self.fail("Failed to get dependencies") self.assertEqual(pkgs[0].get_name(), "silly-base") self.assertEqual(pkgs[0].get_version(), "0.1-0update1") # Check the actual installtion res = client.install_files(pk.TransactionFlagEnum.NONE, [path_pkg], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) # verify list of files res = client.get_files(["silly-depend-base;0.1-0;all;"], None, lambda p, t, d: True, None) files = res.get_files_array()[0].get_property('files') # ships two files, plus directories self.assertGreaterEqual(len(files), 2, 'expect two files in ' + str(files)) self.assertTrue('/usr/share/doc/silly-depend-base/copyright' in files, files) def test_download(self): """Test downloading packages.""" pkg_filename = "silly-base_0.1-0update1_all.deb" pkg_id = "silly-base;0.1-0update1;all;" temp_dir = tempfile.mkdtemp(prefix="aptd-download-test-") client = pk.Client() res = client.download_packages([pkg_id], temp_dir, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) if not os.path.exists(os.path.join(temp_dir, pkg_filename)): self.fail("Failed to download the package") shutil.rmtree(temp_dir) def test_filters(self): """Test filters.""" pkg = "silly-base_0.1-0_all.deb" self.chroot.install_debfile(os.path.join(REPO_PATH, pkg), True) client = pk.Client() # All version res = client.resolve(pk.FilterEnum.NONE, ["silly-base"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = res.get_package_array() if len(pkgs) != 2: self.fail("Failed to get versions") versions = ["0.1-0", "0.1-0update1"] for pkg in pkgs: self.assertEqual(pkg.get_name(), "silly-base") versions.remove(pkg.get_version()) # Newest version res = client.resolve(2 ** pk.FilterEnum.NEWEST, ["silly-base"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = res.get_package_array() if len(pkgs) != 1: self.fail("Failed to get version") self.assertEqual(pkgs[0].get_name(), "silly-base") self.assertEqual(pkgs[0].get_version(), "0.1-0update1") # Installed version res = client.resolve(2 ** pk.FilterEnum.INSTALLED, ["silly-base"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = res.get_package_array() if len(pkgs) != 1: self.fail("Failed to get version") self.assertEqual(pkgs[0].get_name(), "silly-base") self.assertEqual(pkgs[0].get_version(), "0.1-0") # Available version res = client.resolve(2 ** pk.FilterEnum.NOT_INSTALLED, ["silly-base"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = res.get_package_array() if len(pkgs) != 1: self.fail("Failed to get version") self.assertEqual(pkgs[0].get_name(), "silly-base") self.assertEqual(pkgs[0].get_version(), "0.1-0update1") def test_get_updates(self): """Test getting updates.""" pkg = "silly-base_0.1-0_all.deb" self.chroot.install_debfile(os.path.join(REPO_PATH, pkg), True) client = pk.Client() res = client.get_updates(pk.FilterEnum.NONE, None, lambda p, t, d: True, None) for pkg in res.get_package_array(): self.assertEqual(pkg.get_name(), "silly-base") self.assertEqual(pkg.get_version(), "0.1-0update1") self.assertEqual(pkg.get_info(), pk.info_enum_from_string("normal")) break else: self.fail("Failed to detect upgrade") self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) def test_get_updates_security(self): """Test if security updates are detected correctly.""" self.chroot.add_repository(os.path.join(aptdaemon.test.get_tests_dir(), "repo/security")) pkg = "silly-base_0.1-0_all.deb" self.chroot.install_debfile(os.path.join(REPO_PATH, pkg), True) client = pk.Client() res = client.get_updates(pk.FilterEnum.NONE, None, lambda p, t, d: True, None) for pkg in res.get_package_array(): self.assertEqual(pkg.get_name(), "silly-base") self.assertEqual(pkg.get_version(), "0.1-0update1") self.assertEqual(pkg.get_info(), pk.info_enum_from_string("security")) break else: self.fail("Failed to detect upgrade") self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) def test_get_updates_backports(self): """Test if backports are detected correctly.""" self.chroot.add_repository(os.path.join(aptdaemon.test.get_tests_dir(), "repo/backports")) pkg = "silly-base_0.1-0_all.deb" self.chroot.install_debfile(os.path.join(REPO_PATH, pkg), True) client = pk.Client() res = client.get_updates(pk.FilterEnum.NONE, None, lambda p, t, d: True, None) for pkg in res.get_package_array(): self.assertEqual(pkg.get_name(), "silly-base") self.assertEqual(pkg.get_version(), "0.1-0update1") self.assertEqual(pkg.get_info(), pk.info_enum_from_string("enhancement")) break else: self.fail("Failed to detect upgrade") self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) def test_require_restart(self): """Test if the restart-required signal gets emitted.""" os.makedirs(os.path.join(self.chroot.path, "var/run")) with open(os.path.join(self.chroot.path, "var/run/reboot-required"), "w") as reboot_stamp: reboot_stamp.write("") client = pk.Client() res = client.get_updates(pk.FilterEnum.NONE, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) self.assertEqual(res.get_require_restart_worst(), pk.RestartEnum.SYSTEM) def test_dependencies(self): """Test getting dependencies and dependants.""" pkg_id_depend = "silly-depend-base;0.1-0;all;" pkg_id = "silly-base;0.1-0update1;all;" client = pk.Client() # Get depends res = client.get_depends(pk.FilterEnum.NONE, [pkg_id_depend], True, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) for pkg in res.get_package_array(): self.assertEqual(pkg.get_id(), pkg_id) break else: self.fail("Failed to get dependencies of %s" % pkg_id_depend) # Get requires res = client.get_requires(pk.FilterEnum.NONE, [pkg_id], True, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) for pkg in res.get_package_array(): self.assertEqual(pkg.get_id(), pkg_id_depend) break else: self.fail("Failed to get dependants of %s" % pkg_id) def test_what_provides_unsupported(self): """Test querying for provides for unsupported type.""" client = pk.Client() try: client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.CODEC, ["gstreamer0.10(decoder-audio/ac3)"], None, lambda p, t, d: True, None) self.fail("expected GLib.Error failure") except GLib.GError as e: self.assertTrue("codec" in str(e), e) self.assertTrue("not supported" in str(e), e) def test_what_provides_plugin(self): """Test querying for provides with plugins.""" # add plugin for extra codecs f = open(os.path.join(self.workdir, "extra_codecs.py"), "w") f.write("""import aptdaemon.pkenums as enums def fake_what_provides(cache, type, search): if type in (enums.PROVIDES_CODEC, enums.PROVIDES_ANY): if search.startswith('gstreamer'): return [cache["gstreamer0.10-silly"]] raise NotImplementedError('cannot handle type ' + str(type)) """) f.close() os.mkdir(os.path.join(self.workdir, "extra_codecs-0.egg-info")) f = open(os.path.join(self.workdir, "extra_codecs-0.egg-info", 'entry_points.txt'), "w") f.write("[packagekit.apt.plugins]\n" "what_provides=extra_codecs:fake_what_provides\n") f.close() # invalid plugin, should not stop the valid ones os.mkdir(os.path.join(self.workdir, "nonexisting-1.egg-info")) f = open(os.path.join(self.workdir, "nonexisting-1.egg-info", 'entry_points.txt'), "w") f.write("[packagekit.apt.plugins]\n" "what_provides=nonexisting:what_provides\n") f.close() # another plugin to test chaining and a new type f = open(os.path.join(self.workdir, "more_stuff.py"), "w") f.write("""import aptdaemon.pkenums as enums def my_what_provides(cache, type, search): if type in (enums.PROVIDES_CODEC, enums.PROVIDES_ANY): if search.startswith('gstreamer'): return [cache["silly-base"]] if type in (enums.PROVIDES_LANGUAGE_SUPPORT, enums.PROVIDES_ANY): if search.startswith('locale('): return [cache["silly-important"]] raise NotImplementedError('cannot handle type ' + str(type)) """) f.close() os.mkdir(os.path.join(self.workdir, "more_stuff-0.egg-info")) f = open(os.path.join(self.workdir, "more_stuff-0.egg-info", 'entry_points.txt'), "w") f.write("[packagekit.apt.plugins]\n" "what_provides=more_stuff:my_what_provides\n") f.close() client = pk.Client() # search for CODEC res = client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.CODEC, ["gstreamer0.10(decoder-audio/vorbis)"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = [p.get_id().split(";")[0] for p in res.get_package_array()] self.assertEqual(pkgs, ["gstreamer0.10-silly", "silly-base"]) # search for LANGUAGE_SUPPORT res = client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.LANGUAGE_SUPPORT, ["locale(de_DE)"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = [p.get_id().split(";")[0] for p in res.get_package_array()] self.assertEqual(pkgs, ["silly-important"]) # search ANY res = client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.ANY, ["gstreamer0.10(decoder-audio/vorbis)"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = [p.get_id().split(";")[0] for p in res.get_package_array()] self.assertEqual(pkgs, ["gstreamer0.10-silly", "silly-base"]) res = client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.ANY, ["locale(de_DE)"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) pkgs = [p.get_id().split(";")[0] for p in res.get_package_array()] self.assertEqual(pkgs, ["silly-important"]) res = client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.ANY, ["modalias(pci:1)"], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) self.assertEqual(res.get_package_array(), []) # unsupported type with plugins try: client.what_provides(pk.FilterEnum.NONE, pk.ProvidesEnum.PLASMA_SERVICE, ["plasma4(dataengine-weather)"], None, lambda p, t, d: True, None) self.fail("expected GLib.Error failure") except GLib.GError as e: self.assertTrue("plasma" in str(e), e) self.assertTrue("not supported" in str(e), e) def test_repo_enable(self): """Test adding a repository.""" client = pk.Client() # create test update repo repo = tempfile.mkdtemp() self.addCleanup(shutil.rmtree, repo) with open(os.path.join(repo, 'Packages'), 'w') as f: f.write('''Package: silly-new Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-new (0.1-0) Version: 1.2.3 Filename: %s/silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 Description: new package from a third-party repo ''' % self.chroot.path) # without the new repo, we do not have it yet self.assertRaises(GLib.GError, client.resolve, pk.FilterEnum.NONE, ['silly-new'], None, lambda p, t, d: True, None) # now add the new repo apt_source = 'deb file://%s /' % repo res = client.repo_enable(apt_source, True, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) with open(os.path.join(self.chroot.path, 'etc', 'apt', 'sources.list')) as f: for line in f: if line.strip() == apt_source: break else: self.fail('did not find newly added repository in ' 'sources.list') # should not actually download the indexes yet self.assertRaises(GLib.GError, client.resolve, pk.FilterEnum.NONE, ['silly-new'], None, lambda p, t, d: True, None) res = client.refresh_cache(False, None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) # we should now see the new package res = client.resolve(pk.FilterEnum.NONE, ['silly-new'], None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) packages = res.get_package_array() self.assertEqual(len(packages), 1) self.assertEqual(packages[0].get_name(), "silly-new") self.assertEqual(packages[0].get_version(), "1.2.3") self.assertEqual(packages[0].get_info(), pk.info_enum_from_string("available")) def test_repo_enable_errors(self): """Test errors when adding a repository.""" client = pk.Client() client.set_locale("C") try: client.repo_enable('bogus', True, None, lambda p, t, d: True, None) except GLib.GError as e: self.assertTrue('format' in str(e)) self.assertTrue('bogus' in str(e)) try: client.repo_enable('deb http://example.com', True, None, lambda p, t, d: True, None) except GLib.GError as e: self.assertTrue('format' in str(e), e) self.assertTrue('http://example.com' in str(e), e) def test_install_signature(self): """Test installing a new GPG key""" # we do not have any key initially self.assertEqual(len(apt.auth.list_keys()), 0) # launch our keyserver self.start_keyserver() # now add one client = pk.Client() res = client.install_signature( pk.SigTypeEnum.GPG, 'D0BF65B7DBE28DB62BEDBF1B683C53C7CF982D18', '', None, lambda p, t, d: True, None) self.assertEqual(res.get_exit_code(), pk.ExitEnum.SUCCESS) # key was imported correctly key = apt.auth.list_keys()[0] self.assertEqual('CF982D18', key.keyid) def test_install_signature_error(self): """Test installing a new GPG key with failing server""" # do not start keyserver, so http://localhost.. will not exist client = pk.Client() client.set_locale("C") try: client.install_signature( pk.SigTypeEnum.GPG, '1111111111111111111111111111111111111111', '', None, lambda p, t, d: True, None) except GLib.GError as e: self.assertTrue('Failed to download' in str(e), e) self.assertTrue('11111111' in str(e), e) def test_unimplemented(self): """Test proper error message on unimplemented method.""" client = pk.Client() client.set_locale("C") try: client.upgrade_system("sid", pk.UpgradeKindEnum.COMPLETE, None, lambda p, t, d: True, None) except GLib.GError as e: self.assertTrue('implemented' in str(e)) @unittest.skipIf(sys.version_info.major < 3, "Python3 only") def setUp(): """The PackageKit client cannot handle a changed system D-Bus address. So we need to setup a static one for the whole test suite. This requires to run nosetests to launch this test suite. """ proc, address = aptdaemon.test.start_dbus_daemon() os.environ["DBUS_SYSTEM_BUS_ADDRESS"] = address # The pk.Client uses a DBus connection with exit-on-disconnect set to # True which cannot be modified. Furthermore the registered signal # handlers cannot be removed. Since GIO would kill the test suite if # the daemon disappears we have to delay killing the daemon atexit.register(os.kill, proc.pid, 9) def tearDown(): os.environ["DBUS_SYSTEM_BUS_ADDRESS"] = "" if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) setUp() unittest.main() tearDown() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_progress.py0000644000000000000000000000233611753504760017277 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the debconf forwarding""" import apt import logging import mock import sys import unittest from aptdaemon.progress import DaemonOpenProgress class TestProgress(unittest.TestCase): def test_open_progress(self): transaction = mock.Mock() begin = 0 end = 5 d = DaemonOpenProgress(transaction, begin=begin, end=end) # simulate cache open (c = apt.Cache(d))) for j in range(4): for i in range(0, 100, 10): d.update(i) self.assertTrue(d.progress >= begin) self.assertTrue(d.progress <= end) d.done() # ensure we use the full range self.assertEqual(d.progress, end) def test_open_progress_real_cache(self): transaction = mock.Mock() begin = 0 end = 5 d = DaemonOpenProgress(transaction, begin=begin, end=end) c = apt.Cache(d) # ensure we use the full range self.assertEqual(d.progress, end) @unittest.skipIf(sys.version_info.major < 3, "Python 3 only") def setUp(): pass if __name__ == "__main__": logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_py2_string_handling.py0000644000000000000000000000263412067677576021417 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- # Copyright (C) 2011 Michael Vogt # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 """Regression test for a unicode decoding error in the status_details, progress_download or error_properties attributes of the transaction, see LP #724735. """ __author__ = "Michael Vogt " import sys import unittest if sys.version_info.major == 2: from _test_py2_string_handling import * else: try: from _test_py3_string_handling import * except ImportError: from ._test_py3_string_handling import * if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_simulate.py0000644000000000000000000000447712067677576017305 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests if the daemon forces a simualte during run.""" import logging import time import unittest from gi.repository import GObject import dbus import aptdaemon.client import aptdaemon.loop import aptdaemon.enums import aptdaemon.test DEBUG = True class DaemonTest(aptdaemon.test.AptDaemonTestCase): """Test the python client.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(1) def _on_finished(self, trans, exit): """Callback to stop the mainloop after a transaction is done.""" aptdaemon.loop.mainloop.quit() def test_detect_unauthenticated(self): """Test if the installation of an unauthenticated packages fails if simulate hasn't been called explicitly before. """ self.chroot.add_test_repository(copy_sig=False) self.client = aptdaemon.client.AptClient(self.bus) trans = self.client.install_packages(["silly-base"]) trans.connect("finished", self._on_finished) trans.run() aptdaemon.loop.mainloop.run() self.assertEqual(trans.exit, aptdaemon.enums.EXIT_FAILED) self.assertEqual(trans.error.code, aptdaemon.enums.ERROR_PACKAGE_UNAUTHENTICATED) self.assertEqual(trans.unauthenticated, ["silly-base"]) def test_environment(self): """Ensure that the test environment works.""" self.chroot.add_test_repository() self.client = aptdaemon.client.AptClient(self.bus) trans = self.client.install_packages(["silly-base"]) trans.connect("finished", self._on_finished) trans.run() aptdaemon.loop.mainloop.run() self.assertEqual(trans.exit, aptdaemon.enums.EXIT_SUCCESS) if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_trans_chain.py0000644000000000000000000000340712067677576017743 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests the debconf forwarding""" import unittest from gi.repository import GLib from aptdaemon import enums, client DEBUG = False class TransChainTest(unittest.TestCase): """These tests require an aptdaemon running with the dummy worker: # sudo aptd -td --dummy """ def setUp(self): self.loop = GLib.MainLoop() self.client = client.AptClient() def _test_working(self): def on_finished(trans, exit): self.loop.quit() trans1 = self.client.upgrade_packages(["huhu"]) trans2 = self.client.upgrade_packages(["lala"]) trans3 = self.client.upgrade_packages(["huhu"]) trans2.run_after(trans1) trans3.run_after(trans2) trans1.run() trans3.connect("finished", on_finished) self.loop.run() self.assertTrue(trans1.exit == enums.EXIT_SUCCESS) self.assertTrue(trans2.exit == enums.EXIT_SUCCESS) self.assertTrue(trans3.exit == enums.EXIT_SUCCESS) def _test_fail_after(self): def on_finished(trans, exit): self.loop.quit() trans1 = self.client.update_cache() trans2 = self.client.upgrade_packages(["huhululu"]) trans3 = self.client.upgrade_packages(["huhululu"]) trans2.run_after(trans1) trans3.run_after(trans2) trans1.run() trans3.connect("finished", on_finished) self.loop.run() self.assertTrue(trans1.exit == enums.EXIT_FAILED) self.assertTrue(trans2.exit == enums.EXIT_PREVIOUS_FAILED) self.assertTrue(trans3.exit == enums.EXIT_PREVIOUS_FAILED) if __name__ == "__main__": import logging if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_valid_package_names.py0000644000000000000000000000425512067677576021411 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Test index handling.""" import sys import unittest import apt import mock import aptdaemon.core import aptdaemon.errors class TestValidPacakgeNames(unittest.TestCase): """Test the code that verifies for valid package names """ def setUp(self): self.cache = apt.Cache() opt = mock.Mock() opt.dummy = True self.daemon = aptdaemon.core.AptDaemon(opt, connect=False) def test_valid_package_names(self): # ensure that the code raises on invalid ones, note that we # test each item individually instead of the list because each # needs to raise for invalid in [ "foo_bar", "äää", "i space", "a", "+invalidstart", "noUpper", "foo=", "foo=", "foo=a", "foo=0 space" "foo/", "foo/ space"]: with self.assertRaises(aptdaemon.errors.AptDaemonError): self.daemon._check_package_names([invalid]) # check some simple good cases for pkgname in ["apt", "apt/unstable", "apt=0.3.2", "apt:i386", "apt+:i386/unstable", "apt+:amd64=0.3.2"]: self.daemon._check_package_names([pkgname]) # ensure the code does not wrongly label valid packages as # invalid, _check_package_names will raise on error for pkg in self.cache: self.daemon._check_package_names([pkg.name]) # test again, this time with version number for pkg in self.cache: if not pkg.candidate: continue self.daemon._check_package_names( ["%s=%s" % (pkg.name, pkg.candidate.version)]) # test again, this time with release origin for pkg in self.cache: if not pkg.candidate: continue archive = pkg.candidate.origins[0].archive if archive: self.daemon._check_package_names(["%s/%s" % (pkg.name, archive)]) @unittest.skipIf(sys.version_info.major < 3, "Python 3 only") def setUp(): pass if __name__ == "__main__": unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/test_worker.py0000644000000000000000000006571712352744055016757 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Provides unit tests for the APT worker.""" # Copyright (C) 2011 Sebastian Heinlein # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 __author__ = "Sebastian Heinlein " import glob import netrc import os import shutil import stat import sys import tempfile import unittest import apt_pkg from gi.repository import GLib from mock import ( Mock, patch) import aptdaemon.test from aptdaemon.worker.aptworker import ( AptWorker) from aptdaemon.core import Transaction from aptdaemon import enums, errors REPO_PATH = os.path.join(aptdaemon.test.get_tests_dir(), "repo") PY3K = sys.version_info.major > 2 class WorkerTestCase(aptdaemon.test.AptDaemonTestCase): """Test suite for the worker which performs the actual package installation and removal.""" def setUp(self): self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) self.loop = GLib.MainLoop() self.queue = aptdaemon.test.MockQueue() self.worker = AptWorker(chroot=self.chroot.path, load_plugins=False) self.worker.connect("transaction-done", lambda w, t: self.loop.quit()) self.worker.connect("transaction-simulated", lambda w, t: self.loop.quit()) @unittest.skipIf("nose" in sys.modules, "Fails under nosetests3") def test_update_cache(self): """Test updating the cache using a local repository.""" # Add a working and a non-working repository self.chroot.add_trusted_key() path = os.path.join(self.chroot.path, "etc/apt/sources.list.d/test.list") with open(path, "w") as part_file: part_file.write("deb file://%s ./" % REPO_PATH) self.chroot.add_repository("/does/not/exist", copy_list=False) # Only update the repository from the working snippet trans = Transaction(None, enums.ROLE_UPDATE_CACHE, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, kwargs={"sources_list": "test.list"}) self.worker.simulate(trans) self.loop.run() self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertEqual(len(self.worker._cache), 10) pkg = self.worker._cache["silly-base"] self.assertTrue(pkg.candidate.origins[0].trusted) def test_upgrade_system(self): """Test upgrading the system.""" self.chroot.add_test_repository() self.chroot.install_debfile(os.path.join(REPO_PATH, "silly-base_0.1-0_all.deb")) # Install the package trans = Transaction(None, enums.ROLE_UPGRADE_SYSTEM, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, kwargs={"safe_mode": False}) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_UPGRADE], ["silly-base=0.1-0update1"]) self.assertTrue(trans.space > 0) self.assertTrue(trans.download == 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() # Test apt history log with open(os.path.join(self.chroot.path, "var/log/apt/history.log")) \ as history_file: history = history_file.read() self.assertTrue("Commandline: aptdaemon role='%s'" % trans.role in history) self.assertEqual(self.worker._cache["silly-base"].installed.version, "0.1-0update1") def test_check_unauth(self): """Test if packages from an unauthenticated repo are detected.""" self.chroot.add_test_repository(copy_sig=False) # Install the package trans = Transaction(None, enums.ROLE_INSTALL_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[["silly-base"], [], [], [], [], []]) self.worker.simulate(trans) self.loop.run() trans.allow_unauthenticated = False self.assertEqual(trans.unauthenticated, ["silly-base"]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_FAILED) self.assertEqual(trans.error.code, enums.ERROR_PACKAGE_UNAUTHENTICATED) # Allow installation of unauthenticated packages trans = Transaction(None, enums.ROLE_INSTALL_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[["silly-base"], [], [], [], [], []]) trans.allow_unauthenticated = True self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.unauthenticated, ["silly-base"]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertTrue(self.worker._cache["silly-base"].is_installed) def test_install(self): """Test installation of a package from a repository.""" self.chroot.add_test_repository() # Install the package trans = Transaction(None, enums.ROLE_INSTALL_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[["silly-depend-base"], [], [], [], [], []]) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_INSTALL], ["silly-base=0.1-0update1"]) self.assertTrue(trans.space > 0) self.assertTrue(trans.download == 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertTrue(self.worker._cache["silly-depend-base"].is_installed) def test_remove_obsolete(self): """Test the removal of obsoleted packages.""" for pkg in ["silly-base_0.1-0_all.deb", "silly-depend-base_0.1-0_all.deb"]: self.chroot.install_debfile(os.path.join(REPO_PATH, pkg)) ext_states = apt_pkg.config.find_file("Dir::State::extended_states") with open(ext_states, "w") as ext_states_file: ext_states_file.write("""Package: silly-base Architecture: all Auto-Installed: 1""") trans = Transaction(None, enums.ROLE_REMOVE_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], ["silly-depend-base"], [], [], []]) trans.remove_obsoleted_depends = True self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_REMOVE], ["silly-base=0.1-0"]) self.assertTrue(trans.space < 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertFalse("silly-base" in self.worker._cache) self.assertFalse("silly-depend-base" in self.worker._cache) def test_remove(self): """Test the removal of packages.""" for pkg in ["silly-base_0.1-0_all.deb", "silly-essential_0.1-0_all.deb", "silly-depend-base_0.1-0_all.deb"]: self.chroot.install_debfile(os.path.join(REPO_PATH, pkg)) trans = Transaction(None, enums.ROLE_REMOVE_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], ["silly-base"], [], [], []]) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_REMOVE], ["silly-depend-base=0.1-0"]) self.assertTrue(trans.space < 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() try: installed = self.worker._cache["silly-depend-base"].is_installed self.assertFalse(installed) except KeyError: pass # Don't allow to remove essential packages trans = Transaction(None, enums.ROLE_REMOVE_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], ["silly-essential"], [], [], []]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_FAILED, "Allowed to remove an essential package") self.assertEqual(trans.error.code, enums.ERROR_NOT_REMOVE_ESSENTIAL_PACKAGE, "Allowed to remove an essential package") def test_upgrade(self): """Test upgrading of packages.""" self.chroot.add_test_repository() for pkg in ["silly-base_0.1-0_all.deb", "silly-depend-base_0.1-0_all.deb"]: self.chroot.install_debfile(os.path.join(REPO_PATH, pkg)) ext_states = apt_pkg.config.find_file("Dir::State::extended_states") with open(ext_states, "w") as ext_states_file: ext_states_file.write("""Package: silly-base Architecture: all Auto-Installed: 1""") trans = Transaction(None, enums.ROLE_COMMIT_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], [], [], ["silly-base=0.1-0update1"], []]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertEqual(self.worker._cache["silly-base"].installed.version, "0.1-0update1", "Failed to upgrade.") self.assertTrue(self.worker._cache["silly-base"].is_auto_installed) def test_downgrade(self): """Test downgrading of packages.""" self.chroot.add_test_repository() pkg = os.path.join(REPO_PATH, "silly-base_0.1-0update1_all.deb") self.chroot.install_debfile(pkg) trans = Transaction(None, enums.ROLE_COMMIT_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], [], [], [], ["silly-base=0.1-0"]]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertEqual(self.worker._cache["silly-base"].installed.version, "0.1-0", "Failed to downgrade.") def test_purge(self): """Test the purging of packages.""" for pkg in ["silly-base_0.1-0_all.deb", "silly-config_0.1-0_all.deb"]: self.chroot.install_debfile(os.path.join(REPO_PATH, pkg)) trans = Transaction(None, enums.ROLE_REMOVE_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, packages=[[], [], [], ["silly-config"], [], []]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.assertFalse( os.path.exists(os.path.join(self.chroot.path, "etc/silly-packages.cfg")), "Configuration file wasn't removed.") @unittest.skipUnless( os.path.exists('/usr/share/lintian/profiles/debian/aptdaemon.profile'), 'this test needs aptdaemon installed, for the lintian profiles') def test_install_file(self): """Test the installation of a local package file.""" # test self.chroot.add_test_repository() pkg = os.path.join(REPO_PATH, "silly-depend-base-lintian-broken_0.1-0_all.deb") trans = Transaction(None, enums.ROLE_INSTALL_FILE, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, kwargs={"path": os.path.join(REPO_PATH, pkg), "force": False}) self.worker.simulate(trans) self.loop.run() self.assertIn("wrong-file-owner-uid-or-gid", trans.error.details) self.assertEqual(trans.error.code, enums.ERROR_INVALID_PACKAGE_FILE, "Lintian failed to detect a broken package") # Now allow to install invalid packages trans.kwargs["force"] = True self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_INSTALL], ["silly-base=0.1-0update1"]) self.assertTrue(trans.space > 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() pkg = self.worker._cache["silly-depend-base-lintian-broken"] self.assertTrue(pkg.is_installed) def test_install_conflicting_file(self): """Test installing of a local package file that conflicts with installed packages. Regression test for LP: #750958 """ pkg_base = "silly-base_0.1-0_all.deb" self.chroot.install_debfile(os.path.join(REPO_PATH, pkg_base)) pkg = os.path.join(REPO_PATH, "silly-bully_0.1-0_all.deb") trans = Transaction(None, enums.ROLE_INSTALL_FILE, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, kwargs={"path": os.path.join(REPO_PATH, pkg), "force": True}) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_FAILED, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.assertEqual(trans.error.code, enums.ERROR_DEP_RESOLUTION_FAILED) self.worker._cache.open() def test_install_unknown_file(self): """Test the installation of a local package file which is not known to the cache. Regression test for LP #702217 """ pkg = os.path.join(REPO_PATH, "silly-base_0.1-0_all.deb") trans = Transaction(None, enums.ROLE_INSTALL_FILE, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False, kwargs={"path": os.path.join(REPO_PATH, pkg), "force": True}) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.packages, (["silly-base"], [], [], [], [], [])) self.assertTrue(trans.space > 0) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertTrue(self.worker._cache["silly-base"].is_installed) def test_fix_broken_depends(self): """Test the fixing of broken dependencies.""" for pkg in ["silly-base_0.1-0_all.deb", "silly-broken_0.1-0_all.deb"]: self.chroot.install_debfile(os.path.join(REPO_PATH, pkg), True) trans = Transaction(None, enums.ROLE_FIX_BROKEN_DEPENDS, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.depends[enums.PKGS_REMOVE], ["silly-broken=0.1-0"]) self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) self.worker._cache.open() self.assertEqual(self.worker._cache.broken_count, 0) def test_install_broken_depends(self): """Test the that installing a package with broken dependencies fails in a correct way. """ self.chroot.add_test_repository() trans = Transaction(None, enums.ROLE_COMMIT_PACKAGES, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", packages=[["silly-broken"], [], [], [], [], []], connect=False) self.worker.simulate(trans) self.loop.run() self.assertEqual(trans.error.code, enums.ERROR_DEP_RESOLUTION_FAILED) def test_add_license_key_unsecure(self): """Test if we refuse to install license key files to an unsecure location or binaries.""" self.chroot.add_test_repository(copy_sig=False) # Should fail because of an untrusted source license_key = "NASTY_BLOB" license_key_path = "/opt/silly-license/NASTY.KEY" pkg_name = "silly-license" self.assertRaises(errors.TransactionFailed, self.worker._add_license_key_to_system, pkg_name, license_key, license_key_path) # Check if we don't allow to install executables with open("/bin/ls", "rb") as sample_exec: license_key = sample_exec.read() if PY3K: license_key = license_key.decode("UTF-8", "ignore") pkg_name = "silly-license" self.assertRaises(errors.TransactionFailed, self.worker._add_license_key_to_system, pkg_name, license_key, license_key_path) def test_add_license_key(self): """Test the installation of license key files.""" license_key = "Bli bla blub, I am a nasty BLOB!" license_path = "/opt/silly-license/NASTY.KEY" def get_license_key_mock(uid, pkg, oauth, server): return license_key, license_path self.chroot.add_test_repository() trans = Transaction(None, enums.ROLE_ADD_LICENSE_KEY, self.queue, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", kwargs={"pkg_name": "silly-license", "json_token": "lalelu", "server_name": "mock"}, connect=False) os.makedirs(os.path.join( aptdaemon.worker.aptworker.apt_pkg.config["Dir"], "opt/silly-license/")) self.worker.plugins["get_license_key"] = [get_license_key_mock] self.worker.run(trans) self.loop.run() self.assertEqual(trans.exit, enums.EXIT_SUCCESS, "%s: %s" % (trans._error_property[0], trans._error_property[1])) # Check the content of the installed key verify_path = os.path.join( aptdaemon.worker.aptworker.apt_pkg.config["Dir"], license_path[1:]) with open(verify_path) as verify_file: self.assertEqual(license_key, verify_file.read(), "Content of license key doesn't match") def test_use_apt_auth_conf(self): """Test if credentials of repositories are store securely in a separate file. """ source_file_name = "private_source.list" self.worker.add_repository(Mock(), "deb", "https://user:pass@host.example.com/path", "natty", ["main"], "comment", source_file_name) # check if password was stripped (source file) source_parts = apt_pkg.config.find_dir("Dir::Etc::sourceparts") source_file_path = os.path.join(source_parts, source_file_name) with open(source_file_path) as source_file: source_file_content = source_file.read() self.assertFalse("user:pass" in source_file_content) # check if password was stored correctly (auth.conf) auth_file_path = apt_pkg.config.find_file("Dir::Etc::netrc") with open(auth_file_path) as auth_file: auth_file_content = auth_file.read() for token in ["login user", "password pass", "machine host.example.com/path"]: self.assertTrue(token in auth_file_content) buf = os.stat(auth_file_path) self.assertEqual(stat.S_IMODE(buf.st_mode), 0o640) # now add the repo again with updated auth credentials and ensure # that the info is not duplicated self.worker.add_repository(Mock(), "deb", "https://xuser:xpass@host.example.com/path", "natty", ["main"], "comment", source_file_name) # check if password was stored correctly (auth.conf) auth_file_path = apt_pkg.config.find_file("Dir::Etc::netrc") netrc_file = netrc.netrc(auth_file_path) self.assertEqual(len(netrc_file.hosts), 1) with open(auth_file_path) as auth_file: auth_file_content = auth_file.read() self.assertFalse("login user" in auth_file_content) for token in ["login xuser", "password xpass", "machine host.example.com/path"]: self.assertTrue(token in auth_file_content) netrc_file = netrc.netrc(auth_file_path) self.assertEqual(len(netrc_file.hosts), 1) # add another one self.worker.add_repository( Mock(), "deb", "https://user2:pass2@host.example.com/path2", "natty", ["main"], "comment", source_file_name) netrc_file = netrc.netrc(auth_file_path) self.assertEqual(len(netrc_file.hosts), 2) # change mode and add another repo os.chmod(auth_file_path, 0o740) self.worker.add_repository(Mock(), "deb", "https://user:pass@host.example.com/path3", "natty", ["main"], "comment", source_file_name) # and ensure auth.conf mode is kept and *not* reset buf = os.stat(auth_file_path) self.assertEqual(stat.S_IMODE(buf.st_mode), 0o740) self.assertEqual(len(netrc.netrc(auth_file_path).hosts), 3) def test_modify_apt_auth_fallback(self): netrc_tempfile = tempfile.NamedTemporaryFile() # note that the order of password/login is different than the # standard order netrc_tempfile.write(""" machine private-ppa.launchpad.net/project-foo password baz login foo """.encode("utf8")) netrc_tempfile.flush() # now pretend we have a different user/pass uri = "http://foo2:baz2@private-ppa.launchpad.net/project-foo" self.worker._store_and_strip_password_from_uri( uri, netrc_tempfile.name) # ensure that it used the fallback prepend with open(netrc_tempfile.name) as f: self.assertEqual(f.read(), """ machine private-ppa.launchpad.net/project-foo login foo2 password baz2 machine private-ppa.launchpad.net/project-foo password baz login foo """) # and another one with a new entry that just goes to the end # and special chars, note that the python netrc parser will fail # for non-ascii (yes, it does) uri = "http://m%20oo:bär@private-ppa.launchpad.net/project-moobar" self.worker._store_and_strip_password_from_uri( uri, netrc_tempfile.name) with open(netrc_tempfile.name, 'rb') as f: self.assertEqual(f.read().decode("utf-8"), """ machine private-ppa.launchpad.net/project-foo login foo2 password baz2 machine private-ppa.launchpad.net/project-foo password baz login foo machine private-ppa.launchpad.net/project-moobar login m%20oo password bär """) @unittest.skipIf(not PY3K, "Only test the backend for Python3") def setUp(): pass if __name__ == "__main__": # import logging # logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist-broken.cfg0000644000000000000000000000033112024305541025174 0ustar 00000000000000 This line makes this no longer a valid file and that is used in the tests [repo name1] origin = Ubuntu component = main pkgnames = foo.* [repo name2] origin = Debian-Security component = non-free pkgnames = ^bar$ aptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.cfg0000644000000000000000000000022112020063324023710 0ustar 00000000000000 [repo name1] origin = Ubuntu component = main pkgnames = foo.* [repo whitelist2] origin = Debian-Security component = non-free pkgnames = ^bar$aptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.d/0000755000000000000000000000000012020064767023472 5ustar 00000000000000././@LongLink0000000000000000000000000000015700000000000011220 Lustar 00000000000000aptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.d/high-trust-repository-whitelist-broken.cfgaptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.d/high-trust-repository-whitelist-0000755000000000000000000000000012020064767042507 2../high-trust-repository-whitelist-broken.cfgustar 00000000000000././@LongLink0000000000000000000000000000015000000000000011211 Lustar 00000000000000aptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.d/high-trust-repository-whitelist.cfgaptdaemon-1.1.1+bzr982/tests/data/high-trust-repository-whitelist.d/high-trust-repository-whitelist.0000755000000000000000000000000012020064767041232 2../high-trust-repository-whitelist.cfgustar 00000000000000aptdaemon-1.1.1+bzr982/tests/debconf/aptdaemon.config0000755000000000000000000000015711352361022020546 0ustar 00000000000000#!/bin/sh set -e . /usr/share/debconf/confmodule db_input high aptdaemon/test || true db_go || true exit 0 aptdaemon-1.1.1+bzr982/tests/debconf/aptdaemon.templates0000644000000000000000000000013611352340645021301 0ustar 00000000000000Template: aptdaemon/test Type: string Default: bli bla blub Description: This is a test Huhu aptdaemon-1.1.1+bzr982/tests/regressions/aptdaemon0000755000000000000000000000000011531401314022547 2../../aptdaemonustar 00000000000000aptdaemon-1.1.1+bzr982/tests/regressions/test_lp722228.py0000644000000000000000000001336112067677576021117 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- # Copyright (C) 2010 Michael Vogt # # Licensed under the GNU General Public License Version 2 # # 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 # at your option) 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Licensed under the GNU General Public License Version 2 """Regression test for the security issue CVE-2011-0725 tracked in LP #722228. Thanks to Sergey Nizovtsev for spotting this issue. The UpdateCache method allows to specify an alternative sources.list snippet to only update the repositories specified in the corresponding configuration file. Aptdaemon did not restrict the path to the sources.list.d directory and allowed to inject packages from malicious sources specified in a custom sources.list and even to read every file on the system. """ __author__ = "Michael Vogt " import os import tempfile import time import unittest2 import apt_pkg import dbus import mock import aptdaemon.client import aptdaemon.test from aptdaemon.worker import AptWorker from aptdaemon.errors import AptDaemonError class TestFix(unittest2.TestCase): """Test the fix.""" def test_closed(self): worker = AptWorker() # We don't want to perform any cache changes worker._cache = mock.Mock() trans = mock.Mock() # ensure normal operation keeps working worker.update_cache(trans, None) self.assertTrue(worker._cache.update.called) worker._cache.reset_mock() worker.update_cache(trans, "foobar.list") self.assertTrue(worker._cache.update.called) worker._cache.reset_mock() worker.update_cache(trans, "/etc/apt/sources.list.d/foobar.list") self.assertTrue(worker._cache.update.called) worker._cache.reset_mock() worker.update_cache(trans, "/etc/apt/sources.list") self.assertTrue(worker._cache.update.called) # ensure absolute path is no longer working worker._cache.reset_mock() self.assertRaises(AptDaemonError, worker.update_cache, trans, "/etc/fstab") self.assertFalse(worker._cache.update.called) worker._cache.reset_mock() self.assertRaises(AptDaemonError, worker.update_cache, trans, "/tmp/etc/apt/sources.list.d") self.assertFalse(worker._cache.update.called) worker._cache.reset_mock() self.assertRaises(AptDaemonError, worker.update_cache, trans, "/etc/apt/sources.list.d/../../tmp/evil.list") self.assertFalse(worker._cache.update.called) worker._cache.reset_mock() self.assertRaises(AptDaemonError, worker.update_cache, trans, "../../../../../../../../../tmp/evil.list") self.assertFalse(worker._cache.update.called) class TestExploit(aptdaemon.test.AptDaemonTestCase): """Test if the a possible exploit still exists.""" def setUp(self): """Setup a chroot, run the aptdaemon and a fake PolicyKit daemon.""" # Setup chroot self.chroot = aptdaemon.test.Chroot() self.chroot.setup() self.addCleanup(self.chroot.remove) # Start aptdaemon with the chroot on the session bus self.start_dbus_daemon() self.bus = dbus.bus.BusConnection(self.dbus_address) self.start_session_aptd(self.chroot.path) # Start the fake PolikcyKit daemon self.start_fake_polkitd() time.sleep(1) # Create a file which containts a virtual secret self.secrets_file = tempfile.NamedTemporaryFile(dir=self.chroot.path, delete=False) self.secrets_file.write("Oh oh!") self.secrets_file.close() @unittest2.expectedFailure def test(self): """A possible exploit of the security issue. Originally provided by Sergey Nizovtsev. """ repo_path = os.path.join(self.chroot.path, "repo") lst_path = os.path.join(self.chroot.path, "malicious.list") arch = apt_pkg.config["APT::Architecture"] # Setup a pseudo repository and link the file which should be extracted # to the Packages file dir = os.path.join(repo_path, "dists/a/a/binary-%s" % arch) os.makedirs(dir) os.symlink(self.secrets_file.name, "%s/Packages" % dir) # Create a malicious list file which injects the repo with open(lst_path, "w") as lst_file: lst_file.write("deb file://%s a a" % repo_path) client = aptdaemon.client.AptClient(self.bus) exit = client.update_cache(sources_list=lst_path, wait=True) self.assertEqual(exit, aptdaemon.enums.EXIT_SUCCESS) # Check if succeeded to leak the file content! repo_path_encoded = apt_pkg.uri_to_filename("file://%s" % repo_path) leaked_path = os.path.join(self.chroot.path, "var/lib/apt/lists/", "%s_dists_a_a_binary-%s_" "Packages" % (repo_path_encoded, arch)) with open(leaked_path, "r") as leaked_file: self.assertEqual(leaked_file.read(), "Oh oh!") if __name__ == "__main__": unittest2.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/regressions/test_lp768691.py0000644000000000000000000000452512067677576021137 0ustar 00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- """Tests if we can handle different encodings well.""" import locale import logging import os import sys import unittest from aptdaemon import core, enums, test, errors, utils DEBUG = True if sys.version >= '3': unicode = str class GettextTest(test.AptDaemonTestCase): """Regression test for LP: #768691 and LP: #926340 The gettext.translation.gettext() method returns a string in Python 2. If we try to perform a string format operation, Python wants to convert string to unicode. If the daemon is running with a different default encoding as the translated message this results in an error. By defaulf aptdaemon runs as C if activated by D-Bus. """ def setUp(self): # Use the mo files from the build local_mo_files = os.path.join(test.get_tests_dir(), "../build/mo") if not os.path.isdir(local_mo_files): self.skipTest("Please run setup.py build before since local mo " "files are required. Run python setup.py build_i18n") core.gettext._default_localedir = local_mo_files self.trans = core.Transaction(None, enums.ROLE_FIX_BROKEN_DEPENDS, None, os.getpid(), os.getuid(), sys.argv[0], "org.debian.apt.test", connect=False) self.codes = utils.IsoCodes("iso_639", tag="iso_639_1_code", fallback_tag="iso_639_2T_code") def test(self): """Test if the installation of an unauthenticated packages fails if simulate hasn't been called explicitly before. """ self.trans._set_locale("de_DE.UTF-8") ret = self.trans.gettext("CD/DVD '%s' is required") self.assertTrue(isinstance(ret, unicode)) error = errors.TransactionFailed(enums.ERROR_NO_PACKAGE, "CD/DVD '%s' is required", "lala") self.trans.error = error utils.gettext._default_localedir = "/usr/share/locale" lang = self.codes.get_localised_name("en", "ru.UTF-8") self.assertTrue(isinstance(lang, unicode)) if __name__ == "__main__": if DEBUG: logging.basicConfig(level=logging.DEBUG) unittest.main() # vim: ts=4 et sts=4 aptdaemon-1.1.1+bzr982/tests/repo/Packages0000644000000000000000000001623512275242257016433 0ustar 00000000000000Package: silly-important Priority: important Section: admin Installed-Size: 32 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-important_0.1-0_all.deb Size: 1792 MD5sum: ef9a1eefd088a375ef58773831256205 SHA1: 4075517d20fdd81d8642ab0febe7ad8c5fcde4f0 SHA256: 3003723f0f2686a6ed700f364b0c13c966026c5e5f3b383969d87b5dba411d5e Description: an essential package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package is an essential one. Package: silly-fail Priority: extra Section: admin Installed-Size: 36 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-fail_0.1-0_all.deb Size: 1874 MD5sum: 623a67e49bb7a1351a9bf1ae72fc6cfb SHA1: 76417770f2b788b680ef18be66b5a6c4ec51bc62 SHA256: 45fea3eb64a427a288a90b12f42cc3a6abea8e8387efd4879b319db736890ebd Description: installation fails Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This installation of this package will always fail. Package: silly-broken Priority: extra Section: admin Installed-Size: 32 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Depends: silly-unavailable Filename: ./silly-broken_0.1-0_all.deb Size: 1840 MD5sum: 78bbe306af637c18f5df9dc47bfbf41f SHA1: bb63cdbde699fe2100349b0418af095e6d9f80fe SHA256: a816e61369de433e261b5ad041e913ee3c140637825ce6613a5c99efbfd4c21b Description: package with broken dependencies Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package cannot be installed because of a missing dependency. Package: silly-depend-base-lintian-broken Priority: extra Section: admin Installed-Size: 32 Architecture: all Source: silly-packages Version: 0.1-0 Depends: silly-base Filename: ./silly-depend-base-lintian-broken_0.1-0_all.deb Size: 1758 MD5sum: ba9e0b746b08fae8f8a8fbb4cf9ba41e SHA1: 8bcaf6034b09383e461f0e366762e6b6683e69e2 SHA256: ff1302170d232c21ab66f332e38c51b2af9b6d06d8f377ae5944465be9467c22 Description: package depending on silly-base (but lintian broken) Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package depends on silly-base and has no "Maintainer" set and the file owner is totally wrong so lintian complains about it. Package: silly-essential Essential: yes Priority: extra Section: admin Installed-Size: 32 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-essential_0.1-0_all.deb Size: 1800 MD5sum: 492c977ce9b2f1b6a51d7c475aad058b SHA1: 06fb9a5efb07f72edbd297d2a21cffd1787a2388 SHA256: e516159e99bd40d860515e4c9af251ab056eaabae58ea3f5ee11eecc4f3bee50 Description: an essential package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package is an essential one. Package: silly-postinst-input Priority: extra Section: admin Installed-Size: 36 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-postinst-input_0.1-0_all.deb Size: 1906 MD5sum: 99eecdacbcdf95b9e7b3b0c50f812a8d SHA1: c066b13414faa9931ff688c29f6dbcf4809861a9 SHA256: ce6e4f7f59c3d1da45ff0b3e8e54ebdcf9a5b44edeccf9fc04c96daec5cfa020 Description: breaks your non-interactive package manager Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package will wait for user input in the postinst script. Package: silly-config Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-config_0.1-0_all.deb Size: 1928 MD5sum: 565698b052640ed3d514f6b38ad457c7 SHA1: e7169cc58f10e8ff9481cf31b2ffb947bc99f617 SHA256: 255f025bae5b24a91158e7daa986f9bf59146ab1895f39452104eb97c412d190 Description: wants to update a locally changed config file Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package will install a configuration file. Package: gstreamer0.10-silly Priority: extra Section: admin Installed-Size: 168 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Depends: libc6 (>= 2.7-1), libglib2.0-0 (>= 2.16.0), libgstreamer-plugins-base0.10-0 (>= 0.10.0), libgstreamer0.10-0 (>= 0.10.14), libogg0 (>= 1.0rc3) Filename: ./gstreamer0.10-silly_0.1-0_all.deb Size: 52016 MD5sum: bbaf259e0dfcb39050061181d2a13755 SHA1: be59be2d82b7f57097f387a22f5f295d202d9c1d SHA256: 6b91b67de10ae547cd4c648ef343c8acd35e626e4a1ac20df1aaae51d6ec6328 Description: gstreamer plugin test package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package is a GStreamer test plugin package. Gstreamer-Version: 0.10 Gstreamer-Decoders: audio/ac3; audio/mpeg, mpegversion=(int){ 1, 2, 4 }; Gstreamer-Elements: ac3parse Package: silly-base Priority: extra Section: admin Installed-Size: 32 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Filename: ./silly-base_0.1-0_all.deb Size: 1824 MD5sum: 81ba1cf86142c466f35a36a11b5b7b52 SHA1: f949c8e5962a43fbcd4f7d67df0ebe741052c497 SHA256: a7c2a30abdb6488d5c3d2894db398f5dfafbc6be098da1135822be4e3ac94b32 Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. Package: silly-depend-base Priority: extra Section: admin Installed-Size: 32 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages Version: 0.1-0 Depends: silly-base Filename: ./silly-depend-base_0.1-0_all.deb Size: 1812 MD5sum: 3ee7181283e4926558d2afdf7b2657f1 SHA1: 8294794b1727e22b123866f9124431a2c7b79380 SHA256: 5fa74f7bdc0d207188790419130330becb0cf7484a972762ed512090885016f9 Description: package depending on silly-base Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package depends on silly-base. Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. aptdaemon-1.1.1+bzr982/tests/repo/Release0000644000000000000000000000271311752346374016275 0ustar 00000000000000Date: Wed, 09 May 2012 01:24:59 UTC MD5Sum: da80d4a76b8c6119b697558524cdaf71 7325 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release 0bd018b62f0031d1ee4993896f50ddd5 782 backports/Packages cec65a680d0777c2f8f06bbaa503d345 899 backports/Release 0bd018b62f0031d1ee4993896f50ddd5 782 security/Packages 4fa3f7d1e32aa2bc06b63bf7519d9e64 895 security/Release SHA1: c911274d83557d97f04bbab8d681efd11450b695 7325 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 backports/Packages 71e98c6dbe072ebbf7c959c4ebc496743fc4d3ae 899 backports/Release 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 security/Packages 8e14bd91f977a2e12d3e30b3649c3f772e84126e 895 security/Release SHA256: 9ee3b2e2d7cd1d6f567a7914d4a78e201b80b65d01d21a0865f1d5a9f5cceab2 7325 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 backports/Packages 6e85dc9fc5506e5564bd9914abc165f0c50ac15d34ede44c31b363468ef641b5 899 backports/Release 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 security/Packages cfdf15ef290d6ab0c9e3afff718dec679d78a07b4364cbfc46be9d9ad4296ca1 895 security/Release aptdaemon-1.1.1+bzr982/tests/repo/Release.gpg0000644000000000000000000000075211752346374017052 0ustar 00000000000000-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQEcBAABCAAGBQJPqculAAoJEB8w/lhZqRjZCeEH/jpt4El5MNKUR3Eu0nUR9CYn MNo0ZuFGQ+y11yL+FZ7nkwKIFdbFDwcR/5GFPZBPvltTmuBkbSa7sWNU9jyPwJHC 7IcKVw40C87lMUDN/rRFdGMhYZzpu5n2F74P7frwlgu16yRq5towprwNdRt+6k9F LmVvo/os8/p/WwFCPX10ARdm+JTZa/G8OTfSSu6iWmoClOQ/JvYGnmzxyqVICFiF lR2YGLAW+RXOo/B9jhJWpz6f5/0MPVd8SpHaONV8RxZeOEkJVTeWYXg9HCIBCjUc azCiflzQpTC/cVFvjfEaEP23KHaSV2dTMp0fq91yMCiPq/wDqyB0M64Q8xAMN00= =FgqZ -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/backports/0000755000000000000000000000000011667320256016753 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/repo/glatzor.gpg0000644000000000000000000001610011752346374017146 0ustar 00000000000000-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.12 (GNU/Linux) mQENBE0hzl4BCADSYPRyP0ZiI/FC+ds375PrW59JRf150kK3nPuEdH8hWQFzO0Sq 5d3xa7GLGzD2/kk6T7GwSVdH9TVoNBr2aDXdbSIykd04gFvuetFpc/TrB94yHf9F 1GNSJCVzX4ICzoazMk08Nj/8p+3swp8r4mG1rgIMiV4Vf1mvTL+tN8v68/DleHw2 8RI0NFK1YdoOh5M46VVFzpBrzkf2aymoA3th8q5ufnOGnDzt867DRu4czLMICqFI jSurKIzP0B+ABGZQUpvptGnNOQyYG1rxR1GXXXfXAIInucvDUOrMqq1mJRySgzFC xXpJFgWqyaTt1+hzazgzCqCQgtp0CSte8FBBABEBAAG0J1NlYmFzdGlhbiBIZWlu bGVpbiA8Z2xhdHpvckB1YnVudHUuY29tPokBNwQTAQgAIQUCT2BikQIbAwULCQgH AwUVCgkICwUWAgMBAAIeAQIXgAAKCRBoPFPHz5gtGK6DCADOgqivyWrAXWRTH/9W Nl9Vt38QPuS+OOFJxzPcxqCGc8zfvmNDmCQksnZ7i3pkyrGagofUNLJVN8OgXrmJ 51IXYAZxtqxY9WBjfWMEiOTkt7bszZ/6f5GBg5easEEjHGcOmjR21B8R6AvPV2y1 hWAgt0KMve4uImd9DPuxUmzGy045BS30BPndWglPDFajecnKC0clQroeV7A31NwY WhFCEP2ZXyGv0GHDJ50Ts76nJQAHytJoGgwEkcjb8q5phJROIna8jXUyGV5+1p3E UB9bZfwejmAFoy4+PvscqBwE5k2lyJbZ2Z1d5FwsnzsPn+KcdZbrFYhHsABaE24v WYuItCVTZWJhc3RpYW4gSGVpbmxlaW4gPGdsYXR6b3JAZnNmZS5vcmc+iQE3BBMB CAAhBQJPWv41AhsDBQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJEGg8U8fPmC0Y sMgIAIYjmhICQ/Cwxk39MkgKWOoXQaqwZJA67Z5LFxPewolyRfhfYjzpPLSxUg0Y 389WNtM6ufh6aHzsM9qnNkMpTL1K8Bq+V2HuAghLA1eVyonjs74yx3UVjOr97RqX Urkp4iv9udPK92pa43oIH4R6DLzt8sqEVDStmLSV5h0Qx1qKS14FFXEJfExf33Ds Kfo2AlSib0G/1qGshlde8+vahGE7BklWWMDaiZV9HSROd/Q66IL0qzSjz6C4qPse aVJTmjaP6pJ6lrI983eRdjmSxIL2Xsdg+ELT0S1EndvC1pEwmEIlR/3aACY+KVF4 Gj/vsSlPABT6eq/S2c9nBUVPYJy0JFNlYmFzdGlhbiBIZWlubGVpbiA8c2ViaUBn bGF0em9yLmRlPokBNwQTAQgAIQUCTSHO0AIbAwULCQgHAwUVCgkICwUWAgMBAAIe AQIXgAAKCRBoPFPHz5gtGKypB/47mW4RP/c+YLv7b30Fvt2GSYMZqIFbSN4Y0dGo 1Pkd+XWq/wo2h1UPoZb6K7DTfAXNTCHoqyP5qSe/DO5CrxJuiL5F5mQGTqe+QmSy 5YYdK3cInddWNwE+ZMBCe2U5oRxBItACq4R0VJ3ZEP3ivYA+/p8FR6H0ya08KEku frMoHScG3CfmcWWqxL3ZK4+7XVAdrO3tiuRIEVjT7Luzfmxforc0N63izBhvGqmf 1uKDRc9qMILbATJRHEQbYxR9d1g/gIY+KIBvrXVSdcRzLC3y1wXM6Zy7XHhx5Mvs gvhP1YlfM24Gx23KsJCE9v1120mqt5ZifMkqvPhoiAIlJjwBiEoEEBEIAAoFAk0h zyoDBQJ4AAoJEHro6KyTTCLVrAQAnRP5U517+leetoollvfkFGscY9eyAKCHNu7/ 2NJP532vH/h1TAFanzTq+rQyU2ViYXN0aWFuIEhlaW5sZWluIDxzZWJhc3RpYW4u aGVpbmxlaW5AZ2xhdHpvci5kZT6JATcEEwEIACEFAk0hzl4CGwMFCwkIBwMFFQoJ CAsFFgIDAQACHgECF4AACgkQaDxTx8+YLRiRbQgAg0BT+6RR4pRgORGML4QcBROJ Tb51GFe83Fx/cKBJiChSarbdbS5/dDzfq2fzbMjSNOpfPnusDpAvUe1gTcXBTxzz V0hcOZHTPLbp6hbLANVbFsjIV+HLDL2VD3RX5XmK/zt62WhB/iHQkSytfFPJb1x8 kigh5z5pfdb78j+US0cAWF9RpWBjYs0xzIXaxYe0UI7UGu20PwvEbbmAheG/exS2 ezL8cebnXT1ymlz55ba3Y052XFupNOd5H7KH8MS4Ex4Y0hNaP3zcK01eEe5IdZqq afb3XtkxojgzV43OMgWs2o1Yqp58DvuUNSPd5zL90NE57v/Y3Zw5026cQf1KM4hK BBARCAAKBQJNIc8qAwUCeAAKCRB66Oisk0wi1SD7AJ9W0wtzT9iL0ZN2Ke+WVyy5 ndMX/wCfaTLHEIYtgZVsezi1yXKZnejFzIe0LVNlYmFzdGlhbiBIZWlubGVpbiAo ZGV2ZWwpIDxkZXZlbEBnbGF0em9yLmRlPokBNwQTAQgAIQUCTSHOogIbAwULCQgH AwUVCgkICwUWAgMBAAIeAQIXgAAKCRBoPFPHz5gtGCpWB/9r7Fv4lZgbhmdBAQPE rEwWu8Zmr7aLquNcvs2PcBqtQU9JiU8oOJBGskQ6gDT6DAzymobyvALkQB6csf9E Lo+JL2HjL0iuytXwEoRAFy3D8ddnEnAC/iVfFsWkMrIsfXkfbNpD7RsOkthsXl8J wnA8OBoEayG3mj+cUyddmuLLzbD9k0sF3S8NIiqyp8YkobbP4veAjyBBrOjQEXDC pDudYoP9zDE81wUZABU8uj1LcXlK75JpZKJnrMMNXX17VzHbYWPiOThRNLARNidh d/rVzSgJbcs5ETbODWH60lZS3LwHYjbqxTp4+FZOyQw+FvNYTCd0dkAVGanc2k/J bTaPiEoEEBEIAAoFAk0hzyoDBQJ4AAoJEHro6KyTTCLVQr4Amwdi5Y/Fs4uvA+O5 xqZeNQMbSxFJAJ49mVdpeO2I1DXxsPqzC3XM6CB3FbQpU2ViYXN0aWFuIEhlaW5s ZWluIChkcG9vbCkgPHNoQGRwb29sLm5ldD6JATcEEwEIACEFAk0hzr0CGwMFCwkI BwMFFQoJCAsFFgIDAQACHgECF4AACgkQaDxTx8+YLRhB/gf+LsJo0C27+UpisfS+ AG6ngR/LE9DY4+YMC5gTVT3u6Rnc8rQrvWb9sQgQ1BEl5FAp98EHqbpAq+AGhYMj 56QedcXFl8ATgV24PkVarUrypo2r99H//f5fMB8mUI2I17lYxuvRNbeEnro9kzqS fiQD/P796endPmy+9JtwZ6IiAoov/9WvwQB8i6U3I1mj4eI665QpDaxqVu7XwXeR 3JN2ezMoz+KJqgpL5IQrwHPP2VyLSOv1lPdrdbWk/rBWDcv+kHxDnIXWlsiLr/Ge dPwRhPFK4yOtTxDqrzZxQI6/ySMkVzXFv26lyXEqSfOH/B7hdkMj3x5FeRs4ZOFU RJgRi4hKBBARCAAKBQJNIc8qAwUCeAAKCRB66Oisk0wi1bklAJ9taZygn7ZKxw/L VEgyacvMeS53nwCghWZr/5o3x4NzPsb7OCKNYb7ftSu5AQ0ET1ot8gEIALYo/VgD I2nXjn7bOanslizePCpsYMHp9nRfTYRwKLTukV9cpd0MirqlrYKM8/TZxJqLzd1Q mrLQembUU0SW/kaFGYvRpTP/LQcZojyrgN8cJpc1idrgF+pSR7YCIFvUnowdP85u rj+My2rAmx5F5qxLXbeTXNcnO60GZs1MfRFN5yU4tKxGuq5FfZPtWtxG8sS2lqAH 4/ciSI4wjHlVycCtCH0vT9x+S16JZnnIG52o4zGHI0T08ojI8FjvRiSnfwuKYQ4C nNbQbaOxHxpz+lIjYQ0QVkzdhFwHBsD744bXWR1ehCOEax2ehF89P62Dw9FvlZSU HAgDe0id/W5FpH0AEQEAAYkBHwQYAQgACQUCT1ot8gIbIAAKCRBoPFPHz5gtGPJI B/473IbrXxfjSEf85+cIj0JP8VRLoVsZMnOxzUyQkpVEAfLXLHkmRwMc9/aheX9O 9796p//PSiMP/ig9e8oF4mv5wssN6oBphe9uLpg9eQ9PW/aIbakRlJhhwDCZON6Q RPPyQR6zQSjsouePGMstgH+w/OFyKRKcUCDUDJVOr63VsSSoOJN8OarHCi7m6QuW Lh0/TnoZBp1cAgd8py6r6bXELj9R2T4I/LtoL74dlbFPZ7Ct+k6j9TgaDl/pbL81 462D7hMcARZAJLP1e+Q/6ha2w5BhUYoYfpF0wYriKlEl2jX98+lPBk610H8GhgkV 9X4g615HwQkQWQa8cKIlEcE0uQENBE9bL7MBCADJJbyU4pbHK06wul9RAzHI5h/A EoUBo6K5j45HcAx3LHWW4ZRFN6JBmudgKcRTKpu5ij7U61ndi/FXnOctLBQ4BtAM nFU5y2I4HIKy7o5ZkaKFbrQJJCy7DuxoN4sj7THGBOoeE2JZQYKXGKfGb/c5qM5p ljeZkYt26nrRuPbKMcxg3Kbm0WNaKQli1WYuUkOEyKAlcQWYE9Kuj8kmTBN3+kSq PwPBWzdIEWPzQp2a5ZY3Svq4zDaWvaWCz/18J+CzISeqlF7sLoiv8yqJ/E7kxD18 GZxLxt7Cqd/6/I/4nup1f2vhd77y8PTR9Psl2fhmBDd6AC9yaAHYvr5NGySnABEB AAGJAR8EGAEIAAkFAk9bL7MCGwwACgkQaDxTx8+YLRgqjwf/b6VPE/5gVOrAgJVv 76Xa6N9lqU0Hs026nJ0u5zhcU7WIBBvJiL+irQ4pDTKQZdu3QYV8vIeYa9ssGoQd P8OHksq3ZOBvBEsjzblfb1uhDpBHgvsxk7c2lfuDawn0+lQFy94AcV0f/jyYKGKp 5I9AEgSOhuhrtxqD1fGlRBIjdAqhTKC9cASsS3qGGMuLIjbD6gfRSeSPf+ncpeCb 6Jw0xJDLIb3xXP2JTvRkgKDVWVZ0Cyvgmvx8ox1vKZABVH8TjGrH3IdRUgb643O4 BHAnk99PwM7yoRJkP2O2fIICZdY0ZpUaqPCF0QgNXY4TJhI8i0xgnkwbCJA/8lZJ w3pqTbkBDQRPWzBBAQgAqyMOJPED8bxfksgtFHp20c/CloKR+dkCIV2Xz7jdlG6h U85PniHukuHY1i7BDQofVo8nAjWj0QPPZN6nrHUhAjyxWH41dyd4vI+w8Ryf1fru aEk6SpoSr5HimAthyXPPs+wZEXwrGI2AGzdP6HDX7WX+nlHT8J9nnFUa7OyIUnJU rd7yv3+z4yKaKKpFmqo3LnXx5ltLuz9X6bOcj07XGdTPijztS1cCHmZdcbPcVQbS 2yugGtqw7x02dL6sZm8gtEhzaQIAptxwirq5/H7y7Vqy5TWe3Z859PHNcA5cXrg8 Rhi/tDxSFqlo/1mOmHInaMbssRFgWJ5wHGpBKFBwkwARAQABiQI+BBgBCAAJBQJP WzBBAhsCASkJEGg8U8fPmC0YwF0gBBkBCAAGBQJPWzBBAAoJEB8w/lhZqRjZ5gkH /jdrZ+9eTHOlUkOT+nGdvG2xI9QnVnoxNeO+V5PO2BgjRcju8U3Cv320KjSJhzIF PLXwRSy8x24Uc36ARLj69YM8fwF9ZiCPrameBvECL5qDYFCmSe8WQAEi/ckrhTbG RFlpgMc1Z52LnhOcZNw5E7lK15QBxZybwJe8dWsZwqf0AJU/1XUSoxhhZF2kffWf 5c2hjRrCdldxgT+do5Fr6v0rQOWyc8nv88fb3wawXXasBSD/a6tS6upwtrQJpoXt ZI8lukBjQYzWhGKpi0GVrqj6lre1YeZHuTHWEmesfCSYiTLAe4mdEQ3P3SYRNKX1 rnZOCO0/EW92NQR/iSXWBW9fGAf/fihEurEYFdiquQVhAx0xyeBs1iDwa9LtRY6E 5CPTRkmQK+Glcjm1NL7fvClYVc9iWLfDEXGl+7t7XpUwlwku9BKxQcstfMhV0uAe VnbJ9uDur78j6JYyXTuxh5RopBk3mmH0XE9rBoy5ytPYftoAs9p3FT1qI9Azb584 1aeWnxbJghqi9a08Iwxr5i596aF6Ilxd6phfmEVufxJ/W5BwX46LpbO8kqlf5+qn h6hMcSDFexAJb/RKiGLGqg2OO9U7ghW7Ldk9vQPGLogowHlNpWn609uYO/C2QORH 4zmRcHf2KEbctxLFj5bZKepgzX0+xPBmIP1rlj8wL7dkFGcbVLkBDQRNIc5eAQgA 2lDY2Uq/1H1ZbiW9KgAfo4qgahCsOrY2PTq3wQUMaSucdSUn9vZPHhw8OwZh9cnM oofoZKW3ub5ZHDxcgZnB/hKBfdchTpNmwIu0PtXy9Bm2e8t7qGChbzVPiaSRanOo cpUWnOYXHIooSM84iCCKXCIidRemlq3X+/PjxAMmRyM9MNxPmENoJbFVgjaK1uEz 7haQnpcvH3NytXbxhGceTInO0PJP1uMBmmCdkpacBddxYdcW9PAVCFv3cusa+GX0 SSsVIHRB79pA2UM3ZKiErZkK/vSsM6PaLLGfB+PFwSOjKPdBZHlXvC4vp8/MLues dtv8pq4jHQz+lNmqmsnC5wARAQABiQEfBBgBCAAJBQJNIc5eAhsMAAoJEGg8U8fP mC0YnUEH/32IQgeswnN8JWzEmi5vOmzNI8NB0zri08ECo/+FUMg/flMzKnfV2+fB sg5ea0UMOi7XGzm60nvEuFp8C3N+VZrslUOAjc4RErzhy7UZfVZttNb1hGUqwUAm fU8jwEGAx69qwHxFqZ7KgcljHl+MHzZl82PkV/v/vnTTxTqvQZ1Xinmu4wPlfGCQ 5fMj6n/foJpKq7C3xAnxcexD7FPAznFI51xqMCILe7TnsjT4NYUyVKdfPheBG1gh ukdmn7rMSUBeaswlSvl4qC7rMEOHovV0NgJR7z+edOBp6+mJiv9Q66zbeIbaZt7i 8fwzmD4MW2kyoYtEl1VGBL9PjLSZ8Ns= =BAJh -----END PGP PUBLIC KEY BLOCK----- aptdaemon-1.1.1+bzr982/tests/repo/gstreamer0.10-silly_0.1-0_all.deb0000644000000000000000000014546011712215266022431 0ustar 00000000000000! debian-binary 1328075066 0 0 100644 4 ` 2.0 control.tar.gz 1328075066 0 0 100644 702 ` QO0Oq N-m$;ΑZqd;2B Th{ijj|]<:(F^?>0 ,لq&r>1yzl}O)lS o+?ϲR9igIqY:ꔜ"/EVEZ&s`xHzggn--*f-9:4ۙZ˶Zq}%PHH1"[T/_nku+θs$beBE"Z' 4b:v&eZoM'yEBkY)hezhmڍ.i.\,`Z{T+&"uAy u*}Hgl\i44 Vӕ#ϣ3찭U'Ŕ $fS[yv+-kZnJFa<wV3hE'?6.6V2:}؞ hJTn>fwGA?aOclNZtiNYݍ>ƛ.>:$8`kpKP5l?$-Cib\"o2*,mg8\i!11Kx @ @ @  '`TTV5*JՀ K\ˊ L4$d 06A@qWVQY 4\L@Q#fjD@;U}dφ9sNչԩSUՃ8R.LT+ii MKx谋i]p]7J9%.czN?0zzѿC%C7?mXCӇBi.?ԗSCHC/O?(wOZě3[:8-C6?חS8[P4mh8==j?6+?o;Sgۭz-~{'=MCi^{= Z}` g )#j“e}jywnI0:uߢ);Oˆ>]8 Oغ!9B1Y ט"Z_ I1UTTQWQ12O5"yw.<}EĒ(38\S@wj iPj׍WO{Dkov8G^;(5 =% ZӋ 41VSMgYKyFzo&6\cx{ט_?W_7zx?=yBbʪ"Iy9IT|'Ƹ 8ky=ơ_t/Y>u==kDk+"0UDIteDK븝M%-]Uc?YH@^(z`]&#^,QnN?n#tMδ?Z[p](e+6pF޻YO%ޣtMs-tc $|0_Ľh(&v$Xp]k]В4{J0]-8:ro]"N|4WȹI:ٻ6$Tz$/ IOnAo';]t͵IX,uU}TH0.$;{#Q {vB~G'tYJ1^@^K7I;;UuCvr/?#fߕ}t$M]Esb"S^!ϔp]o4˗ߢgc:;" WJWnn{$J%+Qx{K$lVwLJ?מ3%4'Z~3ų"p=4 G2){s$D.r?)AQ/)u'h`\-?N=+p˳͖tBNmtB{,$dI. LC,51cw%)%(w+Zی >x{eߐ<7$鿖1Wc m~tyI/'f ^f |ӌg:8%:I_!w&zc=f_ {$l)#*ho'h Wlo}XPIqYs5.;_W["zx9M+s\Ěc<SixWws2Q"D('Hv'M>#=! R~1v|޾}>C[,UH.KfOr"cw(e@i_2a|7 os|e]?w7&/kK$ýyUq8.z{/*|~,9IR d:5_fLYodؗnz[$O{ctdy$޾o)Kgλs> 1)|`s@k,/C_muڟKz=~7F{YeyI2|'$s>oOgOXϯ/_H|Gw{'nOI~3$~k>OGwLXE~L?ݟk+_/Lsx>咟eyH3ΒOo)D;Utoe^xsǛGLO=ϊ>=[^4(W4N4糹rCɞ{97~WwxI>D_bGiz|hG#H{Ov_{tfQ~ױ'*M/*<v6rud_3#zRʂRocZ? 0-0;[ t';%0-{z~ 1-Ny^%6fO 8yEXfwX{.tLtsQbi(Q4mZv\)򳋦͍` PXj% sx4{jQI)فRoR/jU@"@"oNPQ @N%qMN-mޞYR !P%\WY@N6ULL Ґ.*%XΉ<{oqQy[B-,S f s ٥9^?ܢ!eJ&DJ}X&Vf-*5r|sHU39h)ls:+,*6d:&dʥY۰cޖJԐi\d^S 19wtVd(![MIۛ'KY:GёI9TNT-. µmY*1++[wXZ:3X(6=J9ue7 7S).e)(z6bvta{Dr).h/,.Yԥ{S[N ⎰Լ@IA_8r_ȎwmD-kR+`ћu"vciA'"ӨKR31$NWS95q$#owGgl:TŶN%>l"S9Q݁^K%Qɖ XJ|JXӼ~S\-eD?;̐EWXVg?@n}=C>dCdLfafdX"D"SIrۖBH$S1̜BqD_T-žRS3-XPԩFEtl)hUftr"nr3J ~ҋ0v n1(B!{CdSZL͟RS8O;'_a5"<%޴c))t&[ OJrsy9#wT"um&޵E*5w`#YٸǴ9[.F)JmD3J\=b?ͻ N7ɤ:ܛSpӲ-~{tnwY2\aەpոG]=tpaos@eYlxbkc%M[1|:'sۥgE\C;i?3Z?೤Hϓגב׋EP=_ ֑7_$DHD| *HNA|:p' ?HMIHw%G|C?GI?%RH ~I'P#I_[ń`Ko=|k1u^]{zV[c7ݲckX\A$G?(Ӈ&hp3\8vZ_qa9wx%Vp ؁ð%\8!\8v.0NdN|żqa}8pP1(qF0hrqdGU|Ʊ[W3Ʊ W339gG}{ƱZ3V|8VZ?|!?3^R?zƗ2|%+Yk_^j?bװOf|d.aJ>DƱW 8L7 xn˘aj?0|˙'_3Sf^31g371t}{of/c3WkX_^r?ZWd|%x X_^?Ɍײg|-x&uੌodw1^6?pY[۸ƛX?Y?{X?{Y?ͬ}q3goe3d3Əє}xVq4m_?p973xD-\@.++ ^x2Te5/f<x&ɌUx:pl9g2 x*#Obhõfo=x8\oD5?p=?㓀d+f^3cǮ_=8\o;ϸx8\o?e ??=wx xKY_^ ?𕌯da|xY_>Z?ed<.Y`|;xAn&?n??^?x3g|g\c3[Y?Y?mqr3g8(ob< x"z}2> Ja<x*25/f<x&Ɍ>tg2wTG 8x"㣁w07 xn˘0O^3Ƿg|?|2k1gGW33˷g|f2?xg|?'g/ge|JW0լńcaD1ʖujjet52)q1SBw ]pC9cnukh-3}uɾyx|E GՁ[kG-[۴0-PG@]Nn]^a_)D;<<,j)@~Yd_;}d}HI&I UO FU14j%MTh9*{m䩽EaIXHP9BdK_N%qsLdpP'un 5 e !Ҡ~:E5JŒ Q0CxvH֋o!AD߀ddȃ}ͅGpV `+ mY7 64R{y%u\wYn6ֶFVV\|aQT{ʩ_r5"7[ҳ%Hj{i0EӪdqP3P}5ak`zmM$:WC9%trOJa?%I{:*Q9x)y`ܽD>+;"Y{ IL!(xDm4!%F2dRlރ\6+icz li'+s[BVC7E>3 ܻN]1jLՑXzwKpW ZVk?tg5TIWUPa`eL+Hz I-| zϹ7HqwуJ⭾L7&^{5!64Ct.8((= ol8ClЄ p>u [RnH.ض3i3_XF!DU1 2*XP9 w-(·V;._wē+CZ<~W= {dFq/Ent8abR͢DugcrGpoW<;Cп{-RϹʹ([65kgHvق+pо%=ߜT ^DnXM&=Q=n0#NipV@Cqsa7Jlcw* `FlւYCR*HZk-ΊCD!n&>Z42pT~yഅHk#~7+?n*FܦVO!g!gF[pVm;XmʁGgu-%$+={g9aSH,ɪ  `p1 /[JXQ1җroDPs"AQ}몉qV}zLK _Ҁ8b1lOta_pB" y 8 '7ԡDԝ/Jb´[¦ D}YPTP ICdQ'l5QUa*.|,ɽ]쪌Fm?Z\֒桤~%-vUX_\I()p ,_(`x- we!vhE}ܽg'N^zoSQ)[^/ߣ߭rA9upUnDuv5Pώu_hRˢADmH혳PNLd8ҳO85lR٪l`}s 0!ޭ=~!:3\#aODvS5Ьݧ U nJG4,0ǃĤ<ó=" yw1{}0E 7@/u- ~5\&:@:׻hii9Q>xwwWۖwq+NْV~)J {ϗj5 `U26M8{YFu xd3$0s_V?q/&h|)jy0>ipe1j6IR#͡P+J1QdʍߢHa+?1ty^d9bLI۵~oTO"Y:ח-oa_*pZic#l%&H{1M(&"棥1-G]R_ v(mCM!Yk|i\TX:n3>d̝&srqCԵE9te\ͳМ i)Q~lt$dѝ7])X(-¹<imIUj*}K9iUt\yPv&qQ6Y-f6(߳mpaH:h4R@zm6vR1?ƣ飥T?~_<-̊0Qk<4DNh^ێ`Cj5@bϽ>ev3YIxLJBNU+i5D Z_Gh;_.qdr7֢P9+A{xn NܒXN!{C'ͬCj,ii_~"9bH5Ĝfj&5I ,׮',ȍ{y@ zZhX}7! z؇:5`&.je[WGԨ{D(,S'QsTkc]K%oHp3#P`03Awk w#gHYMmb\F'\w s҃>bX ,P0C 쪃50ʰW([xG,C} S:}Hߠ3tFv$]\1~ 컼|/?4<.r,[NH]pmFUhwFǝrr7r_Gtt_>4/'_HSV)*߆: u)' cD$n ,:5eQmΊ+I\iqihiagej" !l g7Vn5ūG5a٠ډ'5V6 v T^v}nׁٕBƨ1lE}D.D5N1mޏ*uzM^T6udkaG`m!C#4Vv,T+RmfH:tn!BB3_7rSNBYʦuQ_XͩS?-`KIN0\0J_M[9Σ0s:#Y4:,V9t~̉KTaYU٦lQ+dA8]Ae=A*yY+>NP^T&$fz}R vʲa'or,񜒅l ;#* c{ j5EK %yP\4SKBN>F.i6 XV), ORFX٢;RkS 2$QB-usUil |g~ aRYM+_MJWTue2?KYo“OƤ֢gS0Cgh#k\|Eb+1i>GgR-`S `UoC71SL6s `Q,iP|T'NeK.x qni};>ǧsy\IH^pip.;,&E\$_ h4\m`Yqbotm!ȡ*8;+)< Q/04BJJֺ[5%(ژ[/ȖzL_hV+#ty`0GX[yXO,l E4m]^BRVHAY(XOF,dm;/b*b X姳OMgEx!Ne7zQLh!Yl$xT*k$I%_=΅X\Xwgwd;aR0?~/?GֺQN _'ަb:UBy[pSυˊK% 㴌sb)2@UwYzWe23I9lݓRM*eB΅2*U?;_ /lלfYrs;A4Rpr #<υBdhw@%='7ܵ/JWIzmtfi-lG]ZS!|eU(2gu1p3G29Zl1=ճ2K@Ls>>xY9#%:WR9%9Uua!*apq#"TyJOu&3d#g]yUΓUrο JÕl]lq)@ߗN_)ݱ;UprX4/N&n8z=tH fY}9+?>,#vSZbx܏bvV/@,(-2+s*+PWI4'#hKtz7 ΪHwzǙ!e?H0Y=m1h=-C zpF+5c _Cc2^otOy5zk72MrM^ 4GJߍ4kL^Z=@ -׭#}_AL?k{bY(Y yp"zK)%A3bjBճCqdCd}FJc1h"n D+Z24PUʺTI\)]%Pp[P(92޺sؚ~@+h1*jOW),#S.㎞zc묉:, r";&=j:-Àd=k+<<]].y2 ֦7@ ]"rŭS ?M;+~Hu8(&6,IK.n:]~ȦsxI(bYZXNtٕOd׾_(SZgWk/TyV+|TjY:Ft+tpzy))Ȕ!^gslg)7ήL;ķb2"B87YV!Մ LJB ړQLxNip1Jnn %t1NQINU7VXR7cuQ TJuW֛#52G~{FSK/U=5ф=:yI/RMQ-NQ@.+Ùe dv 1\F\qܶ _>cؘx'F7&Fk;1P:yTBLRt>Jd^"w;BB{ rKB sn+{Eg'uZtb Kꂽ:侷܏%uFx"Z*WDkoF&R[huu56VbLd QW&2"Up`fpX\z*5EV)Rݦ.;AC ⰸ 5u4.feTn̴OqgNq~)6/.$C`'0#4T1-K$՛FF{ ~̯};Px׀t<":^W| _?j [I+LJ0)qog4rsVW良9jM1bAFL<.ӽ,S$(&~En4~y$)N,֟^m=#w/Nbf#E FO rdTDs{u:WmY~mp FZ>/UTI>W~G&|fsیMRFzoJ`&!ipnܨZl~-\86 I@qr I#~-oĺ8&UdK`0veKim)nűc)6+enx|~k]Gc_ [&h'l(A40D[(ޖYDඤ[nݪX=Y2Fn'8iW&G? Ռq3SY.xeBCޝE$#׋X n./j[eqYi/3{A{zApp3@ >mVo-C [a+KU4/3ƊL&֭tڹJz9lyK(3|.5Ultp !% n$5iDOK~HN9I7ۨطݲ@pڸa]#º@|8BBl.9s:ax} /%LG6Ӓt#TeԈL,|AϔAdڽdZ2=ivU̷ch7~%_I/+Ѡlnc, L0 F1w ܠ=m6m=pwdJ:*1O a9wvft,+A6!cadBZk&Y\T=ʌ&o}IBרe7Zke$^XTnr)-vv]Q?rW9k綳'E~J6%(BHX)r~?[[&5b18!2cstPTs̴/}Yo[(E1@bqSZ_~ WGȱM16+&ݾ+2_]t>zCcvp,Mnd̝=4^ToV1iu~6++ov4۔;'-njiz!ScC/.6ضl$ Umh=#ݝwn2nLj'ZJdž?`:m{>OXBp _ՠWFߐwF06KV\I35rP *om^{U85je? ԏh0hs(XkD ?6|k,|pL˻xC+!ehK6?GzAS8@=Y] Pkxqf r@{YfQBZ?TEec1vSl0Wl0>mG /bO5.>}ݢT Rm]sO~15%'c,+wF'("?Ui1]t!=s펨<68^mfYUGiF͜Y{xv7u%>)3$O?Ѹ{żKxx _j9@7C65<Kf=5pD_١6LqM⒮VO叻,֟սcFi嵦K=g/> iSbi֣qɆZ쁽bf˰CKUڹG5zoPaS+jସzf(Bf<1ѣ{Y#s~Ӽ Gl| nV~b{%?d|9pZԟ*W<)V>O4bW?>G 7|E-qiÈj/cw/BJLZBkYK^kCqDw]~ X宻_1Υ+w8+beQCl6bls,+ -TV"Ҵ9ĉ%τ9Zj-ڭSTiKE!ꋌԲ")ryj}wpLg3X+[.#=G-z'e9qcQsIUԸD)baX"0U^0TOޮז@֫Y2 o<^z{G{wv޿yo}ڎ[PXr+}IyW?IV9qѣ}Ϥ8v9+ΉqD>F{nisB#znEQgcz̞SM8%cLrp4%|0|1"ի U x2Pz@4 0^ΊPyu,c8X.E+ *IRpVvoÏv̳#,"o͐G|oW cO j7u *E1UpvPnjPoTtce?2$~ Yة6 6 FV) wSKB>̇ء$$o5L$h][Hj WY|psʏ[nr-gF|8cS]}F$E}s#FZ32]n.V)䚏G ^5VpFAMky\R X7fe1;>%)A|Q<HI",qӓ-cmܘ F~n#SN.&E@OpBƮ +l$p%D 8GrDWj Գv%Ю"WY\;{(cj 5Ppoԩ"~~U7{trQێb Բz× +\#3_ݑgw9+URW't|#փ?d7oݴ6i &zѭ%o5"Lo`3ƲIoCELHߋk[]=HH6LOϷ47>AA лm@,?# h,>B9~>4Vp1&ID @9&a18AgnzC]8j+4?y/-w_?;++e%{"ٲ:?;UN?Cw߬4Qȭ<,v9R0ۄvZyToӝDhI\=qV|CD0S&g>=Y?LGN]bw<g9w:EqZ3tz,5\ Lje&Oz %}G ?5vd,L{]7ۑz]E%XLqG$p3ܘ=<+p@x/mEoNV8xuZANu&6OL6^yl`Tr/Q291`AZ~T?V]rM?iިn7mJ/,8wQ&.e8•Q|*9xu0 ˳= ic0`ڳ> $_?XInA ~cMa? ۂ ϔ6eZ?;u5L7E(yV_KrH|qh1r\3:2ܩR_Y T]Qlqn=6#{~>*>:"n1 ["S.6lW&u4V !*լ5T$5yޥx(ch>[.48w:_F+ 5DۅUۅW+~k,/+A ivIaKAgkMJtx VCcsM*sMx㿳")NKޓڣlyE@/;)Rm/lu(+:ݵO?A M47W {LmU^+Z"3*eyp\d.Zv C;7,m_p{e]裙ULXyt)޷;o>q:up[!O={w侤qbcЈeKz1ԡZh%_)L,>K ]_uM>)QunD\;)3N]PNt u:H0t/D%oI3zbHoql[ֿ_mq\o,?xgMC<ao7^=K&C'cZR: [q8GIq0iC`q yC 6}ɸ%-(*Ki9j5V`,[g9̳FMVLOsHZբ`#sR8'].]Gߧ?򞽍)Ip:.mQ:-Dr'S$dŸbk&/Zktm$nd=JjxD3IlHHXR{*If򻼵mzŵwqd7`/ujFSƇ=u|f,mhB&s  x`~Q&̘zfJսR!dݧgG:uHDc5X,rY92AOǁx2t6 @MI+Geb|M6,ʺ$3e]C¹A]֋Ҏʲ2 ʲPVÐ=y+i bj-vuLMYj)m~~ziS61Bf2fIZwE$eo_`81R I]5;o%rw䑯E:)Z.xʴh]1^I99}^\9D+|cL'Z RCX~EUyB"D60sM V l #b<ɣMЖT"]डP ^D CMRiDeSq}!.<9YX J`2wa'og|[,RAgaDyGy&pwC"q\!E3i훿ߵYs~ _>SHVݣ< R7ս7$ %oNE ~ Ü[W x~0DOk2 j]q{/weY'j"Gkt!|k?mI.P$mM+x4~n uv>;eN~\3TG`Z͋f煫zl'ˆmʿ<# ƦʙLvǍb>u(_oJx,^f(%Tڴ8$)_ {꺬:a/I/_-~-OT .D$wġ}QgK4~H pwZͩBB}|_g?s ۮ%11敞YMuشֿ\8(l.browg:5)X)vZ9Cxå|d8% zYX_bR|tģ3:Y-xK:9M|8Q__q ߂/'F]h9.h< #tb(EE*O$H@*`c;'z2p : _YEd/&<] t֠tv7'{R ;mqQ={ys6QU={J:ٯsk6]ZKyskt1+;7J]%y T&b{1#, ,DmFҖZjJ@TDQQߘa1-޷Lf|߷d޻{=s=n9vCx>04L01UqFGRZ-mLnFOٛxkxzvk;Vpr@d2#;,Ob V9?ѣCibl AsٯydiY>&Gl-_h_)e^#*꺙(SBT,_8j(An)8xkP9SiU\irT.Vtz>˕jP 6bMD_%IٛS}1Te%CUɶn:PB$xwk_P_V}N' YW՝e 22,(p[O)$2CMg8,Fj@<PabRZVRIxO)LS1I~PJN%WڟUMͪϬmbU$§@Kj =" ZZDNO?~QQ-v {'ʭ$Q&jaSʽS^$}ʈ5.m2|4(GǣL_2^dyƎFN;Af>V6WiZ馔9 eV x Q1К2=od슡o_m%[q+Դ"4_<ü($NËn{XCvT8F~z (w=%hyPa1{T>TA%..KN)TE]Ag8q4rt7 GeIl$ݺdS^J?iG%FU/$>@$ ky;I,Ib]-S=dgX@v+QR?.ι>ViDMH!SR2%g2O f ;C .n iӑ`Ubuk$.Z.y{q˝q\n0MPY8̓ qB8>xv#"_Sz'sϷ[XzANu u˅n?t,mn(2ld493 Cmm\A*V` T  (C;b0YC*?ĠtN}Ud\sx~`.k+:A2+Q&F<0[_ZxL^]G+F=-ڙw+Z]7Dhy{Hx;azUI)Qϼ;U"5CM Y*4ZPG=dt7fl^ ï| WD$.{PstAEԱ|o둑 uF%mMכzȝ } W_ڍBÂ@Ecx\] XӰ@jOP'6vډ;xzƺpX\tV=a?4/g 3ɫV_A쏽/iòH 5PS&2l*J +`<`txtdY(]I2jEXd&@Kً2i_zO0џ"OqE6]xQ*I D!\HJNb3۩!g/ /avc8#.s@j}in66el \D6Q"*O8ktN;wT&Z%ܘ6LާǷ2TxfGJkT1ڐԺMkA2!GguG7:Ɏ~c)F,4Y,&@GoT Ǝ%EɡjUzyE]_ g4hO^Fw5h*=ȫ!Híw~-/ObaKE¹g5S 7½  W_ӗGH@e-X$%̀/e_j>W6<%t4e0l. eQ/=eFQr7mb_1{- ^qЮlXXay}i˄ _Iz*^i0nLUZG;Zƥŭ0zT-MRʓmu\\/rML_Ms?KAD/{Wb~xdކW)7]"mޠ-"O>VߨU匷ڰxS/ o'jmб5D)aΑua]<#ºlOu?V$NbkckI`1qYP skb{9!$Ig:>'%&(n:G(#5FuP+wa^W~_tit08LxqqWIq -YVWXѸ ,Q21 |FE=ݡi1-w>)P 8Q.w')ۯG:sScz:-5\r݀GPdetp6m S Jgц-^wl`.; HܳǨAӱ 80y}AV75VA]\1Kh̥:$ty02ux3=(Ʋdr1ya䡦r ½'֢^ϓx'Ѝ-ǬzN nnv!H?ClL;dֻ&Ӱ2E gTm}߃?TG+ŬM<X]=[=JUZUD 3HZVTs#~jC'₞nr^kZqwG -z/NF|ӟg^nU#kyf:Q>h`#%Ptw5R/_m1S; |4;obIh;]=b_^L,{=^ 7y |>c=8AXdOSbcͮ&2.]KӤ q }qʴXel| =1sȾ6J T:.MgYC*WsF>[Q?q_ꅂ> jcPW>kp L"+i;V9kw#r.'&JlM1tM|W7~IzK=RQe˲\Ħ~4Ӊ^w D/M/Ck73.\k:aAВH=@F/ c01<2g|>5wK |} `::?R+or6J'Ii~퉒ELg[ e>]$N!FJIUj2.kQTPShSVŅx7hVP6"sj1RZ@{2GwѹV2^9D/%:䱵k)F9f&-tNP_ޗ`4 DP*gT9o\$:DZJ/!%1\=퇭5uܵwtދ~Zc$uI% Roܬ=KѱbykZLݫx'&+SRWӏVx5kc:\]巯8XyzQTdh MQBkTŬѱgR~#]YVh_%7FCFϻU`퇔5z\/iܷ?)rL Pd!-/K[pgvo'OFΐ!壿 o)_FV>%)SdbZDcK |m -X Q)|vkTYj);K\s8Gc_k%L KBԓ^+FIu("dQ8|)ڇ,Ћb-PjVӃ }`0Dik GeC18燨m)9gzp'ZK%j0_%s79MD)}5vi<)C"6G *A~o?XPwv}p5"^S&:=ki <_ wpoz`g]6OJ3A͜{JdL|9||a5s֨ EPcl):бxX`2qR' "z]їʣ)LG[3Z3(mNi7)p\qqcO$8?,WĀ=Dd,F1u%VGڱb+"spHV;D6ؚ)^0u+i>9<_w$}0?ۈ`F3sk7'?}Jʺ/-{Z>a~0|"K!Ȓ$  NtrPX+{8s?VK+GI| i?{06m8VG@RCH%2ԧ)2d9߾ܔ|Afk("GzfQQ<ާZ)sVGWͩj,aWOTTQ.mNp76G]c2jNݨ9QS1_j F{hN*Lݭ+7P8hU#=eO8qJz4GZ]bUMn{Z|:UlFk4 .i%Ԛ2n?a7&Zsu4v쬮wydj`ۀ;)'pf$Q:{Ё(8 ^0 ZS$IV@H?XOO7zFUĊA7,+G^lV|D⠽:\Ͻ!D#OM9wGִhhcik$FtI P. [k3#C.yv+ $:os`mJ<FJ:9Xc9? oM&㫳7soڰ}9*7>`_O1Vr+ u{ ]72vQw)S{u?-N7dī\P!<_3BO$Q%G,]*S맦_ސ==[:t&'\zߑZ2+gE{M.1A_Nx\i l,;kU8Q 7+|ZTCGdlwr dbj @MnɌ5҅kU )y7h[4#b3ұ<មPz5xW" 2I]Hʁ{|=Rf0prQ2ĭ.Ed'YxV,ͩTS@ydc&$CI*ogMՍ򒳺I^rC߱ZSy2)+.!u0S|v(fl2m(*cn6vz<@Ӑg(i2]Prra:Bj̷+z>o;"ؗȋރZt&5:m@b~gn2cwz}9b=U|e1F74F[jht r(iz1B3܈^&ɫξmd !Ui`~[n^csڼRd<+p8F؛ҕ|J(wtW%"YxJW5 ?C{,[9qRE㙤^0qB jVB?*3{.J5>>-t#c E{'vULH_@9D4BXRO=} g"CS ?Ie S2u9B VZɅ>?.SȆ논o"=~: (F-*nļ;\H<8@|h/vg_X\yTAz&cѤqJuz\- /VW$Rݦ7ĂN<@=G|IW0DR}łgrpB_.ɂծvHM0o/7-t˳"Etzٱ0o+5)BxTvA(IkV*V &{%䶍7]膐։QiŞKqF鼡%B>sۤTuבPoLPj‹W̔(] G%4qdȲaOX8yf!T8|K;Wa*2&Bb!2o!'|a46SI" C(}.MJ~iG(r,^Ѩ!-й$h)8kɗ.Rid,7i\.U*M;y=oB;xBJP?i^#2Ƅb/iWr%J>g1da%^JFGLeۓW]BGuqmLkvI\}fzu'wDl(a YA~B_zĠԯC@U kj_t^}!b% X8xcW6-% >"oK? /#t/$O03O!-e¸(;gkgD4&{hzegM {n0Ĝ })NC)YٖʓX)|犻OQ~LLF9V~ro%UJ(YlZ:4ҾݰPgt2)[PYUfqSm~N7Aq(T#NQYG_SzT>Dn% Xx־tmS*tFB <0PPjؠpo?TT!֌lK&֥.f 壱.ݚ7w i[nƏ&_ԜYhxւ'~.xkϗ'kQ.ZjQiP(<&fDh`qbQ"Sz}XR`Y9=x/yrxOP^yՠi_ah ?xj+jPg2I]ZTW3D(" sbkZ⛻;OV˵U j791^HCzSJ2.YHV ZO_ieJF/Jɱq"/pРnlv ׳zmv{2 [W!~ t+Xk2ylx=Xg{1Fy``Ά~z@ʉ~xO(sxJԋp)w]Wa ޛxɑs^e܇N)|t3z"Rfbjxg:SKks9'8^ O81&>!:Q f,=ֈZ+΀;f%ir딯h}3nVnVsՀrƴ0ʱ#yӼmd/4D uZdT0$N$9*uʂK=5SUT,(!-A?N9}E8Hkh`|K[ᜬiXSÆծ$VjIpʁ"Ga9qkmgg!1|yHeĚCK(y=&O$h% Zf"6-pQhX`'tmȍ 7"5Q];eV%o4\ۛ21MnogӁa~b@ճ.|aiSةvHoī_&[3^5CNhԂ< q1֚~I)es<121g e^ut(r0DEiAnzy򉵄wE؜'N$ٮ:ZjZ,_.&Zz=bzv6NNVi !sRySO3>zQnOGN3$KeYC)YGαf$۲oL] h? ZDOȪD,+}9ȥ(GsH+YU홃4]fkm6Y]yu9w)/gp $ΟLE({"gkeTqUar?_cٱjC'+~Rh|wobBt:c.WtrDܗuWf0~?Y^8Y`qYncH}D&,-̀CyBO;$ޤI֒0ȷ ňi\t~Q.QL@t3"8HoX}~ xձ| +#yK'Ptx*xCc FwXG~^G^o2/c@12Ă哇ܠu<-D]:5ێq.&J׶) z[PNԒ:G)[ 5Gv+etO$#!lF9yi.p/Ot}ӈ"/L.p\5FGP>_s(MiM&h2d/ZLdfn6K􋞞i}0wpzgJ0/~zR@^l @T{hiF+x%쳻.i1T<93OhyD+ )? :r%M}~Xk[NmiMXhtkǥ^ˎ\)7sQ|&8ηdS[5r۬_P9eݰE+LfOPK!U +B~}yqO'( #pDpFWʋ">V@}[F/s.vFP),279૮;X I֪Б̛_@9vx(/M~bo.P<DWQj+%uR0FQTrZ:Yk"@C)UWi5'Ly H-'EѤhǍ溫ھi[7bP mdמ%!clDO1%Ga.Em!%[*)FB}īn:vfk-ZyZq$Ҋ76ǁR*!#Vx^/#ߩ_ YB( QVSg¶Pb(K:zKf#))Ɖ)Xz-yfs!Sr0ՏOp[Vj)|ғQQZx {rP(Wլs$HE|\j?Y:6c8i<* |#ptdJ5R"ŖZSߋp+Or!e~3KM ⋯OX _~K!}"}e]k}c3JLH&ys#%(= q :ZRC߬r}k-dF02ۤCM U5 ѰԦ qrKY`i/ii?<36j7϶}͆7 ϟs#U|R?>Gb&3-1Z g*) 0;XwmЩ?k'x'@ ͈+bd~׆^UP`vr$?=n=υ|(Z4Tp҈?wUKp9ue?ȃdYx9&|u5UZyeSwaʯDgX*!Mo菔> {|NӇ4܅>$௡-"[wd|0[ՓԂ|ʖz{r+^)OTJPsg .FQX1S+W5o;vXWn J۷Y?.];E'1csUhQ]ROx4zˀڰ<, w2ObUg0xnJ+ eLhXЬk3PTcμ wBEN[Ts:3z@ǣ49]m)#3?ZZ~ VnoH*b`z#1Fw `Ek,(#(_oU2ы8#~U٪vbELLvEUc& eG/բ8_5$BOCY5=*=&)B9?*Q3W|6o{Ԇ8:@oV K5o;{.Mly[(XeJZҐ(eBS[`_(HOJ=G'GNi}HO'HY+'ub~9).ꎈHя:ԪWAhm8N-"gjOV_/6ݷx&KVC(t|(xRu2Vx[$X J(d"` q xǤCㆥ NG`ΈcFI_m4 i!4Ѡ?Q~xg7ٔMz;pRD? }=0xrF1vP`#_=Q6?cS}s9}ĿwZ'}4n/ 'gQg!C%mV?kM:K4؈ql}wj&nk{NGy,ϗ[ۀFe}Z֑oׂ޼ +96^Nf' kC?;<4  (tq:J{Qq k$cDÿ7'nnZGRڮ@u};3NS:@-'T7Ѭ{DM~>AB.z+꿿$Ea_jPCJ9 "@ϏVDyzRKȃh=5&%ke/=LUEpkoHe($L` bҋC?j w68z%E6^0-w!& bYԕ:w7mjv>)p<*ȲfšwMXjc mMh -?Jn+-9WMîaWeN õ[ 3<N'~OF2"fogN k XMҬͬxgm$.=ǵص{ ( TK3Fa?5?Nj0@OֽX+#GE&@#m퐾ClC`~ٱT(ʄ?\ by܍~cZRǴ}Sы?~ߩ Bu-?{t(GQj7 @igӓyj0EASFE/~'bavm7L] |݄*=+3l}N_=skOS}O%X ̦N8 j @|7n+L:~FY*.|8ۥ{usagD^on5^UsH2>@?h:DO~ΟMS6v0R)rZC^vQ_OFZm!?G-LvC-bA}H)IJM}>8;?~?ЭQo ^.>‘=:C譏C=qB=p n:!c' 41=eFE68_ x 5  hEas %_.>a=!'6~́f_c@C|QAz_kUV/}]߰ǻl% oɋGwo>j!E A^n߽q6F: ~zHR_m._5.`OTŃUF8$<eVo (UB@2f@XAIS5ZA*cBm4(=dDWL[k0 O}1W)39@,,{w+mTJ&kMBbo}'uACҬG넩2`CkhLk'+(qep00_چ ECax.UA;}x|u}(d3~tk[P4;:J%oE^oDq>N5鋧mG?nh֨&7+<ȃOGxwSWo1 6P! K+9 ֥pu /ZDذGG ]Asǹ98>jM`p3GMi.bd!\gxG9 UVtSR3b'}!"gJ58G?FقG)??SSHOɩpŬmrOz}L,VUMۥjjsvMD/*h̿ MC-g 4 qI._;7>fAI~'P6jch^“!Ia:vm39dl:kdb;p1h`Sh<dR>kc"o (~0k guUZm3@9 69*Ij@TAAr8vӗt76")VB[n@W؏qʐ CH {831A^( +J__sQ tboű?*)j𦛘|C"u2Emt3ME -V P6R-y3[[ Z) 8@9Z7!z^n;J# %o4gl$zҶˤh1|>S0 8j&xMX"-GM@p|ʷOpvg XWL50%TЯoh[Kk‡>gI6Q߹AFPWTH-QWu'2g wsj]uvZeNs{mz?'c8\u+Twrˢ(1r(_~ a]֢o]OZ4[eEW&p ٵ(F ?n(ezA8V}T/Sp}[5^' gt0"iBB 6M\/78%e.FE  Vcg]Rӗ7AYz0Kav&E > BI_S[fW+#cg{wj+BxFw*jV tUmCc_ ?Ýe|!akm s-5;e< Ou+H_c,OrgmN|-^זdQKy9삶NkDX^ ͊l%ܹtF}q#dDEa֪+`J 9o*.!U\c $:~dQJ}]ݼ%Z+gEmѱN驔+1hk*z&W*?D [+F{VCc8z݄6b=-I 8r^8hktkgm% £!sj2{"S~SAL1Id$[31KTϠ(oRh;$&r'xy7q7SKsx)œ>%EN12Rw!<ƚ[I{֢W8%Kic-Lb-4_GhYV*׊PH]Y7d>"MEvZFJ_/xt-PgҪJ+AUFM`bqˌIXm$  '&"ŴDPxeN@g ^vʴLעEhD?hKج/Q~?2}ݷV\h߈Hoƈ~4iouCѲu۪zFrrc5(YJ[0c n?NݏZ^X _GEN3:tSM<(1 %xrP23UJ^G@Zhϊ}5r7!l3D)Mcoj9=ۜrR iS}9MP&bt,&lP&٪ϳtOttMa?\L>Nx9ٿsgNHٙ,wLwj郾Ӈ|?uU5{I{7Ϟ>N- Z߮5෫ޱsguJ6 A3- ϝ~ U; &n?]Wp.ӎ0 C 'nen˾o~) }]}ST|+JOc ߦ?ˮ?d&P}6x|Q_k? #lovOקVh)͈ ߶^wb#>eTE{ к;xwbuϾ'N{?{ߥ~ *MTai= ^LjaP|iYJu4H T~D\[kZB}QA, Qd8e.wϤ-GAJ6{S|ďd#4$@7^~yLۖ,k}ۮbzT{f'97ަ4lMiŬW 4j?xGa0~\=4G;v#.<ܱs7PwbMx_=>@ػa$Cwu c閙ohqa*ۃ؜q^yQƜ ?'9cpg6`P gE6t7^w`wAVspaINVb`N 1~.ۛ]xQ?-{e $Igزyy0gYYI0[?1lY3.*-Oo ?Jʜ,O9НSMx`lye%E6XB[YVqSk OLg1 VZr53&he΢ZeXrs ܞ2=a6)`bp^@WSƧVHL%`=| +AS.+Жuy%\[эey]>L[,-qJ wmS,%Aa)מf#XYj2f2 O`8>ok0؊^7 Ynv,7`a 9$D;D~%x^ID̓,xvax9]`u ]IrlSfඍ*WQ ))7g&ЛlIsl*pRFs-u:lizrK8܈+>vu*s D|)pNT\E'$i3ђ$P1IFFD+y4b;2_3űf|+9@A=yxnD8~]Btb#\"(u)VOTuoˤfЦt6mP fyX_L?O8:HО)) Y?=żM ?t0[5S#mWf Pf""/;==Jτpz'#W|.YAX2%i Q{2QA<[2ed>ZôzA_GoȘRWK6jFҨmh@p_,ά2iQ8jJD .܈B6n ]Н*pv.l⺀/ /60!UZ$u,v @;Rd K)Y_  aR- Coaꖛo1a€su|+Y,7Uc+BJԆsp ]n D3a?܊$QRs`Y N=$̙rKr.gIYe S*n<&HM6w,Z{hC<64V`VU0KI8Mo({Ll-/]bzFY-EY> )"كTb̕,chVv6#jdyرm[B*0,_ y|{OB0,r+2N8ljKMk*, UF | .7[WMrufr8.%J6cD4rHE0mCO #(80ZFPR`@2>1>x- 6ЙC+![-+)DIcTD{c#vr OM#mT7 |2Ho4p0yb`48l#^g.^5<Ƃ4.LAc;<"D&ArK?y2sKi0~V$qe!o]2X_^&8hV6CdF- %Vd}Dql1{`eY.Pf8F)A3q~MN-%tJbvq_e[YmPf}ƧN# 0Ù*J߸*9vu 31߃B4 )A<ovu +qn7nk]#Ǖ,jY&1#H%I6=jD rH_Hr&ęrg9=YD6\C2Sxgd-b/^J&"o5v,# [S /aa |P BiˢhqhTRD٣Nۈlcd=A;04$cgzÖQ3]ӥK; ? r>E0ɪbh776Uվ7^|`xɚB1yhPͳd?J?j@2FMofr%zsE%DsȵttGN8ϕ-cKm/}l}F>|Fj֪$F4wrs )1e%3ip|@CP~yTS~3jj,.XgmrNfD5{oE~rd&bj E]3I厶6̸m:;9odum|lz[Fw2G\Uteձ51ڻ68ϵ#n̪L؋^I(SvڡN ڮu6ty(b"8@/t&Uq""/`A BKtDOrsdQ_f3|Mg-kYbUI6:]]?ai=YM)M>5,'՗pZS:>r{/mZYMyM͜o>~NhKƯ_g'Y'[dݾXy0߸z^/?rGz څK ~g&Q_.U8z _︠=wHN㤟OIc_^ʢR=gf4%_.!Z3yyӻ.'UWo~TXĽr?*ulRɷl\_\ѽWJEd}}[2`‚ ."G-LX DmCl8pᡄ2|QE@>t0aJ(GU%: `Á %#@*rɇ&,pC eni 1À 6PB>"|0`‚ .t0aJ(GUȇ&,pKԺoo<)A{G*"˸~"~ZI28+IcfZ[ڊr;yxWr.Ϸwwm/6/y?7ۯ`TwdsGx%>=0G#*?thxh,%r8>ϲQOLN|ty>K^j`D>i~x?:0dh~N"KX( ѐSz џxxb1ZG+owHjq*!5OD6'q$I$*eZ#InGRc^t?_DJ$j&uJJcnKr6RhRqR :Zܞd\RKt*kkqbo*n/iwUTԮbCy#nmLTUjox⺾"ĽEUiX$TY&T\1bUTFbD~lZ.>N4=/q;Rq@lO^ٸ~_%ˢOZd]a*qݪq e-kYZֲe-kY, aptdaemon-1.1.1+bzr982/tests/repo/security/0000755000000000000000000000000011667320256016632 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/repo/silly-base_0.1-0_all.deb0000644000000000000000000000344011512533510021033 0ustar 00000000000000! debian-binary 1294644051 0 0 100644 4 ` 2.0 control.tar.gz 1294644051 0 0 100644 524 ` 0PDTUPi%V;XNizaUW*q]]4eg%/44E3>1Df޹Zܟ^0ÕϿ^.{e+K>:dSwUkZr,XVc0 "hcy'. lvZؼ?e6e6%j.YSjU7Vs~ٌܰ;뿮XM BDkxlF/.!>hgPl^dtDGb1gmL 6Rt+G֤o~E7">ٴƠo)el2gjmv:Nkoыp 9:Ӷ%fy\t#qrcΣsߣ39< 8A@ Msl debian-binary 1294644053 0 0 100644 4 ` 2.0 control.tar.gz 1294644053 0 0 100644 557 ` Ok0)mۡe[vؠ0(.K϶"I^~iiЖ1x?b8Or护4&Ow8+yxy׶-/ \|)Srxw'g,T7WUJ;J(:^a7Hŀ0 TN.6xыK9 ;qc~6mW]gm՗+M\"W>fZYqHFv5kNvթtnzb t6zga7~UɨÕ[1ݓm}DE.O ]W""˾y92>=*~ mcЯa)sL Q[.\M0Fߦ,umRdBͮv^w" ߇j;Ê3m7 盇I )zb Ǵsiܡ39\Ox#*p618 yO  ys=rw]Mk"0٨tzq #eB!B!B!BD4;( data.tar.gz 1294644053 0 0 100644 1183 ` VMlE RѢ 84O\]NIc&R;zǚݍpQr@Coߩz"HHpDB=T^ 8 $ޮBhj 'ٻ;;{ͪؖ rLtEkZF3s9A& <1yBMH05ѲR߳ A;G-voq33SYsnnx+4NR]/ϦJl6)-b@[-xc#gPv8ّQh2zQ{S 𽀅AEq"b5y]=ڪo0N pCn1$1&)mNQ(9I! HHp/5MKh)CRѨ CЧA7Waaz+hSY8x?^؇ZM{IOUb IT{jnOtkz\:;p1 Dd k &u il KFPLL$6}%hZ>Eϲ^wnŭ׉#KE]YG'ܥ7ȩ'_<}7wnwa^YOX~Ջg>j_yne)љ|ۭ]w^8/q, debian-binary 1294644052 0 0 100644 4 ` 2.0 control.tar.gz 1294644052 0 0 100644 539 ` ͊0`-q(=BeybȒ:O_%lnOI)Gy2ceA]U6x۞3V*XYA<5ƿ$ͣoΟȍ_Q|Uũ F\x[x]VtN1.I%lşGgbR7.-·[*gV\j4"a$f07cp$",y2AmBQ11ѣ$t9I#?G&jrGFp=&jQd2ZN@DM ]SzF+$^5p2E Eii¢`*%!} nQ{>.?{ ~sgVzw~|J' debian-binary 1355649212 0 0 100644 4 ` 2.0 control.tar.gz 1355649212 0 0 100644 514 ` _k0p?SmoXA!e|E)HOKv+c(܏8 qX>Yrqyq߼țyVqm6:y$Rߨ4gϿ?S?%/F;1 zvvqnw +:YAE>892. L>(a*W~C~"K|>xaVhGk6Zk:s[ [e؍S֩_~Nkҩ)`WacA>$fAcTyb w(`oyV8nn'܃p2F:QvY>e?S\8韧j?ohQ\M_vU_/kޖ}]st%]dg/LNŒ^c;=VuQFvonX6ީq ,!B!B!B!B?P(data.tar.gz 1355649212 0 0 100644 1102 ` UKEi z]y%!͎lvy6䐞"=]Cu A(b܃Tu KN HQDuՃ3㈮ هPLWOCM'-mZ>5#c` %va ,{m 5<׵nHw8I{#P!>ӻgقYi|6o,k|!g3פێKXEk|LhJV f =іgeƏj1`Rs$9L逡iQrE]4UQJ?Y\!:tB( mR f(\ǃ"( 6%qSS}I5Gms AN <( (x2~rZK&']ܖc!(b T;iơD9_5t=HEuf2[UOҰ $0["ρu TQt?vYKr0 K gJمz E8cV*|mqqWE"5-_PLqz259\eL6?]BL(Zi>gV\j"a$f47cp&",yAmBP11ѣ$t9E#?G&jrGFp=&jQd2ZN@DM ]SzF+$^5p2>E Eiiâ`*%!s ~}Ч_?vҾk/.M>jƣ?7WKߴ;]歯~xbrCJHHHHHHHHHHHHHHHHH<@(aptdaemon-1.1.1+bzr982/tests/repo/silly-config_0.1-0_all.deb0000644000000000000000000000361011512533510021365 0ustar 00000000000000! debian-binary 1294644050 0 0 100644 4 ` 2.0 control.tar.gz 1294644050 0 0 100644 559 `  s)6vlQUCcl%n}NF궗ͪ|2x@.^ T#yec]gB`ᝋi%I]mxWo<2r.-e[J^mMVRej )4«s2 ژÍtC*GaeܐܪV ,}- LcztUTY:kUUyޡĕ^^MgGuFg | y8vqc fѯ{m>+k~^:*'Ih(jE*J[t2#I޲l#zY.=n-ykP_Vn6 DӮQ$;6`^o8z*vG-Gأ%^8flzlİ$p?k$ZG,蝇N0h;n;he;yp6t'/;:      k e( data.tar.gz 1294644050 0 0 100644 1176 ` XMlE RѢ 84Oph"g:UU7MWib*U]wX8 %$8H'ZHR !vmc~BR h?^{oޛϮ$*"gk[ M7rj:Fb|argLlf(d%𹲋Ws US ]cr6ݡi;O]נMe'ײ;]N?鯧3j63LDҸێC}hyIc`:5=LlwB/f \keƏl`Tu$AWՃWBJͨ,IEu<6ԗܧm/~d2'I/81[P?IFdGG$ijP`|j=RQx>xlkNI, bT b6mt#"l/o[߉4B0J? al zY :3&eaX;tc87a6kcJ2b,|dāpX]U0 ra8X,x5qVۥHq]?85]E±\iL:?]B P*ũ\ ZP #&܈‘0S_Dq} ϵ1l.[.Qh=I HBS,l?T7 Eϒ`*q"PrM@ *AHNI8|*kj. JbǣUP cLͰ%ts7Y$ù?^ Dk5垞rsyULJk:u51[y(y`uϿ^Zw9{s\x2?x[֟Zy1y<>}ʻҁo\{buW]|vUsHu+rwm.z>iz˛ rk7 jjχmj4m7[tz dOON}%)F1bĈ#F1W %=x(aptdaemon-1.1.1+bzr982/tests/repo/silly-depend-base-lintian-broken_0.1-0_all.deb0000644000000000000000000000333611542372175025221 0ustar 00000000000000! debian-binary 1300886298 0 0 100644 4 ` 2.0 control.tar.gz 1300886298 0 0 100644 440 ` 0PÞڃ׎!B/=.[DI&ud-=24rM^)fSo`Q{r?*EO←_޾QM@.s;KㄮO[0E]z:S;}8]>r[ȳ"ߍ&bgϱZtgC>]k5=?!oy3]Bå[ .xۇKրkn@CyM7‰#9zGt"iG8:bύp=yamDCO#~;@}zuGpYG6·qD@'>X'~Nb;:NyؖD!B!B!B!B7,(data.tar.gz 1300886298 0 0 100644 1125 ` VMlE RѢ 84O\HzvTUiT=t;ޱfwc9*hB w*PK kW"$!${yofVΦ;D0Z0CTizAUxi0R;(-"-oer6 xvWjzJQ\^kq=FCM5@=qHNaĩ/F^/wk-ⱖ|4˭忠>C5MC|`hk(B\֕G•jș;{/^㩕7߼[s^~ǫ}~|k7^i|vaUͽ6>]=ttO^m:sW׮9v籵v]NӖ25=x%\@DzY-]+'92qу*qf =gˌFGR͍ҠMQWQ1%($ {rp&gmpðSf\P ۶/INrbB`u8H԰~ D?{6R 9N <(G C+x2s_ZSßMNv-'"1NF!Xe̡^BCv$x$pe&:f2[!F= y/a<淒Dz@0 ]NhB{ei(g2Pb ]Wpalz|YSՌ+4ԫ&fUbhӰaqyKmY4ٻn/< ̃,%q +^( aptdaemon-1.1.1+bzr982/tests/repo/silly-depend-base_0.1-0_all.deb0000644000000000000000000000342411512533510022272 0ustar 00000000000000! debian-binary 1294644051 0 0 100644 4 ` 2.0 control.tar.gz 1294644051 0 0 100644 506 ` Qk0`?Wcٖ160(]/"I^ɲ--[}HX%-ˣ=s8+xxQM7 >8kß^ZOe]W>~{EU\?cEcL6uWUW5eWXגc[Q8\V.zqB/:q)GavnSd!-Ķ%/qmŚWuj/vީa iBҚ_Wp+p Z0+)Чye- (b:$ A ƭB*ozݠE8X6h!hbqHosSA11wʤNY~ 58S){pA `ͯ{q~<n|!FBP>%vq&@Vgp72FcΘck],᱌ivn/kftB!B!B!By7(/v(data.tar.gz 1294644051 0 0 100644 1113 ` VMlE RѢ 84O\Hzw[Ic&R;zǚpQr@Coߩz"HHpDB= 88 $ޮm 4EMCuf{󽙱N&@?p\@DzY-]+4e@U= pf =-ˌ /Bf#|I0LL逡i񣠙]4UQJ?Y\!:tA#E}EwՆb(\ǃ( 6%qQa3񩉾{6R s AN <( (x2~rZKïMN)-'BQ'i#wҌC9ًpp4 kn%-D#{E)3@0dB=aII`mwtaًͯ?xfww/~'W_)||uz/O\j}_\|~x{淚G鷺K_7\͵_冔Fh( aptdaemon-1.1.1+bzr982/tests/repo/silly-essential_0.1-0_all.deb0000644000000000000000000000341011512533510022105 0ustar 00000000000000! debian-binary 1294644052 0 0 100644 4 ` 2.0 control.tar.gz 1294644052 0 0 100644 502 ` _0p) ]u]Ji C`8ɒ^Ot Aa8J40YrqyTq5/W27 0 @ {f_reg9/J@Ns].jUoZV-&2? YoeGЙP!N Vm#˪(:le-%o_ͪgs0&8_kޜ_b55!ɇ0Ͼʚ5)_죓 (bК}ϰ9ʄx[;#QOxw-싉FbҲ`qQaNY¼`WSSӶl~Av8y7*9]Ρ9~;a⸋!XSq`M\ckMàG2>%<^~xB!B!B!BO(data.tar.gz 1294644052 0 0 100644 1106 ` UMEi z}x.L$!d͎lv1l!=5Ezf=AfQĸA),9 1GAr KU"g]$ tt{Uj=y6 0,^|S`vQ(l⌉;m UB2 2 z6'ߘ4e;7y'{$e7NӖ'\7}r2ol9+]Qh9gt\Ҡv@W TI#4[-V?5@DGJ͋`ZS⥠[CuUQJ?>]Y debian-binary 1294644050 0 0 100644 4 ` 2.0 control.tar.gz 1294644050 0 0 100644 576 ` _o0OqSh6äJgcJ6KOiT'3w(8 R"Oy4EyY& |` k{6>9/c'ABqZwlwx>:=c^X(62 ~සiH~rO(?5,Z*eV+^%U‹* +|NV.T[m)3tbPVjˤjVEt"giMp/RkѪÃ~c'' Ͼ)5kH"H''; C]&6XM6=Q?UE.j F*Y6dE4;mإp\ N u*N&}.Txqpi Pj5vL`mU) $jՀ5hc,UmM a| ?𷕓uO[(AAAAAA/K(data.tar.gz 1294644050 0 0 100644 1105 ` WKE^i z]y%3!͎lvy6䐞"=]Cu A(b܃Tu KN HQDuՃ3㈮ هPLwOcFMm;4D>g]F6Wy-3ٱ@qĽz? Kceu'㿞savjoosinP%Rdy.oNӖ+L7ҙ-㱟y24:}jZ8A-.=lYB}?pYba#Eڬ} 0FS:`halA D=f9C6Bt Tcj!8P 'VPOP@l&!K;><(S9=&&jH3@;p )nyPQe> 8MN),c!(b T;)ơD8_5t=HEuf2[UP|aiXŰcY&,:Q$*(W|Fu:q%ȈEvqr@@f%b3B"1+sXh,=svǣHq=SLby4W-b0SOW0PfVϙ(+MH1*I^Ahn<\k6K(΂hڿߊ X6g"]NqOg ('eϲ $F鴖,Qi4C WM=wBQj.hz+ms 9pj3?9RtHU$Z~xT[rka C7 <=t`庲=>mQ{>.?{~sgVzw~|rywOx_O_}o_>O~ZKW_xdwow}ʑ7?{yܵ_߼O]|].H ?( aptdaemon-1.1.1+bzr982/tests/repo/silly-important_0.1-0_all.deb0000644000000000000000000000340011512533510022132 0ustar 00000000000000! debian-binary 1232221431 0 0 100644 4 ` 2.0 control.tar.gz 1232221431 0 0 100644 495 ` ͊0-ơ Yz-V$wI4m@-Q" (IW7EMUz=}eYE +X|` {*Io,_d8MmU7EoxղŒmxQ8L{+S>4[ P!N G}#*;lE-ے7Yof9|pj[Ͽ&8Yy=E{!ŀ[B?oa}F5[{'GPX5$ Av‡x+TFAp.-hb ~Sǘ.f<"Ivu*ptj>@ij4ke{.Oʃ4*9SΡxCߗ0qbfF<@@=X[=v0(3z y焧~L#B!B!B!׾ ԇ( data.tar.gz 1232221431 0 0 100644 1104 ` VOUUE=y~x.$I&i4v#l˖:y<:޼ِ)E=Ne= ҃h^zo&-JI޼~}ߛQӉ{ 75z&\4k@$8cNEkaJw8Iӻ#J yt/;.fVmcm8iRW+\61 h{^U6g•͵WЙ9{[n?|b7'ϯ_(|跇巟ݷ~q/5?0K~-z_\:G}|.:so|6#_NHg>m6_gs@ݥt-&гpc}yB}?pYba3Eڬs0 !]04 ~4kҲ*JI V`=c+8+DN7W:V2,ġ ݱ(n 8:P d0UEVBLc#23*Qܯ0935}T &~@ ?B!KD'OA%lz͂(L15@Zm9 }r8q(O @Xf:̡~LXk;1hI7 ( TԆ*`!%P49,-2dL1ˤ%"X7 B}=Ǫ[o8Op#nu1%14 i^2pT_lԡX^SjX/Ml,x(Rcb>)NVg1xP/a0Wgk5[B*j4X(VҨVkjTz03a[UaKhn<\k6(΂޿ߎ㽜$8ŢcwPm5 !'ϲ Fc,ԓE5]O-FYq`( 5,ywaUYHB9 ϡSA'P?(aptdaemon-1.1.1+bzr982/tests/repo/silly-postinst-input_0.1-0_all.deb0000644000000000000000000000356211512533510023146 0ustar 00000000000000! debian-binary 1294644049 0 0 100644 4 ` 2.0 control.tar.gz 1294644049 0 0 100644 601 ` n0 sSp9ev Ȱe:R mӧ4u?e)[&d2:;)Qž'N̊\J`Qyw.NOdq!,w7RsfR; A{r(#Qԝoʐ=BxT DH1\" p_N8RfYRꪬ.fu:yZSYsI|0ѝ-M6&Ԫye5d^TV鼙lΰlișl񯝍eS2 Q-./W84T|3u<骾,VdTYmؿo{O|'>SxiJ^%Y{QXq&n+q2eRSq`K,-?W4qٰV:/`{p@qH``Q,mF |p @v%zh]}<_ :t;N(:C4K82 0 0 0 0 0 0)}Z<( data.tar.gz 1294644049 0 0 100644 1111 ` UOUUE=y~x.$I&iRnwn˖:y<:޼ِ)E=NeAxj/UW=7Ĉ"ud7{NwhiO_o]7u視|^`&va ,m 5<5ХZzHwῑ??OuY HzwYi\6Ol俖M=>14S3I;. k6C qهiZ s~h۳ fPY0_a S`ha*hfA e5MUz,ghqWn!npuH:dԈeAcQ_Q@pbu `:dxǜezɣ?`rzjM<C8">Q{P1HYci De,pP6CA |'8tC[ ;vbВn41Q2 U,CfK"9,M2dL1ˤ%"X7JB}5[/Np#nu$64 i^2h8S-6PZX3jP_*b46 E\(RcaEgsS:Q/ח -fj5]B *j<ݘ/UҨVk3jz03e[UaKhn<\k6(΂޿ߎ Zg" =Niq$}[My׉@ųl)E&%Qh)=Ш:p2>E EiiâV0bgU` t{9a~j1萪$$vw-M?=p`=:omVG:,,<}~̓OŵKo?_ٸ޺|7X?igϮoR_#§7s׮~u?~U!%$$$$$$$$$$$$$$$$$vD{( aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/0000755000000000000000000000000012015674235017305 5ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/repo/backports/Packages0000644000000000000000000000141611667320256020416 0ustar 00000000000000Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. aptdaemon-1.1.1+bzr982/tests/repo/backports/Packages.gpg0000644000000000000000000000245111667320256021172 0ustar 00000000000000-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAEBCAAGBQJO3ZylAAoJEGg8U8fPmC0YooQH/inTQPInDCiN3pTDvzWfV16F Ea+UpwBN0vzuyS6f3xmhLRxLQpuz/yk8buc1H+f/XKn6eygydJRFwIEgtdWAN/Tk eG9I4c5zYiHzZnNWe4XNBhRdPVkIHPkbmbRs/RvDiM5Cq0LvXIe0X0RV+empJyrC EgKbt3PJxh8qpMfrf/OIF+GkSqAug4tq0i0n6QxLOi0raeb9PjfDwErmBpbLDSFg XyDnNvPET5BtWxjgupOwoFqs2QRkrLv10JBdGRz+7qG6WhH1BCAOfzYxxCtn++Ip kmwo8c/pmtOr1BzZyyNMWP8nvVtB728eb/M84WGYynIEyCObUQ+Q2HVsXcsPQLc= =j3Nx -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/backports/Release0000644000000000000000000000160311667320256020256 0ustar 00000000000000Origin: Debian Suite: sid-backports Codename: lalelu Date: Tue, 06 Dec 2011 04:40:53 UTC MD5Sum: 0bd018b62f0031d1ee4993896f50ddd5 782 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release SHA1: 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release SHA256: 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release SHA512: 984c9203b8e534b9b9cc486b21da94cf807428dc1d2daa56427a870f4d53111c58ce749c35509a5fcf7112433d7a403830378a0f482354fb382c0aa7a25bdbc2 782 Packages cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e 0 Release aptdaemon-1.1.1+bzr982/tests/repo/backports/Release.gpg0000644000000000000000000000263611667320256021041 0ustar 00000000000000-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Origin: Debian Suite: sid-backports Codename: lalelu Date: Tue, 06 Dec 2011 04:40:53 UTC MD5Sum: 0bd018b62f0031d1ee4993896f50ddd5 782 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release SHA1: 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release SHA256: 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release SHA512: 984c9203b8e534b9b9cc486b21da94cf807428dc1d2daa56427a870f4d53111c58ce749c35509a5fcf7112433d7a403830378a0f482354fb382c0aa7a25bdbc2 782 Packages cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e 0 Release -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAEBCAAGBQJO3aBFAAoJEGg8U8fPmC0Y+esIAMigdsJQneBznIwfTsA6EMSB wKegB/IAl7VJDPMXoUAdu9kVxaJbScrrhHJ6lFdIobgIA+5zWfJjMnvujsM5PDAv t8xzh/sU3m3HzR8iBDi10BO+SleKps/fKHnnQZOP8msf03rzydYUTbQI2KVhy+C1 MSx/KTAD4a/0NPKMw09kKNqfU0uoFLnJFZEO3kVYt3hIZyGjtvw2QoEPMphNMixk Qq7YVhKiXw/QB318dPb065bXQePvc1EWxQuR9RgtCCM+9FMyOyF1NwAzOc8XzjEY qHib6JzkbH+tBLqq5AmVLOTR07rndGQQuNtu70BkIGkuZC8KpDRMRTq5mi1cipg= =CUOV -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/security/Packages0000644000000000000000000000141611667320256020275 0ustar 00000000000000Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. aptdaemon-1.1.1+bzr982/tests/repo/security/Packages.gpg0000644000000000000000000000245111667320256021051 0ustar 00000000000000-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAEBCAAGBQJO3ZylAAoJEGg8U8fPmC0YooQH/inTQPInDCiN3pTDvzWfV16F Ea+UpwBN0vzuyS6f3xmhLRxLQpuz/yk8buc1H+f/XKn6eygydJRFwIEgtdWAN/Tk eG9I4c5zYiHzZnNWe4XNBhRdPVkIHPkbmbRs/RvDiM5Cq0LvXIe0X0RV+empJyrC EgKbt3PJxh8qpMfrf/OIF+GkSqAug4tq0i0n6QxLOi0raeb9PjfDwErmBpbLDSFg XyDnNvPET5BtWxjgupOwoFqs2QRkrLv10JBdGRz+7qG6WhH1BCAOfzYxxCtn++Ip kmwo8c/pmtOr1BzZyyNMWP8nvVtB728eb/M84WGYynIEyCObUQ+Q2HVsXcsPQLc= =j3Nx -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/security/Release0000644000000000000000000000157711667320256020147 0ustar 00000000000000Origin: Debian Label: Debian-Security Suite: sid Date: Tue, 06 Dec 2011 04:40:53 UTC MD5Sum: 0bd018b62f0031d1ee4993896f50ddd5 782 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release SHA1: 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release SHA256: 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release SHA512: 984c9203b8e534b9b9cc486b21da94cf807428dc1d2daa56427a870f4d53111c58ce749c35509a5fcf7112433d7a403830378a0f482354fb382c0aa7a25bdbc2 782 Packages cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e 0 Release aptdaemon-1.1.1+bzr982/tests/repo/security/Release.gpg0000644000000000000000000000263211667320256020714 0ustar 00000000000000-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Origin: Debian Label: Debian-Security Suite: sid Date: Tue, 06 Dec 2011 04:40:53 UTC MD5Sum: 0bd018b62f0031d1ee4993896f50ddd5 782 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release SHA1: 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release SHA256: 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release SHA512: 984c9203b8e534b9b9cc486b21da94cf807428dc1d2daa56427a870f4d53111c58ce749c35509a5fcf7112433d7a403830378a0f482354fb382c0aa7a25bdbc2 782 Packages cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e 0 Release -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAEBCAAGBQJO3aA1AAoJEGg8U8fPmC0YigkIAK9CXZukop9g2byChtM8TRsN t5K3epgmAoxws7yFF0gZJdFk7p6EMVp+13o5R4WYZhTfVQO8AFcYrEFvb17CGY9g Y7JYAl79lkewZJuG5LYFaxUlyczft0p8yqRShpEMp+kKHUuHbpvABfVsLVh8dRWD ydm4xIxHD558QSctn0Do+yEuzEJvKuYfp2h5LedXcpylhXjgMchfDhZyvNhPhCEB uEb8/o458SILq4XWMSlkyOof/Rn/X7afbtJlG/oq0tSZ8SNYYkVj49TUPPGjD+zw cU7LY3G+oEsDMl9XvUTEjX8zfeqcvpfBDa/d5KyXV2ZRg0EJB7mgLVIdBNdhxqA= =8bi0 -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/Packages0000644000000000000000000000244012015674235020746 0ustar 00000000000000Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. Package: other-pkg Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Version: 2.0 Filename: ./other-pkg_2.0_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: another working package aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/Packages.gpg0000644000000000000000000000245112015674235021524 0ustar 00000000000000-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Package: silly-base Priority: extra Section: admin Installed-Size: 44 Maintainer: Sebastian Heinlein Architecture: all Source: silly-packages (0.1-0) Version: 0.1-0update1 Filename: ./silly-base_0.1-0update1_all.deb Size: 1934 MD5sum: 8e20af56a63a1e0cf40db3b0d07e7989 SHA1: 7ce87423d9c7a734478c464021994944d07fbf1b SHA256: d3693c0e3e7a9519b2833fdf1301c7e03e0620edf15b95b4c7329d9eb0bee553 SHA512: e9eded74e2449a98b02828539c55a83de85a762d2361cd8c929292eb9c5a6e5a9b8eb9b64c26c45d7b73280e12a280cd799a9b831126e484bcf55b56456d559f Description: working package Silly packages is a set of packages which will break your package management tool. They are created only for debugging purposes. . This package doesn't contain any files and should always be installable. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAEBCAAGBQJO3ZylAAoJEGg8U8fPmC0YooQH/inTQPInDCiN3pTDvzWfV16F Ea+UpwBN0vzuyS6f3xmhLRxLQpuz/yk8buc1H+f/XKn6eygydJRFwIEgtdWAN/Tk eG9I4c5zYiHzZnNWe4XNBhRdPVkIHPkbmbRs/RvDiM5Cq0LvXIe0X0RV+empJyrC EgKbt3PJxh8qpMfrf/OIF+GkSqAug4tq0i0n6QxLOi0raeb9PjfDwErmBpbLDSFg XyDnNvPET5BtWxjgupOwoFqs2QRkrLv10JBdGRz+7qG6WhH1BCAOfzYxxCtn++Ip kmwo8c/pmtOr1BzZyyNMWP8nvVtB728eb/M84WGYynIEyCObUQ+Q2HVsXcsPQLc= =j3Nx -----END PGP SIGNATURE----- aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/Release0000644000000000000000000000162312015674235020612 0ustar 00000000000000Origin: Ubuntu Label: Ubuntu-Whitelisted Components: main Suite: sid Date: Tue, 06 Dec 2011 04:40:53 UTC MD5Sum: 0bd018b62f0031d1ee4993896f50ddd5 782 Packages d41d8cd98f00b204e9800998ecf8427e 0 Release SHA1: 42201c0ab580cb2d557ca22a7ed04717a68b2e6e 782 Packages da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release SHA256: 950233659ae7e86ac11ae886298963e57f4414691881af1357456c6a4038ef91 782 Packages e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 Release SHA512: 984c9203b8e534b9b9cc486b21da94cf807428dc1d2daa56427a870f4d53111c58ce749c35509a5fcf7112433d7a403830378a0f482354fb382c0aa7a25bdbc2 782 Packages cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e 0 Release aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/Release.gpg0000644000000000000000000000000012015674235021352 0ustar 00000000000000aptdaemon-1.1.1+bzr982/tests/repo/whitelisted/silly-base_0.1-0update1_all.deb0000755000000000000000000000000012017131702032414 2../silly-base_0.1-0update1_all.debustar 00000000000000