From 8887ff32ffa27fa96b7e528efba248ee8475eb63 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Thu, 11 Mar 2021 08:12:51 +0000 Subject: [PATCH] import dnf-plugins-core-4.0.18-4.el8 --- SOURCES/0004-Update-translations.patch | 2743 ++++++++++++++++++++++++ SPECS/dnf-plugins-core.spec | 6 +- 2 files changed, 2748 insertions(+), 1 deletion(-) create mode 100644 SOURCES/0004-Update-translations.patch diff --git a/SOURCES/0004-Update-translations.patch b/SOURCES/0004-Update-translations.patch new file mode 100644 index 0000000..4572853 --- /dev/null +++ b/SOURCES/0004-Update-translations.patch @@ -0,0 +1,2743 @@ +From ffce18035e04a92d482bf775b450df2dadcbe19b Mon Sep 17 00:00:00 2001 +From: Marek Blaha +Date: Mon, 8 Mar 2021 15:51:24 +0100 +Subject: [PATCH] Update translations + +--- + po/CMakeLists.txt | 1 + + po/dnf-plugins-core.pot | 199 ++++++++++++++++---- + po/fr.po | 221 ++++++++++++++++++---- + po/ja.po | 405 ++++++++++++++++++++++++++++------------ + po/ko.po | 214 +++++++++++++++++---- + po/zh_CN.po | 402 +++++++++++++++++++++++++++------------ + 6 files changed, 1095 insertions(+), 347 deletions(-) + +diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt +index 4f106fc..1ef5055 100644 +--- a/po/CMakeLists.txt ++++ b/po/CMakeLists.txt +@@ -15,6 +15,7 @@ if (GIT_FOUND) + OUTPUT_VARIABLE CURRENT_BRANCH + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + ) ++ set(CURRENT_BRANCH "rhel-8") + + # output _weblate-clone is never created so the clonning of weblate repo is always processed + # and fresh *.po files are used +diff --git a/po/dnf-plugins-core.pot b/po/dnf-plugins-core.pot +index 7cd717e..f796147 100644 +--- a/po/dnf-plugins-core.pot ++++ b/po/dnf-plugins-core.pot +@@ -8,7 +8,7 @@ msgid "" + msgstr "" + "Project-Id-Version: PACKAGE VERSION\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2020-10-05 09:18-0400\n" ++"POT-Creation-Date: 2021-02-22 10:06+0100\n" + "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" + "Last-Translator: FULL NAME \n" + "Language-Team: LANGUAGE \n" +@@ -560,7 +560,7 @@ msgstr "" + msgid "when running with --url, limit to specific protocols" + msgstr "" + +-#: plugins/download.py:121 plugins/reposync.py:293 ++#: plugins/download.py:121 plugins/reposync.py:314 + #, python-format + msgid "Failed to get mirror for package: %s" + msgstr "" +@@ -583,6 +583,120 @@ msgstr "" + msgid "No package %s available." + msgstr "" + ++#: plugins/groups_manager.py:49 ++msgid "Invalid group id" ++msgstr "" ++ ++#: plugins/groups_manager.py:58 ++msgid "Invalid translated data, should be in form 'lang:text'" ++msgstr "" ++ ++#: plugins/groups_manager.py:61 ++msgid "Invalid/empty language for translated data" ++msgstr "" ++ ++#: plugins/groups_manager.py:71 ++msgid "Can't generate group id from '{}'. Please specify group id using --id." ++msgstr "" ++ ++#: plugins/groups_manager.py:79 ++msgid "create and edit groups metadata file" ++msgstr "" ++ ++#: plugins/groups_manager.py:90 ++msgid "load groups metadata from file" ++msgstr "" ++ ++#: plugins/groups_manager.py:93 ++msgid "save groups metadata to file" ++msgstr "" ++ ++#: plugins/groups_manager.py:95 ++msgid "load and save groups metadata to file" ++msgstr "" ++ ++#: plugins/groups_manager.py:97 ++msgid "print the result metadata to stdout" ++msgstr "" ++ ++#: plugins/groups_manager.py:100 ++msgid "group id" ++msgstr "" ++ ++#: plugins/groups_manager.py:101 ++msgid "group name" ++msgstr "" ++ ++#: plugins/groups_manager.py:103 ++msgid "group description" ++msgstr "" ++ ++#: plugins/groups_manager.py:105 ++msgid "group display order" ++msgstr "" ++ ++#: plugins/groups_manager.py:108 ++msgid "translated name for the group" ++msgstr "" ++ ++#: plugins/groups_manager.py:111 ++msgid "translated description for the group" ++msgstr "" ++ ++#: plugins/groups_manager.py:115 ++msgid "make the group user visible (default)" ++msgstr "" ++ ++#: plugins/groups_manager.py:118 ++msgid "make the group user invisible" ++msgstr "" ++ ++#: plugins/groups_manager.py:123 ++msgid "add packages to the mandatory section" ++msgstr "" ++ ++#: plugins/groups_manager.py:125 ++msgid "add packages to the optional section" ++msgstr "" ++ ++#: plugins/groups_manager.py:127 ++msgid "remove packages from the group instead of adding them" ++msgstr "" ++ ++#: plugins/groups_manager.py:129 ++msgid "include also direct dependencies for packages" ++msgstr "" ++ ++#: plugins/groups_manager.py:132 ++msgid "package specification" ++msgstr "" ++ ++#: plugins/groups_manager.py:156 ++msgid "Can't edit group without specifying it (use --id or --name)" ++msgstr "" ++ ++#: plugins/groups_manager.py:190 ++msgid "Can't load file \"{}\": {}" ++msgstr "" ++ ++#: plugins/groups_manager.py:206 ++msgid "Can't save file \"{}\": {}" ++msgstr "" ++ ++#: plugins/groups_manager.py:259 ++msgid "No match for argument: {}" ++msgstr "" ++ ++#: plugins/groups_manager.py:296 ++msgid "Can't remove packages from non-existent group" ++msgstr "" ++ ++#: plugins/groups_manager.py:305 ++msgid "" ++"Group id '{}' generated from '{}' is duplicit. Please specify group id using " ++"--id." ++msgstr "" ++ + #: plugins/leaves.py:32 + msgid "List installed packages not required by any other package" + msgstr "" +@@ -615,43 +729,47 @@ msgstr "" + msgid "Migrating history data..." + msgstr "" + +-#: plugins/needs_restarting.py:65 ++#: plugins/needs_restarting.py:66 + #, python-brace-format + msgid "" + "No installed package found for package name \"{pkg}\" specified in needs-" + "restarting file \"{file}\"." + msgstr "" + +-#: plugins/needs_restarting.py:199 ++#: plugins/needs_restarting.py:224 + msgid "determine updated binaries that need restarting" + msgstr "" + +-#: plugins/needs_restarting.py:204 ++#: plugins/needs_restarting.py:229 + msgid "only consider this user's processes" + msgstr "" + +-#: plugins/needs_restarting.py:206 ++#: plugins/needs_restarting.py:231 + msgid "" + "only report whether a reboot is required (exit code 1) or not (exit code 0)" + msgstr "" + +-#: plugins/needs_restarting.py:230 ++#: plugins/needs_restarting.py:234 ++msgid "only report affected systemd services" ++msgstr "" ++ ++#: plugins/needs_restarting.py:257 + msgid "Core libraries or services have been updated since boot-up:" + msgstr "" + +-#: plugins/needs_restarting.py:235 ++#: plugins/needs_restarting.py:262 + msgid "Reboot is required to fully utilize these updates." + msgstr "" + +-#: plugins/needs_restarting.py:236 ++#: plugins/needs_restarting.py:263 + msgid "More information:" + msgstr "" + +-#: plugins/needs_restarting.py:240 ++#: plugins/needs_restarting.py:267 + msgid "No core libraries or services have been updated since boot-up." + msgstr "" + +-#: plugins/needs_restarting.py:242 ++#: plugins/needs_restarting.py:269 + msgid "Reboot should not be necessary." + msgstr "" + +@@ -871,84 +989,96 @@ msgstr "" + msgid "Path to directory" + msgstr "" + +-#: plugins/reposync.py:54 ++#: plugins/reposync.py:55 + msgid "download all packages from remote repo" + msgstr "" + +-#: plugins/reposync.py:63 ++#: plugins/reposync.py:64 + msgid "download only packages for this ARCH" + msgstr "" + +-#: plugins/reposync.py:65 ++#: plugins/reposync.py:66 + msgid "delete local packages no longer present in repository" + msgstr "" + +-#: plugins/reposync.py:67 +-msgid "also download and uncompress comps.xml" +-msgstr "" +- +-#: plugins/reposync.py:69 ++#: plugins/reposync.py:68 + msgid "download all the metadata." + msgstr "" + +-#: plugins/reposync.py:71 +-msgid "download only newest packages per-repo" ++#: plugins/reposync.py:70 ++msgid "Remove packages that fail GPG signature checking after downloading" + msgstr "" + + #: plugins/reposync.py:73 +-msgid "where to store downloaded repositories" ++msgid "also download and uncompress comps.xml" + msgstr "" + + #: plugins/reposync.py:75 +-msgid "Don't add the reponame to the download path." +-msgstr "" +- +-#: plugins/reposync.py:77 + msgid "" + "where to store downloaded repository metadata. Defaults to the value of --" + "download-path." + msgstr "" + ++#: plugins/reposync.py:78 ++msgid "download only newest packages per-repo" ++msgstr "" ++ + #: plugins/reposync.py:80 +-msgid "operate on source packages" ++msgid "Don't add the reponame to the download path." + msgstr "" + + #: plugins/reposync.py:82 ++msgid "where to store downloaded repositories" ++msgstr "" ++ ++#: plugins/reposync.py:84 + msgid "try to set local timestamps of local files by the one on the server" + msgstr "" + +-#: plugins/reposync.py:85 ++#: plugins/reposync.py:87 ++msgid "operate on source packages" ++msgstr "" ++ ++#: plugins/reposync.py:89 + msgid "Just list urls of what would be downloaded, don't download" + msgstr "" + +-#: plugins/reposync.py:109 ++#: plugins/reposync.py:113 + msgid "Can't use --norepopath with multiple repositories" + msgstr "" + +-#: plugins/reposync.py:127 ++#: plugins/reposync.py:132 + #, python-format + msgid "Failed to get mirror for metadata: %s" + msgstr "" + +-#: plugins/reposync.py:144 ++#: plugins/reposync.py:149 + msgid "Failed to get mirror for the group file." + msgstr "" + ++#: plugins/reposync.py:168 ++msgid "Removing {}: {}" ++msgstr "" ++ + #: plugins/reposync.py:175 ++msgid "GPG signature check failed." ++msgstr "" ++ ++#: plugins/reposync.py:196 + msgid "Download target '{}' is outside of download path '{}'." + msgstr "" + +-#: plugins/reposync.py:190 ++#: plugins/reposync.py:211 + #, python-format + msgid "[DELETED] %s" + msgstr "" + +-#: plugins/reposync.py:192 ++#: plugins/reposync.py:213 + #, python-format + msgid "failed to delete file %s" + msgstr "" + +-#: plugins/reposync.py:201 ++#: plugins/reposync.py:222 + #, python-format + msgid "comps.xml for repository %s saved" + msgstr "" +@@ -1018,3 +1148,4 @@ msgstr "" + #: plugins/versionlock.py:136 + msgid "Use package specifications as they are, do not try to parse them" + msgstr "" ++ +diff --git a/po/fr.po b/po/fr.po +index dfa06ad..d47761a 100644 +--- a/po/fr.po ++++ b/po/fr.po +@@ -6,20 +6,21 @@ + # Ludek Janda , 2018. #zanata + # Jean-Baptiste Holcroft , 2019. #zanata, 2020. + # Julien Humbert , 2020. ++# Sundeep Anand , 2021. + msgid "" + msgstr "" + "Project-Id-Version: PACKAGE VERSION\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2020-10-05 09:18-0400\n" +-"PO-Revision-Date: 2020-07-09 13:27+0000\n" +-"Last-Translator: Julien Humbert \n" +-"Language-Team: French \n" ++"POT-Creation-Date: 2021-02-22 10:06+0100\n" ++"PO-Revision-Date: 2021-03-08 11:08+0000\n" ++"Last-Translator: Sundeep Anand \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-Generator: Weblate 4.1.1\n" ++"X-Generator: Weblate 4.5.1\n" + + #: plugins/builddep.py:45 + msgid "[PACKAGE|PACKAGE.spec]" +@@ -642,7 +643,7 @@ msgstr "" + msgid "when running with --url, limit to specific protocols" + msgstr "si --url est renseigné, limite aux protocoles spécifiés" + +-#: plugins/download.py:121 plugins/reposync.py:293 ++#: plugins/download.py:121 plugins/reposync.py:314 + #, python-format + msgid "Failed to get mirror for package: %s" + msgstr "Échec de l’obtention du miroir pour le paquet : %s" +@@ -665,6 +666,126 @@ msgstr "Aucune source définie pour %s" + msgid "No package %s available." + msgstr "Aucun paquet %s n’est disponible." + ++#: plugins/groups_manager.py:49 ++msgid "Invalid group id" ++msgstr "ID de groupe non valide" ++ ++#: plugins/groups_manager.py:58 ++msgid "Invalid translated data, should be in form 'lang:text'" ++msgstr "" ++"Les données traduites non valides doivent être sous la forme \"lang:text\"" ++ ++#: plugins/groups_manager.py:61 ++msgid "Invalid/empty language for translated data" ++msgstr "Langue non valable/vide pour les données traduites" ++ ++#: plugins/groups_manager.py:71 ++msgid "Can't generate group id from '{}'. Please specify group id using --id." ++msgstr "" ++"Impossible de générer un id de groupe à partir de '{}'. Veuillez spécifier " ++"l'id du groupe en utilisant --id." ++ ++#: plugins/groups_manager.py:79 ++msgid "create and edit groups metadata file" ++msgstr "créer et modifier le fichier de métadonnées des groupes" ++ ++#: plugins/groups_manager.py:90 ++msgid "load groups metadata from file" ++msgstr "charger les groupes de métadonnées du fichier" ++ ++#: plugins/groups_manager.py:93 ++msgid "save groups metadata to file" ++msgstr "enregistrer les métadonnées des groupes dans un fichier" ++ ++#: plugins/groups_manager.py:95 ++msgid "load and save groups metadata to file" ++msgstr "charger et enregistrer les métadonnées des groupes dans un fichier" ++ ++#: plugins/groups_manager.py:97 ++msgid "print the result metadata to stdout" ++msgstr "imprimer les métadonnées de résultat sur stdout" ++ ++#: plugins/groups_manager.py:100 ++msgid "group id" ++msgstr "id groupe" ++ ++#: plugins/groups_manager.py:101 ++msgid "group name" ++msgstr "nom du groupe" ++ ++#: plugins/groups_manager.py:103 ++msgid "group description" ++msgstr "description du groupe" ++ ++#: plugins/groups_manager.py:105 ++msgid "group display order" ++msgstr "ordre d'affichage des groupes" ++ ++#: plugins/groups_manager.py:108 ++msgid "translated name for the group" ++msgstr "nom traduit pour le groupe" ++ ++#: plugins/groups_manager.py:111 ++msgid "translated description for the group" ++msgstr "description traduite pour le groupe" ++ ++#: plugins/groups_manager.py:115 ++msgid "make the group user visible (default)" ++msgstr "rendre l'utilisateur du groupe visible (par défaut)" ++ ++#: plugins/groups_manager.py:118 ++msgid "make the group user invisible" ++msgstr "rendre l'utilisateur du groupe invisible" ++ ++#: plugins/groups_manager.py:123 ++msgid "add packages to the mandatory section" ++msgstr "ajouter des paquets à la section obligatoire" ++ ++#: plugins/groups_manager.py:125 ++msgid "add packages to the optional section" ++msgstr "ajouter des paquets à la section facultative" ++ ++#: plugins/groups_manager.py:127 ++msgid "remove packages from the group instead of adding them" ++msgstr "retirer des paquets du groupe au lieu de les ajouter" ++ ++#: plugins/groups_manager.py:129 ++msgid "include also direct dependencies for packages" ++msgstr "inclure également les dépendances directes pour les paquets" ++ ++#: plugins/groups_manager.py:132 ++msgid "package specification" ++msgstr "caractéristiques du paquet" ++ ++#: plugins/groups_manager.py:156 ++msgid "Can't edit group without specifying it (use --id or --name)" ++msgstr "" ++"Impossible de modifier le groupe sans le spécifier (utiliser --id ou --name)" ++ ++#: plugins/groups_manager.py:190 ++msgid "Can't load file \"{}\": {}" ++msgstr "Impossible de charger le fichier \"{}\" : {}" ++ ++#: plugins/groups_manager.py:206 ++msgid "Can't save file \"{}\": {}" ++msgstr "Impossible d'enregistrer le fichier \"{}\" : {}" ++ ++#: plugins/groups_manager.py:259 ++msgid "No match for argument: {}" ++msgstr "Aucune correspondance pour l’argument : {}" ++ ++#: plugins/groups_manager.py:296 ++msgid "Can't remove packages from non-existent group" ++msgstr "Impossible de retirer des paquets d'un groupe inexistant" ++ ++#: plugins/groups_manager.py:305 ++msgid "" ++"Group id '{}' generated from '{}' is duplicit. Please specify group id using" ++" --id." ++msgstr "" ++"L'identifiant de groupe '{}' généré à partir de '{}' est redondant. Veuillez" ++" spécifier l'identifiant du groupe en utilisant --id." ++ + #: plugins/leaves.py:32 + msgid "List installed packages not required by any other package" + msgstr "" +@@ -698,7 +819,7 @@ msgstr "migrer les données d’historique, de groupe et de yumdb, vers dnf" + msgid "Migrating history data..." + msgstr "Migration des données d’historique …" + +-#: plugins/needs_restarting.py:65 ++#: plugins/needs_restarting.py:66 + #, python-brace-format + msgid "" + "No installed package found for package name \"{pkg}\" specified in needs-" +@@ -707,44 +828,48 @@ msgstr "" + "Aucun paquet installé trouvé pour le nom de paquet « {pkg} » spécifié dans " + "needs-restarting du fichier « {file} »." + +-#: plugins/needs_restarting.py:199 ++#: plugins/needs_restarting.py:224 + msgid "determine updated binaries that need restarting" + msgstr "détermine les binaires mis à jour qui nécessitent un redémarrage" + +-#: plugins/needs_restarting.py:204 ++#: plugins/needs_restarting.py:229 + msgid "only consider this user's processes" + msgstr "considère uniquement les processus de cet utilisateur" + +-#: plugins/needs_restarting.py:206 ++#: plugins/needs_restarting.py:231 + msgid "" + "only report whether a reboot is required (exit code 1) or not (exit code 0)" + msgstr "" + "indique uniquement si un démarrage (reboot) est requis (exit code 1) ou non " + "(exit code 0)" + +-#: plugins/needs_restarting.py:230 ++#: plugins/needs_restarting.py:234 ++msgid "only report affected systemd services" ++msgstr "ne signaler que les services systémiques concernés" ++ ++#: plugins/needs_restarting.py:257 + msgid "Core libraries or services have been updated since boot-up:" + msgstr "" + "les bibliothèques et les services de base ont été mis à jour depuis le " + "démarrage (boot-up) :" + +-#: plugins/needs_restarting.py:235 ++#: plugins/needs_restarting.py:262 + msgid "Reboot is required to fully utilize these updates." + msgstr "" + "Un nouveau démarrage est requis pour pouvoir bénéficier totalement de ces " + "mises à jour." + +-#: plugins/needs_restarting.py:236 ++#: plugins/needs_restarting.py:263 + msgid "More information:" + msgstr "Plus d’information :" + +-#: plugins/needs_restarting.py:240 ++#: plugins/needs_restarting.py:267 + msgid "No core libraries or services have been updated since boot-up." + msgstr "" + "Aucune bibliothèque ou service de base n’a été mis à jour depuis le " + "démarrage." + +-#: plugins/needs_restarting.py:242 ++#: plugins/needs_restarting.py:269 + msgid "Reboot should not be necessary." + msgstr "Un nouveau démarrage ne devrait pas être utile." + +@@ -981,39 +1106,33 @@ msgstr "N paquets les plus récents à conserver — par défaut 1" + msgid "Path to directory" + msgstr "Chemin vers le répertoire" + +-#: plugins/reposync.py:54 ++#: plugins/reposync.py:55 + msgid "download all packages from remote repo" + msgstr "télécharger tous les paquets depuis le dépôt distant" + +-#: plugins/reposync.py:63 ++#: plugins/reposync.py:64 + msgid "download only packages for this ARCH" + msgstr "télécharger seulement les paquets s’appliquant à cette ARCH" + +-#: plugins/reposync.py:65 ++#: plugins/reposync.py:66 + msgid "delete local packages no longer present in repository" + msgstr "supprimer les paquets locaux qui ne sont plus présents dans le dépôt" + +-#: plugins/reposync.py:67 +-msgid "also download and uncompress comps.xml" +-msgstr "également télécharger et décompresser comps.xml" +- +-#: plugins/reposync.py:69 ++#: plugins/reposync.py:68 + msgid "download all the metadata." + msgstr "télécharger toutes les métadonnées." + +-#: plugins/reposync.py:71 +-msgid "download only newest packages per-repo" +-msgstr "ne télécharger que les nouveaux paquets per-rep" ++#: plugins/reposync.py:70 ++msgid "Remove packages that fail GPG signature checking after downloading" ++msgstr "" ++"Supprimer les paquets qui échouent à la vérification de la signature GPG " ++"après le téléchargement" + + #: plugins/reposync.py:73 +-msgid "where to store downloaded repositories" +-msgstr "lieu où stocker les dépôts téléchargés" ++msgid "also download and uncompress comps.xml" ++msgstr "également télécharger et décompresser comps.xml" + + #: plugins/reposync.py:75 +-msgid "Don't add the reponame to the download path." +-msgstr "N’ajoutez pas le nom du dépôt dans le chemin de téléchargement." +- +-#: plugins/reposync.py:77 + msgid "" + "where to store downloaded repository metadata. Defaults to the value of " + "--download-path." +@@ -1021,51 +1140,71 @@ msgstr "" + "là où stocker les métadonnées du dépôt. Prend par défaut la valeur de " + "--download-path." + ++#: plugins/reposync.py:78 ++msgid "download only newest packages per-repo" ++msgstr "ne télécharger que les nouveaux paquets per-rep" ++ + #: plugins/reposync.py:80 +-msgid "operate on source packages" +-msgstr "opère sur les paquets source" ++msgid "Don't add the reponame to the download path." ++msgstr "N’ajoutez pas le nom du dépôt dans le chemin de téléchargement." + + #: plugins/reposync.py:82 ++msgid "where to store downloaded repositories" ++msgstr "lieu où stocker les dépôts téléchargés" ++ ++#: plugins/reposync.py:84 + msgid "try to set local timestamps of local files by the one on the server" + msgstr "" + "essayez de définir les horodatages locaux des fichiers locaux par celui du " + "serveur" + +-#: plugins/reposync.py:85 ++#: plugins/reposync.py:87 ++msgid "operate on source packages" ++msgstr "opère sur les paquets source" ++ ++#: plugins/reposync.py:89 + msgid "Just list urls of what would be downloaded, don't download" + msgstr "" + "Uniquement lister les URL qui seraient téléchargées, ne pas télécharger" + +-#: plugins/reposync.py:109 ++#: plugins/reposync.py:113 + msgid "Can't use --norepopath with multiple repositories" + msgstr "Impossible d’utiliser --norepopath avec de multiples dépôts" + +-#: plugins/reposync.py:127 ++#: plugins/reposync.py:132 + #, python-format + msgid "Failed to get mirror for metadata: %s" + msgstr "Échec de l’obtention du miroir pour les métadonnées : %s" + +-#: plugins/reposync.py:144 ++#: plugins/reposync.py:149 + msgid "Failed to get mirror for the group file." + msgstr "Échec de l’obtention du miroir pour le fichier de groupe." + ++#: plugins/reposync.py:168 ++msgid "Removing {}: {}" ++msgstr "Suppression {}: {}" ++ + #: plugins/reposync.py:175 ++msgid "GPG signature check failed." ++msgstr "La vérification de la signature du GPG a échoué." ++ ++#: plugins/reposync.py:196 + msgid "Download target '{}' is outside of download path '{}'." + msgstr "" + "La cible de téléchargement « {} » est en dehors du chemin de téléchargement " + "« {} »." + +-#: plugins/reposync.py:190 ++#: plugins/reposync.py:211 + #, python-format + msgid "[DELETED] %s" + msgstr "[DELETED] %s" + +-#: plugins/reposync.py:192 ++#: plugins/reposync.py:213 + #, python-format + msgid "failed to delete file %s" + msgstr "n’a pas pu supprimer le fichier %s" + +-#: plugins/reposync.py:201 ++#: plugins/reposync.py:222 + #, python-format + msgid "comps.xml for repository %s saved" + msgstr "comps.xml pour le dépôt %s sauvegardé" +diff --git a/po/ja.po b/po/ja.po +index 5e443ec..663b522 100644 +--- a/po/ja.po ++++ b/po/ja.po +@@ -1,20 +1,21 @@ + # Ooyama Yosiyuki , 2015. #zanata + # Ludek Janda , 2018. #zanata + # Casey Jones , 2020. ++# Sundeep Anand , 2021. + msgid "" + msgstr "" + "Project-Id-Version: PACKAGE VERSION\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2020-10-05 09:18-0400\n" +-"PO-Revision-Date: 2020-05-04 06:40+0000\n" +-"Last-Translator: Casey Jones \n" +-"Language-Team: Japanese \n" ++"POT-Creation-Date: 2021-02-22 10:06+0100\n" ++"PO-Revision-Date: 2021-03-08 11:08+0000\n" ++"Last-Translator: Sundeep Anand \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-Generator: Weblate 4.0.3\n" ++"X-Generator: Weblate 4.5.1\n" + + #: plugins/builddep.py:45 + msgid "[PACKAGE|PACKAGE.spec]" +@@ -35,7 +36,7 @@ msgstr "スペックファイルの解析にマクロを定義" + + #: plugins/builddep.py:95 + msgid "skip build dependencies not available in repositories" +-msgstr "" ++msgstr "リポジトリーで利用できないビルドの依存関係をスキップします" + + #: plugins/builddep.py:98 + msgid "treat commandline arguments as spec files" +@@ -83,31 +84,32 @@ msgstr "一致するパッケージはありません: %s" + #: plugins/changelog.py:37 + #, python-brace-format + msgid "Not a valid date: \"{0}\"." +-msgstr "" ++msgstr "有効な日付ではありません: \"{0}\"。" + + #: plugins/changelog.py:43 + msgid "Show changelog data of packages" +-msgstr "" ++msgstr "パッケージの changelog データを表示します" + + #: plugins/changelog.py:51 + msgid "" + "show changelog entries since DATE. To avoid ambiguosity, YYYY-MM-DD format " + "is recommended." +-msgstr "" ++msgstr "DATE 以降の changelog エントリーを表示します。不明瞭さを避けるため、YYYY-MM-DD のフォーマットが推奨されます。" + + #: plugins/changelog.py:55 + msgid "show given number of changelog entries per package" +-msgstr "" ++msgstr "パッケージごとの changelog エントリーの与えられた数を表示します" + + #: plugins/changelog.py:58 + msgid "" + "show only new changelog entries for packages, that provide an upgrade for " + "some of already installed packages." + msgstr "" ++"パッケージ向けの新しい changelog エントリーのみを表示します。これは、インストール済みのパッケージの一部にアップグレードを提供します。" + + #: plugins/changelog.py:60 + msgid "PACKAGE" +-msgstr "" ++msgstr "パッケージ" + + #: plugins/changelog.py:81 plugins/debuginfo-install.py:90 + #, python-format +@@ -116,20 +118,20 @@ msgstr "一致した引数がありません: %s" + + #: plugins/changelog.py:109 + msgid "Listing changelogs since {}" +-msgstr "" ++msgstr "{} 以降の changelogs を一覧表示します" + + #: plugins/changelog.py:111 + msgid "Listing only latest changelog" + msgid_plural "Listing {} latest changelogs" +-msgstr[0] "" ++msgstr[0] "最新の changelog のみを一覧表示します" + + #: plugins/changelog.py:116 + msgid "Listing only new changelogs since installed version of the package" +-msgstr "" ++msgstr "パッケージのインストールされたバージョン以降の新しい changelogs のみを一覧表示します" + + #: plugins/changelog.py:118 + msgid "Listing all changelogs" +-msgstr "" ++msgstr "すべての changelogs を一覧表示します" + + #: plugins/changelog.py:122 + msgid "Changelogs for {}" +@@ -138,7 +140,7 @@ msgstr "{} の Changelogs" + #: plugins/config_manager.py:37 + #, python-brace-format + msgid "manage {prog} configuration options and repositories" +-msgstr "" ++msgstr "{prog} 設定オプションおよびリポジトリーを管理します" + + #: plugins/config_manager.py:44 + msgid "repo to modify" +@@ -162,21 +164,23 @@ msgstr "stdout に変数値を印刷" + + #: plugins/config_manager.py:60 + msgid "enable repos (automatically saves)" +-msgstr "" ++msgstr "レポを有効にする (自動保存)" + + #: plugins/config_manager.py:63 + msgid "disable repos (automatically saves)" +-msgstr "" ++msgstr "レポを無効にする (自動保存)" + + #: plugins/config_manager.py:77 + msgid "one of the following arguments is required: {}" +-msgstr "" ++msgstr "以下のいずれかの引数が必要です。{}" + + #: plugins/config_manager.py:86 + msgid "" + "Warning: --enablerepo/--disablerepo arguments have no meaningwith config " + "manager. Use --set-enabled/--set-disabled instead." + msgstr "" ++"警告: --enablerepo/--disablerepo の引数は config manager では意味がありません。代わりに -set-" ++"enabled/--set-disabled を使用してください。" + + #: plugins/config_manager.py:131 + #, python-format +@@ -274,7 +278,7 @@ msgstr "利用可能な Copr リポジトリーをユーザー NAME ごとに一 + + #: plugins/copr.py:115 + msgid "Specify an instance of Copr to work with" +-msgstr "" ++msgstr "作業する Copr のインスタンスを指定します" + + #: plugins/copr.py:149 plugins/copr.py:217 plugins/copr.py:237 + msgid "Error: " +@@ -285,10 +289,12 @@ msgid "" + "specify Copr hub either with `--hub` or using " + "`copr_hub/copr_username/copr_projectname` format" + msgstr "" ++"`--hub` または `copr_hub/copr_username/copr_projectname` フォーマットを使って、Copr " ++"ハブを指定します" + + #: plugins/copr.py:153 + msgid "multiple hubs specified" +-msgstr "" ++msgstr "複数のハブが指定されています" + + #: plugins/copr.py:218 plugins/copr.py:222 + msgid "exactly two additional parameters to copr command are required" +@@ -316,6 +322,17 @@ msgid "" + "Please do not file bug reports about these packages in Fedora\n" + "Bugzilla. In case of problems, contact the owner of this repository.\n" + msgstr "" ++"\n" ++"Copr リポジトリーを有効化しています。このリポジトリーは\n" ++"主要ディストリビューションの一部ではないため、品質が一定していない点に注意してください。\n" ++"\n" ++"Fedora Project は、このリポジトリーのコンテンツに関して、 の \n" ++"Copr FAQ で示されたルールを超えて権利を行使することは\n" ++"ありません。また、パッケージは、任意の品質またはセキュリ\n" ++"ティーレベルを固守していません。\n" ++"\n" ++"Fedora Bugzilla でこれらのパッケージに関するバグ報告をしないでください。\n" ++"問題が発生した場合は、このリポジトリーのオーナーに連絡してください。\n" + + #: plugins/copr.py:271 + msgid "Repository successfully enabled." +@@ -339,6 +356,8 @@ msgid "" + " about Copr hub - the default one was assumed. Re-enable the project to fix " + "this." + msgstr "" ++"* これらの coprs には、Copr ハブに関する情報がない古いフォーマットの repo " ++"ファイルがあります。デフォルトは仮定です。これを修正するには、プロジェクトを再度有効化してください。" + + #: plugins/copr.py:353 + msgid "Can't parse repositories for username '{}'." +@@ -397,19 +416,33 @@ msgid "" + "\n" + "These repositories have been enabled automatically." + msgstr "" ++"有効化した Copr リポジトリの管理者は\n" ++"他のリポジトリに依存するように決めました。\n" ++"そのようなリポジトリは主な Corp レジストリー\n" ++"ランタイム依存関係を提供) から RPM のインストールを\n" ++"成功させるために通常必要です。\n" ++"\n" ++"上記の品質とバグ報告についての注意点が\n" ++"ここでも適用されますが、Fedora Project は内容を\n" ++"管理していないことに注意してください。以下のリストを確認\n" ++"してください。\n" ++"\n" ++"{0}\n" ++"\n" ++"これらのリポジトリは自動的に有効になっています。" + + #: plugins/copr.py:549 + msgid "Do you want to keep them enabled?" +-msgstr "" ++msgstr "有効にしておきますか?" + + #: plugins/copr.py:582 + #, python-brace-format + msgid "Failed to remove copr repo {0}/{1}/{2}" +-msgstr "" ++msgstr "copr repo {0}/{1}/{2} の削除に失敗しました" + + #: plugins/copr.py:593 + msgid "Failed to disable copr repo {}/{}" +-msgstr "copr repo {}/{} の無効化に失敗しました。" ++msgstr "copr repo {}/{} の無効化に失敗しました" + + #: plugins/copr.py:611 plugins/copr.py:648 + msgid "Unknown response from server." +@@ -420,14 +453,12 @@ msgid "Interact with Playground repository." + msgstr "Playground リポジトリーとの対話。" + + #: plugins/copr.py:639 +-#, fuzzy +-#| msgid "Interact with Playground repository." + msgid "Enabling a Playground repository." +-msgstr "Playground リポジトリーとの対話。" ++msgstr "Playgroundのリポジトリーの有効化。" + + #: plugins/copr.py:640 + msgid "Do you want to continue?" +-msgstr "" ++msgstr "続行しますか?" + + #: plugins/copr.py:683 + msgid "Playground repositories successfully enabled." +@@ -484,7 +515,7 @@ msgstr "指定したタイプに限定します" + msgid "" + "Allow removing of install-only packages. Using this option may result in an " + "attempt to remove the running kernel." +-msgstr "" ++msgstr "インストールのみのパッケージの削除を許可します。このオプションを使用すると、実行しているカーネルの削除を試みる可能性があります。" + + #: plugins/debug.py:202 + msgid "name of dump file" +@@ -508,25 +539,25 @@ msgstr "debuginfo パッケージのインストール" + #, python-format + msgid "" + "Could not find debuginfo package for the following available packages: %s" +-msgstr "" ++msgstr "次の利用可能なパッケージの debuginfo パッケージが見つかりませんでした: %s" + + #: plugins/debuginfo-install.py:185 + #, python-format + msgid "" + "Could not find debugsource package for the following available packages: %s" +-msgstr "" ++msgstr "次の利用可能なパッケージの debugsource パッケージが見つかりませんでした: %s" + + #: plugins/debuginfo-install.py:190 + #, python-format + msgid "" + "Could not find debuginfo package for the following installed packages: %s" +-msgstr "" ++msgstr "次のインストールされたパッケージの debuginfo パッケージが見つかりませんでした: %s" + + #: plugins/debuginfo-install.py:195 + #, python-format + msgid "" + "Could not find debugsource package for the following installed packages: %s" +-msgstr "" ++msgstr "次のインストールされたパッケージの debugsource パッケージが見つかりませんでした: %s" + + #: plugins/debuginfo-install.py:199 + msgid "Unable to find a match" +@@ -550,7 +581,7 @@ msgstr "代わりに -debuginfo パッケージをダウンロードします" + + #: plugins/download.py:57 + msgid "download the -debugsource package instead" +-msgstr "" ++msgstr "代わりに、-debugsource パッケージをダウンロードします" + + #: plugins/download.py:60 + msgid "limit the query to packages of given architectures." +@@ -564,7 +595,7 @@ msgstr "必要な依存関係を解決し、ダウンロードします" + msgid "" + "when running with --resolve, download all dependencies (do not exclude " + "already installed ones)" +-msgstr "" ++msgstr "--resolve で実行する場合、すべての依存関係をダウンロードします (インストール済みのものを除外しないでください)" + + #: plugins/download.py:67 + msgid "" +@@ -575,7 +606,7 @@ msgstr "ダウンロードする代わりに、rpm をダウンロードでき + msgid "when running with --url, limit to specific protocols" + msgstr "--url で実行中の際は、特定のプロトコルに限定します" + +-#: plugins/download.py:121 plugins/reposync.py:293 ++#: plugins/download.py:121 plugins/reposync.py:314 + #, python-format + msgid "Failed to get mirror for package: %s" + msgstr "パッケージのミラー取得に失敗しました: %s" +@@ -598,6 +629,120 @@ msgstr "%s に対して定義されているソース rpm はありません" + msgid "No package %s available." + msgstr "利用可能なパッケージ %s はありません。" + ++#: plugins/groups_manager.py:49 ++msgid "Invalid group id" ++msgstr "'無効なグループ ID" ++ ++#: plugins/groups_manager.py:58 ++msgid "Invalid translated data, should be in form 'lang:text'" ++msgstr "無効な翻訳データです。'lang:text' の形式で指定する必要があります" ++ ++#: plugins/groups_manager.py:61 ++msgid "Invalid/empty language for translated data" ++msgstr "翻訳されたデータの無効または空な言語" ++ ++#: plugins/groups_manager.py:71 ++msgid "Can't generate group id from '{}'. Please specify group id using --id." ++msgstr "'{}' からグループ ID を生成できません。--id を使用してグループ ID を指定してください。" ++ ++#: plugins/groups_manager.py:79 ++msgid "create and edit groups metadata file" ++msgstr "グループメタデータファイルの作成および編集" ++ ++#: plugins/groups_manager.py:90 ++msgid "load groups metadata from file" ++msgstr "ファイルからグループメタデータを読み込みます" ++ ++#: plugins/groups_manager.py:93 ++msgid "save groups metadata to file" ++msgstr "グループメタデータをファイルに保存します" ++ ++#: plugins/groups_manager.py:95 ++msgid "load and save groups metadata to file" ++msgstr "グループメタデータをファイルにロードして保存します" ++ ++#: plugins/groups_manager.py:97 ++msgid "print the result metadata to stdout" ++msgstr "生成されたメタデータを stdout に出力します" ++ ++#: plugins/groups_manager.py:100 ++msgid "group id" ++msgstr "グループ id" ++ ++#: plugins/groups_manager.py:101 ++msgid "group name" ++msgstr "グループ名" ++ ++#: plugins/groups_manager.py:103 ++msgid "group description" ++msgstr "グループ説明" ++ ++#: plugins/groups_manager.py:105 ++msgid "group display order" ++msgstr "グループ表示順序" ++ ++#: plugins/groups_manager.py:108 ++msgid "translated name for the group" ++msgstr "グループの翻訳名" ++ ++#: plugins/groups_manager.py:111 ++msgid "translated description for the group" ++msgstr "グループの翻訳説明" ++ ++#: plugins/groups_manager.py:115 ++msgid "make the group user visible (default)" ++msgstr "グループユーザーを表示させる (デフォルト)" ++ ++#: plugins/groups_manager.py:118 ++msgid "make the group user invisible" ++msgstr "グループユーザーを非表示の状態にする" ++ ++#: plugins/groups_manager.py:123 ++msgid "add packages to the mandatory section" ++msgstr "必須セクションへのパッケージの追加" ++ ++#: plugins/groups_manager.py:125 ++msgid "add packages to the optional section" ++msgstr "オプションセクションへのパッケージの追加" ++ ++#: plugins/groups_manager.py:127 ++msgid "remove packages from the group instead of adding them" ++msgstr "パッケージを追加する代わりに、グループからパッケージを削除します" ++ ++#: plugins/groups_manager.py:129 ++msgid "include also direct dependencies for packages" ++msgstr "リポジトリーの直接の依存関係を含みます" ++ ++#: plugins/groups_manager.py:132 ++msgid "package specification" ++msgstr "パッケージ仕様" ++ ++#: plugins/groups_manager.py:156 ++msgid "Can't edit group without specifying it (use --id or --name)" ++msgstr "指定せずにはグループを編集できません (--id または --name を使用してください)" ++ ++#: plugins/groups_manager.py:190 ++msgid "Can't load file \"{}\": {}" ++msgstr "ファイル '{}' を書き込みできません: {}" ++ ++#: plugins/groups_manager.py:206 ++msgid "Can't save file \"{}\": {}" ++msgstr "ファイル '{}' を保存できません: {}" ++ ++#: plugins/groups_manager.py:259 ++msgid "No match for argument: {}" ++msgstr "一致した引数がありません: {}" ++ ++#: plugins/groups_manager.py:296 ++msgid "Can't remove packages from non-existent group" ++msgstr "存在しないグループからパッケージを削除できません" ++ ++#: plugins/groups_manager.py:305 ++msgid "" ++"Group id '{}' generated from '{}' is duplicit. Please specify group id using" ++" --id." ++msgstr "'{}' から生成されたグループ ID '{}' は重複しています。--id を使用してグループ ID を指定してください。" ++ + #: plugins/leaves.py:32 + msgid "List installed packages not required by any other package" + msgstr "他のパッケージから必要とされないインスール済みパッケージを一覧表示します" +@@ -630,67 +775,73 @@ msgstr "yum の履歴、グループ、および yumdb データを dnf へ移 + msgid "Migrating history data..." + msgstr "履歴データを移行中..." + +-#: plugins/needs_restarting.py:65 ++#: plugins/needs_restarting.py:66 + #, python-brace-format + msgid "" + "No installed package found for package name \"{pkg}\" specified in needs-" + "restarting file \"{file}\"." + msgstr "" ++"needs-restarting ファイル \"{file}\" に指定されている {pkg} " ++"というパッケージのインストール済みパッケージが見つかりません。" + +-#: plugins/needs_restarting.py:199 ++#: plugins/needs_restarting.py:224 + msgid "determine updated binaries that need restarting" + msgstr "再起動が必要な更新済みバイナリーを決定します" + +-#: plugins/needs_restarting.py:204 ++#: plugins/needs_restarting.py:229 + msgid "only consider this user's processes" + msgstr "このユーザーのプロセスのみを検討します" + +-#: plugins/needs_restarting.py:206 ++#: plugins/needs_restarting.py:231 + msgid "" + "only report whether a reboot is required (exit code 1) or not (exit code 0)" +-msgstr "" ++msgstr "再起動が必要か (終了コード 1) 必要でないか (終了コード 0) のみを報告します" + +-#: plugins/needs_restarting.py:230 ++#: plugins/needs_restarting.py:234 ++msgid "only report affected systemd services" ++msgstr "影響を受ける systemd サービスのみを報告" ++ ++#: plugins/needs_restarting.py:257 + msgid "Core libraries or services have been updated since boot-up:" +-msgstr "" ++msgstr "起動以降にコアライブラリーまたはサービスがアップデートされました:" + +-#: plugins/needs_restarting.py:235 ++#: plugins/needs_restarting.py:262 + msgid "Reboot is required to fully utilize these updates." +-msgstr "" ++msgstr "これらのアップデートを完全に活用するには、再起動が必要です。" + +-#: plugins/needs_restarting.py:236 ++#: plugins/needs_restarting.py:263 + msgid "More information:" +-msgstr "" ++msgstr "詳細情報:" + +-#: plugins/needs_restarting.py:240 ++#: plugins/needs_restarting.py:267 + msgid "No core libraries or services have been updated since boot-up." +-msgstr "" ++msgstr "起動以降にアップデートされたコアライブラリーまたはサービスはありません。" + +-#: plugins/needs_restarting.py:242 ++#: plugins/needs_restarting.py:269 + msgid "Reboot should not be necessary." +-msgstr "" ++msgstr "再起動な必要ありません。" + + #: plugins/post-transaction-actions.py:71 + #, python-format + msgid "Bad Action Line \"%s\": %s" +-msgstr "" ++msgstr "不正なアクション行 \"%s\": %s" + + #. unsupported state, skip it + #: plugins/post-transaction-actions.py:130 + #, python-format + msgid "Bad Transaction State: %s" +-msgstr "" ++msgstr "不正なトランザクション状態: %s" + + #: plugins/post-transaction-actions.py:153 + #: plugins/post-transaction-actions.py:155 + #, python-format + msgid "post-transaction-actions: %s" +-msgstr "" ++msgstr "post-transaction-actions: %s" + + #: plugins/post-transaction-actions.py:157 + #, python-format + msgid "post-transaction-actions: Bad Command \"%s\": %s" +-msgstr "" ++msgstr "post-transaction-actions: 不正なコマンド \"%s\": %s" + + #: plugins/repoclosure.py:42 + msgid "Display a list of unresolved dependencies for repositories" +@@ -718,129 +869,137 @@ msgstr "このパッケージのみのクロージャーを確認します" + + #: plugins/repodiff.py:45 + msgid "List differences between two sets of repositories" +-msgstr "" ++msgstr "2 セットのリポジトリー間の違いを一覧表示します" + + #: plugins/repodiff.py:58 + msgid "Specify old repository, can be used multiple times" +-msgstr "" ++msgstr "古いリポジトリーを指定します、これは複数回使用できます" + + #: plugins/repodiff.py:60 + msgid "Specify new repository, can be used multiple times" +-msgstr "" ++msgstr "新しいリポジトリーを指定します、これは複数回使用できます" + + #: plugins/repodiff.py:63 + msgid "" + "Specify architectures to compare, can be used multiple times. By default, " + "only source rpms are compared." +-msgstr "" ++msgstr "比較するアーキテクチャーを指定します、これは複数回使用できます。デフォルトで、ソース rpms のみが比較されます。" + + #: plugins/repodiff.py:67 + msgid "Output additional data about the size of the changes." +-msgstr "" ++msgstr "変更サイズに関する追加データを出力します。" + + #: plugins/repodiff.py:69 + msgid "" + "Compare packages also by arch. By default packages are compared just by " + "name." +-msgstr "" ++msgstr "パッケージを Arch でも比較します。デフォルトで、パッケージは名前のみで比較されます。" + + #: plugins/repodiff.py:72 + msgid "Output a simple one line message for modified packages." +-msgstr "" ++msgstr "変更されたパッケージに簡単な 1 行メッセージを出力します。" + + #: plugins/repodiff.py:74 + msgid "" + "Split the data for modified packages between upgraded and downgraded " + "packages." +-msgstr "" ++msgstr "アップグレードされたパッケージとダウングレードされたパッケージとの間で、変更されたパッケージのデータを分割します。" + + #: plugins/repodiff.py:86 + msgid "Both old and new repositories must be set." +-msgstr "" ++msgstr "新旧両方のリポジトリーを設定する必要があります。" + + #: plugins/repodiff.py:178 + msgid "Size change: {} bytes" +-msgstr "" ++msgstr "サイズの変更: {} バイト" + + #: plugins/repodiff.py:184 + msgid "Added package : {}" +-msgstr "" ++msgstr "追加されたパッケージ : {}" + + #: plugins/repodiff.py:187 + msgid "Removed package: {}" +-msgstr "" ++msgstr "削除されたパッケージ: {}" + + #: plugins/repodiff.py:190 + msgid "Obsoleted by : {}" +-msgstr "" ++msgstr "により廃止されました: {}" + + #: plugins/repodiff.py:195 + msgid "" + "\n" + "Upgraded packages" + msgstr "" ++"\n" ++"アップグレードされたパッケージ" + + #: plugins/repodiff.py:200 + msgid "" + "\n" + "Downgraded packages" + msgstr "" ++"\n" ++"ダウングレードされたパッケージ" + + #: plugins/repodiff.py:207 + msgid "" + "\n" + "Modified packages" + msgstr "" ++"\n" ++"変更されたパッケージ" + + #: plugins/repodiff.py:212 + msgid "" + "\n" + "Summary" + msgstr "" ++"\n" ++"サマリー" + + #: plugins/repodiff.py:213 + msgid "Added packages: {}" +-msgstr "" ++msgstr "追加されたパッケージ: {}" + + #: plugins/repodiff.py:214 + msgid "Removed packages: {}" +-msgstr "" ++msgstr "削除されたパッケージ: {}" + + #: plugins/repodiff.py:216 + msgid "Upgraded packages: {}" +-msgstr "" ++msgstr "アップグレードされたパッケージ: {}" + + #: plugins/repodiff.py:217 + msgid "Downgraded packages: {}" +-msgstr "" ++msgstr "ダウングレードされたパッケージ: {}" + + #: plugins/repodiff.py:219 + msgid "Modified packages: {}" +-msgstr "" ++msgstr "変更されたパッケージ: {}" + + #: plugins/repodiff.py:222 + msgid "Size of added packages: {}" +-msgstr "" ++msgstr "追加されたパッケージのサイズ: {}" + + #: plugins/repodiff.py:223 + msgid "Size of removed packages: {}" +-msgstr "" ++msgstr "削除されたパッケージのサイズ: {}" + + #: plugins/repodiff.py:225 + msgid "Size of modified packages: {}" +-msgstr "" ++msgstr "変更されたパッケージのサイズ: {}" + + #: plugins/repodiff.py:228 + msgid "Size of upgraded packages: {}" +-msgstr "" ++msgstr "アップグレードされたパッケージのサイズ: {}" + + #: plugins/repodiff.py:230 + msgid "Size of downgraded packages: {}" +-msgstr "" ++msgstr "ダウングレードされたパッケージのサイズ: {}" + + #: plugins/repodiff.py:232 + msgid "Size change: {}" +-msgstr "" ++msgstr "サイズの変更: {}" + + #: plugins/repograph.py:50 + msgid "Output a full package dependency graph in dot format" +@@ -887,84 +1046,96 @@ msgstr "維持する最新の N パッケージ - デフォルトは 1 に設定 + msgid "Path to directory" + msgstr "ディレクトリーへのパス" + +-#: plugins/reposync.py:54 ++#: plugins/reposync.py:55 + msgid "download all packages from remote repo" + msgstr "リモート repo からすべてのパッケージをダウンロードします" + +-#: plugins/reposync.py:63 ++#: plugins/reposync.py:64 + msgid "download only packages for this ARCH" + msgstr "この ARCH 向けのパッケージのみをダウンロード" + +-#: plugins/reposync.py:65 ++#: plugins/reposync.py:66 + msgid "delete local packages no longer present in repository" + msgstr "リポジトリーにもはや存在しないローカルパッケージを削除" + +-#: plugins/reposync.py:67 +-msgid "also download and uncompress comps.xml" +-msgstr "" +- +-#: plugins/reposync.py:69 ++#: plugins/reposync.py:68 + msgid "download all the metadata." +-msgstr "" ++msgstr "すべてのメタデータをダウンロードします。" + +-#: plugins/reposync.py:71 +-msgid "download only newest packages per-repo" +-msgstr "最新のパッケージ per-repo のみをダウンロード" ++#: plugins/reposync.py:70 ++msgid "Remove packages that fail GPG signature checking after downloading" ++msgstr "ダウンロード後に GPG 署名の確認に失敗するパッケージを削除します" + + #: plugins/reposync.py:73 +-msgid "where to store downloaded repositories" +-msgstr "" ++msgid "also download and uncompress comps.xml" ++msgstr "comps.xml もダウンロードして展開します" + + #: plugins/reposync.py:75 +-msgid "Don't add the reponame to the download path." +-msgstr "" +- +-#: plugins/reposync.py:77 + msgid "" + "where to store downloaded repository metadata. Defaults to the value of " + "--download-path." +-msgstr "" ++msgstr "ダウンロード済みリポジトリーメタデータの保管場所。初期値は --download-path です。" ++ ++#: plugins/reposync.py:78 ++msgid "download only newest packages per-repo" ++msgstr "最新のパッケージ per-repo のみをダウンロード" + + #: plugins/reposync.py:80 +-msgid "operate on source packages" +-msgstr "ソースパッケージでの操作" ++msgid "Don't add the reponame to the download path." ++msgstr "ダウンロードパスにはリポネームを追加しないでください。" + + #: plugins/reposync.py:82 ++msgid "where to store downloaded repositories" ++msgstr "ダウンロード済みリポジトリーの保管場所" ++ ++#: plugins/reposync.py:84 + msgid "try to set local timestamps of local files by the one on the server" +-msgstr "" ++msgstr "サーバー上から、ローカルファイルのローカル timestamps の設定を試みます" + +-#: plugins/reposync.py:85 ++#: plugins/reposync.py:87 ++msgid "operate on source packages" ++msgstr "ソースパッケージでの操作" ++ ++#: plugins/reposync.py:89 + msgid "Just list urls of what would be downloaded, don't download" +-msgstr "" ++msgstr "ダウンロードする予定のものの URL をリストするだけで、ダウンロードしないでください" + +-#: plugins/reposync.py:109 ++#: plugins/reposync.py:113 + msgid "Can't use --norepopath with multiple repositories" +-msgstr "" ++msgstr "複数のリポジトリーでは -norepopath は使えません" + +-#: plugins/reposync.py:127 ++#: plugins/reposync.py:132 + #, python-format + msgid "Failed to get mirror for metadata: %s" +-msgstr "" ++msgstr "メタデータのミラー取得に失敗しました: %s" + +-#: plugins/reposync.py:144 ++#: plugins/reposync.py:149 + msgid "Failed to get mirror for the group file." +-msgstr "" ++msgstr "グループファイルのミラー取得に失敗しました。" ++ ++#: plugins/reposync.py:168 ++msgid "Removing {}: {}" ++msgstr "{} の削除中: {}" + + #: plugins/reposync.py:175 ++msgid "GPG signature check failed." ++msgstr "GPG 署名の確認に失敗しました。" ++ ++#: plugins/reposync.py:196 + msgid "Download target '{}' is outside of download path '{}'." +-msgstr "" ++msgstr "ダウンロードターゲット '{}' は、ダウンロードパス '{}' の外にあります。" + +-#: plugins/reposync.py:190 ++#: plugins/reposync.py:211 + #, python-format + msgid "[DELETED] %s" + msgstr "[DELETED] %s" + +-#: plugins/reposync.py:192 ++#: plugins/reposync.py:213 + #, python-format + msgid "failed to delete file %s" + msgstr "ファイル %s の削除に失敗しました" + +-#: plugins/reposync.py:201 ++#: plugins/reposync.py:222 + #, python-format + msgid "comps.xml for repository %s saved" + msgstr "リポジトリー %s の comps.xml が保存されました" +@@ -992,15 +1163,15 @@ msgstr "除外を追加:" + + #: plugins/versionlock.py:36 + msgid "Package already locked in equivalent form:" +-msgstr "" ++msgstr "同等の形で既にロックされているパッケージ。" + + #: plugins/versionlock.py:37 + msgid "Package {} is already locked" +-msgstr "" ++msgstr "パッケージ {} は既にロックされています" + + #: plugins/versionlock.py:38 + msgid "Package {} is already excluded" +-msgstr "" ++msgstr "パッケージ{}はすでに除外されています" + + #: plugins/versionlock.py:39 + msgid "Deleting versionlock for:" +@@ -1032,7 +1203,7 @@ msgstr "パッケージバージョンロックの制御" + + #: plugins/versionlock.py:136 + msgid "Use package specifications as they are, do not try to parse them" +-msgstr "" ++msgstr "パッケージ仕様をそのまま使用し、解析を試みないでください" + + #~ msgid "" + #~ "\n" +diff --git a/po/ko.po b/po/ko.po +index 3f4eb89..a8ba74b 100644 +--- a/po/ko.po ++++ b/po/ko.po +@@ -3,7 +3,7 @@ msgid "" + msgstr "" + "Project-Id-Version: PACKAGE VERSION\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2020-10-05 09:18-0400\n" ++"POT-Creation-Date: 2021-02-22 10:06+0100\n" + "PO-Revision-Date: 2020-09-12 11:29+0000\n" + "Last-Translator: Ludek Janda \n" + "Language-Team: Korean \n" +@@ -559,7 +559,7 @@ msgstr "다운로드 대신 rpms를 다운로드 할 수있는 URL 목록 인쇄 + msgid "when running with --url, limit to specific protocols" + msgstr "--url을 사용하여 실행하면 특정 프로토콜로 제한됩니다." + +-#: plugins/download.py:121 plugins/reposync.py:293 ++#: plugins/download.py:121 plugins/reposync.py:314 + #, python-format + msgid "Failed to get mirror for package: %s" + msgstr "패키지 미러링에 실패했습니다. %s" +@@ -582,6 +582,132 @@ msgstr "소스 rpm이 정의되지 않았습니다. %s" + msgid "No package %s available." + msgstr "패키지 없음 %s 유효한." + ++#: plugins/groups_manager.py:49 ++msgid "Invalid group id" ++msgstr "" ++ ++#: plugins/groups_manager.py:58 ++msgid "Invalid translated data, should be in form 'lang:text'" ++msgstr "" ++ ++#: plugins/groups_manager.py:61 ++msgid "Invalid/empty language for translated data" ++msgstr "" ++ ++#: plugins/groups_manager.py:71 ++msgid "Can't generate group id from '{}'. Please specify group id using --id." ++msgstr "" ++ ++#: plugins/groups_manager.py:79 ++msgid "create and edit groups metadata file" ++msgstr "" ++ ++#: plugins/groups_manager.py:90 ++msgid "load groups metadata from file" ++msgstr "" ++ ++#: plugins/groups_manager.py:93 ++msgid "save groups metadata to file" ++msgstr "" ++ ++#: plugins/groups_manager.py:95 ++msgid "load and save groups metadata to file" ++msgstr "" ++ ++#: plugins/groups_manager.py:97 ++#, fuzzy ++#| msgid "print variable values to stdout" ++msgid "print the result metadata to stdout" ++msgstr "변수 값을 표준 출력으로 출력" ++ ++#: plugins/groups_manager.py:100 ++msgid "group id" ++msgstr "" ++ ++#: plugins/groups_manager.py:101 ++msgid "group name" ++msgstr "" ++ ++#: plugins/groups_manager.py:103 ++#, fuzzy ++#| msgid "No description given" ++msgid "group description" ++msgstr "설명이 없습니다." ++ ++#: plugins/groups_manager.py:105 ++msgid "group display order" ++msgstr "" ++ ++#: plugins/groups_manager.py:108 ++msgid "translated name for the group" ++msgstr "" ++ ++#: plugins/groups_manager.py:111 ++msgid "translated description for the group" ++msgstr "" ++ ++#: plugins/groups_manager.py:115 ++msgid "make the group user visible (default)" ++msgstr "" ++ ++#: plugins/groups_manager.py:118 ++msgid "make the group user invisible" ++msgstr "" ++ ++#: plugins/groups_manager.py:123 ++msgid "add packages to the mandatory section" ++msgstr "" ++ ++#: plugins/groups_manager.py:125 ++msgid "add packages to the optional section" ++msgstr "" ++ ++#: plugins/groups_manager.py:127 ++msgid "remove packages from the group instead of adding them" ++msgstr "" ++ ++#: plugins/groups_manager.py:129 ++#, fuzzy ++#| msgid "Display a list of unresolved dependencies for repositories" ++msgid "include also direct dependencies for packages" ++msgstr "저장소에 대한 확인되지 않은 종속성 목록 표시" ++ ++#: plugins/groups_manager.py:132 ++msgid "package specification" ++msgstr "" ++ ++#: plugins/groups_manager.py:156 ++msgid "Can't edit group without specifying it (use --id or --name)" ++msgstr "" ++ ++#: plugins/groups_manager.py:190 ++#, fuzzy ++#| msgid "Can't write file '{}'" ++msgid "Can't load file \"{}\": {}" ++msgstr "'{}'파일을 쓸 수 없습니다." ++ ++#: plugins/groups_manager.py:206 ++#, fuzzy ++#| msgid "Can't write file '{}'" ++msgid "Can't save file \"{}\": {}" ++msgstr "'{}'파일을 쓸 수 없습니다." ++ ++#: plugins/groups_manager.py:259 ++#, fuzzy ++#| msgid "No match for argument: %s" ++msgid "No match for argument: {}" ++msgstr "인수와 일치하는 항목 없음 : %s" ++ ++#: plugins/groups_manager.py:296 ++msgid "Can't remove packages from non-existent group" ++msgstr "" ++ ++#: plugins/groups_manager.py:305 ++msgid "" ++"Group id '{}' generated from '{}' is duplicit. Please specify group id using" ++" --id." ++msgstr "" ++ + #: plugins/leaves.py:32 + msgid "List installed packages not required by any other package" + msgstr "다른 패키지에서 필요하지 않은 설치된 패키지 나열" +@@ -614,43 +740,47 @@ msgstr "yum의 히스토리, 그룹 및 yumdb 데이터를 dnf로 마이그레 + msgid "Migrating history data..." + msgstr "기록 데이터 마이그레이션 중 ..." + +-#: plugins/needs_restarting.py:65 ++#: plugins/needs_restarting.py:66 + #, python-brace-format + msgid "" + "No installed package found for package name \"{pkg}\" specified in needs-" + "restarting file \"{file}\"." + msgstr "" + +-#: plugins/needs_restarting.py:199 ++#: plugins/needs_restarting.py:224 + msgid "determine updated binaries that need restarting" + msgstr "다시 시작해야하는 업데이트 된 바이너리 결정" + +-#: plugins/needs_restarting.py:204 ++#: plugins/needs_restarting.py:229 + msgid "only consider this user's processes" + msgstr "이 사용자의 프로세스 만 고려하십시오." + +-#: plugins/needs_restarting.py:206 ++#: plugins/needs_restarting.py:231 + msgid "" + "only report whether a reboot is required (exit code 1) or not (exit code 0)" + msgstr "" + +-#: plugins/needs_restarting.py:230 ++#: plugins/needs_restarting.py:234 ++msgid "only report affected systemd services" ++msgstr "" ++ ++#: plugins/needs_restarting.py:257 + msgid "Core libraries or services have been updated since boot-up:" + msgstr "" + +-#: plugins/needs_restarting.py:235 ++#: plugins/needs_restarting.py:262 + msgid "Reboot is required to fully utilize these updates." + msgstr "" + +-#: plugins/needs_restarting.py:236 ++#: plugins/needs_restarting.py:263 + msgid "More information:" + msgstr "" + +-#: plugins/needs_restarting.py:240 ++#: plugins/needs_restarting.py:267 + msgid "No core libraries or services have been updated since boot-up." + msgstr "" + +-#: plugins/needs_restarting.py:242 ++#: plugins/needs_restarting.py:269 + msgid "Reboot should not be necessary." + msgstr "" + +@@ -871,84 +1001,96 @@ msgstr "보관할 최신 N 패키지 - 기본값은 1입니다." + msgid "Path to directory" + msgstr "디렉토리 경로" + +-#: plugins/reposync.py:54 ++#: plugins/reposync.py:55 + msgid "download all packages from remote repo" + msgstr "원격 저장소에서 모든 패키지를 다운로드하십시오." + +-#: plugins/reposync.py:63 ++#: plugins/reposync.py:64 + msgid "download only packages for this ARCH" + msgstr "이 ARCH 용 패키지 만 다운로드하십시오." + +-#: plugins/reposync.py:65 ++#: plugins/reposync.py:66 + msgid "delete local packages no longer present in repository" + msgstr "저장소에 더 이상 존재하지 않는 로컬 패키지 삭제" + +-#: plugins/reposync.py:67 +-msgid "also download and uncompress comps.xml" +-msgstr "" +- +-#: plugins/reposync.py:69 ++#: plugins/reposync.py:68 + msgid "download all the metadata." + msgstr "" + +-#: plugins/reposync.py:71 +-msgid "download only newest packages per-repo" +-msgstr "repo 당 최신 패키지 만 다운로드하십시오." ++#: plugins/reposync.py:70 ++msgid "Remove packages that fail GPG signature checking after downloading" ++msgstr "" + + #: plugins/reposync.py:73 +-msgid "where to store downloaded repositories" ++msgid "also download and uncompress comps.xml" + msgstr "" + + #: plugins/reposync.py:75 +-msgid "Don't add the reponame to the download path." +-msgstr "" +- +-#: plugins/reposync.py:77 + msgid "" + "where to store downloaded repository metadata. Defaults to the value of " + "--download-path." + msgstr "" + ++#: plugins/reposync.py:78 ++msgid "download only newest packages per-repo" ++msgstr "repo 당 최신 패키지 만 다운로드하십시오." ++ + #: plugins/reposync.py:80 +-msgid "operate on source packages" +-msgstr "소스 패키지를 조작한다." ++msgid "Don't add the reponame to the download path." ++msgstr "" + + #: plugins/reposync.py:82 ++msgid "where to store downloaded repositories" ++msgstr "" ++ ++#: plugins/reposync.py:84 + msgid "try to set local timestamps of local files by the one on the server" + msgstr "" + +-#: plugins/reposync.py:85 ++#: plugins/reposync.py:87 ++msgid "operate on source packages" ++msgstr "소스 패키지를 조작한다." ++ ++#: plugins/reposync.py:89 + msgid "Just list urls of what would be downloaded, don't download" + msgstr "" + +-#: plugins/reposync.py:109 ++#: plugins/reposync.py:113 + msgid "Can't use --norepopath with multiple repositories" + msgstr "" + +-#: plugins/reposync.py:127 ++#: plugins/reposync.py:132 + #, python-format + msgid "Failed to get mirror for metadata: %s" + msgstr "" + +-#: plugins/reposync.py:144 ++#: plugins/reposync.py:149 + msgid "Failed to get mirror for the group file." + msgstr "" + ++#: plugins/reposync.py:168 ++msgid "Removing {}: {}" ++msgstr "" ++ + #: plugins/reposync.py:175 ++msgid "GPG signature check failed." ++msgstr "" ++ ++#: plugins/reposync.py:196 + msgid "Download target '{}' is outside of download path '{}'." + msgstr "" + +-#: plugins/reposync.py:190 ++#: plugins/reposync.py:211 + #, python-format + msgid "[DELETED] %s" + msgstr "[DELETED] %s" + +-#: plugins/reposync.py:192 ++#: plugins/reposync.py:213 + #, python-format + msgid "failed to delete file %s" + msgstr "파일을 삭제하지 못했습니다. %s" + +-#: plugins/reposync.py:201 ++#: plugins/reposync.py:222 + #, python-format + msgid "comps.xml for repository %s saved" + msgstr "저장소에 대한 comps.xml %s 저장된" +diff --git a/po/zh_CN.po b/po/zh_CN.po +index 151441d..27645c4 100644 +--- a/po/zh_CN.po ++++ b/po/zh_CN.po +@@ -5,20 +5,21 @@ + # cheng ye <18969068329@163.com>, 2017. #zanata + # Ludek Janda , 2018. #zanata + # Hongqiao Chen , 2020. ++# Sundeep Anand , 2021. + msgid "" + msgstr "" + "Project-Id-Version: PACKAGE VERSION\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2020-10-05 09:18-0400\n" +-"PO-Revision-Date: 2020-07-09 13:27+0000\n" +-"Last-Translator: Charles Lee \n" +-"Language-Team: Chinese (Simplified) \n" ++"POT-Creation-Date: 2021-02-22 10:06+0100\n" ++"PO-Revision-Date: 2021-03-08 11:08+0000\n" ++"Last-Translator: Sundeep Anand \n" ++"Language-Team: Chinese (Simplified) \n" + "Language: zh_CN\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-Generator: Weblate 4.1.1\n" ++"X-Generator: Weblate 4.5.1\n" + + #: plugins/builddep.py:45 + msgid "[PACKAGE|PACKAGE.spec]" +@@ -39,7 +40,7 @@ msgstr "定义一个用于处理 Spec 文件的宏" + + #: plugins/builddep.py:95 + msgid "skip build dependencies not available in repositories" +-msgstr "" ++msgstr "跳过存储库中不可用的构建依赖项" + + #: plugins/builddep.py:98 + msgid "treat commandline arguments as spec files" +@@ -51,7 +52,7 @@ msgstr "将命令行参数作为源码 RPM 处理" + + #: plugins/builddep.py:144 + msgid "RPM: {}" +-msgstr "" ++msgstr "RPM软件包: {}" + + #: plugins/builddep.py:153 + msgid "Some packages could not be found." +@@ -87,27 +88,27 @@ msgstr "无匹配软件包: %s" + #: plugins/changelog.py:37 + #, python-brace-format + msgid "Not a valid date: \"{0}\"." +-msgstr "" ++msgstr "无效的日期 : \"{0}\"." + + #: plugins/changelog.py:43 + msgid "Show changelog data of packages" +-msgstr "" ++msgstr "查看软件包的改变日志数据" + + #: plugins/changelog.py:51 + msgid "" + "show changelog entries since DATE. To avoid ambiguosity, YYYY-MM-DD format " + "is recommended." +-msgstr "" ++msgstr "显示自 DATE 开始的改变日志信息。为了避免混淆,推荐使用 YYYY-MM-DD 格式。" + + #: plugins/changelog.py:55 + msgid "show given number of changelog entries per package" +-msgstr "" ++msgstr "每个软件包显示指定数量的改变日志信息" + + #: plugins/changelog.py:58 + msgid "" + "show only new changelog entries for packages, that provide an upgrade for " + "some of already installed packages." +-msgstr "" ++msgstr "只显示软件包新的改变日志信息,为已安装的软件包提供升级" + + #: plugins/changelog.py:60 + msgid "PACKAGE" +@@ -120,20 +121,20 @@ msgstr "未找到匹配的参数: %s" + + #: plugins/changelog.py:109 + msgid "Listing changelogs since {}" +-msgstr "" ++msgstr "列出自 {} 后的改变日志信息" + + #: plugins/changelog.py:111 + msgid "Listing only latest changelog" + msgid_plural "Listing {} latest changelogs" +-msgstr[0] "" ++msgstr[0] "只列出最新的改变日志" + + #: plugins/changelog.py:116 + msgid "Listing only new changelogs since installed version of the package" +-msgstr "" ++msgstr "在列出安装的软件包版本后的新改变日志" + + #: plugins/changelog.py:118 + msgid "Listing all changelogs" +-msgstr "" ++msgstr "列出所有改变日志" + + #: plugins/changelog.py:122 + msgid "Changelogs for {}" +@@ -142,7 +143,7 @@ msgstr "{}的变更记录" + #: plugins/config_manager.py:37 + #, python-brace-format + msgid "manage {prog} configuration options and repositories" +-msgstr "" ++msgstr "管理 {prog} 配置选项和软件仓库" + + #: plugins/config_manager.py:44 + msgid "repo to modify" +@@ -166,21 +167,23 @@ msgstr "打印变量值到标准输出" + + #: plugins/config_manager.py:60 + msgid "enable repos (automatically saves)" +-msgstr "" ++msgstr "启用仓库(自动保存)" + + #: plugins/config_manager.py:63 + msgid "disable repos (automatically saves)" +-msgstr "" ++msgstr "禁用仓库(自动保存)" + + #: plugins/config_manager.py:77 + msgid "one of the following arguments is required: {}" +-msgstr "" ++msgstr "需要以下参数之一:{}" + + #: plugins/config_manager.py:86 + msgid "" + "Warning: --enablerepo/--disablerepo arguments have no meaningwith config " + "manager. Use --set-enabled/--set-disabled instead." + msgstr "" ++"警告:--enablerepo/--disablerepo 参数对于 config manager 没有作用。请使用 --set-" ++"enabled/--set-disabled。" + + #: plugins/config_manager.py:131 + #, python-format +@@ -278,7 +281,7 @@ msgstr "按照用户 NAME 列出可用的 Copr 仓库" + + #: plugins/copr.py:115 + msgid "Specify an instance of Copr to work with" +-msgstr "" ++msgstr "指定需要使用的 Copr 实例" + + #: plugins/copr.py:149 plugins/copr.py:217 plugins/copr.py:237 + msgid "Error: " +@@ -289,10 +292,11 @@ msgid "" + "specify Copr hub either with `--hub` or using " + "`copr_hub/copr_username/copr_projectname` format" + msgstr "" ++"使用 `--hub` 或使用 `copr_hub/copr_username/copr_projectname` 格式指定 Copr hub" + + #: plugins/copr.py:153 + msgid "multiple hubs specified" +-msgstr "" ++msgstr "指定多个 hub" + + #: plugins/copr.py:218 plugins/copr.py:222 + msgid "exactly two additional parameters to copr command are required" +@@ -320,6 +324,17 @@ msgid "" + "Please do not file bug reports about these packages in Fedora\n" + "Bugzilla. In case of problems, contact the owner of this repository.\n" + msgstr "" ++"\n" ++"启用一个 Copr 仓库。请注意这个仓库\n" ++"不是主发行版本的一部分,质量可能会有所不同。\n" ++"\n" ++"Fedora 项目对其不行使除了于 Copr 常见问题\n" ++"\n" ++"中所提出的规则外的任何权力,并且其软件包不保证达到特定质量\n" ++"和安全水准。\n" ++"\n" ++"请不要在 Fedora Bugzilla 中报告这些软件包中出现的\n" ++"问题。当出现问题时,请联系仓库的所有者。\n" + + #: plugins/copr.py:271 + msgid "Repository successfully enabled." +@@ -343,6 +358,7 @@ msgid "" + " about Copr hub - the default one was assumed. Re-enable the project to fix " + "this." + msgstr "" ++"* 这些 coprs 有使用旧格式的 repo 文件,它们没有包括 Copr hub 的信息 - 假设使用默认值。重新启用项目来解决这个问题。" + + #: plugins/copr.py:353 + msgid "Can't parse repositories for username '{}'." +@@ -401,15 +417,27 @@ msgid "" + "\n" + "These repositories have been enabled automatically." + msgstr "" ++"启用的 Copr 仓库的维护人员决定\n" ++"它需要依赖于其他仓库。这些仓库\n" ++"通常是必需的,如果需要从主 Copr 仓库\n" ++"(它们会提供运行时依赖软件包)安装 RPM。\n" ++"\n" ++"请注意上面关于质量和程序错误报告的备注\n" ++"也适用于这里,Fedora Project 不控制内容。\n" ++"请检查列表:\n" ++"\n" ++"{0}\n" ++"\n" ++"这些仓库已被自动启用。" + + #: plugins/copr.py:549 + msgid "Do you want to keep them enabled?" +-msgstr "" ++msgstr "您需要保持它们被启用吗?" + + #: plugins/copr.py:582 + #, python-brace-format + msgid "Failed to remove copr repo {0}/{1}/{2}" +-msgstr "" ++msgstr "删除 copr repo {0}/{1}/{2} 失败" + + #: plugins/copr.py:593 + msgid "Failed to disable copr repo {}/{}" +@@ -424,14 +452,12 @@ msgid "Interact with Playground repository." + msgstr "与 Playground 仓库交互。" + + #: plugins/copr.py:639 +-#, fuzzy +-#| msgid "Interact with Playground repository." + msgid "Enabling a Playground repository." +-msgstr "与 Playground 仓库交互。" ++msgstr "启用一个 Playground 仓库。" + + #: plugins/copr.py:640 + msgid "Do you want to continue?" +-msgstr "" ++msgstr "您希望继续吗?" + + #: plugins/copr.py:683 + msgid "Playground repositories successfully enabled." +@@ -488,7 +514,7 @@ msgstr "限制到指定类型" + msgid "" + "Allow removing of install-only packages. Using this option may result in an " + "attempt to remove the running kernel." +-msgstr "" ++msgstr "允许删除只安装的软件包。使用这个选项可能会导致尝试删除正在运行的内核。" + + #: plugins/debug.py:202 + msgid "name of dump file" +@@ -512,25 +538,25 @@ msgstr "安装调试信息软件包" + #, python-format + msgid "" + "Could not find debuginfo package for the following available packages: %s" +-msgstr "" ++msgstr "无法为以下可用的软件包找到 debuginfo 软件包: %s" + + #: plugins/debuginfo-install.py:185 + #, python-format + msgid "" + "Could not find debugsource package for the following available packages: %s" +-msgstr "" ++msgstr "无法为以下可用的软件包找到 debugsource 软件包: %s" + + #: plugins/debuginfo-install.py:190 + #, python-format + msgid "" + "Could not find debuginfo package for the following installed packages: %s" +-msgstr "" ++msgstr "无法为以下安装的软件包找到 debuginfo 软件包: %s" + + #: plugins/debuginfo-install.py:195 + #, python-format + msgid "" + "Could not find debugsource package for the following installed packages: %s" +-msgstr "" ++msgstr "无法为以下安装的软件包找到 debugsource 软件包: %s" + + #: plugins/debuginfo-install.py:199 + msgid "Unable to find a match" +@@ -554,7 +580,7 @@ msgstr "取而代之下载 -debuginfo 软件包" + + #: plugins/download.py:57 + msgid "download the -debugsource package instead" +-msgstr "" ++msgstr "取而代之下载 -debugsource 软件包" + + #: plugins/download.py:60 + msgid "limit the query to packages of given architectures." +@@ -568,7 +594,7 @@ msgstr "解析并下载所需的依赖关系" + msgid "" + "when running with --resolve, download all dependencies (do not exclude " + "already installed ones)" +-msgstr "" ++msgstr "当运行时使用 --resolve,下载所有依赖软件包 (不排除已安装的软件包)" + + #: plugins/download.py:67 + msgid "" +@@ -579,7 +605,7 @@ msgstr "打印 rpm 可被下载的 url 列表而不是直接下载" + msgid "when running with --url, limit to specific protocols" + msgstr "当执行时带有 --url 参数,则限制使用指定协议" + +-#: plugins/download.py:121 plugins/reposync.py:293 ++#: plugins/download.py:121 plugins/reposync.py:314 + #, python-format + msgid "Failed to get mirror for package: %s" + msgstr "获取针对以下软件包的镜像失败:%s" +@@ -602,13 +628,127 @@ msgstr "未找到所定义 %s 的源代码软件包 SRPM" + msgid "No package %s available." + msgstr "没有可用的软件包 %s。" + ++#: plugins/groups_manager.py:49 ++msgid "Invalid group id" ++msgstr "无效的组 ID" ++ ++#: plugins/groups_manager.py:58 ++msgid "Invalid translated data, should be in form 'lang:text'" ++msgstr "无效的翻译数据,格式应该是 'lang:text'" ++ ++#: plugins/groups_manager.py:61 ++msgid "Invalid/empty language for translated data" ++msgstr "翻译数据的无效/空语言" ++ ++#: plugins/groups_manager.py:71 ++msgid "Can't generate group id from '{}'. Please specify group id using --id." ++msgstr "无法从 '{}' 生成组 ID。请使用 --id 指定组 ID。" ++ ++#: plugins/groups_manager.py:79 ++msgid "create and edit groups metadata file" ++msgstr "创建并编辑组元数据文件" ++ ++#: plugins/groups_manager.py:90 ++msgid "load groups metadata from file" ++msgstr "从文件加载组元数据" ++ ++#: plugins/groups_manager.py:93 ++msgid "save groups metadata to file" ++msgstr "将组元数据保存到文件中" ++ ++#: plugins/groups_manager.py:95 ++msgid "load and save groups metadata to file" ++msgstr "将组元数据加载并保存到文件中" ++ ++#: plugins/groups_manager.py:97 ++msgid "print the result metadata to stdout" ++msgstr "将结果元数据输出到标准输出" ++ ++#: plugins/groups_manager.py:100 ++msgid "group id" ++msgstr "组 id" ++ ++#: plugins/groups_manager.py:101 ++msgid "group name" ++msgstr "组名称" ++ ++#: plugins/groups_manager.py:103 ++msgid "group description" ++msgstr "组描述" ++ ++#: plugins/groups_manager.py:105 ++msgid "group display order" ++msgstr "组显示顺序" ++ ++#: plugins/groups_manager.py:108 ++msgid "translated name for the group" ++msgstr "组的翻译名称" ++ ++#: plugins/groups_manager.py:111 ++msgid "translated description for the group" ++msgstr "组的翻译描述" ++ ++#: plugins/groups_manager.py:115 ++msgid "make the group user visible (default)" ++msgstr "使组用户可见(默认)" ++ ++#: plugins/groups_manager.py:118 ++msgid "make the group user invisible" ++msgstr "使组用户不可见" ++ ++#: plugins/groups_manager.py:123 ++msgid "add packages to the mandatory section" ++msgstr "在必填部分添加软件包" ++ ++#: plugins/groups_manager.py:125 ++msgid "add packages to the optional section" ++msgstr "在可选部分添加软件包" ++ ++#: plugins/groups_manager.py:127 ++msgid "remove packages from the group instead of adding them" ++msgstr "从组群中删除软件包而不是添加它们" ++ ++#: plugins/groups_manager.py:129 ++msgid "include also direct dependencies for packages" ++msgstr "同时包括软件包的直接依赖软件包" ++ ++#: plugins/groups_manager.py:132 ++msgid "package specification" ++msgstr "软件包规格" ++ ++#: plugins/groups_manager.py:156 ++msgid "Can't edit group without specifying it (use --id or --name)" ++msgstr "没有指定组(使用 --id 或 --name)就无法编辑组" ++ ++#: plugins/groups_manager.py:190 ++msgid "Can't load file \"{}\": {}" ++msgstr "无法加载文件 \"{}\": {}" ++ ++#: plugins/groups_manager.py:206 ++msgid "Can't save file \"{}\": {}" ++msgstr "无法保存文件 \"{}\": {}" ++ ++#: plugins/groups_manager.py:259 ++msgid "No match for argument: {}" ++msgstr "未找到匹配的参数: {}" ++ ++#: plugins/groups_manager.py:296 ++msgid "Can't remove packages from non-existent group" ++msgstr "无法从不存在的组中删除软件包" ++ ++#: plugins/groups_manager.py:305 ++msgid "" ++"Group id '{}' generated from '{}' is duplicit. Please specify group id using" ++" --id." ++msgstr "从 '{}' 生成的组 id '{}' 是显式的。请使用 --id 指定组 ID。" ++ + #: plugins/leaves.py:32 + msgid "List installed packages not required by any other package" + msgstr "列出已安装但不被任何其他软件包所需要的软件包" + + #: plugins/local.py:122 + msgid "Unable to create a directory '{}' due to '{}'" +-msgstr "无法创建目录 '{}' 由于 '{}'" ++msgstr "无法创建目录 '{}' 由于 '{}'" + + #: plugins/local.py:126 + msgid "'{}' is not a directory" +@@ -634,67 +774,71 @@ msgstr "迁移 yum 的历史、分组以及 yumdb 数据至 dnf" + msgid "Migrating history data..." + msgstr "正在迁移历史数据…" + +-#: plugins/needs_restarting.py:65 ++#: plugins/needs_restarting.py:66 + #, python-brace-format + msgid "" + "No installed package found for package name \"{pkg}\" specified in needs-" + "restarting file \"{file}\"." +-msgstr "" ++msgstr "没有为在需要重新启动文件 \"{file}\" 中指定的名为 \"{pkg}\" 的软件包找到安装的软件包。" + +-#: plugins/needs_restarting.py:199 ++#: plugins/needs_restarting.py:224 + msgid "determine updated binaries that need restarting" + msgstr "判断所升级的二进制文件是否需要重启" + +-#: plugins/needs_restarting.py:204 ++#: plugins/needs_restarting.py:229 + msgid "only consider this user's processes" + msgstr "仅考虑当前用户的进程" + +-#: plugins/needs_restarting.py:206 ++#: plugins/needs_restarting.py:231 + msgid "" + "only report whether a reboot is required (exit code 1) or not (exit code 0)" +-msgstr "" ++msgstr "只报告需要重新引导 (退出代码为 1) 或不需要重新引导 (退出代码为 0)" ++ ++#: plugins/needs_restarting.py:234 ++msgid "only report affected systemd services" ++msgstr "只报告受影响的 systemd 服务" + +-#: plugins/needs_restarting.py:230 ++#: plugins/needs_restarting.py:257 + msgid "Core libraries or services have been updated since boot-up:" +-msgstr "" ++msgstr "在引导后 Core 库或服务已被更新 :" + +-#: plugins/needs_restarting.py:235 ++#: plugins/needs_restarting.py:262 + msgid "Reboot is required to fully utilize these updates." +-msgstr "" ++msgstr "需要重新启动后才可以使这些更新完全生效" + +-#: plugins/needs_restarting.py:236 ++#: plugins/needs_restarting.py:263 + msgid "More information:" +-msgstr "" ++msgstr "更多信息 :" + +-#: plugins/needs_restarting.py:240 ++#: plugins/needs_restarting.py:267 + msgid "No core libraries or services have been updated since boot-up." +-msgstr "" ++msgstr "在引导后没有 core 库或服务被更新。" + +-#: plugins/needs_restarting.py:242 ++#: plugins/needs_restarting.py:269 + msgid "Reboot should not be necessary." +-msgstr "" ++msgstr "不需要重新启动。" + + #: plugins/post-transaction-actions.py:71 + #, python-format + msgid "Bad Action Line \"%s\": %s" +-msgstr "" ++msgstr "错误的操作行“ %s”: %s" + + #. unsupported state, skip it + #: plugins/post-transaction-actions.py:130 + #, python-format + msgid "Bad Transaction State: %s" +-msgstr "" ++msgstr "错误的事务状态: %s" + + #: plugins/post-transaction-actions.py:153 + #: plugins/post-transaction-actions.py:155 + #, python-format + msgid "post-transaction-actions: %s" +-msgstr "" ++msgstr "交易后的操作: %s" + + #: plugins/post-transaction-actions.py:157 + #, python-format + msgid "post-transaction-actions: Bad Command \"%s\": %s" +-msgstr "" ++msgstr "交易后的操作 : 错误命令 \"%s\": %s" + + #: plugins/repoclosure.py:42 + msgid "Display a list of unresolved dependencies for repositories" +@@ -722,129 +866,137 @@ msgstr "仅为该软件包检查依赖闭合性" + + #: plugins/repodiff.py:45 + msgid "List differences between two sets of repositories" +-msgstr "" ++msgstr "列出两组仓库中的不同" + + #: plugins/repodiff.py:58 + msgid "Specify old repository, can be used multiple times" +-msgstr "" ++msgstr "指定旧的仓库,可以使用多次" + + #: plugins/repodiff.py:60 + msgid "Specify new repository, can be used multiple times" +-msgstr "" ++msgstr "指定新的仓库,可以使用多次" + + #: plugins/repodiff.py:63 + msgid "" + "Specify architectures to compare, can be used multiple times. By default, " + "only source rpms are compared." +-msgstr "" ++msgstr "指定要比较的架构,可以使用多次。默认情况下,只比较源 rpms。" + + #: plugins/repodiff.py:67 + msgid "Output additional data about the size of the changes." +-msgstr "" ++msgstr "输出关于改变大小的额外数据。" + + #: plugins/repodiff.py:69 + msgid "" + "Compare packages also by arch. By default packages are compared just by " + "name." +-msgstr "" ++msgstr "同时按架构比较软件包。在默认情况下只按名称比较软件包。" + + #: plugins/repodiff.py:72 + msgid "Output a simple one line message for modified packages." +-msgstr "" ++msgstr "为修改的软件包输出一个简单的单行信息。" + + #: plugins/repodiff.py:74 + msgid "" + "Split the data for modified packages between upgraded and downgraded " + "packages." +-msgstr "" ++msgstr "在升级和降级的软件包间为修改的软件包分隔数据。" + + #: plugins/repodiff.py:86 + msgid "Both old and new repositories must be set." +-msgstr "" ++msgstr "新仓库和旧仓库都需要被设置。" + + #: plugins/repodiff.py:178 + msgid "Size change: {} bytes" +-msgstr "" ++msgstr "大小的变化 : {} 字节" + + #: plugins/repodiff.py:184 + msgid "Added package : {}" +-msgstr "" ++msgstr "添加的软件包 : {}" + + #: plugins/repodiff.py:187 + msgid "Removed package: {}" +-msgstr "" ++msgstr "删除的软件包 : {}" + + #: plugins/repodiff.py:190 + msgid "Obsoleted by : {}" +-msgstr "" ++msgstr "过期于 : {}" + + #: plugins/repodiff.py:195 + msgid "" + "\n" + "Upgraded packages" + msgstr "" ++"\n" ++"升级的软件包" + + #: plugins/repodiff.py:200 + msgid "" + "\n" + "Downgraded packages" + msgstr "" ++"\n" ++"降级的软件包" + + #: plugins/repodiff.py:207 + msgid "" + "\n" + "Modified packages" + msgstr "" ++"\n" ++"修改的软件包" + + #: plugins/repodiff.py:212 + msgid "" + "\n" + "Summary" + msgstr "" ++"\n" ++"概述" + + #: plugins/repodiff.py:213 + msgid "Added packages: {}" +-msgstr "" ++msgstr "添加的软件包 : {}" + + #: plugins/repodiff.py:214 + msgid "Removed packages: {}" +-msgstr "" ++msgstr "删除的软件包 : {}" + + #: plugins/repodiff.py:216 + msgid "Upgraded packages: {}" +-msgstr "" ++msgstr "升级的软件包 : {}" + + #: plugins/repodiff.py:217 + msgid "Downgraded packages: {}" +-msgstr "" ++msgstr "降级的软件包 : {}" + + #: plugins/repodiff.py:219 + msgid "Modified packages: {}" +-msgstr "" ++msgstr "修改的软件包 : {}" + + #: plugins/repodiff.py:222 + msgid "Size of added packages: {}" +-msgstr "" ++msgstr "添加的软件包的大小 : {}" + + #: plugins/repodiff.py:223 + msgid "Size of removed packages: {}" +-msgstr "" ++msgstr "删除的软件包的大小 : {}" + + #: plugins/repodiff.py:225 + msgid "Size of modified packages: {}" +-msgstr "" ++msgstr "修改的软件包的大小 : {}" + + #: plugins/repodiff.py:228 + msgid "Size of upgraded packages: {}" +-msgstr "" ++msgstr "升级的软件包的大小 : {}" + + #: plugins/repodiff.py:230 + msgid "Size of downgraded packages: {}" +-msgstr "" ++msgstr "降级的软件包的大小 : {}" + + #: plugins/repodiff.py:232 + msgid "Size change: {}" +-msgstr "" ++msgstr "大小改变 : {}" + + #: plugins/repograph.py:50 + msgid "Output a full package dependency graph in dot format" +@@ -891,84 +1043,96 @@ msgstr "要保留的最新的 N 个软件包 - 默认值为 1" + msgid "Path to directory" + msgstr "指向目录的路径" + +-#: plugins/reposync.py:54 ++#: plugins/reposync.py:55 + msgid "download all packages from remote repo" + msgstr "下载远程仓库中的全部软件包" + +-#: plugins/reposync.py:63 ++#: plugins/reposync.py:64 + msgid "download only packages for this ARCH" + msgstr "只下载这个 ARCH 的软件包" + +-#: plugins/reposync.py:65 ++#: plugins/reposync.py:66 + msgid "delete local packages no longer present in repository" + msgstr "删除已不在仓库中的本地软件包" + +-#: plugins/reposync.py:67 +-msgid "also download and uncompress comps.xml" +-msgstr "" +- +-#: plugins/reposync.py:69 ++#: plugins/reposync.py:68 + msgid "download all the metadata." +-msgstr "" ++msgstr "下载所有元数据" + +-#: plugins/reposync.py:71 +-msgid "download only newest packages per-repo" +-msgstr "只下载最新的软件包 per-repo" ++#: plugins/reposync.py:70 ++msgid "Remove packages that fail GPG signature checking after downloading" ++msgstr "下载后删除无法进行 GPG 签名检查的软件包" + + #: plugins/reposync.py:73 +-msgid "where to store downloaded repositories" +-msgstr "" ++msgid "also download and uncompress comps.xml" ++msgstr "同时下载并解压 comps.xml" + + #: plugins/reposync.py:75 +-msgid "Don't add the reponame to the download path." +-msgstr "" +- +-#: plugins/reposync.py:77 + msgid "" + "where to store downloaded repository metadata. Defaults to the value of " + "--download-path." +-msgstr "" ++msgstr "存储下载的仓库元数据的位置。默认为 --download-path 的值。" ++ ++#: plugins/reposync.py:78 ++msgid "download only newest packages per-repo" ++msgstr "只下载最新的软件包 per-repo" + + #: plugins/reposync.py:80 +-msgid "operate on source packages" +-msgstr "在源软件包中操作" ++msgid "Don't add the reponame to the download path." ++msgstr "不要在下载路径中添加仓库名(reponame)。" + + #: plugins/reposync.py:82 ++msgid "where to store downloaded repositories" ++msgstr "存储下载的仓库的位置" ++ ++#: plugins/reposync.py:84 + msgid "try to set local timestamps of local files by the one on the server" +-msgstr "" ++msgstr "根据服务器上的文件设置本地文件的本地时间戳" + +-#: plugins/reposync.py:85 ++#: plugins/reposync.py:87 ++msgid "operate on source packages" ++msgstr "在源软件包中操作" ++ ++#: plugins/reposync.py:89 + msgid "Just list urls of what would be downloaded, don't download" +-msgstr "" ++msgstr "只列出要下载内容的 url,不实际下载" + +-#: plugins/reposync.py:109 ++#: plugins/reposync.py:113 + msgid "Can't use --norepopath with multiple repositories" +-msgstr "" ++msgstr "不能使用 --norepopath 与多个仓库一起使用。" + +-#: plugins/reposync.py:127 ++#: plugins/reposync.py:132 + #, python-format + msgid "Failed to get mirror for metadata: %s" +-msgstr "" ++msgstr "获取元数据镜像失败:%s" + +-#: plugins/reposync.py:144 ++#: plugins/reposync.py:149 + msgid "Failed to get mirror for the group file." +-msgstr "" ++msgstr "获取组文件镜像失败" ++ ++#: plugins/reposync.py:168 ++msgid "Removing {}: {}" ++msgstr "正在删除 {}: {}" + + #: plugins/reposync.py:175 ++msgid "GPG signature check failed." ++msgstr "GPG 签名检查失败。" ++ ++#: plugins/reposync.py:196 + msgid "Download target '{}' is outside of download path '{}'." +-msgstr "" ++msgstr "下载的目标 '{}' 在下载路径 '{}' 以外。" + +-#: plugins/reposync.py:190 ++#: plugins/reposync.py:211 + #, python-format + msgid "[DELETED] %s" + msgstr "[DELETED] %s" + +-#: plugins/reposync.py:192 ++#: plugins/reposync.py:213 + #, python-format + msgid "failed to delete file %s" + msgstr "无法删除文件 %s" + +-#: plugins/reposync.py:201 ++#: plugins/reposync.py:222 + #, python-format + msgid "comps.xml for repository %s saved" + msgstr "仓库 %s 的 comps.xml 已保存" +@@ -996,15 +1160,15 @@ msgstr "正在添加排除:" + + #: plugins/versionlock.py:36 + msgid "Package already locked in equivalent form:" +-msgstr "" ++msgstr "软件包已使用等同的格式锁定:" + + #: plugins/versionlock.py:37 + msgid "Package {} is already locked" +-msgstr "" ++msgstr "软件包 {} 已被锁定" + + #: plugins/versionlock.py:38 + msgid "Package {} is already excluded" +-msgstr "" ++msgstr "软件包 {} 已被排除" + + #: plugins/versionlock.py:39 + msgid "Deleting versionlock for:" +@@ -1036,7 +1200,7 @@ msgstr "控制软件包版本锁" + + #: plugins/versionlock.py:136 + msgid "Use package specifications as they are, do not try to parse them" +-msgstr "" ++msgstr "按原样使用程序包规格,请勿尝试解析它们" + + #~ msgid "" + #~ "\n" +-- +2.29.2 + diff --git a/SPECS/dnf-plugins-core.spec b/SPECS/dnf-plugins-core.spec index 09b3283..5fa1aa9 100644 --- a/SPECS/dnf-plugins-core.spec +++ b/SPECS/dnf-plugins-core.spec @@ -32,7 +32,7 @@ Name: dnf-plugins-core Version: 4.0.18 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Core Plugins for DNF License: GPLv2+ URL: https://github.com/rpm-software-management/dnf-plugins-core @@ -40,6 +40,7 @@ Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz Patch1: 0001-groups-manager-Re-introduce-yum-groups-manager-funct.patch Patch2: 0002-needs-restarting-add-s-to-list-services-RhBug-177293.patch Patch3: 0003-reposync-Check-GPG-signatures-of-downloaded-packages-RhBug-1856818.patch +Patch4: 0004-Update-translations.patch BuildArch: noarch BuildRequires: cmake BuildRequires: gettext @@ -761,6 +762,9 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/ %endif %changelog +* Mon Mar 8 2021 Marek Blaha - 4.0.18-4 +- Update translations (RhBug:1899687) + * Fri Jan 15 2021 Nicola Sella - 4.0.18-3 - [reposync] Check GPG signatures of downloaded packages (RhBug:1856818)