From bb211ea00b50255900db3ec0030f7bec06d37ed7 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 10 May 2022 03:16:52 -0400 Subject: [PATCH] import libdnf-0.63.0-8.el8 --- ...documents-RhBug200485320071662007167.patch | 28 + ...repo-with-empty-keyfile-RhBug1994614.patch | 58 + SOURCES/0025-Add-getLatestModules.patch | 90 + ...6-Update-translations-RhBug-2017272.patch} | 1622 ++++++++++++++--- SPECS/libdnf.spec | 26 +- 5 files changed, 1570 insertions(+), 254 deletions(-) create mode 100644 SOURCES/0023-Turn-off-strict-validation-of-modulemd-documents-RhBug200485320071662007167.patch create mode 100644 SOURCES/0024-Add-unittest-for-setting-up-repo-with-empty-keyfile-RhBug1994614.patch create mode 100644 SOURCES/0025-Add-getLatestModules.patch rename SOURCES/{0023-Update-translations.patch => 0026-Update-translations-RhBug-2017272.patch} (77%) diff --git a/SOURCES/0023-Turn-off-strict-validation-of-modulemd-documents-RhBug200485320071662007167.patch b/SOURCES/0023-Turn-off-strict-validation-of-modulemd-documents-RhBug200485320071662007167.patch new file mode 100644 index 0000000..d725378 --- /dev/null +++ b/SOURCES/0023-Turn-off-strict-validation-of-modulemd-documents-RhBug200485320071662007167.patch @@ -0,0 +1,28 @@ +From 6eb68174565ce0402cead9e45053b560e819e982 Mon Sep 17 00:00:00 2001 +From: Aleš Matěj +Date: Tue, 21 Sep 2021 12:10:49 +0200 +Subject: [PATCH] Turn off strict validation of modulemd documents (RhBug:2004853,2007166,2007167) + +https://bugzilla.redhat.com/show_bug.cgi?id=2004853 +https://bugzilla.redhat.com/show_bug.cgi?id=2007166 +https://bugzilla.redhat.com/show_bug.cgi?id=2007167 +--- + libdnf/module/modulemd/ModuleMetadata.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libdnf/module/modulemd/ModuleMetadata.cpp b/libdnf/module/modulemd/ModuleMetadata.cpp +index fbdd8a1..9dcd661 100644 +--- a/libdnf/module/modulemd/ModuleMetadata.cpp ++++ b/libdnf/module/modulemd/ModuleMetadata.cpp +@@ -78,7 +78,7 @@ void ModuleMetadata::addMetadataFromString(const std::string & yaml, int priorit + g_autoptr(GPtrArray) failures = NULL; + + ModulemdModuleIndex * mi = modulemd_module_index_new(); +- gboolean success = modulemd_module_index_update_from_string(mi, yaml.c_str(), TRUE, &failures, &error); ++ gboolean success = modulemd_module_index_update_from_string(mi, yaml.c_str(), FALSE, &failures, &error); + if(!success){ + ModuleMetadata::reportFailures(failures); + } +-- +libgit2 1.0.1 + diff --git a/SOURCES/0024-Add-unittest-for-setting-up-repo-with-empty-keyfile-RhBug1994614.patch b/SOURCES/0024-Add-unittest-for-setting-up-repo-with-empty-keyfile-RhBug1994614.patch new file mode 100644 index 0000000..38ed66b --- /dev/null +++ b/SOURCES/0024-Add-unittest-for-setting-up-repo-with-empty-keyfile-RhBug1994614.patch @@ -0,0 +1,58 @@ +From 551a83052ff92fa975f1015e2fc25b174f85b0e6 Mon Sep 17 00:00:00 2001 +From: Aleš Matěj +Date: Tue, 26 Oct 2021 09:33:51 +0200 +Subject: [PATCH] Add unittest for setting up repo with empty keyfile (RhBug:1994614) + +The test ensures we don't crash when the keyfile is empty/not loaded. +Test for: https://github.com/rpm-software-management/libdnf/commit/be66d0908d939ddaf3022c5489012bd1dbdb0075 + +RHEL bug: +https://bugzilla.redhat.com/show_bug.cgi?id=1994614 +Fedora bug: +https://bugzilla.redhat.com/show_bug.cgi?id=1946024 +--- + tests/libdnf/dnf-self-test.c | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/tests/libdnf/dnf-self-test.c b/tests/libdnf/dnf-self-test.c +index 32a21e6..5295837 100644 +--- a/tests/libdnf/dnf-self-test.c ++++ b/tests/libdnf/dnf-self-test.c +@@ -199,6 +199,26 @@ ch_test_repo_func(void) + g_object_unref(context); + } + ++static void ++dnf_repo_setup_with_empty_keyfile(void) ++{ ++ DnfContext *context = dnf_context_new(); ++ dnf_context_set_release_ver(context, "33"); ++ DnfRepo *repo = dnf_repo_new(context); ++ GKeyFile *empty_key_file = g_key_file_new(); ++ ++ dnf_repo_set_keyfile(repo, empty_key_file); ++ ++ GError *error = NULL; ++ // Empty key file is not an errror, there is just no configuration to be loaded. ++ g_assert(dnf_repo_setup(repo, &error)); ++ g_assert_no_error(error); ++ ++ g_object_unref(repo); ++ g_object_unref(context); ++ g_key_file_free(empty_key_file); ++} ++ + static guint _allow_cancel_updates = 0; + static guint _action_updates = 0; + static guint _package_progress_updates = 0; +@@ -1217,6 +1237,7 @@ main(int argc, char **argv) + g_test_add_func("/libdnf/lock", dnf_lock_func); + g_test_add_func("/libdnf/lock[threads]", dnf_lock_threads_func); + g_test_add_func("/libdnf/repo", ch_test_repo_func); ++ g_test_add_func("/libdnf/repo_empty_keyfile", dnf_repo_setup_with_empty_keyfile); + g_test_add_func("/libdnf/state", dnf_state_func); + g_test_add_func("/libdnf/state[child]", dnf_state_child_func); + g_test_add_func("/libdnf/state[parent-1-step]", dnf_state_parent_one_step_proxy_func); +-- +libgit2 1.1.0 + diff --git a/SOURCES/0025-Add-getLatestModules.patch b/SOURCES/0025-Add-getLatestModules.patch new file mode 100644 index 0000000..b008d6a --- /dev/null +++ b/SOURCES/0025-Add-getLatestModules.patch @@ -0,0 +1,90 @@ +From e83ff88f8e4604024e4d5f4fd9f2fa4e5d4f03f9 Mon Sep 17 00:00:00 2001 +From: Jaroslav Mracek +Date: Tue, 23 Nov 2021 14:14:23 +0100 +Subject: [PATCH] Add getLatestModules() + +It returns latest module packages for each module name, stream, and +architecture. + +It is an alternative implementation to code base with +the old modular solver. + +Alternative to 73868368120ceea97ada628a1aa42236fb42b89d +--- + libdnf/module/ModulePackageContainer.cpp | 39 +++++++++++++++++++++++++++++++++++++++ + libdnf/module/ModulePackageContainer.hpp | 9 +++++++++ + 2 files changed, 48 insertions(+) + +diff --git a/libdnf/module/ModulePackageContainer.cpp b/libdnf/module/ModulePackageContainer.cpp +index efab497..f9f861c 100644 +--- a/libdnf/module/ModulePackageContainer.cpp ++++ b/libdnf/module/ModulePackageContainer.cpp +@@ -1037,6 +1037,45 @@ ModulePackageContainer::getLatestModulesPerRepo(ModuleState moduleFilter, + return output; + } + ++std::vector ++ModulePackageContainer::getLatestModules(const std::vector modulePackages, bool activeOnly) ++{ ++ std::vector latestModules; ++ if (activeOnly) { ++ // When no active module return ++ if (!pImpl->activatedModules) { ++ return latestModules; ++ } ++ } ++ std::map> latest; ++ ++ for (auto modulePackage : modulePackages) { ++ if (activeOnly && !isModuleActive(modulePackage)) { ++ continue; ++ } ++ auto nameStreamArch = modulePackage->getNameStream(); ++ nameStreamArch.append(":"); ++ nameStreamArch.append(modulePackage->getArchCStr()); ++ auto & entries = latest[nameStreamArch]; ++ if (entries.empty()) { ++ entries.push_back(modulePackage); ++ } else { ++ auto version = (*entries.begin())->getVersionNum(); ++ if (version < modulePackage->getVersionNum()) { ++ entries.clear(); ++ entries.push_back(modulePackage); ++ } else if (version == modulePackage->getVersionNum()) { ++ entries.push_back(modulePackage); ++ } ++ } ++ } ++ for (auto & entries : latest) { ++ for (auto modulePackage : entries.second) { ++ latestModules.push_back(modulePackage); ++ } ++ } ++ return latestModules; ++} + + std::pair>, ModulePackageContainer::ModuleErrorType> + ModulePackageContainer::resolveActiveModulePackages(bool debugSolver) +diff --git a/libdnf/module/ModulePackageContainer.hpp b/libdnf/module/ModulePackageContainer.hpp +index 7e5071b..42d5a9e 100644 +--- a/libdnf/module/ModulePackageContainer.hpp ++++ b/libdnf/module/ModulePackageContainer.hpp +@@ -132,6 +132,15 @@ public: + std::vector>> getLatestModulesPerRepo( + ModuleState moduleFilter, std::vector modulePackages); + ++ /** ++ * @brief Return all latest ModulePackages for each module Name, stream and architecture. In case of ++ * multiple latest packages, all will be returned. When activeOnly is true, it returns only the latest active ++ * packages. ++ * ++ * @return std::vector ++ */ ++ std::vector getLatestModules(const std::vector modulePackages, bool activeOnly); ++ + std::vector requiresModuleEnablement(const libdnf::PackageSet & packages); + + /** +-- +libgit2 1.1.0 + diff --git a/SOURCES/0023-Update-translations.patch b/SOURCES/0026-Update-translations-RhBug-2017272.patch similarity index 77% rename from SOURCES/0023-Update-translations.patch rename to SOURCES/0026-Update-translations-RhBug-2017272.patch index a58b2a1..a79437f 100644 --- a/SOURCES/0023-Update-translations.patch +++ b/SOURCES/0026-Update-translations-RhBug-2017272.patch @@ -1,24 +1,30 @@ -From 1975f89251625ed4d17d95285b22cd8e729f1dc5 Mon Sep 17 00:00:00 2001 -From: Marek Blaha -Date: Fri, 10 Sep 2021 14:28:06 +0200 -Subject: [PATCH] Update translations +From dbfe35f3601262c739966ed5a790d5bb3db9ae9a Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Fri, 18 Mar 2022 15:05:55 +0100 +Subject: [PATCH] Update translations (RhBug:2017272) --- - po/fr.po | 478 ++++++++++++++++++++++++----------- - po/ja.po | 478 ++++++++++++++++++++++++----------- - po/ko.po | 716 ++++++++++++++++++++++++++++++++-------------------- - po/zh_CN.po | 631 ++++++++++++++++++++++++++++----------------- - 4 files changed, 1498 insertions(+), 805 deletions(-) + po/fr.po | 500 ++++++++++++++++++++++----------- + po/ja.po | 550 +++++++++++++++++++++++++------------ + po/ko.po | 748 +++++++++++++++++++++++++++++++------------------- + po/libdnf.pot | 444 ++++++++++++++++++++---------- + po/zh_CN.po | 644 +++++++++++++++++++++++++++---------------- + 5 files changed, 1906 insertions(+), 980 deletions(-) diff --git a/po/fr.po b/po/fr.po -index 055cdaff..c0b930d2 100644 +index 055cdaf..4e7dd87 100644 --- a/po/fr.po +++ b/po/fr.po -@@ -5,20 +5,21 @@ - # Ludek Janda , 2018. #zanata +@@ -2,23 +2,26 @@ + # José Fournier , 2016. #zanata + # José Fournier , 2017. #zanata + # Jérôme Fenal , 2017. #zanata +-# Ludek Janda , 2018. #zanata ++# Ludek Janda , 2018. #zanata, 2021. # Jean-Baptiste Holcroft , 2019. #zanata # Julien Humbert , 2020. +# Sundeep Anand , 2021. ++# Titouan Bénard , 2021. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" @@ -27,10 +33,11 @@ index 055cdaff..c0b930d2 100644 -"PO-Revision-Date: 2020-06-29 02:40+0000\n" -"Last-Translator: Julien Humbert \n" -"Language-Team: French \n" -+"POT-Creation-Date: 2021-08-11 14:28+0200\n" -+"PO-Revision-Date: 2021-09-06 17:27+0000\n" -+"Last-Translator: Sundeep Anand \n" -+"Language-Team: French \n" ++"POT-Creation-Date: 2022-02-28 11:03+0100\n" ++"PO-Revision-Date: 2021-10-10 00:45+0000\n" ++"Last-Translator: Titouan Bénard \n" ++"Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -41,7 +48,7 @@ index 055cdaff..c0b930d2 100644 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40 msgid "no value specified" -@@ -39,17 +40,30 @@ msgstr "n’a pu convertir « %s » en octets" +@@ -39,17 +42,30 @@ msgstr "n’a pu convertir « %s » en octets" msgid "unknown unit '%s'" msgstr "unité « %s » inconnue" @@ -75,7 +82,7 @@ index 055cdaff..c0b930d2 100644 #, c-format msgid "Configuration: OptionBinding with id \"%s\" already exists" msgstr "Configuration : OptionBinding ayant pour « %s » n’existe pas" -@@ -60,15 +74,11 @@ msgid "invalid boolean value '%s'" +@@ -60,15 +76,11 @@ msgid "invalid boolean value '%s'" msgstr "valeur booléenne invalide : « %s »" #: libdnf/conf/OptionEnum.cpp:72 libdnf/conf/OptionEnum.cpp:158 @@ -92,7 +99,7 @@ index 055cdaff..c0b930d2 100644 #: libdnf/conf/OptionNumber.cpp:73 #, c-format msgid "given value [%d] should be less than allowed value [%d]." -@@ -94,27 +104,140 @@ msgstr "le chemin fourni « %s » n’existe pas." +@@ -94,27 +106,141 @@ msgstr "le chemin fourni « %s » n’existe pas." msgid "could not convert '%s' to seconds" msgstr "n’a pu convertir « %s » en secondes" @@ -112,8 +119,8 @@ index 055cdaff..c0b930d2 100644 +msgid "" +"Cannot enable module '%1$s' stream '%2$s': State of module already modified" +msgstr "" -+"Impossible d'activer le flux de module '%1$s' stream '%2$s' : état du module" -+" déjà modifié" ++"Impossible d'activer le flux de module '%1$s' stream '%2$s' : état du module " ++"déjà modifié" + +#: libdnf/dnf-context.cpp:3253 +#, c-format @@ -136,8 +143,7 @@ index 055cdaff..c0b930d2 100644 +#: libdnf/dnf-context.cpp:3297 +#, c-format +msgid "" -+"Only module name is required. Ignoring unneeded information in argument: " -+"'%s'" ++"Only module name is required. Ignoring unneeded information in argument: '%s'" +msgstr "" +"Seul le nom du module est nécessaire. Les paramètres inutiles ont été " +"ignorés : ’%s’" @@ -198,19 +204,21 @@ index 055cdaff..c0b930d2 100644 +#: libdnf/dnf-context.cpp:3627 +#, c-format +msgid "" -+"The operation would result in switching of module '%s' stream '%s' to stream" -+" '%s'" ++"The operation would result in switching of module '%s' stream '%s' to stream " ++"'%s'" +msgstr "" -+"Le résultat de l’opération sera le basculement du flux « %s » du module « %s" -+" » vers le flux « %s »" ++"Le résultat de l’opération sera le basculement du flux « %s » du module « %s " ++"» vers le flux « %s »" + +#: libdnf/dnf-context.cpp:3631 +msgid "" +"It is not possible to switch enabled streams of a module.\n" -+"It is recommended to remove all installed content from the module, and reset the module using 'microdnf module reset ' command. After you reset the module, you can install the other stream." ++"It is recommended to remove all installed content from the module, and reset " ++"the module using 'microdnf module reset ' command. After you " ++"reset the module, you can install the other stream." +msgstr "" -+"Il n’est pas possible de basculer les flux actifs d’un module. Il est " -+"recommandé de retirer tout contenu installé par le module, et de " ++"Il n’est pas possible de basculer les flux actifs d’un module. \n" ++"Il est recommandé de retirer tout contenu installé par le module, et de " +"réinitialiser le mode en utilisant la commande 'microdnf module reset " +"’. Après la réinitialisation du module, vous pouvez installer " +"les autres flux." @@ -238,7 +246,7 @@ index 055cdaff..c0b930d2 100644 #, c-format msgid " Problem: %s\n" msgstr " Problème : %s\n" -@@ -181,84 +304,84 @@ msgstr "n’a pas pu trouver le package %s" +@@ -181,84 +307,84 @@ msgstr "n’a pas pu trouver le package %s" msgid "could not add erase element %1$s(%2$i)" msgstr "n’a pas pu ajouter d’élément pour effacer %1$s(%2$i)" @@ -300,7 +308,8 @@ index 055cdaff..c0b930d2 100644 -#: libdnf/dnf-sack.cpp:678 +#: libdnf/dnf-sack.cpp:680 msgid "null repo md file" - msgstr "null repo md file" +-msgstr "null repo md file" ++msgstr "fichier md de dépôt nul" -#: libdnf/dnf-sack.cpp:687 +#: libdnf/dnf-sack.cpp:689 @@ -344,9 +353,13 @@ index 055cdaff..c0b930d2 100644 #, c-format msgid "No module defaults found: %s" msgstr "Aucun module par défaut n’a été trouvé : %s" -@@ -334,28 +457,28 @@ msgstr "" - "Pas suffisamment d’espace libre dans %1$s : a besoin de %2$s, disponible " - "%3$s" +@@ -331,31 +457,30 @@ msgstr "N’a pas pu obtenir la taille libre du système de fichiers pour %s" + #, c-format + msgid "Not enough free space in %1$s: needed %2$s, available %3$s" + msgstr "" +-"Pas suffisamment d’espace libre dans %1$s : a besoin de %2$s, disponible " +-"%3$s" ++"Pas suffisamment d’espace libre dans %1$s : a besoin de %2$s, disponible %3$s" -#: libdnf/dnf-transaction.cpp:1196 +#: libdnf/dnf-transaction.cpp:1195 @@ -378,7 +391,7 @@ index 055cdaff..c0b930d2 100644 #, c-format msgid "cannot open directory %1$s: %2$s" msgstr "impossible d’ouvrir le dossier %1$s : %2$s" -@@ -365,283 +488,292 @@ msgstr "impossible d’ouvrir le dossier %1$s : %2$s" +@@ -365,283 +490,291 @@ msgstr "impossible d’ouvrir le dossier %1$s : %2$s" msgid "failed to remove %s" msgstr "n’a pas pu supprimer %s" @@ -393,8 +406,9 @@ index 055cdaff..c0b930d2 100644 +#: libdnf/goal/Goal.cpp:75 msgid "Ill-formed Selector used for the operation, incorrect comparison type" msgstr "" - "Sélecteur Ill-formed utilisé pour l’opération, type de comparaison " - "incorrecte" +-"Sélecteur Ill-formed utilisé pour l’opération, type de comparaison " +-"incorrecte" ++"Sélecteur Ill-formed utilisé pour l’opération, type de comparaison incorrecte" -#: libdnf/goal/Goal.cpp:67 libdnf/goal/Goal.cpp:94 +#: libdnf/goal/Goal.cpp:86 libdnf/goal/Goal.cpp:113 @@ -729,7 +743,7 @@ index 055cdaff..c0b930d2 100644 msgid "No valid Platform ID detected" msgstr "Aucun identifiant de plateforme n'a été détecté" -@@ -650,42 +782,75 @@ msgstr "Aucun identifiant de plateforme n'a été détecté" +@@ -650,41 +783,73 @@ msgstr "Aucun identifiant de plateforme n'a été détecté" msgid "Cannot enable multiple streams for module '%s'" msgstr "Impossible d’activer les flux pour le module « %s »" @@ -764,13 +778,13 @@ index 055cdaff..c0b930d2 100644 +msgid "Resetting modules:\n" +msgstr "Réinitialisation des modules :\n" + -+#: libdnf/module/ModulePackageContainer.cpp:1599 ++#: libdnf/module/ModulePackageContainer.cpp:1638 #, c-format msgid "Unable to load modular Fail-Safe data at '%s'" msgstr "Impossible de charger les données de sécurité à « %s »" -#: libdnf/module/ModulePackageContainer.cpp:1575 -+#: libdnf/module/ModulePackageContainer.cpp:1605 ++#: libdnf/module/ModulePackageContainer.cpp:1644 #, c-format msgid "Unable to load modular Fail-Safe data for module '%s:%s'" msgstr "" @@ -778,7 +792,7 @@ index 055cdaff..c0b930d2 100644 "« %s : %s »" -#: libdnf/module/ModulePackageContainer.cpp:1639 -+#: libdnf/module/ModulePackageContainer.cpp:1663 ++#: libdnf/module/ModulePackageContainer.cpp:1702 #, c-format msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s" msgstr "" @@ -786,31 +800,30 @@ index 055cdaff..c0b930d2 100644 "modulaires : %s" -#: libdnf/module/ModulePackageContainer.cpp:1661 -+#: libdnf/module/ModulePackageContainer.cpp:1679 ++#: libdnf/module/ModulePackageContainer.cpp:1718 #, c-format msgid "Unable to save a modular Fail Safe data to '%s'" msgstr "" "Impossible d’enregistrer les données de sécurité modulaires vers « %s »" -#: libdnf/module/ModulePackageContainer.cpp:1686 -+#: libdnf/module/ModulePackageContainer.cpp:1702 ++#: libdnf/module/ModulePackageContainer.cpp:1741 #, c-format msgid "Unable to remove a modular Fail Safe data in '%s'" - msgstr "" - "Impossible de supprimer les données de sécurité modulaires dans « %s »" - -+#: libdnf/module/ModulePackageContainer.cpp:1734 ++msgstr "Impossible de supprimer les données de sécurité modulaires dans « %s »" ++ ++#: libdnf/module/ModulePackageContainer.cpp:1773 +#, c-format +msgid "" +"Unable to apply modular obsoletes to '%s:%s' because target module '%s' is " +"disabled" -+msgstr "" + msgstr "" +-"Impossible de supprimer les données de sécurité modulaires dans « %s »" +"Impossible d'appliquer les obsolètes modulaires à '%s:%s' car le module " +"cible '%s' est désactivé" -+ + #: libdnf/module/modulemd/ModuleMetadata.cpp:86 #, c-format - msgid "Failed to update from string: %s" @@ -712,6 +877,13 @@ msgstr "Échec de la mise à jour des paramètres par défaut : %s" msgid "Failed to upgrade streams: %s" msgstr "Échec de la mise à jour des flux : %s" @@ -820,12 +833,23 @@ index 055cdaff..c0b930d2 100644 +msgid "Cannot retrieve module obsoletes because no stream matching %s: %s" +msgstr "" +"Impossible de récupérer les modules obsolètes car aucune correspondance de " -+"flux %s: %s" ++"flux %s : %s" + #: libdnf/plugin/plugin.cpp:46 #, c-format msgid "Can't load shared library \"%s\": %s" -@@ -769,12 +941,13 @@ msgid "Repository '%s' has unsupported type: 'type=%s', skipping." +@@ -755,8 +927,8 @@ msgid "" + "operator instead." + msgstr "" + "L’utilisation de l’opérateur « == » dans reldeps peut entraîner un " +-"comportement indéfini. Il est déprécié et le support sera abandonné dans les" +-" prochaines versions. Utilisez plutôt l’opérateur « = »." ++"comportement indéfini. Il est déprécié et le support sera abandonné dans les " ++"prochaines versions. Utilisez plutôt l’opérateur « = »." + + #: libdnf/repo/Repo.cpp:321 + #, c-format +@@ -769,152 +941,169 @@ msgid "Repository '%s' has unsupported type: 'type=%s', skipping." msgstr "" "Le dépôt « %s » n’a pas de type pris en charge : « type=%s », passer outre." @@ -841,9 +865,11 @@ index 055cdaff..c0b930d2 100644 -#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 +#: libdnf/repo/Repo.cpp:512 msgid "" - "Maximum download speed is lower than minimum. Please change configuration of" - " minrate or throttle" -@@ -782,139 +955,155 @@ msgstr "" +-"Maximum download speed is lower than minimum. Please change configuration of" +-" minrate or throttle" ++"Maximum download speed is lower than minimum. Please change configuration of " ++"minrate or throttle" + msgstr "" "La vitesse de téléchargement maximale est plus basse que le minimum. " "Veuillez modifier les paramètres minrate ou throttle" @@ -851,7 +877,7 @@ index 055cdaff..c0b930d2 100644 +#: libdnf/repo/Repo.cpp:546 +#, c-format +msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'" -+msgstr "repo '%s' : 'proxy_username' est défini mais pas 'proxy_password'." ++msgstr "repo '%s' : 'proxy_username' est défini mais pas 'proxy_password'" + +#: libdnf/repo/Repo.cpp:548 +msgid "'proxy_username' is set but not 'proxy_password'" @@ -1052,10 +1078,10 @@ index 055cdaff..c0b930d2 100644 -#~ msgid "failed calculating RPMDB checksum" -#~ msgstr "n’a pu calculer la somme de contrôle RPMDB" diff --git a/po/ja.po b/po/ja.po -index b9064ee6..1f09f2c6 100644 +index b9064ee..94454a2 100644 --- a/po/ja.po +++ b/po/ja.po -@@ -1,20 +1,21 @@ +@@ -1,20 +1,22 @@ # Casey Jones , 2018. #zanata -# Ludek Janda , 2018. #zanata +# Ludek Janda , 2018. #zanata, 2021. @@ -1069,10 +1095,11 @@ index b9064ee6..1f09f2c6 100644 -"PO-Revision-Date: 2020-05-05 09:40+0000\n" -"Last-Translator: Casey Jones \n" -"Language-Team: Japanese \n" -+"POT-Creation-Date: 2021-08-11 14:28+0200\n" ++"POT-Creation-Date: 2022-02-28 11:03+0100\n" +"PO-Revision-Date: 2021-09-06 17:27+0000\n" +"Last-Translator: Ludek Janda \n" -+"Language-Team: Japanese \n" ++"Language-Team: Japanese \n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -1083,7 +1110,7 @@ index b9064ee6..1f09f2c6 100644 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40 msgid "no value specified" -@@ -35,17 +36,30 @@ msgstr "'%s' を バイトへ変換できませんでした" +@@ -35,17 +37,30 @@ msgstr "'%s' を バイトへ変換できませんでした" msgid "unknown unit '%s'" msgstr "不明な単位 '%s'" @@ -1117,7 +1144,7 @@ index b9064ee6..1f09f2c6 100644 #, c-format msgid "Configuration: OptionBinding with id \"%s\" already exists" msgstr "設定: id \"%s\" を伴う OptionBinding はすでに存在します" -@@ -56,24 +70,20 @@ msgid "invalid boolean value '%s'" +@@ -56,24 +71,20 @@ msgid "invalid boolean value '%s'" msgstr "無効な boolean 値 '%s'" #: libdnf/conf/OptionEnum.cpp:72 libdnf/conf/OptionEnum.cpp:158 @@ -1145,7 +1172,7 @@ index b9064ee6..1f09f2c6 100644 #: libdnf/conf/OptionPath.cpp:78 #, c-format -@@ -90,26 +100,126 @@ msgstr "指定されたパス '%s' が存在しません。" +@@ -90,26 +101,137 @@ msgstr "指定されたパス '%s' が存在しません。" msgid "could not convert '%s' to seconds" msgstr "'%s' を 秒に変換できません" @@ -1164,7 +1191,9 @@ index b9064ee6..1f09f2c6 100644 +#, c-format +msgid "" +"Cannot enable module '%1$s' stream '%2$s': State of module already modified" -+msgstr "モジュール '%1$s' ストリーム '%2$s' を有効にできません。モジュールの状態はすでに変更されています" ++msgstr "" ++"モジュール '%1$s' ストリーム '%2$s' を有効にできません。モジュールの状態はす" ++"でに変更されています" + +#: libdnf/dnf-context.cpp:3253 +#, c-format @@ -1187,19 +1216,21 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/dnf-context.cpp:3297 +#, c-format +msgid "" -+"Only module name is required. Ignoring unneeded information in argument: " -+"'%s'" ++"Only module name is required. Ignoring unneeded information in argument: '%s'" +msgstr "モジュール名のみが必要です。引数の不必要な情報は無視します: '%s'" + +#: libdnf/dnf-context.cpp:3311 +#, c-format +msgid "Cannot reset module '%s': State of module already modified" -+msgstr "モジュール '%s' をリセットできません。モジュールの状態はすでに変更されています" ++msgstr "" ++"モジュール '%s' をリセットできません。モジュールの状態はすでに変更されていま" ++"す" + +#: libdnf/dnf-context.cpp:3322 +#, c-format +msgid "Cannot disable module '%s': State of module already modified" -+msgstr "モジュール '%s' を無効にできません。モジュールの状態はすでに変更されています" ++msgstr "" ++"モジュール '%s' を無効にできません。モジュールの状態はすでに変更されています" + +#: libdnf/dnf-context.cpp:3353 libdnf/dnf-context.cpp:3445 +#: libdnf/dnf-context.cpp:3558 @@ -1216,7 +1247,8 @@ index b9064ee6..1f09f2c6 100644 +msgid "" +"Problem during enablement of dependency tree for module '%1$s' stream " +"'%2$s': %3$s" -+msgstr "モジュール '%1$s' ストリーム '%2$s' の依存関係ツリーの有効化中に問題: %3$s" ++msgstr "" ++"モジュール '%1$s' ストリーム '%2$s' の依存関係ツリーの有効化中に問題: %3$s" + +#: libdnf/dnf-context.cpp:3420 +msgid "Problems appeared for module enable request" @@ -1243,17 +1275,23 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/dnf-context.cpp:3627 +#, c-format +msgid "" -+"The operation would result in switching of module '%s' stream '%s' to stream" -+" '%s'" -+msgstr "オペレーションは、モジュール '%s' ストリーム '%s' を ストリーム '%s' へと切り替える結果となります" ++"The operation would result in switching of module '%s' stream '%s' to stream " ++"'%s'" ++msgstr "" ++"オペレーションは、モジュール '%s' ストリーム '%s' を ストリーム '%s' へと切り" ++"替える結果となります" + +#: libdnf/dnf-context.cpp:3631 +msgid "" +"It is not possible to switch enabled streams of a module.\n" -+"It is recommended to remove all installed content from the module, and reset the module using 'microdnf module reset ' command. After you reset the module, you can install the other stream." ++"It is recommended to remove all installed content from the module, and reset " ++"the module using 'microdnf module reset ' command. After you " ++"reset the module, you can install the other stream." +msgstr "" +"有効化されたモジュールのストリームの切り替えはできません。\n" -+"モジュールからすべてのインストールされたコンテンツを削除し、'microdnf module reset ' コマンドを使用してモジュールをリセットすることを推奨します。モジュールのリセット後に、別のストリームをインストールできます。" ++"モジュールからすべてのインストールされたコンテンツを削除し、'microdnf module " ++"reset ' コマンドを使用してモジュールをリセットすることを推奨しま" ++"す。モジュールのリセット後に、別のストリームをインストールできます。" + +#: libdnf/dnf-goal.cpp:85 msgid "Could not depsolve transaction; " @@ -1277,7 +1315,28 @@ index b9064ee6..1f09f2c6 100644 #, c-format msgid " Problem: %s\n" msgstr " 問題: %s\n" -@@ -174,87 +284,87 @@ msgstr "パッケージ %s を見つけることができませんでした" +@@ -119,7 +241,9 @@ msgstr " 問題: %s\n" + msgid "" + "No available modular metadata for modular package '%s'; cannot be installed " + "on the system" +-msgstr "モジュラーパッケージ '%s' のモジュラーメタデータは利用不可です; システムにインストールはできません" ++msgstr "" ++"モジュラーパッケージ '%s' のモジュラーメタデータは利用不可です; システムにイ" ++"ンストールはできません" + + #: libdnf/dnf-rpmts.cpp:121 libdnf/dnf-rpmts.cpp:166 + #, c-format +@@ -158,7 +282,8 @@ msgstr "トランザクションの実行中にエラーが発生しました: % + + #: libdnf/dnf-rpmts.cpp:283 + msgid "Error running transaction and no problems were reported!" +-msgstr "トランザクションの実行中にエラーが発生しましたが、問題は報告されませんでした!" ++msgstr "" ++"トランザクションの実行中にエラーが発生しましたが、問題は報告されませんでした!" + + #: libdnf/dnf-rpmts.cpp:346 + msgid "Fatal error, run database recovery" +@@ -174,87 +299,87 @@ msgstr "パッケージ %s を見つけることができませんでした" msgid "could not add erase element %1$s(%2$i)" msgstr "erase 要素 %1$s(%2$i) を追加することができません" @@ -1387,9 +1446,34 @@ index b9064ee6..1f09f2c6 100644 #: libdnf/dnf-state.cpp:1184 #, c-format -@@ -323,26 +433,26 @@ msgstr "%s に filesystem をフリーサイズで取得することに失敗し +@@ -288,7 +413,9 @@ msgstr "パッケージ %s を確実にしようとする場合、ソースは + #: libdnf/dnf-transaction.cpp:326 + #, c-format + msgid "Failed to ensure %1$s as repo %2$s not found(%3$i repos loaded)" +-msgstr "repo %2$s が見つからないため、%1$s を確実にすることに失敗しました (%3$i repo はロード済み)" ++msgstr "" ++"repo %2$s が見つからないため、%1$s を確実にすることに失敗しました (%3$i repo " ++"はロード済み)" + + #: libdnf/dnf-transaction.cpp:367 + msgid "Failed to check untrusted: " +@@ -302,7 +429,8 @@ msgstr "%s にダウンロードしたファイルが見つかりませんでし + #: libdnf/dnf-transaction.cpp:397 + #, c-format + msgid "package %1$s cannot be verified and repo %2$s is GPG enabled: %3$s" +-msgstr "パッケージ %1$s は確認できず、repo %2$s は GPG が有効になっています: %3$s" ++msgstr "" ++"パッケージ %1$s は確認できず、repo %2$s は GPG が有効になっています: %3$s" + + #: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903 + msgid "Failed to get value for CacheDir" +@@ -321,28 +449,31 @@ msgstr "%s に filesystem をフリーサイズで取得することに失敗し + #: libdnf/dnf-transaction.cpp:935 + #, c-format msgid "Not enough free space in %1$s: needed %2$s, available %3$s" - msgstr "%1$s に十分なスペースがありません: %2$s 必要で、利用可能なのは %3$s です" +-msgstr "%1$s に十分なスペースがありません: %2$s 必要で、利用可能なのは %3$s です" ++msgstr "" ++"%1$s に十分なスペースがありません: %2$s 必要で、利用可能なのは %3$s です" -#: libdnf/dnf-transaction.cpp:1196 +#: libdnf/dnf-transaction.cpp:1195 @@ -1412,14 +1496,17 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/dnf-transaction.cpp:1472 #, c-format msgid "Transaction did not go to writing phase, but returned no error(%i)" - msgstr "トランザクションは書き込みフェーズまで行きませんでしたが、エラー(%i) は返しませんでした" +-msgstr "トランザクションは書き込みフェーズまで行きませんでしたが、エラー(%i) は返しませんでした" ++msgstr "" ++"トランザクションは書き込みフェーズまで行きませんでしたが、エラー(%i) は返しま" ++"せんでした" -#: libdnf/dnf-utils.cpp:111 libdnf/hy-iutil.cpp:399 +#: libdnf/dnf-utils.cpp:111 libdnf/hy-iutil.cpp:403 #, c-format msgid "cannot open directory %1$s: %2$s" msgstr "ディレクトリー %1$s を開くことができません: %2$s" -@@ -352,272 +462,281 @@ msgstr "ディレクトリー %1$s を開くことができません: %2$s" +@@ -352,272 +483,289 @@ msgstr "ディレクトリー %1$s を開くことができません: %2$s" msgid "failed to remove %s" msgstr "%s の削除に失敗しました" @@ -1541,7 +1628,10 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/goal/Goal.cpp:105 #, c-format msgid "installed package %s obsoletes %s provided by %s" - msgstr "インストール済パッケージ %s は %s を廃止しました。これは %s により提供されます" +-msgstr "インストール済パッケージ %s は %s を廃止しました。これは %s により提供されます" ++msgstr "" ++"インストール済パッケージ %s は %s を廃止しました。これは %s により提供されま" ++"す" -#: libdnf/goal/Goal.cpp:87 +#: libdnf/goal/Goal.cpp:106 @@ -1553,7 +1643,10 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/goal/Goal.cpp:107 #, c-format msgid "package %s requires %s, but none of the providers can be installed" - msgstr "パッケージ %s には %s が必要ですが、どのプロバイダーからもインストールできません" +-msgstr "パッケージ %s には %s が必要ですが、どのプロバイダーからもインストールできません" ++msgstr "" ++"パッケージ %s には %s が必要ですが、どのプロバイダーからもインストールできま" ++"せん" -#: libdnf/goal/Goal.cpp:89 +#: libdnf/goal/Goal.cpp:108 @@ -1629,7 +1722,10 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/goal/Goal.cpp:132 #, c-format msgid "installed module %s obsoletes %s provided by %s" - msgstr "インストール済モジュール %s は %s を廃止しました。これは %s により提供されます" +-msgstr "インストール済モジュール %s は %s を廃止しました。これは %s により提供されます" ++msgstr "" ++"インストール済モジュール %s は %s を廃止しました。これは %s により提供されま" ++"す" -#: libdnf/goal/Goal.cpp:114 +#: libdnf/goal/Goal.cpp:133 @@ -1641,7 +1737,10 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/goal/Goal.cpp:134 #, c-format msgid "module %s requires %s, but none of the providers can be installed" - msgstr "モジュール %s には %s が必要ですが、どのプロバイダーからもインストールできません" +-msgstr "モジュール %s には %s が必要ですが、どのプロバイダーからもインストールできません" ++msgstr "" ++"モジュール %s には %s が必要ですが、どのプロバイダーからもインストールできま" ++"せん" -#: libdnf/goal/Goal.cpp:116 +#: libdnf/goal/Goal.cpp:135 @@ -1759,7 +1858,7 @@ index b9064ee6..1f09f2c6 100644 msgid "No valid Platform ID detected" msgstr "有効な Platform ID が検出されませんでした" -@@ -626,36 +745,67 @@ msgstr "有効な Platform ID が検出されませんでした" +@@ -626,36 +774,71 @@ msgstr "有効な Platform ID が検出されませんでした" msgid "Cannot enable multiple streams for module '%s'" msgstr "モジュール '%s' の複数ストリームを有効化できません" @@ -1794,46 +1893,51 @@ index b9064ee6..1f09f2c6 100644 +msgid "Resetting modules:\n" +msgstr "モジュールの再設定中:\n" + -+#: libdnf/module/ModulePackageContainer.cpp:1599 ++#: libdnf/module/ModulePackageContainer.cpp:1638 #, c-format msgid "Unable to load modular Fail-Safe data at '%s'" msgstr "'%s' のモジュラーフェイルセーフデータをロードできません" -#: libdnf/module/ModulePackageContainer.cpp:1575 -+#: libdnf/module/ModulePackageContainer.cpp:1605 ++#: libdnf/module/ModulePackageContainer.cpp:1644 #, c-format msgid "Unable to load modular Fail-Safe data for module '%s:%s'" msgstr "モジュール '%s:%s' のモジュラーフェイルセーフデータをロードできません" -#: libdnf/module/ModulePackageContainer.cpp:1639 -+#: libdnf/module/ModulePackageContainer.cpp:1663 ++#: libdnf/module/ModulePackageContainer.cpp:1702 #, c-format msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s" - msgstr "ディレクトリー \"%s\" を作成できません。対象モジュラーフェイルセーフデータ: %s" +-msgstr "ディレクトリー \"%s\" を作成できません。対象モジュラーフェイルセーフデータ: %s" ++msgstr "" ++"ディレクトリー \"%s\" を作成できません。対象モジュラーフェイルセーフデータ: " ++"%s" -#: libdnf/module/ModulePackageContainer.cpp:1661 -+#: libdnf/module/ModulePackageContainer.cpp:1679 ++#: libdnf/module/ModulePackageContainer.cpp:1718 #, c-format msgid "Unable to save a modular Fail Safe data to '%s'" msgstr "'%s' のモジュラーフェイルセーフデータを保存できません" -#: libdnf/module/ModulePackageContainer.cpp:1686 -+#: libdnf/module/ModulePackageContainer.cpp:1702 ++#: libdnf/module/ModulePackageContainer.cpp:1741 #, c-format msgid "Unable to remove a modular Fail Safe data in '%s'" msgstr "'%s' のモジュラーフェイルセーフデータを削除できません" -+#: libdnf/module/ModulePackageContainer.cpp:1734 ++#: libdnf/module/ModulePackageContainer.cpp:1773 +#, c-format +msgid "" +"Unable to apply modular obsoletes to '%s:%s' because target module '%s' is " +"disabled" -+msgstr "ターゲットモジュール '%s' が無効であるため、モジュラーの廃止を '%s:%s' に適用できません" ++msgstr "" ++"ターゲットモジュール '%s' が無効であるため、モジュラーの廃止を '%s:%s' に適用" ++"できません" + #: libdnf/module/modulemd/ModuleMetadata.cpp:86 #, c-format msgid "Failed to update from string: %s" -@@ -669,7 +819,7 @@ msgstr "名前解決に失敗しました: %s" +@@ -669,7 +852,7 @@ msgstr "名前解決に失敗しました: %s" #: libdnf/module/modulemd/ModuleMetadata.cpp:115 #, c-format msgid "There were errors while resolving modular defaults: %s" @@ -1842,64 +1946,76 @@ index b9064ee6..1f09f2c6 100644 #: libdnf/module/modulemd/ModuleMetadata.cpp:120 #, c-format -@@ -681,6 +831,11 @@ msgstr "デフォルトのアップグレードに失敗しました: %s" +@@ -681,6 +864,12 @@ msgstr "デフォルトのアップグレードに失敗しました: %s" msgid "Failed to upgrade streams: %s" msgstr "ストリームのアップグレードに失敗しました: %s" +#: libdnf/module/modulemd/ModuleMetadata.cpp:212 +#, c-format +msgid "Cannot retrieve module obsoletes because no stream matching %s: %s" -+msgstr "%s に一致するストリームがないため、モジュールの廃止を取得できません: %s" ++msgstr "" ++"%s に一致するストリームがないため、モジュールの廃止を取得できません: %s" + #: libdnf/plugin/plugin.cpp:46 #, c-format msgid "Can't load shared library \"%s\": %s" -@@ -722,6 +877,9 @@ msgid "" +@@ -722,6 +911,9 @@ msgid "" "deprecated and the support will be dropped in future versions. Use '=' " "operator instead." msgstr "" -+"reldeps で '==' " -+"演算子を使用すると、未定義の動作が発生する可能性があります。これは非推奨で、将来のバージョンではサポートされなくなります。代わりに '=' " -+"演算子を使用してください。" ++"reldeps で '==' 演算子を使用すると、未定義の動作が発生する可能性があります。" ++"これは非推奨で、将来のバージョンではサポートされなくなります。代わりに '=' 演" ++"算子を使用してください。" #: libdnf/repo/Repo.cpp:321 #, c-format -@@ -733,146 +891,161 @@ msgstr "リポジトリー %s にはミラーまたは baseurl セットがあ +@@ -731,148 +923,172 @@ msgstr "リポジトリー %s にはミラーまたは baseurl セットがあ + #: libdnf/repo/Repo.cpp:330 + #, c-format msgid "Repository '%s' has unsupported type: 'type=%s', skipping." - msgstr "リポジトリー '%s' にはサポートされていないタイプがあります: 'type=%s'、スキッピング。" - --#: libdnf/repo/Repo.cpp:546 +-msgstr "リポジトリー '%s' にはサポートされていないタイプがあります: 'type=%s'、スキッピング。" ++msgstr "" ++"リポジトリー '%s' にはサポートされていないタイプがあります: 'type=%s'、スキッ" ++"ピング。" ++ +#: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641 +#: libdnf/repo/Repo.cpp:1382 - #, c-format --msgid "Cannot find a valid baseurl for repo: %s" --msgstr "repo に対して有効な baseurl を見つけられません: %s" ++#, c-format +msgid "repo '%s': 'basecachedir' is not set" +msgstr "repo '%s': 'basecachedir' が設定されていません" - --#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 ++ +#: libdnf/repo/Repo.cpp:512 - msgid "" - "Maximum download speed is lower than minimum. Please change configuration of" - " minrate or throttle" --msgstr "ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの設定を変更してください。" -+msgstr "ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの設定を変更してください" ++msgid "" ++"Maximum download speed is lower than minimum. Please change configuration of " ++"minrate or throttle" ++msgstr "" ++"ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの" ++"設定を変更してください" --#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 -+#: libdnf/repo/Repo.cpp:546 -+#, c-format + #: libdnf/repo/Repo.cpp:546 + #, c-format +msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'" -+msgstr "repo '%s': 'proxy_username' は設定済みですが、'proxy_password' は設定されていません" ++msgstr "" ++"repo '%s': 'proxy_username' は設定済みですが、'proxy_password' は設定されてい" ++"ません" + +#: libdnf/repo/Repo.cpp:548 +msgid "'proxy_username' is set but not 'proxy_password'" -+msgstr "'proxy_username' は設定済みですが、'proxy_password' は設定されていません" ++msgstr "" ++"'proxy_username' は設定済みですが、'proxy_password' は設定されていません" + +#: libdnf/repo/Repo.cpp:629 +#, c-format -+msgid "Cannot find a valid baseurl for repo: %s" -+msgstr "repo に対して有効な baseurl を見つけられません: %s" -+ + msgid "Cannot find a valid baseurl for repo: %s" + msgstr "repo に対して有効な baseurl を見つけられません: %s" + +-#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 +-msgid "" +-"Maximum download speed is lower than minimum. Please change configuration of" +-" minrate or throttle" +-msgstr "ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの設定を変更してください。" +- +-#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 +#: libdnf/repo/Repo.cpp:660 libdnf/repo/Repo.cpp:682 #, c-format msgid "%s: gpgme_data_new_from_fd(): %s" @@ -1951,7 +2067,9 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/repo/Repo.cpp:1181 #, c-format msgid "reviving: repo '%s' skipped, no usable hash." - msgstr "復元中: repo '%s' はスキップされました、使用可能なハッシュはありません。" +-msgstr "復元中: repo '%s' はスキップされました、使用可能なハッシュはありません。" ++msgstr "" ++"復元中: repo '%s' はスキップされました、使用可能なハッシュはありません。" -#: libdnf/repo/Repo.cpp:1173 +#: libdnf/repo/Repo.cpp:1204 @@ -2012,7 +2130,9 @@ index b9064ee6..1f09f2c6 100644 +#: libdnf/repo/Repo.cpp:1333 #, c-format msgid "Cache-only enabled but no cache for '%s'" - msgstr "キャッシュオンリーが有効になっていますが、'%s' に対するキャッシュはありません" +-msgstr "キャッシュオンリーが有効になっていますが、'%s' に対するキャッシュはありません" ++msgstr "" ++"キャッシュオンリーが有効になっていますが、'%s' に対するキャッシュはありません" -#: libdnf/repo/Repo.cpp:1306 +#: libdnf/repo/Repo.cpp:1337 @@ -2059,7 +2179,7 @@ index b9064ee6..1f09f2c6 100644 #, c-format msgid "Log handler with id %ld doesn't exist" msgstr "id %ld を伴うログハンドラーは存在しません" -@@ -881,13 +1054,13 @@ msgstr "id %ld を伴うログハンドラーは存在しません" +@@ -881,13 +1097,13 @@ msgstr "id %ld を伴うログハンドラーは存在しません" msgid "In progress" msgstr "進行中" @@ -2077,16 +2197,15 @@ index b9064ee6..1f09f2c6 100644 msgid "No transaction in progress" msgstr "進行中のトランザクションはありません" -@@ -901,7 +1074,7 @@ msgstr "完了したトランザクションにトランザクションアイテ - +@@ -902,6 +1118,7 @@ msgstr "完了したトランザクションにトランザクションアイテ #: libdnf/transaction/Transformer.cpp:76 msgid "Database Corrupted: no row 'version' in table 'config'" --msgstr "" -+msgstr "データベースが破損しています。テーブル 'config' の行 'version' がありません" + msgstr "" ++"データベースが破損しています。テーブル 'config' の行 'version' がありません" #: libdnf/transaction/Transformer.cpp:681 msgid "Transformer: can't open history persist dir" -@@ -926,6 +1099,3 @@ msgstr "未保存のトランザクションにコンソールの出力を追加 +@@ -926,6 +1143,3 @@ msgstr "未保存のトランザクションにコンソールの出力を追加 #~ msgid "Bad id for repo: %s, byte = %s %d" #~ msgstr "repo に対する不正な id: %s, byte = %s %d" @@ -2094,10 +2213,10 @@ index b9064ee6..1f09f2c6 100644 -#~ msgid "failed calculating RPMDB checksum" -#~ msgstr "RPMDB チェックサムの計算に失敗しました" diff --git a/po/ko.po b/po/ko.po -index 48094831..f1d47e8f 100644 +index 4809483..b3d0310 100644 --- a/po/ko.po +++ b/po/ko.po -@@ -1,31 +1,31 @@ +@@ -1,31 +1,32 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. @@ -2112,10 +2231,11 @@ index 48094831..f1d47e8f 100644 -"PO-Revision-Date: 2018-11-02 05:26+0000\n" -"Last-Translator: Copied by Zanata \n" -"Language-Team: Korean\n" -+"POT-Creation-Date: 2021-08-11 14:28+0200\n" -+"PO-Revision-Date: 2021-08-13 09:04+0000\n" ++"POT-Creation-Date: 2022-02-28 11:03+0100\n" ++"PO-Revision-Date: 2021-11-04 08:05+0000\n" +"Last-Translator: simmon \n" -+"Language-Team: Korean \n" ++"Language-Team: Korean \n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -2123,7 +2243,7 @@ index 48094831..f1d47e8f 100644 -"Plural-Forms: nplurals=1; plural=0\n" -"X-Generator: Zanata 4.6.2\n" +"Plural-Forms: nplurals=1; plural=0;\n" -+"X-Generator: Weblate 4.7.2\n" ++"X-Generator: Weblate 4.8\n" #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40 msgid "no value specified" @@ -2138,7 +2258,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/conf/ConfigMain.cpp:71 #, c-format -@@ -37,17 +37,30 @@ msgstr "변환 할 수 없습니다 '%s'~ 바이트" +@@ -37,17 +38,30 @@ msgstr "변환 할 수 없습니다 '%s'~ 바이트" msgid "unknown unit '%s'" msgstr "알 수없는 단위 '%s'" @@ -2173,7 +2293,7 @@ index 48094831..f1d47e8f 100644 #, c-format msgid "Configuration: OptionBinding with id \"%s\" already exists" msgstr "구성 : ID가 \"%s\" 이미 존재 함" -@@ -58,14 +71,10 @@ msgid "invalid boolean value '%s'" +@@ -58,14 +72,10 @@ msgid "invalid boolean value '%s'" msgstr "유효하지 않은 부울 값 '%s'" #: libdnf/conf/OptionEnum.cpp:72 libdnf/conf/OptionEnum.cpp:158 @@ -2190,7 +2310,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/conf/OptionNumber.cpp:73 #, c-format -@@ -92,36 +101,136 @@ msgstr "주어진 경로 '%s' 존재하지 않는다." +@@ -92,29 +102,136 @@ msgstr "주어진 경로 '%s' 존재하지 않는다." msgid "could not convert '%s' to seconds" msgstr "변환 할 수 없습니다 '%s'초까지" @@ -2211,7 +2331,9 @@ index 48094831..f1d47e8f 100644 +#, c-format +msgid "" +"Cannot enable module '%1$s' stream '%2$s': State of module already modified" -+msgstr "모듈 '%1$s' 스트림 '%2$s 을 활성화 할 수 없습니다: 모듈 상태가 이미 변경되었습니다" ++msgstr "" ++"모듈 '%1$s' 스트림 '%2$s 을 활성화 할 수 없습니다: 모듈 상태가 이미 변경되었" ++"습니다" + +#: libdnf/dnf-context.cpp:3253 +#, c-format @@ -2234,8 +2356,7 @@ index 48094831..f1d47e8f 100644 +#: libdnf/dnf-context.cpp:3297 +#, c-format +msgid "" -+"Only module name is required. Ignoring unneeded information in argument: " -+"'%s'" ++"Only module name is required. Ignoring unneeded information in argument: '%s'" +msgstr "모듈 이름만 필요합니다. 인수에서 불필요한 정보를 무시합니다: '%s'" + +#: libdnf/dnf-context.cpp:3311 @@ -2263,7 +2384,9 @@ index 48094831..f1d47e8f 100644 +msgid "" +"Problem during enablement of dependency tree for module '%1$s' stream " +"'%2$s': %3$s" -+msgstr "모듈 '%1$s' 스트림 '%2$s': %3$s 위해 의존성 트리의 활성화하는 중에 발생하는 문제" ++msgstr "" ++"모듈 '%1$s' 스트림 '%2$s': %3$s 위해 의존성 트리의 활성화하는 중에 발생하는 " ++"문제" + +#: libdnf/dnf-context.cpp:3420 +msgid "Problems appeared for module enable request" @@ -2290,17 +2413,21 @@ index 48094831..f1d47e8f 100644 +#: libdnf/dnf-context.cpp:3627 +#, c-format +msgid "" -+"The operation would result in switching of module '%s' stream '%s' to stream" -+" '%s'" ++"The operation would result in switching of module '%s' stream '%s' to stream " ++"'%s'" +msgstr "이 동작은 모듈 '%s'' 스트림 ‘%s'에서 스트림 '%s'로의 전환 결과입니다" + +#: libdnf/dnf-context.cpp:3631 +msgid "" +"It is not possible to switch enabled streams of a module.\n" -+"It is recommended to remove all installed content from the module, and reset the module using 'microdnf module reset ' command. After you reset the module, you can install the other stream." ++"It is recommended to remove all installed content from the module, and reset " ++"the module using 'microdnf module reset ' command. After you " ++"reset the module, you can install the other stream." msgstr "" +"활성화된 모듈 스트림을 전환 할 수 없습니다.\n" -+"설치된 모든 내용을 모듈에서 제거하고 ‘' 명령을 사용하여 모듈을 재설정하는 것이 좋습니다. 모듈을 재설정한 후, 다른 스트림을 설치 할 수 있습니다." ++"설치된 모든 내용을 모듈에서 제거하고 ‘' 명령을 사용하여 모듈을 " ++"재설정하는 것이 좋습니다. 모듈을 재설정한 후, 다른 스트림을 설치 할 수 있습니" ++"다." -#: libdnf/dnf-goal.cpp:70 +#: libdnf/dnf-goal.cpp:85 @@ -2330,15 +2457,16 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-rpmts.cpp:79 #, c-format - msgid "" +@@ -122,6 +239,8 @@ msgid "" "No available modular metadata for modular package '%s'; cannot be installed " "on the system" --msgstr "" -+msgstr "모듈러 꾸러미 '%s'에 사용 가능한 모듈러 메타데이터가 없으며; 시스템에 설치 할 수 없습니다" + msgstr "" ++"모듈러 꾸러미 '%s'에 사용 가능한 모듈러 메타데이터가 없으며; 시스템에 설치 " ++"할 수 없습니다" #: libdnf/dnf-rpmts.cpp:121 libdnf/dnf-rpmts.cpp:166 #, c-format -@@ -156,11 +265,11 @@ msgstr "설치 요소를 추가하지 못했습니다. %1$s [%2$i]" +@@ -156,11 +275,12 @@ msgstr "설치 요소를 추가하지 못했습니다. %1$s [%2$i]" #: libdnf/dnf-rpmts.cpp:274 #, c-format msgid "Error running transaction: %s" @@ -2348,11 +2476,12 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-rpmts.cpp:283 msgid "Error running transaction and no problems were reported!" -msgstr "트랜잭션을 실행하는 중 오류가 발생했으며 아무런 문제도보고되지 않았습니다!" -+msgstr "연결을 실행하는 중 오류가 발생했으며 아무런 문제도 보고되지 않았습니다!" ++msgstr "" ++"연결을 실행하는 중 오류가 발생했으며 아무런 문제도 보고되지 않았습니다!" #: libdnf/dnf-rpmts.cpp:346 msgid "Fatal error, run database recovery" -@@ -176,87 +285,87 @@ msgstr "꾸러미를 찾지 못했습니다. %s" +@@ -176,87 +296,87 @@ msgstr "꾸러미를 찾지 못했습니다. %s" msgid "could not add erase element %1$s(%2$i)" msgstr "요소 지우기를 추가 할 수 없습니다. %1$s(%2$i)" @@ -2470,7 +2599,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-state.cpp:1184 #, c-format -@@ -285,7 +394,7 @@ msgstr "이미 100 %% 상태 [%s]" +@@ -285,7 +405,7 @@ msgstr "이미 100 %% 상태 [%s]" #: libdnf/dnf-transaction.cpp:300 #, c-format msgid "Sources not set when trying to ensure package %s" @@ -2479,7 +2608,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-transaction.cpp:326 #, c-format -@@ -299,7 +408,7 @@ msgstr "신뢰할 수 없는지 확인하지 못했습니다. " +@@ -299,7 +419,7 @@ msgstr "신뢰할 수 없는지 확인하지 못했습니다. " #: libdnf/dnf-transaction.cpp:377 #, c-format msgid "Downloaded file for %s not found" @@ -2488,7 +2617,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-transaction.cpp:397 #, c-format -@@ -308,7 +417,7 @@ msgstr "꾸러미 %1$s 확인 및 복구 할 수 없습니다. %2$s GPG 사용 +@@ -308,7 +428,7 @@ msgstr "꾸러미 %1$s 확인 및 복구 할 수 없습니다. %2$s GPG 사용 #: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903 msgid "Failed to get value for CacheDir" @@ -2497,7 +2626,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/dnf-transaction.cpp:911 #, c-format -@@ -325,26 +434,26 @@ msgstr "에 대한 파일 시스템 크기를 가져 오는 데 실패했습니 +@@ -325,26 +445,26 @@ msgstr "에 대한 파일 시스템 크기를 가져 오는 데 실패했습니 msgid "Not enough free space in %1$s: needed %2$s, available %3$s" msgstr "여유 공간이 부족합니다. %1$s: 필요 %2$s, 이용 가능 %3$s" @@ -2533,7 +2662,7 @@ index 48094831..f1d47e8f 100644 #, c-format msgid "cannot open directory %1$s: %2$s" msgstr "디렉토리를 열 수 없습니다. %1$s: %2$s" -@@ -354,369 +463,414 @@ msgstr "디렉토리를 열 수 없습니다. %1$s: %2$s" +@@ -354,369 +474,416 @@ msgstr "디렉토리를 열 수 없습니다. %1$s: %2$s" msgid "failed to remove %s" msgstr "제거하지 못했습니다. %s" @@ -2947,7 +3076,8 @@ index 48094831..f1d47e8f 100644 +#: libdnf/module/ModulePackageContainer.cpp:841 +msgid "Installing module profiles:\n" +msgstr "모듈 프로파일 설치:\n" -+ + +-#: libdnf/module/ModulePackageContainer.cpp:1569 +#: libdnf/module/ModulePackageContainer.cpp:856 +msgid "Disabling module profiles:\n" +msgstr "모듈 프로파일 비활성화:\n" @@ -2959,8 +3089,7 @@ index 48094831..f1d47e8f 100644 +#: libdnf/module/ModulePackageContainer.cpp:885 +msgid "Switching module streams:\n" +msgstr "모듈 스트림 전환:\n" - --#: libdnf/module/ModulePackageContainer.cpp:1569 ++ +#: libdnf/module/ModulePackageContainer.cpp:903 +msgid "Disabling modules:\n" +msgstr "모듈 비활성화:\n" @@ -2969,46 +3098,47 @@ index 48094831..f1d47e8f 100644 +msgid "Resetting modules:\n" +msgstr "모듈 재설정:\n" + -+#: libdnf/module/ModulePackageContainer.cpp:1599 ++#: libdnf/module/ModulePackageContainer.cpp:1638 #, c-format msgid "Unable to load modular Fail-Safe data at '%s'" -msgstr "" +msgstr "'%s'에서 모듈식 Fail-Safe 자료를 적재 할 수 없습니다" -#: libdnf/module/ModulePackageContainer.cpp:1575 -+#: libdnf/module/ModulePackageContainer.cpp:1605 ++#: libdnf/module/ModulePackageContainer.cpp:1644 #, c-format msgid "Unable to load modular Fail-Safe data for module '%s:%s'" -msgstr "" +msgstr "모듈 '%s:%s'에 대해 모듈식 Fail-Safe 자료를 적재 할 수 없습니다" -#: libdnf/module/ModulePackageContainer.cpp:1639 -+#: libdnf/module/ModulePackageContainer.cpp:1663 ++#: libdnf/module/ModulePackageContainer.cpp:1702 #, c-format msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s" -msgstr "" +msgstr "모듈식 Fail-Safe 데이터에 대한 “%s\" 디렉토리를 만들 수 없습니다: %s" -#: libdnf/module/ModulePackageContainer.cpp:1661 -+#: libdnf/module/ModulePackageContainer.cpp:1679 ++#: libdnf/module/ModulePackageContainer.cpp:1718 #, c-format msgid "Unable to save a modular Fail Safe data to '%s'" -msgstr "" +msgstr "모듈식 Fail Safe 자료를 '%s'에 저장 할 수 없습니다" -#: libdnf/module/ModulePackageContainer.cpp:1686 -+#: libdnf/module/ModulePackageContainer.cpp:1702 ++#: libdnf/module/ModulePackageContainer.cpp:1741 #, c-format msgid "Unable to remove a modular Fail Safe data in '%s'" --msgstr "" +msgstr "'%s'에서 모듈식 Fail Safe 자료를 제거 할 수 없습니다" + -+#: libdnf/module/ModulePackageContainer.cpp:1734 ++#: libdnf/module/ModulePackageContainer.cpp:1773 +#, c-format +msgid "" +"Unable to apply modular obsoletes to '%s:%s' because target module '%s' is " +"disabled" -+msgstr "'%s:%s'에 사용되지 않는 모듈을 적용할 수 없습니다(대상 모듈 '%s'가 비활성화 되어 있기 때문에)" + msgstr "" ++"'%s:%s'에 사용되지 않는 모듈을 적용할 수 없습니다(대상 모듈 '%s'가 비활성화 " ++"되어 있기 때문에)" #: libdnf/module/modulemd/ModuleMetadata.cpp:86 #, c-format @@ -3089,12 +3219,13 @@ index 48094831..f1d47e8f 100644 #: libdnf/repo/DependencySplitter.cpp:50 msgid "" -@@ -724,198 +878,215 @@ msgid "" +@@ -724,198 +891,220 @@ msgid "" "deprecated and the support will be dropped in future versions. Use '=' " "operator instead." msgstr "" -+"reldeps에 '=='연산자를 사용하면 정의되지 않은 동작이 발생할 수 있습니다. 이 연산자는 더 이상 사용되지 않으며, 향후 " -+"버전에서는 지원이 중단됩니다. 대신 '=' 연산자를 사용하세요." ++"reldeps에 '=='연산자를 사용하면 정의되지 않은 동작이 발생할 수 있습니다. 이 " ++"연산자는 더 이상 사용되지 않으며, 향후 버전에서는 지원이 중단됩니다. 대신 " ++"'=' 연산자를 사용하세요." #: libdnf/repo/Repo.cpp:321 #, c-format @@ -3105,41 +3236,44 @@ index 48094831..f1d47e8f 100644 #: libdnf/repo/Repo.cpp:330 #, c-format msgid "Repository '%s' has unsupported type: 'type=%s', skipping." --msgstr "" +msgstr "저장소 '%s'는 지원하지 않는 유형: 'type=%s'이며, 건너뜁니다." - --#: libdnf/repo/Repo.cpp:546 ++ +#: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641 +#: libdnf/repo/Repo.cpp:1382 - #, c-format --msgid "Cannot find a valid baseurl for repo: %s" --msgstr "" ++#, c-format +msgid "repo '%s': 'basecachedir' is not set" +msgstr "repo '%s': 'basecachedir가 구성되어 있지 않습니다" ++ ++#: libdnf/repo/Repo.cpp:512 ++msgid "" ++"Maximum download speed is lower than minimum. Please change configuration of " ++"minrate or throttle" + msgstr "" ++"최대 내려받기 속도는 최저보다 낮습니다. 최저속도나 변환 환경구성을 변경해 주" ++"세요" + + #: libdnf/repo/Repo.cpp:546 + #, c-format +-msgid "Cannot find a valid baseurl for repo: %s" ++msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'" + msgstr "" ++"repo '%s': 'proxy_username' 는 구성되어 있지만 'proxy_password'가 없습니다" -#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 -+#: libdnf/repo/Repo.cpp:512 - msgid "" - "Maximum download speed is lower than minimum. Please change configuration of" - " minrate or throttle" +-msgid "" +-"Maximum download speed is lower than minimum. Please change configuration of" +-" minrate or throttle" -msgstr "" -+msgstr "최대 내려받기 속도는 최저보다 낮습니다. 최저속도나 변환 환경구성을 변경해 주세요" -+ -+#: libdnf/repo/Repo.cpp:546 -+#, c-format -+msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'" -+msgstr "repo '%s': 'proxy_username' 는 구성되어 있지만 'proxy_password'가 없습니다" -+ +#: libdnf/repo/Repo.cpp:548 +msgid "'proxy_username' is set but not 'proxy_password'" +msgstr "'proxy_username' 이 구성되어 있지만 'proxy_password'가 없습니다" - --#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 ++ +#: libdnf/repo/Repo.cpp:629 +#, c-format +msgid "Cannot find a valid baseurl for repo: %s" +msgstr "repo: %s 를 위해 유효한 baseurl을 찾을 수 없습니다" -+ + +-#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 +#: libdnf/repo/Repo.cpp:660 libdnf/repo/Repo.cpp:682 #, c-format msgid "%s: gpgme_data_new_from_fd(): %s" @@ -3188,37 +3322,43 @@ index 48094831..f1d47e8f 100644 +#: libdnf/repo/Repo.cpp:1162 #, c-format msgid "reviving: repo '%s' skipped, no metalink." - msgstr "부활 : repo '%s'건너 뛰었습니다." +-msgstr "부활 : repo '%s'건너 뛰었습니다." ++msgstr "부활: repo '%s' 건너 뛰었으며, 메타링크가 없습니다." -#: libdnf/repo/Repo.cpp:1150 +#: libdnf/repo/Repo.cpp:1181 #, c-format msgid "reviving: repo '%s' skipped, no usable hash." - msgstr "부활 : repo '%s'건너 뛰었습니다. 사용 가능한 해시가 없습니다." +-msgstr "부활 : repo '%s'건너 뛰었습니다. 사용 가능한 해시가 없습니다." ++msgstr "부활: repo '%s'건너 뛰었으며, 사용 가능한 해쉬가 없습니다." -#: libdnf/repo/Repo.cpp:1173 +#: libdnf/repo/Repo.cpp:1204 #, c-format msgid "reviving: failed for '%s', mismatched %s sum." - msgstr "되살리기 : 실패한 '%s', 불일치 %s 합집합." +-msgstr "되살리기 : 실패한 '%s', 불일치 %s 합집합." ++msgstr "부활 : '%s'에 실패하고, %s 합과 일치하지 않음." -#: libdnf/repo/Repo.cpp:1179 +#: libdnf/repo/Repo.cpp:1210 #, c-format msgid "reviving: '%s' can be revived - metalink checksums match." - msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - metalink 체크섬이 일치합니다." +-msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - metalink 체크섬이 일치합니다." ++msgstr "부활: '%s'는 부활 할 수 있습니다 - 메타링크 체크섬이 일치합니다." -#: libdnf/repo/Repo.cpp:1204 +#: libdnf/repo/Repo.cpp:1235 #, c-format msgid "reviving: '%s' can be revived - repomd matches." - msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - repomd가 일치합니다." +-msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - repomd가 일치합니다." ++msgstr "부활: '%s'는 부활 할 수 있습니다 - repomd가 일치합니다." -#: libdnf/repo/Repo.cpp:1206 +#: libdnf/repo/Repo.cpp:1237 #, c-format msgid "reviving: failed for '%s', mismatched repomd." - msgstr "되살리기 : 실패한 '%s', 일치하지 않는 repomd." +-msgstr "되살리기 : 실패한 '%s', 일치하지 않는 repomd." ++msgstr "부활: '%s'에 실패하고, 일치하지 않은 repomd." -#: libdnf/repo/Repo.cpp:1224 +#: libdnf/repo/Repo.cpp:1255 @@ -3249,33 +3389,35 @@ index 48094831..f1d47e8f 100644 +#: libdnf/repo/Repo.cpp:1321 #, c-format msgid "repo: using cache for: %s" - msgstr "repo : 캐시 사용 : %s" +-msgstr "repo : 캐시 사용 : %s" ++msgstr "repo: 캐쉬 사용: %s" -#: libdnf/repo/Repo.cpp:1302 +#: libdnf/repo/Repo.cpp:1333 #, c-format msgid "Cache-only enabled but no cache for '%s'" - msgstr "캐시 만 사용 가능하지만 '%s'" +-msgstr "캐시 만 사용 가능하지만 '%s'" ++msgstr "캐쉬만 사용 가능하지만 '%s'를 위해 캐쉬가 없습니다" -#: libdnf/repo/Repo.cpp:1306 +#: libdnf/repo/Repo.cpp:1337 #, c-format msgid "repo: downloading from remote: %s" -msgstr "repo : 원격에서 다운로드 중 : %s" -+msgstr "repo : 원격에서 내려받기 중 : %s" ++msgstr "repo: 원격에서 내려받기 중: %s" -#: libdnf/repo/Repo.cpp:1312 +#: libdnf/repo/Repo.cpp:1344 #, c-format msgid "Failed to download metadata for repo '%s': %s" -msgstr "" -+msgstr "repo '%s': %s 를 위해 메타데이타 내려받기에 실패하였습니다" ++msgstr "repo를 위한 메타자료 내려받기에 실패하였습니다 '%s': %s" -#: libdnf/repo/Repo.cpp:1338 +#: libdnf/repo/Repo.cpp:1370 msgid "getCachedir(): Computation of SHA256 failed" -msgstr "getCachedir () : SHA256 계산에 실패했습니다." -+msgstr "getCachedir () : SHA256 계산에 실패했습니다" ++msgstr "getCachedir(): SHA256 계산에 실패했습니다" -#: libdnf/repo/Repo.cpp:1363 +#: libdnf/repo/Repo.cpp:1398 @@ -3294,20 +3436,22 @@ index 48094831..f1d47e8f 100644 +#: libdnf/repo/Repo.cpp:1792 #, c-format msgid "PackageTarget initialization failed: %s" - msgstr "PackageTarget 초기화에 실패했습니다 : %s" +-msgstr "PackageTarget 초기화에 실패했습니다 : %s" ++msgstr "PackageTarget 초기화에 실패했습니다: %s" -#: libdnf/repo/Repo.cpp:1886 +#: libdnf/repo/Repo.cpp:1898 #, c-format msgid "Cannot open %s: %s" - msgstr "열 수 없다 %s: %s" +-msgstr "열 수 없다 %s: %s" ++msgstr "열 수 없습니다 %s: %s" -#: libdnf/repo/Repo.cpp:1930 +#: libdnf/repo/Repo.cpp:1942 #, c-format msgid "Log handler with id %ld doesn't exist" -msgstr "ID가있는 로그 처리기 %ld 존재하지 않는다." -+msgstr "ID가 있는 로그 처리기 %ld 존재하지 않는다" ++msgstr "ID가 있는 로그 처리기 %ld가 존재하지 않습니다" #: libdnf/transaction/Swdb.cpp:173 msgid "In progress" @@ -3340,13 +3484,13 @@ index 48094831..f1d47e8f 100644 #: libdnf/transaction/Transformer.cpp:76 msgid "Database Corrupted: no row 'version' in table 'config'" --msgstr "" -+msgstr "데이타베이스가 오염되었습니다: 테이블 'config'에 'version' 행이 없습니다" + msgstr "" ++"데이타베이스가 오염되었습니다: 테이블 'config'에 'version' 행이 없습니다" #: libdnf/transaction/Transformer.cpp:681 msgid "Transformer: can't open history persist dir" -msgstr "변압기 : 역사를 열 수 없습니다." -+msgstr "변형 : persist dir 기록을 열 수 없습니다" ++msgstr "변형: persist dir 기록을 열 수 없습니다" #: libdnf/transaction/Transformer.cpp:694 msgid "Couldn't find a history database" @@ -3360,7 +3504,7 @@ index 48094831..f1d47e8f 100644 #: libdnf/transaction/private/Transaction.cpp:58 #, c-format -@@ -924,7 +1095,4 @@ msgstr "TransactionItem 상태가 설정되지 않았습니다. %s" +@@ -924,7 +1113,4 @@ msgstr "TransactionItem 상태가 설정되지 않았습니다. %s" #: libdnf/transaction/private/Transaction.cpp:243 msgid "Can't add console output to unsaved transaction" @@ -3369,15 +3513,986 @@ index 48094831..f1d47e8f 100644 -#~ msgid "failed calculating RPMDB checksum" -#~ msgstr "RPMDB 체크섬 계산 실패" +msgstr "저장되지 않은 연결에 콘솔 출력을 추가 할 수 없습니다" +diff --git a/po/libdnf.pot b/po/libdnf.pot +index e7c0edf..fdc8ceb 100644 +--- a/po/libdnf.pot ++++ b/po/libdnf.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: 2022-02-28 11:03+0100\n" + "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" + "Last-Translator: FULL NAME \n" + "Language-Team: LANGUAGE \n" +@@ -37,17 +37,30 @@ msgstr "" + msgid "unknown unit '%s'" + msgstr "" + +-#: libdnf/conf/ConfigMain.cpp:332 ++#: libdnf/conf/ConfigMain.cpp:204 libdnf/conf/OptionEnum.cpp:83 ++#: libdnf/conf/OptionNumber.cpp:88 ++msgid "invalid value" ++msgstr "" ++ ++#: libdnf/conf/ConfigMain.cpp:207 ++msgid "value 1 is not allowed" ++msgstr "" ++ ++#: libdnf/conf/ConfigMain.cpp:209 ++msgid "negative value is not allowed" ++msgstr "" ++ ++#: libdnf/conf/ConfigMain.cpp:341 + #, c-format + msgid "percentage '%s' is out of range" + msgstr "" + +-#: libdnf/conf/OptionBinds.cpp:76 ++#: libdnf/conf/OptionBinds.cpp:85 + #, c-format + msgid "Configuration: OptionBinding with id \"%s\" does not exist" + msgstr "" + +-#: libdnf/conf/OptionBinds.cpp:88 ++#: libdnf/conf/OptionBinds.cpp:97 + #, c-format + msgid "Configuration: OptionBinding with id \"%s\" already exists" + msgstr "" +@@ -58,15 +71,11 @@ msgid "invalid boolean value '%s'" + msgstr "" + + #: libdnf/conf/OptionEnum.cpp:72 libdnf/conf/OptionEnum.cpp:158 +-#: libdnf/conf/OptionString.cpp:59 libdnf/conf/OptionStringList.cpp:59 ++#: libdnf/conf/OptionString.cpp:64 libdnf/conf/OptionStringList.cpp:59 + #, c-format + msgid "'%s' is not an allowed value" + msgstr "" + +-#: libdnf/conf/OptionEnum.cpp:83 libdnf/conf/OptionNumber.cpp:88 +-msgid "invalid value" +-msgstr "" +- + #: libdnf/conf/OptionNumber.cpp:73 + #, c-format + msgid "given value [%d] should be less than allowed value [%d]." +@@ -92,27 +101,126 @@ msgstr "" + msgid "could not convert '%s' to seconds" + msgstr "" + +-#: libdnf/conf/OptionString.cpp:74 ++#: libdnf/conf/OptionString.cpp:79 + msgid "GetValue(): Value not set" + msgstr "" + +-#: libdnf/dnf-goal.cpp:68 ++#: libdnf/dnf-context.cpp:3170 libdnf/dnf-context.cpp:3179 ++#, c-format ++msgid "Cannot enable more streams from module '%s' at the same time" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3188 libdnf/dnf-context.cpp:3206 ++#, c-format ++msgid "" ++"Cannot enable module '%1$s' stream '%2$s': State of module already modified" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3253 ++#, c-format ++msgid "Modular dependency problem with Defaults: %s" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3256 ++#, c-format ++msgid "Modular dependency problem: %s" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3290 libdnf/dnf-context.cpp:3314 ++#: libdnf/dnf-context.cpp:3325 libdnf/dnf-context.cpp:3364 ++#: libdnf/dnf-context.cpp:3380 libdnf/dnf-context.cpp:3412 ++#: libdnf/dnf-context.cpp:3456 libdnf/dnf-context.cpp:3466 ++#, c-format ++msgid "Unable to resolve argument '%s'" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3297 ++#, c-format ++msgid "" ++"Only module name is required. Ignoring unneeded information in argument: '%s'" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3311 ++#, c-format ++msgid "Cannot reset module '%s': State of module already modified" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3322 ++#, c-format ++msgid "Cannot disable module '%s': State of module already modified" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3353 libdnf/dnf-context.cpp:3445 ++#: libdnf/dnf-context.cpp:3558 ++msgid "No modular data available" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3370 ++#, c-format ++msgid "Ignoring unneeded information in argument: '%s'" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3408 ++#, c-format ++msgid "" ++"Problem during enablement of dependency tree for module '%1$s' stream " ++"'%2$s': %3$s" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3420 ++msgid "Problems appeared for module enable request" ++msgstr "" ++ ++#. this really should never happen; unless the modular repodata is corrupted ++#: libdnf/dnf-context.cpp:3495 ++#, c-format ++msgid "Failed to parse module artifact NEVRA '%s'" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3529 ++msgid "Problems appeared for module install request" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3589 ++msgid "Problems appeared for module reset request" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3591 ++msgid "Problems appeared for module disable request" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3627 ++#, c-format ++msgid "" ++"The operation would result in switching of module '%s' stream '%s' to stream " ++"'%s'" ++msgstr "" ++ ++#: libdnf/dnf-context.cpp:3631 ++msgid "" ++"It is not possible to switch enabled streams of a module.\n" ++"It is recommended to remove all installed content from the module, and reset " ++"the module using 'microdnf module reset ' command. After you " ++"reset the module, you can install the other stream." ++msgstr "" ++ ++#: libdnf/dnf-goal.cpp:85 + msgid "Could not depsolve transaction; " + msgstr "" + +-#: libdnf/dnf-goal.cpp:70 ++#: libdnf/dnf-goal.cpp:87 + #, c-format + msgid "%i problem detected:\n" + msgid_plural "%i problems detected:\n" + msgstr[0] "" + msgstr[1] "" + +-#: libdnf/dnf-goal.cpp:78 ++#: libdnf/dnf-goal.cpp:95 + #, c-format + msgid " Problem %1$i: %2$s\n" + msgstr "" + +-#: libdnf/dnf-goal.cpp:80 ++#: libdnf/dnf-goal.cpp:97 + #, c-format + msgid " Problem: %s\n" + msgstr "" +@@ -177,84 +285,84 @@ msgstr "" + msgid "could not add erase element %1$s(%2$i)" + msgstr "" + +-#: libdnf/dnf-sack.cpp:381 +-#, c-format +-msgid "no %1$s string for %2$s" ++#: libdnf/dnf-sack.cpp:395 ++msgid "failed to add solv" + msgstr "" + +-#: libdnf/dnf-sack.cpp:404 +-msgid "failed to add solv" ++#: libdnf/dnf-sack.cpp:414 ++#, c-format ++msgid "no %1$s string for %2$s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:422 ++#: libdnf/dnf-sack.cpp:424 + #, c-format + msgid "failed to open: %s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:501 ++#: libdnf/dnf-sack.cpp:503 + #, c-format + msgid "cannot create temporary file: %s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:511 ++#: libdnf/dnf-sack.cpp:513 + #, c-format + msgid "failed opening tmp file: %s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:523 ++#: libdnf/dnf-sack.cpp:525 + #, c-format + msgid "write_main() failed writing data: %i" + msgstr "" + +-#: libdnf/dnf-sack.cpp:540 ++#: libdnf/dnf-sack.cpp:542 + msgid "write_main() failed to re-load written solv file" + msgstr "" + +-#: libdnf/dnf-sack.cpp:605 ++#: libdnf/dnf-sack.cpp:607 + #, c-format + msgid "can not create temporary file %s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:623 ++#: libdnf/dnf-sack.cpp:625 + #, c-format + msgid "write_ext(%1$d) has failed: %2$d" + msgstr "" + +-#: libdnf/dnf-sack.cpp:678 ++#: libdnf/dnf-sack.cpp:680 + msgid "null repo md file" + msgstr "" + +-#: libdnf/dnf-sack.cpp:687 ++#: libdnf/dnf-sack.cpp:689 + #, c-format + msgid "can not read file %1$s: %2$s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:701 ++#: libdnf/dnf-sack.cpp:703 + msgid "repo_add_solv() has failed." + msgstr "" + +-#: libdnf/dnf-sack.cpp:714 ++#: libdnf/dnf-sack.cpp:716 + msgid "loading of MD_TYPE_PRIMARY has failed." + msgstr "" + +-#: libdnf/dnf-sack.cpp:727 ++#: libdnf/dnf-sack.cpp:729 + msgid "repo_add_repomdxml/rpmmd() has failed." + msgstr "" + +-#: libdnf/dnf-sack.cpp:794 ++#: libdnf/dnf-sack.cpp:796 + msgid "failed to auto-detect architecture" + msgstr "" + +-#: libdnf/dnf-sack.cpp:919 ++#: libdnf/dnf-sack.cpp:961 + #, c-format + msgid "failed creating cachedir %s" + msgstr "" + +-#: libdnf/dnf-sack.cpp:1696 ++#: libdnf/dnf-sack.cpp:1738 + msgid "failed loading RPMDB" + msgstr "" + +-#: libdnf/dnf-sack.cpp:2403 ++#: libdnf/dnf-sack.cpp:2463 + #, c-format + msgid "No module defaults found: %s" + msgstr "" +@@ -326,26 +434,26 @@ msgstr "" + msgid "Not enough free space in %1$s: needed %2$s, available %3$s" + msgstr "" + +-#: libdnf/dnf-transaction.cpp:1196 ++#: libdnf/dnf-transaction.cpp:1195 + msgid "failed to set root" + msgstr "" + +-#: libdnf/dnf-transaction.cpp:1418 ++#: libdnf/dnf-transaction.cpp:1416 + #, c-format + msgid "Error %i running transaction test" + msgstr "" + +-#: libdnf/dnf-transaction.cpp:1458 ++#: libdnf/dnf-transaction.cpp:1456 + #, c-format + msgid "Error %i running transaction" + msgstr "" + +-#: libdnf/dnf-transaction.cpp:1473 ++#: libdnf/dnf-transaction.cpp:1472 + #, c-format + msgid "Transaction did not go to writing phase, but returned no error(%i)" + msgstr "" + +-#: libdnf/dnf-utils.cpp:111 libdnf/hy-iutil.cpp:399 ++#: libdnf/dnf-utils.cpp:111 libdnf/hy-iutil.cpp:403 + #, c-format + msgid "cannot open directory %1$s: %2$s" + msgstr "" +@@ -355,272 +463,281 @@ msgstr "" + msgid "failed to remove %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:55 ++#: libdnf/goal/Goal.cpp:74 + msgid "Ill-formed Selector, presence of multiple match objects in the filter" + msgstr "" + +-#: libdnf/goal/Goal.cpp:56 ++#: libdnf/goal/Goal.cpp:75 + msgid "Ill-formed Selector used for the operation, incorrect comparison type" + msgstr "" + +-#: libdnf/goal/Goal.cpp:67 libdnf/goal/Goal.cpp:94 ++#: libdnf/goal/Goal.cpp:86 libdnf/goal/Goal.cpp:113 + msgid " does not belong to a distupgrade repository" + msgstr "" + +-#: libdnf/goal/Goal.cpp:68 libdnf/goal/Goal.cpp:95 ++#: libdnf/goal/Goal.cpp:87 libdnf/goal/Goal.cpp:114 + msgid " has inferior architecture" + msgstr "" + +-#: libdnf/goal/Goal.cpp:69 ++#: libdnf/goal/Goal.cpp:88 + msgid "problem with installed package " + msgstr "" + +-#: libdnf/goal/Goal.cpp:70 libdnf/goal/Goal.cpp:97 ++#: libdnf/goal/Goal.cpp:89 libdnf/goal/Goal.cpp:116 + msgid "conflicting requests" + msgstr "" + +-#: libdnf/goal/Goal.cpp:71 libdnf/goal/Goal.cpp:98 ++#: libdnf/goal/Goal.cpp:90 libdnf/goal/Goal.cpp:117 + msgid "unsupported request" + msgstr "" + +-#: libdnf/goal/Goal.cpp:72 libdnf/goal/Goal.cpp:99 ++#: libdnf/goal/Goal.cpp:91 libdnf/goal/Goal.cpp:118 + msgid "nothing provides requested " + msgstr "" + +-#: libdnf/goal/Goal.cpp:73 ++#: libdnf/goal/Goal.cpp:92 + #, c-format + msgid "package %s does not exist" + msgstr "" + +-#: libdnf/goal/Goal.cpp:74 libdnf/goal/Goal.cpp:101 ++#: libdnf/goal/Goal.cpp:93 libdnf/goal/Goal.cpp:120 + msgid " is provided by the system" + msgstr "" + +-#: libdnf/goal/Goal.cpp:75 libdnf/goal/Goal.cpp:102 ++#: libdnf/goal/Goal.cpp:94 libdnf/goal/Goal.cpp:121 + msgid "some dependency problem" + msgstr "" + +-#: libdnf/goal/Goal.cpp:76 ++#: libdnf/goal/Goal.cpp:95 + msgid "cannot install the best update candidate for package " + msgstr "" + +-#: libdnf/goal/Goal.cpp:77 libdnf/goal/Goal.cpp:104 ++#: libdnf/goal/Goal.cpp:96 libdnf/goal/Goal.cpp:123 + msgid "cannot install the best candidate for the job" + msgstr "" + +-#: libdnf/goal/Goal.cpp:78 ++#: libdnf/goal/Goal.cpp:97 + #, c-format + msgid "package %s is filtered out by modular filtering" + msgstr "" + +-#: libdnf/goal/Goal.cpp:79 ++#: libdnf/goal/Goal.cpp:98 + #, c-format + msgid "package %s does not have a compatible architecture" + msgstr "" + +-#: libdnf/goal/Goal.cpp:80 ++#: libdnf/goal/Goal.cpp:99 + #, c-format + msgid "package %s is not installable" + msgstr "" + +-#: libdnf/goal/Goal.cpp:81 ++#: libdnf/goal/Goal.cpp:100 + #, c-format + msgid "package %s is filtered out by exclude filtering" + msgstr "" + +-#: libdnf/goal/Goal.cpp:82 ++#: libdnf/goal/Goal.cpp:101 + #, c-format + msgid "nothing provides %s needed by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:83 ++#: libdnf/goal/Goal.cpp:102 + #, c-format + msgid "cannot install both %s and %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:84 ++#: libdnf/goal/Goal.cpp:103 + #, c-format + msgid "package %s conflicts with %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:85 ++#: libdnf/goal/Goal.cpp:104 + #, c-format + msgid "package %s obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:86 ++#: libdnf/goal/Goal.cpp:105 + #, c-format + msgid "installed package %s obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:87 ++#: libdnf/goal/Goal.cpp:106 + #, c-format + msgid "package %s implicitly obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:88 ++#: libdnf/goal/Goal.cpp:107 + #, c-format + msgid "package %s requires %s, but none of the providers can be installed" + msgstr "" + +-#: libdnf/goal/Goal.cpp:89 ++#: libdnf/goal/Goal.cpp:108 + #, c-format + msgid "package %s conflicts with %s provided by itself" + msgstr "" + +-#: libdnf/goal/Goal.cpp:90 ++#: libdnf/goal/Goal.cpp:109 + #, c-format + msgid "both package %s and %s obsolete %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:96 ++#: libdnf/goal/Goal.cpp:115 + msgid "problem with installed module " + msgstr "" + +-#: libdnf/goal/Goal.cpp:100 ++#: libdnf/goal/Goal.cpp:119 + #, c-format + msgid "module %s does not exist" + msgstr "" + +-#: libdnf/goal/Goal.cpp:103 ++#: libdnf/goal/Goal.cpp:122 + msgid "cannot install the best update candidate for module " + msgstr "" + +-#: libdnf/goal/Goal.cpp:105 libdnf/goal/Goal.cpp:108 ++#: libdnf/goal/Goal.cpp:124 libdnf/goal/Goal.cpp:127 + #, c-format + msgid "module %s is disabled" + msgstr "" + +-#: libdnf/goal/Goal.cpp:106 ++#: libdnf/goal/Goal.cpp:125 + #, c-format + msgid "module %s does not have a compatible architecture" + msgstr "" + +-#: libdnf/goal/Goal.cpp:107 ++#: libdnf/goal/Goal.cpp:126 + #, c-format + msgid "module %s is not installable" + msgstr "" + +-#: libdnf/goal/Goal.cpp:109 ++#: libdnf/goal/Goal.cpp:128 + #, c-format + msgid "nothing provides %s needed by module %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:110 ++#: libdnf/goal/Goal.cpp:129 + #, c-format + msgid "cannot install both modules %s and %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:111 ++#: libdnf/goal/Goal.cpp:130 + #, c-format + msgid "module %s conflicts with %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:112 ++#: libdnf/goal/Goal.cpp:131 + #, c-format + msgid "module %s obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:113 ++#: libdnf/goal/Goal.cpp:132 + #, c-format + msgid "installed module %s obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:114 ++#: libdnf/goal/Goal.cpp:133 + #, c-format + msgid "module %s implicitly obsoletes %s provided by %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:115 ++#: libdnf/goal/Goal.cpp:134 + #, c-format + msgid "module %s requires %s, but none of the providers can be installed" + msgstr "" + +-#: libdnf/goal/Goal.cpp:116 ++#: libdnf/goal/Goal.cpp:135 + #, c-format + msgid "module %s conflicts with %s provided by itself" + msgstr "" + +-#: libdnf/goal/Goal.cpp:117 ++#: libdnf/goal/Goal.cpp:136 + #, c-format + msgid "both module %s and %s obsolete %s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1038 ++#: libdnf/goal/Goal.cpp:1051 + msgid "no solver set" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1043 ++#: libdnf/goal/Goal.cpp:1056 + #, c-format + msgid "failed to make %s absolute" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1050 ++#: libdnf/goal/Goal.cpp:1063 + #, c-format + msgid "failed writing debugdata to %1$s: %2$s" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1062 ++#: libdnf/goal/Goal.cpp:1075 + msgid "no solv in the goal" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1064 ++#: libdnf/goal/Goal.cpp:1077 + msgid "no solution, cannot remove protected package" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1067 ++#: libdnf/goal/Goal.cpp:1080 + msgid "no solution possible" + msgstr "" + +-#: libdnf/goal/Goal.cpp:1479 ++#: libdnf/goal/Goal.cpp:1206 ++msgid "Problem: " ++msgstr "" ++ ++#: libdnf/goal/Goal.cpp:1211 ++#, c-format ++msgid "Problem %d: " ++msgstr "" ++ ++#: libdnf/goal/Goal.cpp:1538 + msgid "" + "The operation would result in removing the following protected packages: " + msgstr "" + +-#: libdnf/hy-iutil.cpp:322 ++#: libdnf/hy-iutil.cpp:326 + #, c-format + msgid "Failed renaming %1$s to %2$s: %3$s" + msgstr "" + +-#: libdnf/hy-iutil.cpp:330 ++#: libdnf/hy-iutil.cpp:334 + #, c-format + msgid "Failed setting perms on %1$s: %2$s" + msgstr "" + +-#: libdnf/hy-iutil.cpp:376 ++#: libdnf/hy-iutil.cpp:380 + #, c-format + msgid "cannot create directory %1$s: %2$s" + msgstr "" + +-#: libdnf/hy-iutil.cpp:411 ++#: libdnf/hy-iutil.cpp:415 + #, c-format + msgid "cannot stat path %1$s: %2$s" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:499 ++#: libdnf/module/ModulePackage.cpp:560 + #, c-format + msgid "Invalid format of Platform module: %s" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:514 ++#: libdnf/module/ModulePackage.cpp:575 + msgid "Multiple module platforms provided by available packages\n" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:527 ++#: libdnf/module/ModulePackage.cpp:588 + msgid "Multiple module platforms provided by installed packages\n" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:554 ++#: libdnf/module/ModulePackage.cpp:615 + #, c-format + msgid "Detection of Platform Module in %s failed: %s" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:563 ++#: libdnf/module/ModulePackage.cpp:624 + #, c-format + msgid "Missing PLATFORM_ID in %s" + msgstr "" + +-#: libdnf/module/ModulePackage.cpp:568 ++#: libdnf/module/ModulePackage.cpp:629 + msgid "No valid Platform ID detected" + msgstr "" + +@@ -629,36 +746,67 @@ msgstr "" + msgid "Cannot enable multiple streams for module '%s'" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:294 ++#: libdnf/module/ModulePackageContainer.cpp:295 + #, c-format + msgid "Conflicting defaults with repo '%s': %s" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:1569 ++#: libdnf/module/ModulePackageContainer.cpp:841 ++msgid "Installing module profiles:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:856 ++msgid "Disabling module profiles:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:871 ++msgid "Enabling module streams:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:885 ++msgid "Switching module streams:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:903 ++msgid "Disabling modules:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:914 ++msgid "Resetting modules:\n" ++msgstr "" ++ ++#: libdnf/module/ModulePackageContainer.cpp:1638 + #, c-format + msgid "Unable to load modular Fail-Safe data at '%s'" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:1575 ++#: libdnf/module/ModulePackageContainer.cpp:1644 + #, c-format + msgid "Unable to load modular Fail-Safe data for module '%s:%s'" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:1639 ++#: libdnf/module/ModulePackageContainer.cpp:1702 + #, c-format + msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:1661 ++#: libdnf/module/ModulePackageContainer.cpp:1718 + #, c-format + msgid "Unable to save a modular Fail Safe data to '%s'" + msgstr "" + +-#: libdnf/module/ModulePackageContainer.cpp:1686 ++#: libdnf/module/ModulePackageContainer.cpp:1741 + #, c-format + msgid "Unable to remove a modular Fail Safe data in '%s'" + msgstr "" + ++#: libdnf/module/ModulePackageContainer.cpp:1773 ++#, c-format ++msgid "" ++"Unable to apply modular obsoletes to '%s:%s' because target module '%s' is " ++"disabled" ++msgstr "" ++ + #: libdnf/module/modulemd/ModuleMetadata.cpp:86 + #, c-format + msgid "Failed to update from string: %s" +@@ -684,6 +832,11 @@ msgstr "" + msgid "Failed to upgrade streams: %s" + msgstr "" + ++#: libdnf/module/modulemd/ModuleMetadata.cpp:212 ++#, c-format ++msgid "Cannot retrieve module obsoletes because no stream matching %s: %s" ++msgstr "" ++ + #: libdnf/plugin/plugin.cpp:46 + #, c-format + msgid "Can't load shared library \"%s\": %s" +@@ -736,146 +889,161 @@ msgstr "" + msgid "Repository '%s' has unsupported type: 'type=%s', skipping." + msgstr "" + +-#: libdnf/repo/Repo.cpp:546 ++#: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641 ++#: libdnf/repo/Repo.cpp:1382 + #, c-format +-msgid "Cannot find a valid baseurl for repo: %s" ++msgid "repo '%s': 'basecachedir' is not set" + msgstr "" + +-#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 ++#: libdnf/repo/Repo.cpp:512 + msgid "" + "Maximum download speed is lower than minimum. Please change configuration of " + "minrate or throttle" + msgstr "" + +-#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 ++#: libdnf/repo/Repo.cpp:546 ++#, c-format ++msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'" ++msgstr "" ++ ++#: libdnf/repo/Repo.cpp:548 ++msgid "'proxy_username' is set but not 'proxy_password'" ++msgstr "" ++ ++#: libdnf/repo/Repo.cpp:629 ++#, c-format ++msgid "Cannot find a valid baseurl for repo: %s" ++msgstr "" ++ ++#: libdnf/repo/Repo.cpp:660 libdnf/repo/Repo.cpp:682 + #, c-format + msgid "%s: gpgme_data_new_from_fd(): %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:641 libdnf/repo/Repo.cpp:663 ++#: libdnf/repo/Repo.cpp:668 libdnf/repo/Repo.cpp:690 + #, c-format + msgid "%s: gpgme_op_import(): %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:686 libdnf/repo/Repo.cpp:752 libdnf/repo/Repo.cpp:880 ++#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907 + #, c-format + msgid "%s: gpgme_ctx_set_engine_info(): %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:777 ++#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804 + #, c-format + msgid "can not list keys: %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:806 ++#: libdnf/repo/Repo.cpp:833 + #, c-format + msgid "Failed to retrieve GPG key for repo '%s': %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:859 ++#: libdnf/repo/Repo.cpp:886 + #, c-format + msgid "repo %s: 0x%s already imported" + msgstr "" + +-#: libdnf/repo/Repo.cpp:887 ++#: libdnf/repo/Repo.cpp:914 + #, c-format + msgid "repo %s: imported key 0x%s." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1131 ++#: libdnf/repo/Repo.cpp:1162 + #, c-format + msgid "reviving: repo '%s' skipped, no metalink." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1150 ++#: libdnf/repo/Repo.cpp:1181 + #, c-format + msgid "reviving: repo '%s' skipped, no usable hash." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1173 ++#: libdnf/repo/Repo.cpp:1204 + #, c-format + msgid "reviving: failed for '%s', mismatched %s sum." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1179 ++#: libdnf/repo/Repo.cpp:1210 + #, c-format + msgid "reviving: '%s' can be revived - metalink checksums match." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1204 ++#: libdnf/repo/Repo.cpp:1235 + #, c-format + msgid "reviving: '%s' can be revived - repomd matches." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1206 ++#: libdnf/repo/Repo.cpp:1237 + #, c-format + msgid "reviving: failed for '%s', mismatched repomd." + msgstr "" + +-#: libdnf/repo/Repo.cpp:1224 ++#: libdnf/repo/Repo.cpp:1255 + #, c-format + msgid "Cannot create repo destination directory \"%s\": %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1230 ++#: libdnf/repo/Repo.cpp:1261 + #, c-format + msgid "Cannot create repo temporary directory \"%s\": %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1244 ++#: libdnf/repo/Repo.cpp:1275 + #, c-format + msgid "Cannot create directory \"%s\": %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1267 ++#: libdnf/repo/Repo.cpp:1298 + #, c-format + msgid "Cannot rename directory \"%s\" to \"%s\": %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1290 ++#: libdnf/repo/Repo.cpp:1321 + #, c-format + msgid "repo: using cache for: %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1302 ++#: libdnf/repo/Repo.cpp:1333 + #, c-format + msgid "Cache-only enabled but no cache for '%s'" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1306 ++#: libdnf/repo/Repo.cpp:1337 + #, c-format + msgid "repo: downloading from remote: %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1312 ++#: libdnf/repo/Repo.cpp:1344 + #, c-format + msgid "Failed to download metadata for repo '%s': %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1338 ++#: libdnf/repo/Repo.cpp:1370 + msgid "getCachedir(): Computation of SHA256 failed" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1363 ++#: libdnf/repo/Repo.cpp:1398 + #, c-format + msgid "Cannot create persistdir \"%s\": %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1763 ++#: libdnf/repo/Repo.cpp:1775 + msgid "resume cannot be used simultaneously with the byterangestart param" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1780 ++#: libdnf/repo/Repo.cpp:1792 + #, c-format + msgid "PackageTarget initialization failed: %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1886 ++#: libdnf/repo/Repo.cpp:1898 + #, c-format + msgid "Cannot open %s: %s" + msgstr "" + +-#: libdnf/repo/Repo.cpp:1930 ++#: libdnf/repo/Repo.cpp:1942 + #, c-format + msgid "Log handler with id %ld doesn't exist" + msgstr "" +@@ -884,13 +1052,13 @@ msgstr "" + msgid "In progress" + msgstr "" + +-#: libdnf/transaction/Swdb.cpp:188 libdnf/transaction/Swdb.cpp:216 +-#: libdnf/transaction/Swdb.cpp:228 libdnf/transaction/Swdb.cpp:245 +-#: libdnf/transaction/Swdb.cpp:384 libdnf/transaction/Swdb.cpp:394 ++#: libdnf/transaction/Swdb.cpp:187 libdnf/transaction/Swdb.cpp:215 ++#: libdnf/transaction/Swdb.cpp:227 libdnf/transaction/Swdb.cpp:244 ++#: libdnf/transaction/Swdb.cpp:383 libdnf/transaction/Swdb.cpp:393 + msgid "Not in progress" + msgstr "" + +-#: libdnf/transaction/Swdb.cpp:255 ++#: libdnf/transaction/Swdb.cpp:254 + msgid "No transaction in progress" + msgstr "" + diff --git a/po/zh_CN.po b/po/zh_CN.po -index 9583b075..6bb1680f 100644 +index 9583b07..bdd2694 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po -@@ -1,19 +1,20 @@ +@@ -1,19 +1,21 @@ -# Charles Lee , 2017. #zanata, 2020. +-# Ludek Janda , 2018. #zanata +# Charles Lee , 2017. #zanata, 2020, 2021. - # Ludek Janda , 2018. #zanata -+# Sundeep Anand , 2021. ++# Ludek Janda , 2018. #zanata, 2021. ++# Sundeep Anand , 2021, 2022. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" @@ -3386,21 +4501,22 @@ index 9583b075..6bb1680f 100644 -"PO-Revision-Date: 2020-07-09 13:27+0000\n" -"Last-Translator: Charles Lee \n" -"Language-Team: Chinese (Simplified) \n" -+"POT-Creation-Date: 2021-08-11 14:28+0200\n" -+"PO-Revision-Date: 2021-09-06 17:27+0000\n" ++"POT-Creation-Date: 2022-02-28 11:03+0100\n" ++"PO-Revision-Date: 2022-03-02 10:16+0000\n" +"Last-Translator: Sundeep Anand \n" -+"Language-Team: Chinese (Simplified) \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.8\n" ++"X-Generator: Weblate 4.11\n" #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40 msgid "no value specified" -@@ -32,37 +33,46 @@ msgstr "无法把 '%s' 转换为字节" +@@ -32,37 +34,46 @@ msgstr "无法把 '%s' 转换为字节" #: libdnf/conf/ConfigMain.cpp:83 libdnf/conf/OptionSeconds.cpp:66 #, c-format msgid "unknown unit '%s'" @@ -3460,7 +4576,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/conf/OptionNumber.cpp:73 #, c-format -@@ -89,26 +99,126 @@ msgstr "给定的路径 “%s” 不存在。" +@@ -89,26 +100,128 @@ msgstr "给定的路径 “%s” 不存在。" msgid "could not convert '%s' to seconds" msgstr "无法把 '%s' 转换为秒" @@ -3502,8 +4618,7 @@ index 9583b075..6bb1680f 100644 +#: libdnf/dnf-context.cpp:3297 +#, c-format +msgid "" -+"Only module name is required. Ignoring unneeded information in argument: " -+"'%s'" ++"Only module name is required. Ignoring unneeded information in argument: '%s'" +msgstr "只需要模块名。忽略参数 '%s' 中的无用信息" + +#: libdnf/dnf-context.cpp:3311 @@ -3558,16 +4673,19 @@ index 9583b075..6bb1680f 100644 +#: libdnf/dnf-context.cpp:3627 +#, c-format +msgid "" -+"The operation would result in switching of module '%s' stream '%s' to stream" -+" '%s'" ++"The operation would result in switching of module '%s' stream '%s' to stream " ++"'%s'" +msgstr "这个操作会把模块 '%s' 从流 '%s' 切换到流 '%s'" + +#: libdnf/dnf-context.cpp:3631 +msgid "" +"It is not possible to switch enabled streams of a module.\n" -+"It is recommended to remove all installed content from the module, and reset the module using 'microdnf module reset ' command. After you reset the module, you can install the other stream." ++"It is recommended to remove all installed content from the module, and reset " ++"the module using 'microdnf module reset ' command. After you " ++"reset the module, you can install the other stream." +msgstr "" -+"无法切换一个模块已启用的流。 推荐从模块中删除所有已安装的内容,使用 'microdnf module reset ' " ++"无法切换一个模块已启用的流。 \n" ++"推荐从模块中删除所有已安装的内容,使用 'microdnf module reset ' " +"命令重置模块。在重置模块后就可以安装其他流。" + +#: libdnf/dnf-goal.cpp:85 @@ -3593,7 +4711,7 @@ index 9583b075..6bb1680f 100644 #, c-format msgid " Problem: %s\n" msgstr " 问题: %s\n" -@@ -118,7 +228,7 @@ msgstr " 问题: %s\n" +@@ -118,7 +231,7 @@ msgstr " 问题: %s\n" msgid "" "No available modular metadata for modular package '%s'; cannot be installed " "on the system" @@ -3602,7 +4720,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/dnf-rpmts.cpp:121 libdnf/dnf-rpmts.cpp:166 #, c-format -@@ -173,87 +283,87 @@ msgstr "无法找到软件包 %s" +@@ -173,87 +286,87 @@ msgstr "无法找到软件包 %s" msgid "could not add erase element %1$s(%2$i)" msgstr "无法添加删除元素 %1$s(%2$i)" @@ -3714,7 +4832,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/dnf-state.cpp:1184 #, c-format -@@ -291,7 +401,7 @@ msgstr "无法确保 %1$s,因为 repo %2$s 没有找到 (%3$i repos 已加载) +@@ -291,7 +404,7 @@ msgstr "无法确保 %1$s,因为 repo %2$s 没有找到 (%3$i repos 已加载) #: libdnf/dnf-transaction.cpp:367 msgid "Failed to check untrusted: " @@ -3723,7 +4841,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/dnf-transaction.cpp:377 #, c-format -@@ -310,7 +420,7 @@ msgstr "无法为 CacheDir 获得值" +@@ -310,7 +423,7 @@ msgstr "无法为 CacheDir 获得值" #: libdnf/dnf-transaction.cpp:911 #, c-format msgid "Failed to get filesystem free size for %s: " @@ -3732,7 +4850,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/dnf-transaction.cpp:919 #, c-format -@@ -322,26 +432,26 @@ msgstr "无法为 %s 获得文件系统可用空间的大小" +@@ -322,26 +435,26 @@ msgstr "无法为 %s 获得文件系统可用空间的大小" msgid "Not enough free space in %1$s: needed %2$s, available %3$s" msgstr "%1$s 没有足够的空闲空间: 需要 %2$s,可用 %3$s" @@ -3745,13 +4863,15 @@ index 9583b075..6bb1680f 100644 +#: libdnf/dnf-transaction.cpp:1416 #, c-format msgid "Error %i running transaction test" - msgstr "错误 %i 运行事务测试" +-msgstr "错误 %i 运行事务测试" ++msgstr "运行事务测试时错误 %i" -#: libdnf/dnf-transaction.cpp:1458 +#: libdnf/dnf-transaction.cpp:1456 #, c-format msgid "Error %i running transaction" - msgstr "错误 %i 运行事务" +-msgstr "错误 %i 运行事务" ++msgstr "运行事务时错误 %i" -#: libdnf/dnf-transaction.cpp:1473 +#: libdnf/dnf-transaction.cpp:1472 @@ -3764,7 +4884,7 @@ index 9583b075..6bb1680f 100644 #, c-format msgid "cannot open directory %1$s: %2$s" msgstr "无法打开目录 %1$s: %2$s" -@@ -351,369 +461,414 @@ msgstr "无法打开目录 %1$s: %2$s" +@@ -351,369 +464,414 @@ msgstr "无法打开目录 %1$s: %2$s" msgid "failed to remove %s" msgstr "无法删除 %s" @@ -4190,41 +5310,41 @@ index 9583b075..6bb1680f 100644 +msgstr "重置模块:\n" -#: libdnf/module/ModulePackageContainer.cpp:1569 -+#: libdnf/module/ModulePackageContainer.cpp:1599 ++#: libdnf/module/ModulePackageContainer.cpp:1638 #, c-format msgid "Unable to load modular Fail-Safe data at '%s'" -msgstr "" +msgstr "无法加载位于 '%s' 的模块 Fail-Safe 数据" -#: libdnf/module/ModulePackageContainer.cpp:1575 -+#: libdnf/module/ModulePackageContainer.cpp:1605 ++#: libdnf/module/ModulePackageContainer.cpp:1644 #, c-format msgid "Unable to load modular Fail-Safe data for module '%s:%s'" -msgstr "" +msgstr "无法为模块 '%s:%s' 加载模块 Fail-Safe 数据" -#: libdnf/module/ModulePackageContainer.cpp:1639 -+#: libdnf/module/ModulePackageContainer.cpp:1663 ++#: libdnf/module/ModulePackageContainer.cpp:1702 #, c-format msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s" -msgstr "" +msgstr "无法为模块 Fail Safe 数据创建目录 \"%s\" : %s" -#: libdnf/module/ModulePackageContainer.cpp:1661 -+#: libdnf/module/ModulePackageContainer.cpp:1679 ++#: libdnf/module/ModulePackageContainer.cpp:1718 #, c-format msgid "Unable to save a modular Fail Safe data to '%s'" -msgstr "" +msgstr "无法把模块 Fail Safe 数据保存到 '%s'" -#: libdnf/module/ModulePackageContainer.cpp:1686 -+#: libdnf/module/ModulePackageContainer.cpp:1702 ++#: libdnf/module/ModulePackageContainer.cpp:1741 #, c-format msgid "Unable to remove a modular Fail Safe data in '%s'" -msgstr "" +msgstr "无法删除 '%s' 处的模块 Fail Safe 数据" + -+#: libdnf/module/ModulePackageContainer.cpp:1734 ++#: libdnf/module/ModulePackageContainer.cpp:1773 +#, c-format +msgid "" +"Unable to apply modular obsoletes to '%s:%s' because target module '%s' is " @@ -4310,16 +5430,16 @@ index 9583b075..6bb1680f 100644 #: libdnf/repo/DependencySplitter.cpp:50 msgid "" -@@ -721,6 +876,8 @@ msgid "" +@@ -721,6 +879,8 @@ msgid "" "deprecated and the support will be dropped in future versions. Use '=' " "operator instead." msgstr "" -+"在 reldeps 中使用 '==' 操作符可能导致一个未定义的行为。这个操作符已被废弃,并且在未来的版本中会取消对它的支持。请使用 '=' " -+"操作符代替。" ++"在 reldeps 中使用 '==' 操作符可能导致一个未定义的行为。这个操作符已被废弃,并" ++"且在未来的版本中会取消对它的支持。请使用 '=' 操作符代替。" #: libdnf/repo/Repo.cpp:321 #, c-format -@@ -732,146 +889,161 @@ msgstr "软件仓库 %s 没有设置镜像或者 baseurl。" +@@ -732,146 +892,161 @@ msgstr "软件仓库 %s 没有设置镜像或者 baseurl。" msgid "Repository '%s' has unsupported type: 'type=%s', skipping." msgstr "仓库 '%s' 有不被支持的类型: 'type=%s', 忽略。" @@ -4335,8 +5455,10 @@ index 9583b075..6bb1680f 100644 -#: libdnf/repo/Repo.cpp:583 libdnf/repo/Repo.cpp:1672 +#: libdnf/repo/Repo.cpp:512 msgid "" - "Maximum download speed is lower than minimum. Please change configuration of" - " minrate or throttle" +-"Maximum download speed is lower than minimum. Please change configuration of" +-" minrate or throttle" ++"Maximum download speed is lower than minimum. Please change configuration of " ++"minrate or throttle" msgstr "最大下载速度低于最小值。请修改 minrate 或 throttle 的配置" -#: libdnf/repo/Repo.cpp:633 libdnf/repo/Repo.cpp:655 @@ -4516,7 +5638,7 @@ index 9583b075..6bb1680f 100644 #, c-format msgid "Log handler with id %ld doesn't exist" msgstr "id 为 %ld 的日志处理器不存在" -@@ -880,13 +1052,13 @@ msgstr "id 为 %ld 的日志处理器不存在" +@@ -880,13 +1055,13 @@ msgstr "id 为 %ld 的日志处理器不存在" msgid "In progress" msgstr "进行中" @@ -4534,7 +5656,7 @@ index 9583b075..6bb1680f 100644 msgid "No transaction in progress" msgstr "没有事务在进行中" -@@ -900,7 +1072,7 @@ msgstr "试图在已完成的事务中更新事务" +@@ -900,7 +1075,7 @@ msgstr "试图在已完成的事务中更新事务" #: libdnf/transaction/Transformer.cpp:76 msgid "Database Corrupted: no row 'version' in table 'config'" @@ -4543,7 +5665,7 @@ index 9583b075..6bb1680f 100644 #: libdnf/transaction/Transformer.cpp:681 msgid "Transformer: can't open history persist dir" -@@ -925,6 +1097,3 @@ msgstr "无法向未保存的事务中添加控制台输出" +@@ -925,6 +1100,3 @@ msgstr "无法向未保存的事务中添加控制台输出" #~ msgid "Bad id for repo: %s, byte = %s %d" #~ msgstr "repo 的 id 无效: %s, byte = %s %d" @@ -4551,5 +5673,5 @@ index 9583b075..6bb1680f 100644 -#~ msgid "failed calculating RPMDB checksum" -#~ msgstr "无法计算 RPMDB checksum" -- -2.31.1 +2.35.1 diff --git a/SPECS/libdnf.spec b/SPECS/libdnf.spec index 59202ed..40652e9 100644 --- a/SPECS/libdnf.spec +++ b/SPECS/libdnf.spec @@ -56,7 +56,7 @@ Name: libdnf Version: %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version} -Release: 3%{?dist} +Release: 8%{?dist} Summary: Library providing simplified C and Python API to libsolv License: LGPLv2+ URL: https://github.com/rpm-software-management/libdnf @@ -83,7 +83,10 @@ Patch19: 0019-Remove-redundant-test.patch Patch20: 0020-Fix-dnf_context_module_install-memory-leaks.patch Patch21: 0021-covscan-remove-unused-vars-mark-private-func-static-return-values.patch Patch22: 0022-hawkey-surrogateescape-error-handler-to-decode-UTF-8-strings-RhBug1893176.patch -Patch23: 0023-Update-translations.patch +Patch23: 0023-Turn-off-strict-validation-of-modulemd-documents-RhBug200485320071662007167.patch +Patch24: 0024-Add-unittest-for-setting-up-repo-with-empty-keyfile-RhBug1994614.patch +Patch25: 0025-Add-getLatestModules.patch +Patch26: 0026-Update-translations-RhBug-2017272.patch BuildRequires: cmake BuildRequires: gcc @@ -328,8 +331,23 @@ popd %endif %changelog -* Mon Sep 13 2021 Marek Blaha - 0.63.0-3 -- Update translations (RhBug:1961634) +* Fri Mar 18 2022 Marek Blaha - 0.63.0-8 +- Update translations + +* Fri Jan 14 2022 Pavla Kratochvilova - 0.63.0-7 +- Rebuild with new release number + +* Tue Jan 11 2022 Pavla Kratochvilova - 0.63.0-6 +- Add getLatestModules() + +* Mon Nov 29 2021 Pavla Kratochvilova - 0.63.0-5 +- Add unittest for setting up repo with empty keyfile (RhBug:1994614) + +* Tue Nov 09 2021 Pavla Kratochvilova - 0.63.0-4 +- Bump release number because of conflicting version of 8.5 build + +* Tue Nov 09 2021 Pavla Kratochvilova - 0.63.0-3 +- Turn off strict validation of modulemd documents (RhBug:2004853,2007166,2007167) * Tue Jul 27 2021 Pavla Kratochvilova - 0.63.0-2 - Fix: dnf_context_module_install: memory leaks