Blob Blame History Raw
From 8db854d225eebe0929a2fa9cdb003f0fa4847a3e Mon Sep 17 00:00:00 2001
From: Marek Blaha <mblaha@redhat.com>
Date: Mon, 21 Mar 2022 10:15:10 +0100
Subject: [PATCH] Update translations (RhBug:2017349)

---
 po/fr.po      | 421 +++++++++++++++++++++-------------------
 po/ja.po      | 471 ++++++++++++++++++++++++++-------------------
 po/ko.po      | 407 ++++++++++++++++++++++-----------------
 po/libdnf.pot | 247 +++++++++++++-----------
 po/zh_CN.po   | 519 +++++++++++++++++++++++++++-----------------------
 5 files changed, 1140 insertions(+), 925 deletions(-)

diff --git a/po/fr.po b/po/fr.po
index f89cdfa8..d0b10345 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -1,25 +1,27 @@
-# Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2016. #zanata, 2021.
+# Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2016. #zanata
 # José Fournier <jaaf64@zoraldia.com>, 2016. #zanata
 # José Fournier <jaaf64@zoraldia.com>, 2017. #zanata
 # Jérôme Fenal <jfenal@gmail.com>, 2017. #zanata
-# Ludek Janda <ljanda@redhat.com>, 2018. #zanata
-# Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2019. #zanata, 2021.
-# Julien Humbert <julroy67@gmail.com>, 2020, 2021.
-# Arnaud T. <listes.00@gmail.com>, 2020.
+# Ludek Janda <ljanda@redhat.com>, 2018. #zanata, 2021.
+# Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>, 2019. #zanata
+# Julien Humbert <julroy67@gmail.com>, 2020.
+# Sundeep Anand <suanand@redhat.com>, 2021, 2022.
+# Titouan Bénard <itotutona@evta.fr>, 2021.
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-05-16 09:18-0400\n"
-"PO-Revision-Date: 2021-05-17 03:02+0000\n"
-"Last-Translator: Julien Humbert <julroy67@gmail.com>\n"
-"Language-Team: French <https://translate.fedoraproject.org/projects/dnf/libdnf-dnf-4-master/fr/>\n"
+"POT-Creation-Date: 2022-02-28 10:38+0100\n"
+"PO-Revision-Date: 2022-03-02 10:16+0000\n"
+"Last-Translator: Sundeep Anand <suanand@redhat.com>\n"
+"Language-Team: French <https://translate.fedoraproject.org/projects/dnf/"
+"libdnf-rhel-9/fr/>\n"
 "Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.6.2\n"
+"X-Generator: Weblate 4.11\n"
 
 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40
 msgid "no value specified"
@@ -51,9 +53,9 @@ msgstr "la valeur 1 n’est pas autorisée"
 
 #: libdnf/conf/ConfigMain.cpp:209
 msgid "negative value is not allowed"
-msgstr "une valeur négative n’est pas autorisée"
+msgstr "la valeur négative n'est pas autorisée"
 
-#: libdnf/conf/ConfigMain.cpp:341
+#: libdnf/conf/ConfigMain.cpp:343
 #, c-format
 msgid "percentage '%s' is out of range"
 msgstr "le pourcentage « %s » est en dehors des limites"
@@ -108,140 +110,161 @@ msgstr "n’a pu convertir « %s » en secondes"
 msgid "GetValue(): Value not set"
 msgstr "GetValue() : valeur non définie"
 
-#: libdnf/dnf-context.cpp:3170 libdnf/dnf-context.cpp:3179
+#: libdnf/dnf-context.cpp:3178 libdnf/dnf-context.cpp:3187
 #, c-format
 msgid "Cannot enable more streams from module '%s' at the same time"
-msgstr "Impossible d’activer plus de flux du module « %s » en même temps"
+msgstr "Ne peut pas activer plus de flux du module '%s' en même temps"
 
-#: libdnf/dnf-context.cpp:3188 libdnf/dnf-context.cpp:3206
+#: libdnf/dnf-context.cpp:3196 libdnf/dnf-context.cpp:3214
 #, c-format
 msgid ""
 "Cannot enable module '%1$s' stream '%2$s': State of module already modified"
 msgstr ""
-"Impossible d'activer le module « %1$s » flux « %2$s » : Etat 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
+#: libdnf/dnf-context.cpp:3263
 #, c-format
 msgid "Modular dependency problem with Defaults: %s"
-msgstr "Problème de dépendance Modular avec Defaults : %s"
+msgstr "Problème de dépendance modulaire avec les valeurs par défaut : %s"
 
-#: libdnf/dnf-context.cpp:3256
+#: libdnf/dnf-context.cpp:3266
 #, c-format
 msgid "Modular dependency problem with the latest modules: %s"
-msgstr "Problème de dépendance modulaire avec les derniers modules : %s"
+msgstr "Problème de dépendance modulaire avec les derniers modules : %s"
 
-#: libdnf/dnf-context.cpp:3260
+#: libdnf/dnf-context.cpp:3270
 #, c-format
 msgid "Modular dependency problem: %s"
-msgstr "Problème de dépendances Modular : %s"
+msgstr "Problème de dépendance modulaire : %s"
 
-#: libdnf/dnf-context.cpp:3294 libdnf/dnf-context.cpp:3318
-#: libdnf/dnf-context.cpp:3329 libdnf/dnf-context.cpp:3368
-#: libdnf/dnf-context.cpp:3384 libdnf/dnf-context.cpp:3416
-#: libdnf/dnf-context.cpp:3460 libdnf/dnf-context.cpp:3470
+#: libdnf/dnf-context.cpp:3293 libdnf/dnf-context.cpp:3317
+#: libdnf/dnf-context.cpp:3328 libdnf/dnf-context.cpp:3367
+#: libdnf/dnf-context.cpp:3383 libdnf/dnf-context.cpp:3415
+#: libdnf/dnf-context.cpp:3464 libdnf/dnf-context.cpp:3474
 #, c-format
 msgid "Unable to resolve argument '%s'"
-msgstr "Impossible de résoudre l’argument « %s »"
+msgstr "Impossible de résoudre le paramètre ’%s’"
 
-#: libdnf/dnf-context.cpp:3301
+#: libdnf/dnf-context.cpp:3300
 #, 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 »"
+"ignorés : ’%s’"
 
-#: libdnf/dnf-context.cpp:3315
+#: libdnf/dnf-context.cpp:3314
 #, c-format
 msgid "Cannot reset module '%s': State of module already modified"
 msgstr ""
-"Impossible de réinitialiser le module « %s » : Etat du module déjà modifié"
+"Impossible de réinitialiser le module '%s' : État du module déjà modifié"
 
-#: libdnf/dnf-context.cpp:3326
+#: libdnf/dnf-context.cpp:3325
 #, c-format
 msgid "Cannot disable module '%s': State of module already modified"
-msgstr ""
-"Impossible de désactiver le module « %s » : Etat du module déjà modifié"
+msgstr "Impossible de désactiver le module '%s' : État du module déjà modifié"
 
-#: libdnf/dnf-context.cpp:3357 libdnf/dnf-context.cpp:3449
-#: libdnf/dnf-context.cpp:3559
+#: libdnf/dnf-context.cpp:3356 libdnf/dnf-context.cpp:3452
+#: libdnf/dnf-context.cpp:3633
 msgid "No modular data available"
 msgstr "Aucune donnée modulaire disponible"
 
-#: libdnf/dnf-context.cpp:3374
+#: libdnf/dnf-context.cpp:3373
 #, c-format
 msgid "Ignoring unneeded information in argument: '%s'"
-msgstr "Ces informations inutiles ont été ignorées dans l'argument : « %s »"
+msgstr "Ignorer les informations inutiles dans l'argumentation : '%s'"
 
-#: libdnf/dnf-context.cpp:3412
+#: libdnf/dnf-context.cpp:3411
 #, c-format
 msgid ""
 "Problem during enablement of dependency tree for module '%1$s' stream "
 "'%2$s': %3$s"
 msgstr ""
-"Problème durant l'activation de l'arbre de dépendances pour le module « %1$s"
-" » du flux « %2$s » : %3$s"
+"Problème lors de l'activation de l'arbre des dépendances pour le module "
+"'%1$s' flux '%2$s' : %3$s"
 
-#: libdnf/dnf-context.cpp:3424
-msgid "Problems appeared for module enable request"
-msgstr "Des problèmes sont apparus durant la requête d’activation du module"
+#: libdnf/dnf-context.cpp:3423
+msgid "Problems appeared for module enable request:"
+msgstr "Des problèmes sont apparus pour la demande d'activation du module :"
+
+#: libdnf/dnf-context.cpp:3518
+#, c-format
+msgid "No active module packages found for module spec '%s'"
+msgstr "Aucun paquetage de module actif n'a été trouvé pour le module spec '%s'"
 
-#. this really should never happen; unless the modular repodata is corrupted
-#: libdnf/dnf-context.cpp:3496
+#: libdnf/dnf-context.cpp:3523
 #, c-format
-msgid "Failed to parse module artifact NEVRA '%s'"
-msgstr "Échec de l’analyse du module d’artéfact NEVRA : %s"
+msgid "Cannot install module '%s' from fail-safe repository"
+msgstr "Impossible d'installer le module '%s' à partir du dépôt de sécurité"
 
 #: libdnf/dnf-context.cpp:3530
-msgid "Problems appeared for module install request"
-msgstr "Des problèmes sont apparus durant la requête d’installation du module"
+#, c-format
+msgid "No profile found matching '%s'"
+msgstr "Aucun profil trouvé correspondant à '%s'"
 
-#: libdnf/dnf-context.cpp:3590
-msgid "Problems appeared for module reset request"
-msgstr ""
-"Des problèmes sont apparus durant la requête de réinitialisation du module"
+#: libdnf/dnf-context.cpp:3584
+#, c-format
+msgid "No match for package '%s' for module spec %s"
+msgstr "Aucune correspondance pour le paquet '%s' pour le module spec %s"
+
+#: libdnf/dnf-context.cpp:3595
+#, c-format
+msgid "Problem during install for module '%1$s' stream '%2$s': %3$s"
+msgstr "Problème lors de l'installation du module '%1$s' stream '%2$s' : %3$s"
+
+#: libdnf/dnf-context.cpp:3604
+msgid "Problems appeared for module install request:"
+msgstr "Des problèmes sont apparus pour la demande d'installation du module :"
 
-#: libdnf/dnf-context.cpp:3592
-msgid "Problems appeared for module disable request"
+#: libdnf/dnf-context.cpp:3663
+msgid "Problems appeared for module reset request:"
 msgstr ""
-"Des problèmes sont apparus durant la requête de désactivation du module"
+"Des problèmes sont apparus pour la demande de réinitialisation des modules :"
 
-#: libdnf/dnf-context.cpp:3628
+#: libdnf/dnf-context.cpp:3664 libdnf/dnf-context.cpp:3723
+msgid "Problems appeared for module disable request:"
+msgstr "Des problèmes sont apparus pour la demande de désactivation du module :"
+
+#: libdnf/dnf-context.cpp:3755
 #, 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:3632
+#: libdnf/dnf-context.cpp:3759
 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 <module_name>' 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 <module_name>' 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.\n"
-"Il est recommandé de retirer tout le contenu installé du module, et de réinitialiser le module en utilisant la commande « dnf module reset <nom_du_module> ». Après la réinitialisation, vous pourrez installer les autres flux."
+"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 "
+"<module_name>’. Après la réinitialisation du module, vous pouvez installer "
+"les autres flux."
 
-#: libdnf/dnf-goal.cpp:85
+#: libdnf/dnf-goal.cpp:107
 msgid "Could not depsolve transaction; "
 msgstr "Impossible de depsolve la transaction ; "
 
-#: libdnf/dnf-goal.cpp:87
+#: libdnf/dnf-goal.cpp:109
 #, c-format
 msgid "%i problem detected:\n"
 msgid_plural "%i problems detected:\n"
 msgstr[0] "%i problème détecté :\n"
 msgstr[1] "%i problèmes détectés :\n"
 
-#: libdnf/dnf-goal.cpp:95
+#: libdnf/dnf-goal.cpp:117
 #, c-format
 msgid " Problem %1$i: %2$s\n"
 msgstr " Problème %1$i : %2$s\n"
 
-#: libdnf/dnf-goal.cpp:97
+#: libdnf/dnf-goal.cpp:119
 #, c-format
 msgid " Problem: %s\n"
 msgstr " Problème : %s\n"
@@ -308,84 +331,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)"
 
-#: libdnf/dnf-sack.cpp:395
+#: libdnf/dnf-sack.cpp:394
 msgid "failed to add solv"
 msgstr "n’a pu ajouter solv"
 
-#: libdnf/dnf-sack.cpp:414
+#: libdnf/dnf-sack.cpp:413
 #, c-format
 msgid "no %1$s string for %2$s"
 msgstr "aucune chaine %1$s pour %2$s"
 
-#: libdnf/dnf-sack.cpp:424
+#: libdnf/dnf-sack.cpp:423
 #, c-format
 msgid "failed to open: %s"
 msgstr "n’a pas pu ouvrir : %s"
 
-#: libdnf/dnf-sack.cpp:503
+#: libdnf/dnf-sack.cpp:502
 #, c-format
 msgid "cannot create temporary file: %s"
 msgstr "n’a pas pu créer le fichier temporaire : %s"
 
-#: libdnf/dnf-sack.cpp:513
+#: libdnf/dnf-sack.cpp:512
 #, c-format
 msgid "failed opening tmp file: %s"
 msgstr "n’a pas pu ouvrir le fichier tmp : %s"
 
-#: libdnf/dnf-sack.cpp:525
+#: libdnf/dnf-sack.cpp:524
 #, c-format
 msgid "write_main() failed writing data: %i"
 msgstr "write_main() n’a pu écrire les données : %i"
 
-#: libdnf/dnf-sack.cpp:542
+#: libdnf/dnf-sack.cpp:541
 msgid "write_main() failed to re-load written solv file"
 msgstr "write_main() n’a pas pu charger à nouveau le fichier solv"
 
-#: libdnf/dnf-sack.cpp:607
+#: libdnf/dnf-sack.cpp:606
 #, c-format
 msgid "can not create temporary file %s"
 msgstr "n’a pas pu créer le fichier temporaire %s"
 
-#: libdnf/dnf-sack.cpp:625
+#: libdnf/dnf-sack.cpp:624
 #, c-format
 msgid "write_ext(%1$d) has failed: %2$d"
 msgstr "write_ext(%1$d) a échoué : %2$d"
 
-#: libdnf/dnf-sack.cpp:680
+#: libdnf/dnf-sack.cpp:679
 msgid "null repo md file"
-msgstr "null repo md file"
+msgstr "fichier md de dépôt nul"
 
-#: libdnf/dnf-sack.cpp:689
+#: libdnf/dnf-sack.cpp:688
 #, c-format
 msgid "can not read file %1$s: %2$s"
 msgstr "n’a pu lire le fichier %1$s : %2$s"
 
-#: libdnf/dnf-sack.cpp:703
+#: libdnf/dnf-sack.cpp:702
 msgid "repo_add_solv() has failed."
 msgstr "repo_add_solv() a échoué."
 
-#: libdnf/dnf-sack.cpp:716
+#: libdnf/dnf-sack.cpp:715
 msgid "loading of MD_TYPE_PRIMARY has failed."
 msgstr "échec du chargement du MD_TYPE_PRIMARY."
 
-#: libdnf/dnf-sack.cpp:729
+#: libdnf/dnf-sack.cpp:728
 msgid "repo_add_repomdxml/rpmmd() has failed."
 msgstr "repo_add_repomdxml/rpmmd() a échoué."
 
-#: libdnf/dnf-sack.cpp:796
+#: libdnf/dnf-sack.cpp:795
 msgid "failed to auto-detect architecture"
 msgstr "n’a pu auto-détecter l’architecture"
 
-#: libdnf/dnf-sack.cpp:961
+#: libdnf/dnf-sack.cpp:960
 #, c-format
 msgid "failed creating cachedir %s"
 msgstr "n’a pu créer le cachedir %s"
 
-#: libdnf/dnf-sack.cpp:1738
+#: libdnf/dnf-sack.cpp:1737
 msgid "failed loading RPMDB"
 msgstr "n’a pu télécharger RPMDB"
 
-#: libdnf/dnf-sack.cpp:2462
+#: libdnf/dnf-sack.cpp:2521
 #, c-format
 msgid "No module defaults found: %s"
 msgstr "Aucun module par défaut n’a été trouvé : %s"
@@ -414,68 +437,78 @@ msgstr "effectué sur un état %1$p qui n’avait pas de taille définie [%2$s]"
 msgid "already at 100%% state [%s]"
 msgstr "déjà en état à 100%% [%s]"
 
-#: libdnf/dnf-transaction.cpp:300
+#: libdnf/dnf-transaction.cpp:302
 #, c-format
 msgid "Sources not set when trying to ensure package %s"
 msgstr "Sources non définies quand vous essayez d’assurer paquet %s"
 
-#: libdnf/dnf-transaction.cpp:326
+#: libdnf/dnf-transaction.cpp:328
 #, c-format
 msgid "Failed to ensure %1$s as repo %2$s not found(%3$i repos loaded)"
 msgstr "N’a pu assurer %1$s comme dépôt %2$s non trouvé (%3$i dépôts chargés)"
 
-#: libdnf/dnf-transaction.cpp:367
+#: libdnf/dnf-transaction.cpp:369
 msgid "Failed to check untrusted: "
 msgstr "Échec de la vérification d’untrusted : "
 
-#: libdnf/dnf-transaction.cpp:377
+#: libdnf/dnf-transaction.cpp:379
 #, c-format
 msgid "Downloaded file for %s not found"
 msgstr "Fichier téléchargé pour %s non trouvé"
 
-#: libdnf/dnf-transaction.cpp:397
+#: libdnf/dnf-transaction.cpp:399
 #, c-format
 msgid "package %1$s cannot be verified and repo %2$s is GPG enabled: %3$s"
 msgstr ""
 "le paquet %1$s ne peut être vérifié et le dépôt %2$s est activé GPG : %3$s"
 
-#: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903
+#: libdnf/dnf-transaction.cpp:833 libdnf/dnf-transaction.cpp:905
 msgid "Failed to get value for CacheDir"
 msgstr "N’a pas pu obtenir la valeur de CacheDir"
 
-#: libdnf/dnf-transaction.cpp:911
+#: libdnf/dnf-transaction.cpp:913
 #, c-format
 msgid "Failed to get filesystem free size for %s: "
 msgstr ""
 "Échec de l’obtention de l’espace libre du système de fichiers pour %s : "
 
-#: libdnf/dnf-transaction.cpp:919
+#: libdnf/dnf-transaction.cpp:921
 #, c-format
 msgid "Failed to get filesystem free size for %s"
 msgstr "N’a pas pu obtenir la taille libre du système de fichiers pour %s"
 
-#: libdnf/dnf-transaction.cpp:935
+#: libdnf/dnf-transaction.cpp:937
 #, 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:1195
+#: libdnf/dnf-transaction.cpp:1196
 msgid "failed to set root"
 msgstr "n’a pu réussi à définir root"
 
-#: libdnf/dnf-transaction.cpp:1416
+#: libdnf/dnf-transaction.cpp:1417
 #, c-format
 msgid "Error %i running transaction test"
 msgstr "Erreur %i lors du test transactionnel"
 
-#: libdnf/dnf-transaction.cpp:1456
+#: libdnf/dnf-transaction.cpp:1441
+#, c-format
+msgid "Error %i opening rpm database"
+msgstr "Erreur %i lors de l’ouverture de la base de données rpm"
+
+#: libdnf/dnf-transaction.cpp:1449 libdnf/dnf-transaction.cpp:1495
+msgid "The rpmdbCookie() function did not return cookie of rpm database."
+msgstr ""
+"La fonction rpmdbCookie() n'a pas retourné le cookie de la base de données "
+"rpm."
+
+#: libdnf/dnf-transaction.cpp:1464
 #, c-format
 msgid "Error %i running transaction"
 msgstr "Erreur %i pendant la transaction"
 
-#: libdnf/dnf-transaction.cpp:1472
+#: libdnf/dnf-transaction.cpp:1480
 #, c-format
 msgid "Transaction did not go to writing phase, but returned no error(%i)"
 msgstr ""
@@ -501,8 +534,7 @@ msgstr ""
 #: libdnf/goal/Goal.cpp:79
 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"
 
 #: libdnf/goal/Goal.cpp:90 libdnf/goal/Goal.cpp:117
 msgid " does not belong to a distupgrade repository"
@@ -690,42 +722,42 @@ msgstr "le module %s est en conflit avec %s fourni par lui-même"
 msgid "both module %s and %s obsolete %s"
 msgstr "à la fois le module %s et %s rendent obsolète %s"
 
-#: libdnf/goal/Goal.cpp:1055
+#: libdnf/goal/Goal.cpp:1141
 msgid "no solver set"
 msgstr "aucun solveur défini"
 
-#: libdnf/goal/Goal.cpp:1060
+#: libdnf/goal/Goal.cpp:1146
 #, c-format
 msgid "failed to make %s absolute"
 msgstr "n’a pas pu rendre %s absolu"
 
-#: libdnf/goal/Goal.cpp:1067
+#: libdnf/goal/Goal.cpp:1153
 #, c-format
 msgid "failed writing debugdata to %1$s: %2$s"
 msgstr "échec de l’écriture des debugdata dans %1$s : %2$s"
 
-#: libdnf/goal/Goal.cpp:1079
+#: libdnf/goal/Goal.cpp:1165
 msgid "no solv in the goal"
 msgstr "pas de solv dans l’objectif"
 
-#: libdnf/goal/Goal.cpp:1081
+#: libdnf/goal/Goal.cpp:1167
 msgid "no solution, cannot remove protected package"
 msgstr "aucune solution, n’a pas pu supprimer le package protégé"
 
-#: libdnf/goal/Goal.cpp:1084
+#: libdnf/goal/Goal.cpp:1170
 msgid "no solution possible"
 msgstr "aucune solution n’est possible"
 
-#: libdnf/goal/Goal.cpp:1210
+#: libdnf/goal/Goal.cpp:1296
 msgid "Problem: "
-msgstr "Problème : "
+msgstr "Problème : "
 
-#: libdnf/goal/Goal.cpp:1215
+#: libdnf/goal/Goal.cpp:1301
 #, c-format
 msgid "Problem %d: "
-msgstr "Problème %d : "
+msgstr "Probléme %d : "
 
-#: libdnf/goal/Goal.cpp:1542
+#: libdnf/goal/Goal.cpp:1634
 msgid ""
 "The operation would result in removing the following protected packages: "
 msgstr ""
@@ -751,33 +783,33 @@ msgstr "impossible de créer le dossier %1$s : %2$s"
 msgid "cannot stat path %1$s: %2$s"
 msgstr "impossible de stat le chemin %1$s : %2$s"
 
-#: libdnf/module/ModulePackage.cpp:573
+#: libdnf/module/ModulePackage.cpp:604
 #, c-format
 msgid "Invalid format of Platform module: %s"
 msgstr "Format invalide du module de plateforme : %s"
 
-#: libdnf/module/ModulePackage.cpp:588
+#: libdnf/module/ModulePackage.cpp:619
 msgid "Multiple module platforms provided by available packages\n"
 msgstr ""
 "De multiples modules de plateformes sont fournis par les paquets "
 "disponibles\n"
 
-#: libdnf/module/ModulePackage.cpp:601
+#: libdnf/module/ModulePackage.cpp:632
 msgid "Multiple module platforms provided by installed packages\n"
 msgstr ""
 "De multiples modules de plateformes sont fournis par les paquets installés\n"
 
-#: libdnf/module/ModulePackage.cpp:628
+#: libdnf/module/ModulePackage.cpp:659
 #, c-format
 msgid "Detection of Platform Module in %s failed: %s"
 msgstr "La détection des modules de plateformes dans %s a échoué : %s"
 
-#: libdnf/module/ModulePackage.cpp:637
+#: libdnf/module/ModulePackage.cpp:668
 #, c-format
 msgid "Missing PLATFORM_ID in %s"
 msgstr "L'identifiant de la platforme est manquant dans %s"
 
-#: libdnf/module/ModulePackage.cpp:642
+#: libdnf/module/ModulePackage.cpp:673
 msgid "No valid Platform ID detected"
 msgstr "Aucun identifiant de plateforme n'a été détecté"
 
@@ -791,69 +823,68 @@ msgstr "Impossible d’activer les flux pour le module « %s »"
 msgid "Conflicting defaults with repo '%s': %s"
 msgstr "Valeurs par défaut en conflit avec le dépôt « %s » : %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:918
+#: libdnf/module/ModulePackageContainer.cpp:917
 msgid "Installing module profiles:\n"
-msgstr "Installation des profils de module :\n"
+msgstr "Installation des profils de module :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:933
+#: libdnf/module/ModulePackageContainer.cpp:932
 msgid "Disabling module profiles:\n"
-msgstr "Désactivation des profils de module\n"
+msgstr "Désactivation des profils de module :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:948
+#: libdnf/module/ModulePackageContainer.cpp:947
 msgid "Enabling module streams:\n"
-msgstr "Activation des flux de modules :\n"
+msgstr "Activation des flux de modules :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:962
+#: libdnf/module/ModulePackageContainer.cpp:961
 msgid "Switching module streams:\n"
-msgstr "Basculement des flux de modules :\n"
+msgstr "Basculement des flux de modules :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:980
+#: libdnf/module/ModulePackageContainer.cpp:979
 msgid "Disabling modules:\n"
-msgstr "Désactivation des modules :\n"
+msgstr "Désactivation des modules :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:991
+#: libdnf/module/ModulePackageContainer.cpp:990
 msgid "Resetting modules:\n"
-msgstr "Réinitialisation des modules :\n"
+msgstr "Réinitialisation des modules :\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:1674
+#: libdnf/module/ModulePackageContainer.cpp:1704
 #, 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:1680
+#: libdnf/module/ModulePackageContainer.cpp:1710
 #, c-format
 msgid "Unable to load modular Fail-Safe data for module '%s:%s'"
 msgstr ""
 "Impossible de charger les données de sécurité modulaires pour le module "
 "« %s : %s »"
 
-#: libdnf/module/ModulePackageContainer.cpp:1763
+#: libdnf/module/ModulePackageContainer.cpp:1791
 #, c-format
 msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s"
 msgstr ""
 "Impossible de créer le dossier « %s » pour les données de sécurité "
 "modulaires : %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:1779
+#: libdnf/module/ModulePackageContainer.cpp:1807
 #, 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:1802
+#: libdnf/module/ModulePackageContainer.cpp:1830
 #, 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 »"
+msgstr "Impossible de supprimer les données de sécurité modulaires dans « %s »"
 
-#: libdnf/module/ModulePackageContainer.cpp:1834
+#: libdnf/module/ModulePackageContainer.cpp:1862
 #, c-format
 msgid ""
 "Unable to apply modular obsoletes to '%s:%s' because target module '%s' is "
 "disabled"
 msgstr ""
-"Impossible d'appliquer les obsolescences modulaires à « %s:%s » car le "
-"module cible « %s » est désactivé"
+"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
@@ -881,12 +912,12 @@ 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"
 
-#: libdnf/module/modulemd/ModuleMetadata.cpp:219
+#: libdnf/module/modulemd/ModuleMetadata.cpp:221
 #, c-format
 msgid "Cannot retrieve module obsoletes because no stream matching %s: %s"
 msgstr ""
-"Impossible de récupérer les obsolescences modulaires aucun flux ne "
-"correspond à « %s:%s »"
+"Impossible de récupérer les modules obsolètes car aucune correspondance de "
+"flux %s : %s"
 
 #: libdnf/plugin/plugin.cpp:46
 #, c-format
@@ -931,8 +962,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
@@ -946,15 +977,15 @@ msgstr ""
 "Le dépôt « %s » n’a pas de type pris en charge : « type=%s », passer outre."
 
 #: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641
-#: libdnf/repo/Repo.cpp:1382
+#: libdnf/repo/Repo.cpp:1400
 #, c-format
 msgid "repo '%s': 'basecachedir' is not set"
-msgstr "dépôt « %s » : 'basecachedir' n'est pas défini"
+msgstr "repo '%s' : 'basecachedir' n'est pas fixé"
 
 #: 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"
 msgstr ""
 "La vitesse de téléchargement maximale est plus basse que le minimum. "
 "Veuillez modifier les paramètres minrate ou throttle"
@@ -962,11 +993,13 @@ msgstr ""
 #: libdnf/repo/Repo.cpp:546
 #, c-format
 msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'"
-msgstr "dépôt « %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'"
-msgstr "'proxy_username' est défini mais pas 'proxy_password'"
+msgstr ""
+"Le nom d'utilisateur \"proxy_username\" est défini mais pas le mot de passe "
+"\"proxy_password\""
 
 #: libdnf/repo/Repo.cpp:629
 #, c-format
@@ -983,129 +1016,135 @@ msgstr "%s : gpgme_data_new_from_fd() : %s"
 msgid "%s: gpgme_op_import(): %s"
 msgstr "%s : gpgme_op_import() : %s"
 
-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907
+#: libdnf/repo/Repo.cpp:709 libdnf/repo/Repo.cpp:1162 libdnf/repo/Repo.cpp:1236
+#: libdnf/repo/Repo.cpp:1279
+#, c-format
+msgid "Cannot create repo temporary directory \"%s\": %s"
+msgstr "Impossible de créer le répertoire temporaire du dépôt « %s » : %s"
+
+#: libdnf/repo/Repo.cpp:717 libdnf/repo/Repo.cpp:783 libdnf/repo/Repo.cpp:917
 #, c-format
 msgid "%s: gpgme_ctx_set_engine_info(): %s"
 msgstr "%s : gpgme_ctx_set_engine_info() : %s"
 
-#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804
+#: libdnf/repo/Repo.cpp:744 libdnf/repo/Repo.cpp:808
 #, c-format
 msgid "can not list keys: %s"
 msgstr "n’a pas pu lister les clés : %s"
 
-#: libdnf/repo/Repo.cpp:833
+#: libdnf/repo/Repo.cpp:837
 #, c-format
 msgid "Failed to retrieve GPG key for repo '%s': %s"
 msgstr "Impossible de récupérer la clé GPG pour le dépôt « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:886
+#: libdnf/repo/Repo.cpp:890
 #, c-format
 msgid "repo %s: 0x%s already imported"
 msgstr "dépôt %s : 0x%s déjà importé"
 
-#: libdnf/repo/Repo.cpp:914
+#: libdnf/repo/Repo.cpp:904 libdnf/utils/filesystem.cpp:79
+#, c-format
+msgid "Failed to create directory \"%s\": %d - %s"
+msgstr "Impossible de créer le répertoire \"%s« :%d - %s"
+
+#: libdnf/repo/Repo.cpp:924
 #, c-format
 msgid "repo %s: imported key 0x%s."
 msgstr "dépôt %s : clé importée 0x%s."
 
-#: libdnf/repo/Repo.cpp:1162
+#: libdnf/repo/Repo.cpp:1176
 #, c-format
 msgid "reviving: repo '%s' skipped, no metalink."
 msgstr "relance : dépôt « %s » ignoré, pas de méta-lien."
 
-#: libdnf/repo/Repo.cpp:1181
+#: libdnf/repo/Repo.cpp:1195
 #, c-format
 msgid "reviving: repo '%s' skipped, no usable hash."
 msgstr "relance : dépôt « %s » ignoré, pas de hachage utilisable."
 
-#: libdnf/repo/Repo.cpp:1204
+#: libdnf/repo/Repo.cpp:1218
 #, c-format
 msgid "reviving: failed for '%s', mismatched %s sum."
 msgstr "relance : échec pour « %s », la somme de %s ne correspond pas."
 
-#: libdnf/repo/Repo.cpp:1210
+#: libdnf/repo/Repo.cpp:1224
 #, c-format
 msgid "reviving: '%s' can be revived - metalink checksums match."
 msgstr ""
 "relance : « %s » peut être relancé - la somme de contrôle du méta-lien "
 "correspond."
 
-#: libdnf/repo/Repo.cpp:1235
+#: libdnf/repo/Repo.cpp:1253
 #, c-format
 msgid "reviving: '%s' can be revived - repomd matches."
 msgstr "relance : « %s » peut être relancé - le repomd correspond."
 
-#: libdnf/repo/Repo.cpp:1237
+#: libdnf/repo/Repo.cpp:1255
 #, c-format
 msgid "reviving: failed for '%s', mismatched repomd."
 msgstr "relance : échec pour « %s », le repomd ne correspond pas."
 
-#: libdnf/repo/Repo.cpp:1255
+#: libdnf/repo/Repo.cpp:1273
 #, c-format
 msgid "Cannot create repo destination directory \"%s\": %s"
 msgstr "Impossible de créer le répertoire de destination du dépôt « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:1261
-#, c-format
-msgid "Cannot create repo temporary directory \"%s\": %s"
-msgstr "Impossible de créer le répertoire temporaire du dépôt « %s » : %s"
-
-#: libdnf/repo/Repo.cpp:1275
+#: libdnf/repo/Repo.cpp:1293
 #, c-format
 msgid "Cannot create directory \"%s\": %s"
 msgstr "Impossible de créer le répertoire « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:1298
+#: libdnf/repo/Repo.cpp:1316
 #, c-format
 msgid "Cannot rename directory \"%s\" to \"%s\": %s"
 msgstr "Impossible de renommer le répertoire « %s » en « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:1321
+#: libdnf/repo/Repo.cpp:1339
 #, c-format
 msgid "repo: using cache for: %s"
 msgstr "dépôt : utilisation du cache pour : %s"
 
-#: libdnf/repo/Repo.cpp:1333
+#: libdnf/repo/Repo.cpp:1351
 #, c-format
 msgid "Cache-only enabled but no cache for '%s'"
 msgstr "« cache uniquement » activé, mais pas de cache pour « %s »"
 
-#: libdnf/repo/Repo.cpp:1337
+#: libdnf/repo/Repo.cpp:1355
 #, c-format
 msgid "repo: downloading from remote: %s"
 msgstr "dépôt : téléchargement à distance en provenance de : %s"
 
-#: libdnf/repo/Repo.cpp:1344
+#: libdnf/repo/Repo.cpp:1362
 #, c-format
 msgid "Failed to download metadata for repo '%s': %s"
 msgstr "Échec du téléchargement des métadonnées pour le dépôt « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:1370
+#: libdnf/repo/Repo.cpp:1388
 msgid "getCachedir(): Computation of SHA256 failed"
 msgstr "getCachedir() : échec du calcul de SHA256"
 
-#: libdnf/repo/Repo.cpp:1398
+#: libdnf/repo/Repo.cpp:1416
 #, c-format
 msgid "Cannot create persistdir \"%s\": %s"
 msgstr "Impossible de créer le dossier persistant « %s » : %s"
 
-#: libdnf/repo/Repo.cpp:1775
+#: libdnf/repo/Repo.cpp:1793
 msgid "resume cannot be used simultaneously with the byterangestart param"
 msgstr ""
 "« resume » (reprise) ne peut pas être utilisé avec le paramètre "
 "byterangestart"
 
-#: libdnf/repo/Repo.cpp:1792
+#: libdnf/repo/Repo.cpp:1810
 #, c-format
 msgid "PackageTarget initialization failed: %s"
 msgstr "L’initialisation de Package Target a échoué : %s"
 
-#: libdnf/repo/Repo.cpp:1898
+#: libdnf/repo/Repo.cpp:1916
 #, c-format
 msgid "Cannot open %s: %s"
 msgstr "impossible d’ouvrir %s : %s"
 
-#: libdnf/repo/Repo.cpp:1942
+#: libdnf/repo/Repo.cpp:1960
 #, c-format
 msgid "Log handler with id %ld doesn't exist"
 msgstr "Log handler ayant pour id %ld n’existe pas"
@@ -1164,8 +1203,8 @@ msgid "Can't add console output to unsaved transaction"
 msgstr ""
 "Ne peut pas ajouter une sortie de console à une transaction non enregistrée"
 
+#~ msgid "Failed to parse module artifact NEVRA '%s'"
+#~ msgstr "Échec de l'analyse de l'artefact de module '%s'"
+
 #~ msgid "Bad id for repo: %s, byte = %s %d"
 #~ msgstr "ID erroné pour le dépôt : %s, byte = %s %d"
-
-#~ 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 3d6f5c5b..de74c431 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -1,20 +1,22 @@
 # Casey Jones <nahareport@live.com>, 2018. #zanata
-# Ludek Janda <ljanda@redhat.com>, 2018. #zanata
+# Ludek Janda <ljanda@redhat.com>, 2018. #zanata, 2021.
 # Casey Jones <nahareport@yahoo.com>, 2020.
+# Sundeep Anand <suanand@redhat.com>, 2021, 2022.
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-05-16 09:18-0400\n"
-"PO-Revision-Date: 2020-05-05 09:40+0000\n"
-"Last-Translator: Casey Jones <nahareport@yahoo.com>\n"
-"Language-Team: Japanese <https://translate.fedoraproject.org/projects/dnf/libdnf-dnf-4-master/ja/>\n"
+"POT-Creation-Date: 2022-02-28 10:38+0100\n"
+"PO-Revision-Date: 2022-03-02 10:16+0000\n"
+"Last-Translator: Sundeep Anand <suanand@redhat.com>\n"
+"Language-Team: Japanese <https://translate.fedoraproject.org/projects/dnf/"
+"libdnf-rhel-9/ja/>\n"
 "Language: ja\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.0.3\n"
+"X-Generator: Weblate 4.11\n"
 
 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40
 msgid "no value specified"
@@ -41,16 +43,14 @@ msgid "invalid value"
 msgstr "無効な値"
 
 #: libdnf/conf/ConfigMain.cpp:207
-#, fuzzy
-#| msgid "'%s' is not an allowed value"
 msgid "value 1 is not allowed"
-msgstr "'%s' 値は許可されていない値です"
+msgstr "値 1 は許可されません"
 
 #: libdnf/conf/ConfigMain.cpp:209
 msgid "negative value is not allowed"
-msgstr ""
+msgstr "負の値は許可されていません"
 
-#: libdnf/conf/ConfigMain.cpp:341
+#: libdnf/conf/ConfigMain.cpp:343
 #, c-format
 msgid "percentage '%s' is out of range"
 msgstr "パーセンテージ '%s' が範囲外にあります"
@@ -79,12 +79,12 @@ msgstr "'%s' 値は許可されていない値です"
 #: libdnf/conf/OptionNumber.cpp:73
 #, c-format
 msgid "given value [%d] should be less than allowed value [%d]."
-msgstr "指定された値 [%d] は許可された値 [%d]より小さくしてください"
+msgstr "指定された値 [%d] は許可された値 [%d]より小さくしてください。"
 
 #: libdnf/conf/OptionNumber.cpp:76
 #, c-format
 msgid "given value [%d] should be greater than allowed value [%d]."
-msgstr "指定された値 [%d] は許可された値 [%d]より大きくしてください"
+msgstr "指定された値 [%d] は許可された値 [%d]より大きくしてください。"
 
 #: libdnf/conf/OptionPath.cpp:78
 #, c-format
@@ -105,130 +105,158 @@ msgstr "'%s' を 秒に変換できません"
 msgid "GetValue(): Value not set"
 msgstr "GetValue(): 値は設定されていません"
 
-#: libdnf/dnf-context.cpp:3170 libdnf/dnf-context.cpp:3179
-#, fuzzy, c-format
-#| msgid "Cannot enable multiple streams for module '%s'"
+#: libdnf/dnf-context.cpp:3178 libdnf/dnf-context.cpp:3187
+#, c-format
 msgid "Cannot enable more streams from module '%s' at the same time"
-msgstr "モジュール '%s' の複数ストリームを有効化できません"
+msgstr "モジュール '%s' から、さらにストリームを同時に有効にできません"
 
-#: libdnf/dnf-context.cpp:3188 libdnf/dnf-context.cpp:3206
+#: libdnf/dnf-context.cpp:3196 libdnf/dnf-context.cpp:3214
 #, c-format
 msgid ""
 "Cannot enable module '%1$s' stream '%2$s': State of module already modified"
 msgstr ""
+"モジュール '%1$s' ストリーム '%2$s' を有効にできません。モジュールの状態はす"
+"でに変更されています"
 
-#: libdnf/dnf-context.cpp:3253
+#: libdnf/dnf-context.cpp:3263
 #, c-format
 msgid "Modular dependency problem with Defaults: %s"
-msgstr ""
+msgstr "デフォルトのモジュラー依存問題: %s"
 
-#: libdnf/dnf-context.cpp:3256
-#, fuzzy, c-format
-#| msgid "some dependency problem"
+#: libdnf/dnf-context.cpp:3266
+#, c-format
 msgid "Modular dependency problem with the latest modules: %s"
-msgstr "いくつかの依存問題"
+msgstr "最新のモジュールでモジュールの依存関係の問題: %s"
 
-#: libdnf/dnf-context.cpp:3260
-#, fuzzy, c-format
-#| msgid "some dependency problem"
+#: libdnf/dnf-context.cpp:3270
+#, c-format
 msgid "Modular dependency problem: %s"
-msgstr "いくつかの依存問題"
+msgstr "モジュラーの依存に関する問題: %s"
 
-#: libdnf/dnf-context.cpp:3294 libdnf/dnf-context.cpp:3318
-#: libdnf/dnf-context.cpp:3329 libdnf/dnf-context.cpp:3368
-#: libdnf/dnf-context.cpp:3384 libdnf/dnf-context.cpp:3416
-#: libdnf/dnf-context.cpp:3460 libdnf/dnf-context.cpp:3470
-#, fuzzy, c-format
-#| msgid "Failed to resolve: %s"
+#: libdnf/dnf-context.cpp:3293 libdnf/dnf-context.cpp:3317
+#: libdnf/dnf-context.cpp:3328 libdnf/dnf-context.cpp:3367
+#: libdnf/dnf-context.cpp:3383 libdnf/dnf-context.cpp:3415
+#: libdnf/dnf-context.cpp:3464 libdnf/dnf-context.cpp:3474
+#, c-format
 msgid "Unable to resolve argument '%s'"
-msgstr "名前解決に失敗しました: %s"
+msgstr "引数 '%s' を解決できません"
 
-#: libdnf/dnf-context.cpp:3301
+#: libdnf/dnf-context.cpp:3300
 #, c-format
 msgid ""
-"Only module name is required. Ignoring unneeded information in argument: "
-"'%s'"
-msgstr ""
+"Only module name is required. Ignoring unneeded information in argument: '%s'"
+msgstr "モジュール名のみが必要です。引数の不必要な情報は無視します: '%s'"
 
-#: libdnf/dnf-context.cpp:3315
+#: libdnf/dnf-context.cpp:3314
 #, c-format
 msgid "Cannot reset module '%s': State of module already modified"
 msgstr ""
+"モジュール '%s' をリセットできません。モジュールの状態はすでに変更されていま"
+"す"
 
-#: libdnf/dnf-context.cpp:3326
+#: libdnf/dnf-context.cpp:3325
 #, c-format
 msgid "Cannot disable module '%s': State of module already modified"
 msgstr ""
+"モジュール '%s' を無効にできません。モジュールの状態はすでに変更されています"
 
-#: libdnf/dnf-context.cpp:3357 libdnf/dnf-context.cpp:3449
-#: libdnf/dnf-context.cpp:3559
+#: libdnf/dnf-context.cpp:3356 libdnf/dnf-context.cpp:3452
+#: libdnf/dnf-context.cpp:3633
 msgid "No modular data available"
-msgstr ""
+msgstr "モジュールデータは利用できません"
 
-#: libdnf/dnf-context.cpp:3374
+#: libdnf/dnf-context.cpp:3373
 #, c-format
 msgid "Ignoring unneeded information in argument: '%s'"
-msgstr ""
+msgstr "引数の不要な情報は無視します: '%s'"
 
-#: libdnf/dnf-context.cpp:3412
+#: libdnf/dnf-context.cpp:3411
 #, c-format
 msgid ""
 "Problem during enablement of dependency tree for module '%1$s' stream "
 "'%2$s': %3$s"
 msgstr ""
+"モジュール '%1$s' ストリーム '%2$s' の依存関係ツリーの有効化中に問題: %3$s"
 
-#: libdnf/dnf-context.cpp:3424
-msgid "Problems appeared for module enable request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3423
+msgid "Problems appeared for module enable request:"
+msgstr "モジュール有効化リクエストに発生する問題:"
 
-#. this really should never happen; unless the modular repodata is corrupted
-#: libdnf/dnf-context.cpp:3496
-#, fuzzy, c-format
-#| msgid "Failed to upgrade defaults: %s"
-msgid "Failed to parse module artifact NEVRA '%s'"
-msgstr "デフォルトのアップグレードに失敗しました: %s"
+#: libdnf/dnf-context.cpp:3518
+#, c-format
+msgid "No active module packages found for module spec '%s'"
+msgstr "モジュール仕様 '%s' "
+"について、アクティブなモジュールパッケージが見つかりません"
+
+#: libdnf/dnf-context.cpp:3523
+#, c-format
+msgid "Cannot install module '%s' from fail-safe repository"
+msgstr "フェイルセーフリポジトリーからモジュール '%s' をインストールできません"
 
 #: libdnf/dnf-context.cpp:3530
-msgid "Problems appeared for module install request"
-msgstr ""
+#, c-format
+msgid "No profile found matching '%s'"
+msgstr "'%s' にマッチするプロファイルが見つかりません"
 
-#: libdnf/dnf-context.cpp:3590
-msgid "Problems appeared for module reset request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3584
+#, c-format
+msgid "No match for package '%s' for module spec %s"
+msgstr "モジュール仕様 %s について、パッケージ '%s' にマッチする項目はありません"
 
-#: libdnf/dnf-context.cpp:3592
-msgid "Problems appeared for module disable request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3595
+#, c-format
+msgid "Problem during install for module '%1$s' stream '%2$s': %3$s"
+msgstr "モジュール '%1$s' ストリーム '%2$s' のインストール中に問題: %3$s"
+
+#: libdnf/dnf-context.cpp:3604
+msgid "Problems appeared for module install request:"
+msgstr "モジュールインストールリクエストに発生する問題:"
 
-#: libdnf/dnf-context.cpp:3628
+#: libdnf/dnf-context.cpp:3663
+msgid "Problems appeared for module reset request:"
+msgstr "モジュールリセットリクエストに発生する問題:"
+
+#: libdnf/dnf-context.cpp:3664 libdnf/dnf-context.cpp:3723
+msgid "Problems appeared for module disable request:"
+msgstr "モジュール無効化リクエストに発生する問題:"
+
+#: libdnf/dnf-context.cpp:3755
 #, 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:3632
+#: libdnf/dnf-context.cpp:3759
 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 <module_name>' 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 <module_name>' command. After you "
+"reset the module, you can install the other stream."
 msgstr ""
+"有効化されたモジュールのストリームの切り替えはできません。\n"
+"モジュールからすべてのインストールされたコンテンツを削除し、'microdnf module "
+"reset <module_name>' コマンドを使用してモジュールをリセットすることを推奨しま"
+"す。モジュールのリセット後に、別のストリームをインストールできます。"
 
-#: libdnf/dnf-goal.cpp:85
+#: libdnf/dnf-goal.cpp:107
 msgid "Could not depsolve transaction; "
 msgstr "トランザクションを depsolve できませんでした; "
 
-#: libdnf/dnf-goal.cpp:87
+#: libdnf/dnf-goal.cpp:109
 #, c-format
 msgid "%i problem detected:\n"
 msgid_plural "%i problems detected:\n"
 msgstr[0] "%i 問題を検出:\n"
 
-#: libdnf/dnf-goal.cpp:95
+#: libdnf/dnf-goal.cpp:117
 #, c-format
 msgid " Problem %1$i: %2$s\n"
 msgstr " 問題 %1$i: %2$s\n"
 
-#: libdnf/dnf-goal.cpp:97
+#: libdnf/dnf-goal.cpp:119
 #, c-format
 msgid " Problem: %s\n"
 msgstr " 問題: %s\n"
@@ -238,7 +266,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
@@ -277,7 +307,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"
@@ -293,87 +324,87 @@ msgstr "パッケージ %s を見つけることができませんでした"
 msgid "could not add erase element %1$s(%2$i)"
 msgstr "erase 要素 %1$s(%2$i) を追加することができません"
 
-#: libdnf/dnf-sack.cpp:395
+#: libdnf/dnf-sack.cpp:394
 msgid "failed to add solv"
 msgstr "solv の追加に失敗しました"
 
-#: libdnf/dnf-sack.cpp:414
+#: libdnf/dnf-sack.cpp:413
 #, c-format
 msgid "no %1$s string for %2$s"
 msgstr "%2$s の %1$s 文字列はありません"
 
-#: libdnf/dnf-sack.cpp:424
+#: libdnf/dnf-sack.cpp:423
 #, c-format
 msgid "failed to open: %s"
 msgstr "開くことに失敗しました: %s"
 
-#: libdnf/dnf-sack.cpp:503
+#: libdnf/dnf-sack.cpp:502
 #, c-format
 msgid "cannot create temporary file: %s"
 msgstr "一時ファイルを作成できません: %s"
 
-#: libdnf/dnf-sack.cpp:513
+#: libdnf/dnf-sack.cpp:512
 #, c-format
 msgid "failed opening tmp file: %s"
 msgstr "tmp ファイルを開くことに失敗しました: %s"
 
-#: libdnf/dnf-sack.cpp:525
+#: libdnf/dnf-sack.cpp:524
 #, c-format
 msgid "write_main() failed writing data: %i"
 msgstr "write_main() はデータの書き込みに失敗しました: %i"
 
-#: libdnf/dnf-sack.cpp:542
+#: libdnf/dnf-sack.cpp:541
 msgid "write_main() failed to re-load written solv file"
 msgstr "write_main() は、書き込みされた solv ファイルの再ロードに失敗しました"
 
-#: libdnf/dnf-sack.cpp:607
+#: libdnf/dnf-sack.cpp:606
 #, c-format
 msgid "can not create temporary file %s"
 msgstr "一時ファイル %s を作成できません"
 
-#: libdnf/dnf-sack.cpp:625
+#: libdnf/dnf-sack.cpp:624
 #, c-format
 msgid "write_ext(%1$d) has failed: %2$d"
 msgstr "write_ext(%1$d) は失敗しました: %2$d"
 
-#: libdnf/dnf-sack.cpp:680
+#: libdnf/dnf-sack.cpp:679
 msgid "null repo md file"
 msgstr "null repo md ファイル"
 
-#: libdnf/dnf-sack.cpp:689
+#: libdnf/dnf-sack.cpp:688
 #, c-format
 msgid "can not read file %1$s: %2$s"
 msgstr "ファイル %1$s を読み込みできません: %2$s"
 
-#: libdnf/dnf-sack.cpp:703
+#: libdnf/dnf-sack.cpp:702
 msgid "repo_add_solv() has failed."
 msgstr "repo_add_solv() は失敗しました。"
 
-#: libdnf/dnf-sack.cpp:716
+#: libdnf/dnf-sack.cpp:715
 msgid "loading of MD_TYPE_PRIMARY has failed."
 msgstr "MD_TYPE_PRIMARY のロードに失敗しました。"
 
-#: libdnf/dnf-sack.cpp:729
+#: libdnf/dnf-sack.cpp:728
 msgid "repo_add_repomdxml/rpmmd() has failed."
 msgstr "repo_add_repomdxml/rpmmd() は失敗しました。"
 
-#: libdnf/dnf-sack.cpp:796
+#: libdnf/dnf-sack.cpp:795
 msgid "failed to auto-detect architecture"
 msgstr "アーキテクチャーの自動検出に失敗しました"
 
-#: libdnf/dnf-sack.cpp:961
+#: libdnf/dnf-sack.cpp:960
 #, c-format
 msgid "failed creating cachedir %s"
 msgstr "cachedir %s の作成に失敗しました"
 
-#: libdnf/dnf-sack.cpp:1738
+#: libdnf/dnf-sack.cpp:1737
 msgid "failed loading RPMDB"
 msgstr "RPMDB のロードに失敗しました"
 
-#: libdnf/dnf-sack.cpp:2462
+#: libdnf/dnf-sack.cpp:2521
 #, c-format
 msgid "No module defaults found: %s"
-msgstr ""
+msgstr "モジュールのデフォルトは見つかりませんでした: %s"
 
 #: libdnf/dnf-state.cpp:1184
 #, c-format
@@ -399,67 +430,82 @@ msgstr "サイズ設定のない状態 %1$p で実行されました! [%2$s]"
 msgid "already at 100%% state [%s]"
 msgstr "すでに 100%% の状態 [%s] にあります"
 
-#: libdnf/dnf-transaction.cpp:300
+#: libdnf/dnf-transaction.cpp:302
 #, c-format
 msgid "Sources not set when trying to ensure package %s"
 msgstr "パッケージ %s を確実にしようとする場合、ソースは設定されません"
 
-#: libdnf/dnf-transaction.cpp:326
+#: libdnf/dnf-transaction.cpp:328
 #, 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
+#: libdnf/dnf-transaction.cpp:369
 msgid "Failed to check untrusted: "
 msgstr "untrusted の確認に失敗しました: "
 
-#: libdnf/dnf-transaction.cpp:377
+#: libdnf/dnf-transaction.cpp:379
 #, c-format
 msgid "Downloaded file for %s not found"
 msgstr "%s にダウンロードしたファイルが見つかりませんでした"
 
-#: libdnf/dnf-transaction.cpp:397
+#: libdnf/dnf-transaction.cpp:399
 #, 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
+#: libdnf/dnf-transaction.cpp:833 libdnf/dnf-transaction.cpp:905
 msgid "Failed to get value for CacheDir"
 msgstr "CacheDir の値の取得に失敗しました"
 
-#: libdnf/dnf-transaction.cpp:911
+#: libdnf/dnf-transaction.cpp:913
 #, c-format
 msgid "Failed to get filesystem free size for %s: "
 msgstr "%s に filesystem をフリーサイズで取得することに失敗しました: "
 
-#: libdnf/dnf-transaction.cpp:919
+#: libdnf/dnf-transaction.cpp:921
 #, c-format
 msgid "Failed to get filesystem free size for %s"
 msgstr "%s に filesystem をフリーサイズで取得することに失敗しました"
 
-#: libdnf/dnf-transaction.cpp:935
+#: libdnf/dnf-transaction.cpp:937
 #, 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 です"
 
-#: libdnf/dnf-transaction.cpp:1195
+#: libdnf/dnf-transaction.cpp:1196
 msgid "failed to set root"
 msgstr "root の設定に失敗しました"
 
-#: libdnf/dnf-transaction.cpp:1416
+#: libdnf/dnf-transaction.cpp:1417
 #, c-format
 msgid "Error %i running transaction test"
 msgstr "トランザクションテストの実行中にエラー %i"
 
-#: libdnf/dnf-transaction.cpp:1456
+#: libdnf/dnf-transaction.cpp:1441
+#, c-format
+msgid "Error %i opening rpm database"
+msgstr "rpm データベースを開く際にエラー %i"
+
+#: libdnf/dnf-transaction.cpp:1449 libdnf/dnf-transaction.cpp:1495
+msgid "The rpmdbCookie() function did not return cookie of rpm database."
+msgstr "rpmdbCookie() 関数は rpm データベースのクッキーを返しませんでした。"
+
+#: libdnf/dnf-transaction.cpp:1464
 #, c-format
 msgid "Error %i running transaction"
 msgstr "トランザクションの実行中にエラー %i"
 
-#: libdnf/dnf-transaction.cpp:1472
+#: libdnf/dnf-transaction.cpp:1480
 #, c-format
 msgid "Transaction did not go to writing phase, but returned no error(%i)"
-msgstr "トランザクションは書き込みフェーズまで行きませんでしたが、エラー(%i) は返しませんでした"
+msgstr ""
+"トランザクションは書き込みフェーズまで行きませんでしたが、エラー(%i) は返しま"
+"せんでした"
 
 #: libdnf/dnf-utils.cpp:111 libdnf/hy-iutil.cpp:403
 #, c-format
@@ -567,7 +613,9 @@ msgstr "パッケージ %s は %s を廃止しました。これは %s により
 #: libdnf/goal/Goal.cpp:109
 #, c-format
 msgid "installed package %s obsoletes %s provided by %s"
-msgstr "インストール済パッケージ %s は %s を廃止しました。これは %s により提供されます"
+msgstr ""
+"インストール済パッケージ %s は %s を廃止しました。これは %s により提供されま"
+"す"
 
 #: libdnf/goal/Goal.cpp:110
 #, c-format
@@ -577,7 +625,9 @@ msgstr "パッケージ %s は %s を暗に廃止しました。これは %s に
 #: libdnf/goal/Goal.cpp:111
 #, c-format
 msgid "package %s requires %s, but none of the providers can be installed"
-msgstr "パッケージ %s には %s が必要ですが、どのプロバイダーからもインストールできません"
+msgstr ""
+"パッケージ %s には %s が必要ですが、どのプロバイダーからもインストールできま"
+"せん"
 
 #: libdnf/goal/Goal.cpp:112
 #, c-format
@@ -640,7 +690,9 @@ msgstr "モジュール %s は %s を廃止しました。これは %s により
 #: libdnf/goal/Goal.cpp:136
 #, c-format
 msgid "installed module %s obsoletes %s provided by %s"
-msgstr "インストール済モジュール %s は %s を廃止しました。これは %s により提供されます"
+msgstr ""
+"インストール済モジュール %s は %s を廃止しました。これは %s により提供されま"
+"す"
 
 #: libdnf/goal/Goal.cpp:137
 #, c-format
@@ -650,7 +702,9 @@ msgstr "モジュール %s は %s を暗に廃止しました。これは %s に
 #: libdnf/goal/Goal.cpp:138
 #, c-format
 msgid "module %s requires %s, but none of the providers can be installed"
-msgstr "モジュール %s には %s が必要ですが、どのプロバイダーからもインストールできません"
+msgstr ""
+"モジュール %s には %s が必要ですが、どのプロバイダーからもインストールできま"
+"せん"
 
 #: libdnf/goal/Goal.cpp:139
 #, c-format
@@ -662,45 +716,42 @@ msgstr "モジュール %s は自己提供される %s と競合しています"
 msgid "both module %s and %s obsolete %s"
 msgstr "モジュール %s と %s 両方は %s を廃止しました"
 
-#: libdnf/goal/Goal.cpp:1055
+#: libdnf/goal/Goal.cpp:1141
 msgid "no solver set"
 msgstr "設定されたソルバーはありません"
 
-#: libdnf/goal/Goal.cpp:1060
+#: libdnf/goal/Goal.cpp:1146
 #, c-format
 msgid "failed to make %s absolute"
 msgstr "%s を絶対的にすることに失敗しました"
 
-#: libdnf/goal/Goal.cpp:1067
+#: libdnf/goal/Goal.cpp:1153
 #, c-format
 msgid "failed writing debugdata to %1$s: %2$s"
 msgstr "debugdata を %1$s へ書き込むことに失敗しました: %2$s"
 
-#: libdnf/goal/Goal.cpp:1079
+#: libdnf/goal/Goal.cpp:1165
 msgid "no solv in the goal"
 msgstr "目標に solv がありません"
 
-#: libdnf/goal/Goal.cpp:1081
+#: libdnf/goal/Goal.cpp:1167
 msgid "no solution, cannot remove protected package"
 msgstr "ソリューションがなく、保護されたパッケージを削除できません"
 
-#: libdnf/goal/Goal.cpp:1084
+#: libdnf/goal/Goal.cpp:1170
 msgid "no solution possible"
 msgstr "可能なソリューションがありません"
 
-#: libdnf/goal/Goal.cpp:1210
-#, fuzzy
-#| msgid " Problem: %s\n"
+#: libdnf/goal/Goal.cpp:1296
 msgid "Problem: "
-msgstr "問題: %s "
+msgstr "問題: "
 
-#: libdnf/goal/Goal.cpp:1215
-#, fuzzy, c-format
-#| msgid " Problem: %s\n"
+#: libdnf/goal/Goal.cpp:1301
+#, c-format
 msgid "Problem %d: "
-msgstr "問題: %s "
+msgstr "問題 %d: "
 
-#: libdnf/goal/Goal.cpp:1542
+#: libdnf/goal/Goal.cpp:1634
 msgid ""
 "The operation would result in removing the following protected packages: "
 msgstr "操作は結果的に以下の保護されたパッケージを削除します: "
@@ -725,30 +776,30 @@ msgstr "ディレクトリー %1$s を作成できません : %2$s"
 msgid "cannot stat path %1$s: %2$s"
 msgstr "パス %1$s のstatを調べられません : %2$s"
 
-#: libdnf/module/ModulePackage.cpp:573
+#: libdnf/module/ModulePackage.cpp:604
 #, c-format
 msgid "Invalid format of Platform module: %s"
 msgstr "不正なプラットフォームモジュールのフォーマット: %s"
 
-#: libdnf/module/ModulePackage.cpp:588
+#: libdnf/module/ModulePackage.cpp:619
 msgid "Multiple module platforms provided by available packages\n"
 msgstr "利用可能パッケージに提供される複数のモジュールプラットフォーム\n"
 
-#: libdnf/module/ModulePackage.cpp:601
+#: libdnf/module/ModulePackage.cpp:632
 msgid "Multiple module platforms provided by installed packages\n"
 msgstr "インストール済パッケージに提供される複数のモジュールプラットフォーム\n"
 
-#: libdnf/module/ModulePackage.cpp:628
+#: libdnf/module/ModulePackage.cpp:659
 #, c-format
 msgid "Detection of Platform Module in %s failed: %s"
 msgstr "%s のプラットフォームモジュールの検出に失敗しました: %s"
 
-#: libdnf/module/ModulePackage.cpp:637
+#: libdnf/module/ModulePackage.cpp:668
 #, c-format
 msgid "Missing PLATFORM_ID in %s"
 msgstr "%s に PLATFORM_ID が見つかりません"
 
-#: libdnf/module/ModulePackage.cpp:642
+#: libdnf/module/ModulePackage.cpp:673
 msgid "No valid Platform ID detected"
 msgstr "有効な Platform ID が検出されませんでした"
 
@@ -762,61 +813,65 @@ msgstr "モジュール '%s' の複数ストリームを有効化できません
 msgid "Conflicting defaults with repo '%s': %s"
 msgstr "repo '%s' のデフォルトが競合: %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:918
+#: libdnf/module/ModulePackageContainer.cpp:917
 msgid "Installing module profiles:\n"
-msgstr ""
+msgstr "モジュールプロファイルのインストール中:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:933
+#: libdnf/module/ModulePackageContainer.cpp:932
 msgid "Disabling module profiles:\n"
-msgstr ""
+msgstr "モジュールプロファイルの無効化中:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:948
+#: libdnf/module/ModulePackageContainer.cpp:947
 msgid "Enabling module streams:\n"
-msgstr ""
+msgstr "モジュールストリームの有効化中:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:962
+#: libdnf/module/ModulePackageContainer.cpp:961
 msgid "Switching module streams:\n"
-msgstr ""
+msgstr "モジュールストリームの切り替え中:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:980
+#: libdnf/module/ModulePackageContainer.cpp:979
 msgid "Disabling modules:\n"
-msgstr ""
+msgstr "モジュールの無効化:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:991
+#: libdnf/module/ModulePackageContainer.cpp:990
 msgid "Resetting modules:\n"
-msgstr ""
+msgstr "モジュールの再設定中:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:1674
+#: libdnf/module/ModulePackageContainer.cpp:1704
 #, c-format
 msgid "Unable to load modular Fail-Safe data at '%s'"
 msgstr "'%s' のモジュラーフェイルセーフデータをロードできません"
 
-#: libdnf/module/ModulePackageContainer.cpp:1680
+#: libdnf/module/ModulePackageContainer.cpp:1710
 #, c-format
 msgid "Unable to load modular Fail-Safe data for module '%s:%s'"
 msgstr "モジュール '%s:%s' のモジュラーフェイルセーフデータをロードできません"
 
-#: libdnf/module/ModulePackageContainer.cpp:1763
+#: libdnf/module/ModulePackageContainer.cpp:1791
 #, c-format
 msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s"
-msgstr "ディレクトリー \"%s\" を作成できません。対象モジュラーフェイルセーフデータ: %s"
+msgstr ""
+"ディレクトリー \"%s\" を作成できません。対象モジュラーフェイルセーフデータ: "
+"%s"
 
-#: libdnf/module/ModulePackageContainer.cpp:1779
+#: libdnf/module/ModulePackageContainer.cpp:1807
 #, c-format
 msgid "Unable to save a modular Fail Safe data to '%s'"
 msgstr "'%s' のモジュラーフェイルセーフデータを保存できません"
 
-#: libdnf/module/ModulePackageContainer.cpp:1802
+#: libdnf/module/ModulePackageContainer.cpp:1830
 #, c-format
 msgid "Unable to remove a modular Fail Safe data in '%s'"
 msgstr "'%s' のモジュラーフェイルセーフデータを削除できません"
 
-#: libdnf/module/ModulePackageContainer.cpp:1834
+#: libdnf/module/ModulePackageContainer.cpp:1862
 #, c-format
 msgid ""
 "Unable to apply modular obsoletes to '%s:%s' because target module '%s' is "
 "disabled"
 msgstr ""
+"ターゲットモジュール '%s' が無効であるため、モジュラーの廃止を '%s:%s' に適用"
+"できません"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:86
 #, c-format
@@ -831,7 +886,7 @@ msgstr "名前解決に失敗しました: %s"
 #: libdnf/module/modulemd/ModuleMetadata.cpp:115
 #, c-format
 msgid "There were errors while resolving modular defaults: %s"
-msgstr ""
+msgstr "モジュラーデフォルトの解決中にエラーが発生しました: %s"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:120
 #, c-format
@@ -843,10 +898,11 @@ msgstr "デフォルトのアップグレードに失敗しました: %s"
 msgid "Failed to upgrade streams: %s"
 msgstr "ストリームのアップグレードに失敗しました: %s"
 
-#: libdnf/module/modulemd/ModuleMetadata.cpp:219
+#: libdnf/module/modulemd/ModuleMetadata.cpp:221
 #, c-format
 msgid "Cannot retrieve module obsoletes because no stream matching %s: %s"
 msgstr ""
+"%s に一致するストリームがないため、モジュールの廃止を取得できません: %s"
 
 #: libdnf/plugin/plugin.cpp:46
 #, c-format
@@ -889,6 +945,9 @@ msgid ""
 "deprecated and the support will be dropped in future versions. Use '=' "
 "operator instead."
 msgstr ""
+"reldeps で '==' 演算子を使用すると、未定義の動作が発生する可能性があります。"
+"これは非推奨で、将来のバージョンではサポートされなくなります。代わりに '=' 演"
+"算子を使用してください。"
 
 #: libdnf/repo/Repo.cpp:321
 #, c-format
@@ -898,28 +957,35 @@ msgstr "リポジトリー %s にはミラーまたは baseurl セットがあ
 #: libdnf/repo/Repo.cpp:330
 #, c-format
 msgid "Repository '%s' has unsupported type: 'type=%s', skipping."
-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
+#: libdnf/repo/Repo.cpp:1400
 #, c-format
 msgid "repo '%s': 'basecachedir' is not set"
-msgstr ""
+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 "ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの設定を変更してください。"
+"Maximum download speed is lower than minimum. Please change configuration of "
+"minrate or throttle"
+msgstr ""
+"ダウンロードの最高速度は、最低速度よりも低いです。minrate またはスロットルの"
+"設定を変更してください"
 
 #: 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:629
 #, c-format
@@ -936,125 +1002,133 @@ msgstr "%s: gpgme_data_new_from_fd(): %s"
 msgid "%s: gpgme_op_import(): %s"
 msgstr "%s: gpgme_op_import(): %s"
 
-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907
+#: libdnf/repo/Repo.cpp:709 libdnf/repo/Repo.cpp:1162 libdnf/repo/Repo.cpp:1236
+#: libdnf/repo/Repo.cpp:1279
+#, c-format
+msgid "Cannot create repo temporary directory \"%s\": %s"
+msgstr "repo 一時ディレクトリー \"%s\" を作成できません: %s"
+
+#: libdnf/repo/Repo.cpp:717 libdnf/repo/Repo.cpp:783 libdnf/repo/Repo.cpp:917
 #, c-format
 msgid "%s: gpgme_ctx_set_engine_info(): %s"
 msgstr "%s: gpgme_ctx_set_engine_info(): %s"
 
-#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804
+#: libdnf/repo/Repo.cpp:744 libdnf/repo/Repo.cpp:808
 #, c-format
 msgid "can not list keys: %s"
 msgstr "キーを一覧表示できません: %s"
 
-#: libdnf/repo/Repo.cpp:833
+#: libdnf/repo/Repo.cpp:837
 #, c-format
 msgid "Failed to retrieve GPG key for repo '%s': %s"
 msgstr "repo '%s' のGPG鍵の回収に失敗しました : %s"
 
-#: libdnf/repo/Repo.cpp:886
+#: libdnf/repo/Repo.cpp:890
 #, c-format
 msgid "repo %s: 0x%s already imported"
 msgstr "repo %s: 0x%s はインポート済みです"
 
-#: libdnf/repo/Repo.cpp:914
+#: libdnf/repo/Repo.cpp:904 libdnf/utils/filesystem.cpp:79
+#, c-format
+msgid "Failed to create directory \"%s\": %d - %s"
+msgstr "ディレクトリー \"%s\" の作成に失敗しました: %d - %s"
+
+#: libdnf/repo/Repo.cpp:924
 #, c-format
 msgid "repo %s: imported key 0x%s."
 msgstr "repo %s: インポート済みのキー 0x%s。"
 
-#: libdnf/repo/Repo.cpp:1162
+#: libdnf/repo/Repo.cpp:1176
 #, c-format
 msgid "reviving: repo '%s' skipped, no metalink."
 msgstr "復元中: repo '%s' はスキップされました、metalink はありません。"
 
-#: libdnf/repo/Repo.cpp:1181
+#: libdnf/repo/Repo.cpp:1195
 #, c-format
 msgid "reviving: repo '%s' skipped, no usable hash."
-msgstr "復元中: repo '%s' はスキップされました、使用可能なハッシュはありません。"
+msgstr ""
+"復元中: repo '%s' はスキップされました、使用可能なハッシュはありません。"
 
-#: libdnf/repo/Repo.cpp:1204
+#: libdnf/repo/Repo.cpp:1218
 #, c-format
 msgid "reviving: failed for '%s', mismatched %s sum."
 msgstr "復元中: '%s' は失敗しました、%s の合計は一致しません。"
 
-#: libdnf/repo/Repo.cpp:1210
+#: libdnf/repo/Repo.cpp:1224
 #, c-format
 msgid "reviving: '%s' can be revived - metalink checksums match."
 msgstr "復元中: '%s' は復元できます - metalink チェックサムが一致します。"
 
-#: libdnf/repo/Repo.cpp:1235
+#: libdnf/repo/Repo.cpp:1253
 #, c-format
 msgid "reviving: '%s' can be revived - repomd matches."
 msgstr "復元中: '%s' は復元できます - repomd が一致します。"
 
-#: libdnf/repo/Repo.cpp:1237
+#: libdnf/repo/Repo.cpp:1255
 #, c-format
 msgid "reviving: failed for '%s', mismatched repomd."
-msgstr "復元中:  '%s' に失敗しました、repomd が一致しません。"
+msgstr "復元中: '%s' に失敗しました、repomd が一致しません。"
 
-#: libdnf/repo/Repo.cpp:1255
+#: libdnf/repo/Repo.cpp:1273
 #, c-format
 msgid "Cannot create repo destination directory \"%s\": %s"
 msgstr "repo 送信先ディレクトリ \"%s\" を作成できません : %s"
 
-#: libdnf/repo/Repo.cpp:1261
-#, c-format
-msgid "Cannot create repo temporary directory \"%s\": %s"
-msgstr "repo 一時ディレクトリー \"%s\" を作成できません: %s"
-
-#: libdnf/repo/Repo.cpp:1275
+#: libdnf/repo/Repo.cpp:1293
 #, c-format
 msgid "Cannot create directory \"%s\": %s"
 msgstr "ディレクトリー \"%s\" を作成できません: %s"
 
-#: libdnf/repo/Repo.cpp:1298
+#: libdnf/repo/Repo.cpp:1316
 #, c-format
 msgid "Cannot rename directory \"%s\" to \"%s\": %s"
 msgstr "ディレクトリー名を \"%s\" から \"%s\" へと変更できません: %s"
 
-#: libdnf/repo/Repo.cpp:1321
+#: libdnf/repo/Repo.cpp:1339
 #, c-format
 msgid "repo: using cache for: %s"
 msgstr "repo: キャッシュを使用: %s"
 
-#: libdnf/repo/Repo.cpp:1333
+#: libdnf/repo/Repo.cpp:1351
 #, c-format
 msgid "Cache-only enabled but no cache for '%s'"
-msgstr "キャッシュオンリーが有効になっていますが、'%s' に対するキャッシュはありません"
+msgstr ""
+"キャッシュオンリーが有効になっていますが、'%s' に対するキャッシュはありません"
 
-#: libdnf/repo/Repo.cpp:1337
+#: libdnf/repo/Repo.cpp:1355
 #, c-format
 msgid "repo: downloading from remote: %s"
 msgstr "repo: リモートからダウンロード中: %s"
 
-#: libdnf/repo/Repo.cpp:1344
+#: libdnf/repo/Repo.cpp:1362
 #, c-format
 msgid "Failed to download metadata for repo '%s': %s"
 msgstr "repo '%s' のメタデータのダウンロードに失敗しました : %s"
 
-#: libdnf/repo/Repo.cpp:1370
+#: libdnf/repo/Repo.cpp:1388
 msgid "getCachedir(): Computation of SHA256 failed"
 msgstr "getCachedir(): SHA256 のコンピュテーションに失敗しました"
 
-#: libdnf/repo/Repo.cpp:1398
+#: libdnf/repo/Repo.cpp:1416
 #, c-format
 msgid "Cannot create persistdir \"%s\": %s"
 msgstr "persistdir \"%s\" を作成できません : %s"
 
-#: libdnf/repo/Repo.cpp:1775
+#: libdnf/repo/Repo.cpp:1793
 msgid "resume cannot be used simultaneously with the byterangestart param"
 msgstr "resume は byterangestart param と同時に使用できません"
 
-#: libdnf/repo/Repo.cpp:1792
+#: libdnf/repo/Repo.cpp:1810
 #, c-format
 msgid "PackageTarget initialization failed: %s"
 msgstr "PackageTarget の初期化に失敗しました: %s"
 
-#: libdnf/repo/Repo.cpp:1898
+#: libdnf/repo/Repo.cpp:1916
 #, c-format
 msgid "Cannot open %s: %s"
 msgstr "%s を開くことができません: %s"
 
-#: libdnf/repo/Repo.cpp:1942
+#: libdnf/repo/Repo.cpp:1960
 #, c-format
 msgid "Log handler with id %ld doesn't exist"
 msgstr "id %ld を伴うログハンドラーは存在しません"
@@ -1084,6 +1158,7 @@ msgstr "完了したトランザクションにトランザクションアイテ
 #: libdnf/transaction/Transformer.cpp:76
 msgid "Database Corrupted: no row 'version' in table 'config'"
 msgstr ""
+"データベースが破損しています。テーブル 'config' の行 'version' がありません"
 
 #: libdnf/transaction/Transformer.cpp:681
 msgid "Transformer: can't open history persist dir"
@@ -1106,8 +1181,8 @@ msgstr "TransactionItem の状態は設定されていません: %s"
 msgid "Can't add console output to unsaved transaction"
 msgstr "未保存のトランザクションにコンソールの出力を追加できません"
 
+#~ msgid "Failed to parse module artifact NEVRA '%s'"
+#~ msgstr "モジュールアーティファクト NEVRA '%s' の解析に失敗しました"
+
 #~ msgid "Bad id for repo: %s, byte = %s %d"
 #~ msgstr "repo に対する不正な id: %s, byte = %s %d"
-
-#~ msgid "failed calculating RPMDB checksum"
-#~ msgstr "RPMDB チェックサムの計算に失敗しました"
diff --git a/po/ko.po b/po/ko.po
index 505d1e15..5c972958 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -3,20 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # Ludek Janda <ljanda@redhat.com>, 2018. #zanata
 # simmon <simmon@nplob.com>, 2021.
+# Kim InSoo <simmon@nplob.com>, 2022.
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-05-16 09:18-0400\n"
-"PO-Revision-Date: 2021-04-24 16:02+0000\n"
-"Last-Translator: simmon <simmon@nplob.com>\n"
-"Language-Team: Korean <https://translate.fedoraproject.org/projects/dnf/libdnf-dnf-4-master/ko/>\n"
+"POT-Creation-Date: 2022-02-28 10:38+0100\n"
+"PO-Revision-Date: 2022-03-01 07:37+0000\n"
+"Last-Translator: Kim InSoo <simmon@nplob.com>\n"
+"Language-Team: Korean <https://translate.fedoraproject.org/projects/dnf/"
+"libdnf-rhel-9/ko/>\n"
 "Language: ko\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.6\n"
+"X-Generator: Weblate 4.11\n"
 
 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40
 msgid "no value specified"
@@ -44,13 +46,13 @@ msgstr "잘못된 값"
 
 #: libdnf/conf/ConfigMain.cpp:207
 msgid "value 1 is not allowed"
-msgstr "값 1은 허용하지 않습니다"
+msgstr "값 1은 허용되지 않습니다"
 
 #: libdnf/conf/ConfigMain.cpp:209
 msgid "negative value is not allowed"
-msgstr "음수 값은 허용하지 않습니다"
+msgstr "음수 값은 허용되지 않습니다"
 
-#: libdnf/conf/ConfigMain.cpp:341
+#: libdnf/conf/ConfigMain.cpp:343
 #, c-format
 msgid "percentage '%s' is out of range"
 msgstr "백분율 '%s' 범위를 벗어났습니다"
@@ -105,127 +107,153 @@ msgstr "변환 할 수 없습니다 '%s'초까지"
 msgid "GetValue(): Value not set"
 msgstr "GetValue () : 값이 설정되지 않았습니다"
 
-#: libdnf/dnf-context.cpp:3170 libdnf/dnf-context.cpp:3179
+#: libdnf/dnf-context.cpp:3178 libdnf/dnf-context.cpp:3187
 #, c-format
 msgid "Cannot enable more streams from module '%s' at the same time"
 msgstr "동시에 모듈 '%s’에서 다른 스트림을 활성화 할 수 없습니다"
 
-#: libdnf/dnf-context.cpp:3188 libdnf/dnf-context.cpp:3206
+#: libdnf/dnf-context.cpp:3196 libdnf/dnf-context.cpp:3214
 #, 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
+#: libdnf/dnf-context.cpp:3263
 #, c-format
 msgid "Modular dependency problem with Defaults: %s"
 msgstr "기본설정에 모듈 의존성 문제: %s"
 
-#: libdnf/dnf-context.cpp:3256
+#: libdnf/dnf-context.cpp:3266
 #, c-format
 msgid "Modular dependency problem with the latest modules: %s"
-msgstr "최신 모듈: %s 에 모듈러 의존성 문제"
+msgstr "최신 모듈에 모듈 의존성 문제: %s"
 
-#: libdnf/dnf-context.cpp:3260
+#: libdnf/dnf-context.cpp:3270
 #, c-format
 msgid "Modular dependency problem: %s"
 msgstr "모듈러 의존성 문제: %s"
 
-#: libdnf/dnf-context.cpp:3294 libdnf/dnf-context.cpp:3318
-#: libdnf/dnf-context.cpp:3329 libdnf/dnf-context.cpp:3368
-#: libdnf/dnf-context.cpp:3384 libdnf/dnf-context.cpp:3416
-#: libdnf/dnf-context.cpp:3460 libdnf/dnf-context.cpp:3470
+#: libdnf/dnf-context.cpp:3293 libdnf/dnf-context.cpp:3317
+#: libdnf/dnf-context.cpp:3328 libdnf/dnf-context.cpp:3367
+#: libdnf/dnf-context.cpp:3383 libdnf/dnf-context.cpp:3415
+#: libdnf/dnf-context.cpp:3464 libdnf/dnf-context.cpp:3474
 #, c-format
 msgid "Unable to resolve argument '%s'"
 msgstr "인수 %s를 해결 할 수 없습니다"
 
-#: libdnf/dnf-context.cpp:3301
+#: libdnf/dnf-context.cpp:3300
 #, 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:3315
+#: libdnf/dnf-context.cpp:3314
 #, c-format
 msgid "Cannot reset module '%s': State of module already modified"
 msgstr "모듈 '%s 를 재설정 할 수 없습니다: 모듈 상태가 이미 변경되었습니다"
 
-#: libdnf/dnf-context.cpp:3326
+#: libdnf/dnf-context.cpp:3325
 #, c-format
 msgid "Cannot disable module '%s': State of module already modified"
 msgstr "모듈 '%s'사용 할 수 없습니다: 모듈 상태는 이미 적재되었습니다"
 
-#: libdnf/dnf-context.cpp:3357 libdnf/dnf-context.cpp:3449
-#: libdnf/dnf-context.cpp:3559
+#: libdnf/dnf-context.cpp:3356 libdnf/dnf-context.cpp:3452
+#: libdnf/dnf-context.cpp:3633
 msgid "No modular data available"
 msgstr "모듈러 자료를 이용 할 수 없습니다"
 
-#: libdnf/dnf-context.cpp:3374
+#: libdnf/dnf-context.cpp:3373
 #, c-format
 msgid "Ignoring unneeded information in argument: '%s'"
 msgstr "인수: '%s'에 불필요한 정보를 무시하기"
 
-#: libdnf/dnf-context.cpp:3412
+#: libdnf/dnf-context.cpp:3411
 #, c-format
 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:3424
-msgid "Problems appeared for module enable request"
-msgstr "모듈 활성화 요청에 나타난 문제"
+#: libdnf/dnf-context.cpp:3423
+msgid "Problems appeared for module enable request:"
+msgstr "모듈 활성화 요청에 나타난 문제:"
+
+#: libdnf/dnf-context.cpp:3518
+#, c-format
+msgid "No active module packages found for module spec '%s'"
+msgstr "모듈 상세 '%s'를 위한 활성 모듈 꾸러미가 없습니다"
 
-#. this really should never happen; unless the modular repodata is corrupted
-#: libdnf/dnf-context.cpp:3496
+#: libdnf/dnf-context.cpp:3523
 #, c-format
-msgid "Failed to parse module artifact NEVRA '%s'"
-msgstr "모듈 artifact NERVRA '%s'를 구문 분석하는데 실패하였습니다"
+msgid "Cannot install module '%s' from fail-safe repository"
+msgstr "실패-방지 저장소에서 모듈 '%s'를 설치 할 수 없습니다"
 
 #: libdnf/dnf-context.cpp:3530
-msgid "Problems appeared for module install request"
-msgstr "모듈 설치 요청을 위해 나타난 문제"
+#, c-format
+msgid "No profile found matching '%s'"
+msgstr "'%s'와 일치하는 프로파일을 찾을 수 없습니다"
+
+#: libdnf/dnf-context.cpp:3584
+#, c-format
+msgid "No match for package '%s' for module spec %s"
+msgstr "꾸러미 '%s'가(모듈 상세 %s에 대한) 일치하지 않습니다"
 
-#: libdnf/dnf-context.cpp:3590
-msgid "Problems appeared for module reset request"
-msgstr "모듈 초기화 요청을 위해 나나탄 문제"
+#: libdnf/dnf-context.cpp:3595
+#, c-format
+msgid "Problem during install for module '%1$s' stream '%2$s': %3$s"
+msgstr "모듈 '%1$s' 스트림 '%2$s': %3$s 위해 설치 중에 발생하는 문제"
 
-#: libdnf/dnf-context.cpp:3592
-msgid "Problems appeared for module disable request"
-msgstr "모듈 비활성화 요청을 위해 나타난 문제"
+#: libdnf/dnf-context.cpp:3604
+msgid "Problems appeared for module install request:"
+msgstr "모듈 설치 요청을 위해 나타난 문제:"
 
-#: libdnf/dnf-context.cpp:3628
+#: libdnf/dnf-context.cpp:3663
+msgid "Problems appeared for module reset request:"
+msgstr "모듈 초기화 요청을 위해 나타난 문제:"
+
+#: libdnf/dnf-context.cpp:3664 libdnf/dnf-context.cpp:3723
+msgid "Problems appeared for module disable request:"
+msgstr "모듈 비활성화 요청을 위해 나타난 문제:"
+
+#: libdnf/dnf-context.cpp:3755
 #, 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:3632
+#: libdnf/dnf-context.cpp:3759
 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 <module_name>' 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 <module_name>' command. After you "
+"reset the module, you can install the other stream."
 msgstr ""
 "활성화된 모듈 스트림을 전환 할 수 없습니다.\n"
-"설치된 모든 내용을 모듈에서 제거하고 ‘<module_name>' 명령을 사용하여 모듈을 재설정하는 것이 좋습니다. 모듈을 재설정한 후, 다른 스트림을 설치할 수 있습니다."
+"설치된 모든 내용을 모듈에서 제거하고 ‘<module_name>' 명령을 사용하여 모듈을 "
+"재설정하는 것이 좋습니다. 모듈을 재설정한 후, 다른 스트림을 설치 할 수 있습니"
+"다."
 
-#: libdnf/dnf-goal.cpp:85
+#: libdnf/dnf-goal.cpp:107
 msgid "Could not depsolve transaction; "
 msgstr "연결을 해제 할 수 없습니다; "
 
-#: libdnf/dnf-goal.cpp:87
+#: libdnf/dnf-goal.cpp:109
 #, c-format
 msgid "%i problem detected:\n"
 msgid_plural "%i problems detected:\n"
 msgstr[0] "%i 발견 된 문제 :\n"
 
-#: libdnf/dnf-goal.cpp:95
+#: libdnf/dnf-goal.cpp:117
 #, c-format
 msgid " Problem %1$i: %2$s\n"
 msgstr " 문제 %1$i: %2$s\n"
 
-#: libdnf/dnf-goal.cpp:97
+#: libdnf/dnf-goal.cpp:119
 #, c-format
 msgid " Problem: %s\n"
 msgstr " 문제: %s\n"
@@ -235,7 +263,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
@@ -274,7 +304,8 @@ msgstr "연결 실행 오류 : %s"
 
 #: 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"
@@ -290,84 +321,84 @@ msgstr "꾸러미를 찾지 못했습니다. %s"
 msgid "could not add erase element %1$s(%2$i)"
 msgstr "요소 지우기를 추가 할 수 없습니다. %1$s(%2$i)"
 
-#: libdnf/dnf-sack.cpp:395
+#: libdnf/dnf-sack.cpp:394
 msgid "failed to add solv"
 msgstr "solv를 추가하지 못했습니다"
 
-#: libdnf/dnf-sack.cpp:414
+#: libdnf/dnf-sack.cpp:413
 #, c-format
 msgid "no %1$s string for %2$s"
 msgstr "%2$s에 %1$s 문자열이 없습니다"
 
-#: libdnf/dnf-sack.cpp:424
+#: libdnf/dnf-sack.cpp:423
 #, c-format
 msgid "failed to open: %s"
 msgstr "열지 못했습니다 : %s"
 
-#: libdnf/dnf-sack.cpp:503
+#: libdnf/dnf-sack.cpp:502
 #, c-format
 msgid "cannot create temporary file: %s"
 msgstr "임시 파일을 만들 수 없습니다. %s"
 
-#: libdnf/dnf-sack.cpp:513
+#: libdnf/dnf-sack.cpp:512
 #, c-format
 msgid "failed opening tmp file: %s"
 msgstr "여는 tmp 파일을 열지 못했습니다. %s"
 
-#: libdnf/dnf-sack.cpp:525
+#: libdnf/dnf-sack.cpp:524
 #, c-format
 msgid "write_main() failed writing data: %i"
 msgstr "write_main() 실패한 쓰기 자료: %i"
 
-#: libdnf/dnf-sack.cpp:542
+#: libdnf/dnf-sack.cpp:541
 msgid "write_main() failed to re-load written solv file"
 msgstr "write_main ()이 작성된 solv 파일을 다시 적재하지 못했습니다"
 
-#: libdnf/dnf-sack.cpp:607
+#: libdnf/dnf-sack.cpp:606
 #, c-format
 msgid "can not create temporary file %s"
 msgstr "임시 파일을 만들 수 없습니다. %s"
 
-#: libdnf/dnf-sack.cpp:625
+#: libdnf/dnf-sack.cpp:624
 #, c-format
 msgid "write_ext(%1$d) has failed: %2$d"
 msgstr "write_ext(%1$d) 실패하였습니다: %2$d"
 
-#: libdnf/dnf-sack.cpp:680
+#: libdnf/dnf-sack.cpp:679
 msgid "null repo md file"
 msgstr "null repo md 파일"
 
-#: libdnf/dnf-sack.cpp:689
+#: libdnf/dnf-sack.cpp:688
 #, c-format
 msgid "can not read file %1$s: %2$s"
 msgstr "파일을 읽을 수 없습니다. %1$s: %2$s"
 
-#: libdnf/dnf-sack.cpp:703
+#: libdnf/dnf-sack.cpp:702
 msgid "repo_add_solv() has failed."
 msgstr "repo_add_solv() 실패하였습니다."
 
-#: libdnf/dnf-sack.cpp:716
+#: libdnf/dnf-sack.cpp:715
 msgid "loading of MD_TYPE_PRIMARY has failed."
 msgstr "MD_TYPE_PRIMARY를 적재하지 못했습니다."
 
-#: libdnf/dnf-sack.cpp:729
+#: libdnf/dnf-sack.cpp:728
 msgid "repo_add_repomdxml/rpmmd() has failed."
 msgstr "repo_add_repomdxml/rpmmd() 실패하였습니다."
 
-#: libdnf/dnf-sack.cpp:796
+#: libdnf/dnf-sack.cpp:795
 msgid "failed to auto-detect architecture"
 msgstr "구조 자동 검색에 실패했습니다"
 
-#: libdnf/dnf-sack.cpp:961
+#: libdnf/dnf-sack.cpp:960
 #, c-format
 msgid "failed creating cachedir %s"
 msgstr "캐시 된 생성 실패 %s"
 
-#: libdnf/dnf-sack.cpp:1738
+#: libdnf/dnf-sack.cpp:1737
 msgid "failed loading RPMDB"
 msgstr "RPMDB로드 실패"
 
-#: libdnf/dnf-sack.cpp:2462
+#: libdnf/dnf-sack.cpp:2521
 #, c-format
 msgid "No module defaults found: %s"
 msgstr "모듈 기본 설정을 찾을 수 없습니다: %s"
@@ -396,64 +427,73 @@ msgstr "국가에서 행해진 %1$p 크기가 설정되지 않았습니다. [%2$
 msgid "already at 100%% state [%s]"
 msgstr "이미 100 %% 상태 [%s]"
 
-#: libdnf/dnf-transaction.cpp:300
+#: libdnf/dnf-transaction.cpp:302
 #, c-format
 msgid "Sources not set when trying to ensure package %s"
 msgstr "꾸러미를 만들 때 소스가 설정되지 않았습니다. %s"
 
-#: libdnf/dnf-transaction.cpp:326
+#: libdnf/dnf-transaction.cpp:328
 #, c-format
 msgid "Failed to ensure %1$s as repo %2$s not found(%3$i repos loaded)"
 msgstr "보장하지 못함 %1$s 레포로서 %2$s 찾을 수 없음 (%3$i repos loaded)"
 
-#: libdnf/dnf-transaction.cpp:367
+#: libdnf/dnf-transaction.cpp:369
 msgid "Failed to check untrusted: "
 msgstr "신뢰할 수 없는지 확인하지 못했습니다. "
 
-#: libdnf/dnf-transaction.cpp:377
+#: libdnf/dnf-transaction.cpp:379
 #, c-format
 msgid "Downloaded file for %s not found"
 msgstr "에 대한 내려받기 파일 %s 찾을 수 없음"
 
-#: libdnf/dnf-transaction.cpp:397
+#: libdnf/dnf-transaction.cpp:399
 #, c-format
 msgid "package %1$s cannot be verified and repo %2$s is GPG enabled: %3$s"
 msgstr "꾸러미 %1$s 확인 및 복구 할 수 없습니다. %2$s GPG 사용 설정 됨 : %3$s"
 
-#: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903
+#: libdnf/dnf-transaction.cpp:833 libdnf/dnf-transaction.cpp:905
 msgid "Failed to get value for CacheDir"
 msgstr "CacheDir에 대한 값을 가져 오는 데 실패했습니다"
 
-#: libdnf/dnf-transaction.cpp:911
+#: libdnf/dnf-transaction.cpp:913
 #, c-format
 msgid "Failed to get filesystem free size for %s: "
 msgstr "에 대한 파일 시스템 크기를 가져 오는 데 실패했습니다. %s: "
 
-#: libdnf/dnf-transaction.cpp:919
+#: libdnf/dnf-transaction.cpp:921
 #, c-format
 msgid "Failed to get filesystem free size for %s"
 msgstr "에 대한 파일 시스템 크기를 가져 오는 데 실패했습니다. %s"
 
-#: libdnf/dnf-transaction.cpp:935
+#: libdnf/dnf-transaction.cpp:937
 #, c-format
 msgid "Not enough free space in %1$s: needed %2$s, available %3$s"
 msgstr "여유 공간이 부족합니다. %1$s: 필요 %2$s, 이용 가능 %3$s"
 
-#: libdnf/dnf-transaction.cpp:1195
+#: libdnf/dnf-transaction.cpp:1196
 msgid "failed to set root"
 msgstr "루트를 설정하지 못했습니다"
 
-#: libdnf/dnf-transaction.cpp:1416
+#: libdnf/dnf-transaction.cpp:1417
 #, c-format
 msgid "Error %i running transaction test"
 msgstr "%i 연결 실행 중 오류"
 
-#: libdnf/dnf-transaction.cpp:1456
+#: libdnf/dnf-transaction.cpp:1441
+#, c-format
+msgid "Error %i opening rpm database"
+msgstr "rpm 데이타베이스를 여는 동안 오류 %i가 발생했습니다"
+
+#: libdnf/dnf-transaction.cpp:1449 libdnf/dnf-transaction.cpp:1495
+msgid "The rpmdbCookie() function did not return cookie of rpm database."
+msgstr "rpmdbCookie() 함수는 rpm 데이타베이스의 쿠키를 반환하지 않습니다."
+
+#: libdnf/dnf-transaction.cpp:1464
 #, c-format
 msgid "Error %i running transaction"
 msgstr "오류 %i 실행중인 연결"
 
-#: libdnf/dnf-transaction.cpp:1472
+#: libdnf/dnf-transaction.cpp:1480
 #, c-format
 msgid "Transaction did not go to writing phase, but returned no error(%i)"
 msgstr "연결이 쓰기 단계로 이동하지 않았지만 오류를 반환하지 않았습니다 (%i)"
@@ -554,7 +594,7 @@ msgstr "%s 와 %s 모두 설치 할 수 없습니다"
 #: libdnf/goal/Goal.cpp:107
 #, c-format
 msgid "package %s conflicts with %s provided by %s"
-msgstr "제공된 꾸러미 %s 은 %s에 의해 %s 와 충돌합니다"
+msgstr "꾸러미 %s은 %s에서 제공된 %s와 충돌합니다"
 
 #: libdnf/goal/Goal.cpp:108
 #, c-format
@@ -574,12 +614,12 @@ msgstr "꾸러미 %s가 %s에 의해 %s가 암시적으로 폐기되었습니다
 #: libdnf/goal/Goal.cpp:111
 #, c-format
 msgid "package %s requires %s, but none of the providers can be installed"
-msgstr "꾸러미 %s에 %s가 필요하지만 공급 업체 없어 설치할 수 없습니다"
+msgstr "꾸러미 %s는 %s가 필요하지만, 공급자가 없어 설치 할 수 없습니다"
 
 #: libdnf/goal/Goal.cpp:112
 #, c-format
 msgid "package %s conflicts with %s provided by itself"
-msgstr "꾸러미 %s가 %s와 자체적으로 충돌합니다"
+msgstr "꾸러미 %s가 자체적으로 제공된 %s와 충돌합니다"
 
 #: libdnf/goal/Goal.cpp:113
 #, c-format
@@ -622,12 +662,12 @@ msgstr "모듈 %s 에 필요한 %s 가 제공되지 않았습니다"
 #: libdnf/goal/Goal.cpp:133
 #, c-format
 msgid "cannot install both modules %s and %s"
-msgstr "%s 와 %s 모듈을 모두 설치할 수 없습니다"
+msgstr "모듈 %s 와 %s를 모두 설치 할 수 없습니다"
 
 #: libdnf/goal/Goal.cpp:134
 #, c-format
 msgid "module %s conflicts with %s provided by %s"
-msgstr "모듈 %s 가 %s와 함께 %s와 충돌합니다"
+msgstr "모듈 %s가 %s에 의해 제공된 %s와 충돌합니다"
 
 #: libdnf/goal/Goal.cpp:135
 #, c-format
@@ -659,42 +699,42 @@ msgstr "모듈 %s가 자체적으로 제공된 %s와 충돌합니다"
 msgid "both module %s and %s obsolete %s"
 msgstr "모듈 %s와 %s가 %s에서 폐기되었습니다"
 
-#: libdnf/goal/Goal.cpp:1055
+#: libdnf/goal/Goal.cpp:1141
 msgid "no solver set"
 msgstr "solver 설정 없음"
 
-#: libdnf/goal/Goal.cpp:1060
+#: libdnf/goal/Goal.cpp:1146
 #, c-format
 msgid "failed to make %s absolute"
 msgstr "%s 절대값을 생성을 실패하였습니다"
 
-#: libdnf/goal/Goal.cpp:1067
+#: libdnf/goal/Goal.cpp:1153
 #, c-format
 msgid "failed writing debugdata to %1$s: %2$s"
 msgstr "%1$s: %2$s에 디버그자료 쓰기를 실패했습니다"
 
-#: libdnf/goal/Goal.cpp:1079
+#: libdnf/goal/Goal.cpp:1165
 msgid "no solv in the goal"
 msgstr "목표에 solv가 없다"
 
-#: libdnf/goal/Goal.cpp:1081
+#: libdnf/goal/Goal.cpp:1167
 msgid "no solution, cannot remove protected package"
 msgstr "해결책 없음, 보호 된 꾸러미를 제거 할 수 없음"
 
-#: libdnf/goal/Goal.cpp:1084
+#: libdnf/goal/Goal.cpp:1170
 msgid "no solution possible"
 msgstr "해결책 없음"
 
-#: libdnf/goal/Goal.cpp:1210
+#: libdnf/goal/Goal.cpp:1296
 msgid "Problem: "
 msgstr "문제: "
 
-#: libdnf/goal/Goal.cpp:1215
+#: libdnf/goal/Goal.cpp:1301
 #, c-format
 msgid "Problem %d: "
 msgstr "문제 %d: "
 
-#: libdnf/goal/Goal.cpp:1542
+#: libdnf/goal/Goal.cpp:1634
 msgid ""
 "The operation would result in removing the following protected packages: "
 msgstr "이 작업으로 인해 다음과 같은 보호 꾸러미가 제거됩니다. "
@@ -719,30 +759,30 @@ msgstr "디렉토리를 생성 할 수 없습니다 %1$s: %2$s"
 msgid "cannot stat path %1$s: %2$s"
 msgstr "경로 %1$s: %2$s stat 할 수 없습니다"
 
-#: libdnf/module/ModulePackage.cpp:573
+#: libdnf/module/ModulePackage.cpp:604
 #, c-format
 msgid "Invalid format of Platform module: %s"
 msgstr "잘못된 형식의 기반 모듈: %s"
 
-#: libdnf/module/ModulePackage.cpp:588
+#: libdnf/module/ModulePackage.cpp:619
 msgid "Multiple module platforms provided by available packages\n"
 msgstr "사용 가능한 꾸러미로 제공되는 다중 모듈 기반\n"
 
-#: libdnf/module/ModulePackage.cpp:601
+#: libdnf/module/ModulePackage.cpp:632
 msgid "Multiple module platforms provided by installed packages\n"
 msgstr "설치된 꾸러미로 제공되는 다중 모듈 기반\n"
 
-#: libdnf/module/ModulePackage.cpp:628
+#: libdnf/module/ModulePackage.cpp:659
 #, c-format
 msgid "Detection of Platform Module in %s failed: %s"
 msgstr "%s 실패한: %s 에서 기반(Platform) 모듈 감지"
 
-#: libdnf/module/ModulePackage.cpp:637
+#: libdnf/module/ModulePackage.cpp:668
 #, c-format
 msgid "Missing PLATFORM_ID in %s"
 msgstr "%s에서 PLATFORM_ID가 누락됨"
 
-#: libdnf/module/ModulePackage.cpp:642
+#: libdnf/module/ModulePackage.cpp:673
 msgid "No valid Platform ID detected"
 msgstr "유효한 기반(Platform) ID가 없습니다"
 
@@ -754,63 +794,65 @@ msgstr "모듈 '%s’를 위해 다중 스트림을 활성화 할 수 없습니
 #: libdnf/module/ModulePackageContainer.cpp:346
 #, c-format
 msgid "Conflicting defaults with repo '%s': %s"
-msgstr "repo '%s: %s'와 기본 설정이 충돌합니다"
+msgstr "저장소 '%s: %s'와 기본 설정이 충돌합니다"
 
-#: libdnf/module/ModulePackageContainer.cpp:918
+#: libdnf/module/ModulePackageContainer.cpp:917
 msgid "Installing module profiles:\n"
 msgstr "모듈 프로파일 설치:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:933
+#: libdnf/module/ModulePackageContainer.cpp:932
 msgid "Disabling module profiles:\n"
 msgstr "모듈 프로파일 비활성화:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:948
+#: libdnf/module/ModulePackageContainer.cpp:947
 msgid "Enabling module streams:\n"
 msgstr "모듈 스트림 활성화:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:962
+#: libdnf/module/ModulePackageContainer.cpp:961
 msgid "Switching module streams:\n"
 msgstr "모듈 스트림 전환:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:980
+#: libdnf/module/ModulePackageContainer.cpp:979
 msgid "Disabling modules:\n"
 msgstr "모듈 비활성화:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:991
+#: libdnf/module/ModulePackageContainer.cpp:990
 msgid "Resetting modules:\n"
 msgstr "모듈 재설정:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:1674
+#: libdnf/module/ModulePackageContainer.cpp:1704
 #, c-format
 msgid "Unable to load modular Fail-Safe data at '%s'"
 msgstr "'%s'에서 모듈식 Fail-Safe 자료를 적재 할 수 없습니다"
 
-#: libdnf/module/ModulePackageContainer.cpp:1680
+#: libdnf/module/ModulePackageContainer.cpp:1710
 #, c-format
 msgid "Unable to load modular Fail-Safe data for module '%s:%s'"
 msgstr "모듈 '%s:%s'에 대해 모듈식 Fail-Safe 자료를 적재 할 수 없습니다"
 
-#: libdnf/module/ModulePackageContainer.cpp:1763
+#: libdnf/module/ModulePackageContainer.cpp:1791
 #, c-format
 msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s"
 msgstr "모듈식 Fail-Safe 데이터에 대한 “%s\" 디렉토리를 만들 수 없습니다: %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:1779
+#: libdnf/module/ModulePackageContainer.cpp:1807
 #, c-format
 msgid "Unable to save a modular Fail Safe data to '%s'"
 msgstr "모듈식 Fail Safe 자료를 '%s'에 저장 할 수 없습니다"
 
-#: libdnf/module/ModulePackageContainer.cpp:1802
+#: libdnf/module/ModulePackageContainer.cpp:1830
 #, c-format
 msgid "Unable to remove a modular Fail Safe data in '%s'"
 msgstr "'%s'에서 모듈식 Fail Safe 자료를 제거 할 수 없습니다"
 
-#: libdnf/module/ModulePackageContainer.cpp:1834
+#: libdnf/module/ModulePackageContainer.cpp:1862
 #, 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
@@ -837,10 +879,10 @@ msgstr "기본값을 최신화에 실패하였습니다: %s"
 msgid "Failed to upgrade streams: %s"
 msgstr "스트림 최신화에 실패하였습니다: %s"
 
-#: libdnf/module/modulemd/ModuleMetadata.cpp:219
+#: libdnf/module/modulemd/ModuleMetadata.cpp:221
 #, 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
@@ -883,8 +925,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
@@ -897,21 +940,24 @@ msgid "Repository '%s' has unsupported type: 'type=%s', skipping."
 msgstr "저장소 '%s'는 지원하지 않는 유형: 'type=%s'이며, 건너뜁니다."
 
 #: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641
-#: libdnf/repo/Repo.cpp:1382
+#: libdnf/repo/Repo.cpp:1400
 #, 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 "최대 내려받기 속도는 최저보다 낮습니다. 최저속도나 변환 환경구성을 변경해 주세요"
+"Maximum download speed is lower than minimum. Please change configuration of "
+"minrate or throttle"
+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'가 없습니다"
+msgstr ""
+"repo '%s': 'proxy_username' 는 구성되어 있지만 'proxy_password'가 없습니다"
 
 #: libdnf/repo/Repo.cpp:548
 msgid "'proxy_username' is set but not 'proxy_password'"
@@ -932,128 +978,134 @@ msgstr "%s: gpgme_data_new_from_fd(): %s"
 msgid "%s: gpgme_op_import(): %s"
 msgstr "%s: gpgme_op_import(): %s"
 
-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907
+#: libdnf/repo/Repo.cpp:709 libdnf/repo/Repo.cpp:1162 libdnf/repo/Repo.cpp:1236
+#: libdnf/repo/Repo.cpp:1279
+#, c-format
+msgid "Cannot create repo temporary directory \"%s\": %s"
+msgstr "임시 저장소 디렉토리를 만들 수 없습니다 \"%s\": %s"
+
+#: libdnf/repo/Repo.cpp:717 libdnf/repo/Repo.cpp:783 libdnf/repo/Repo.cpp:917
 #, c-format
 msgid "%s: gpgme_ctx_set_engine_info(): %s"
 msgstr "%s: gpgme_ctx_set_engine_info(): %s"
 
-#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804
+#: libdnf/repo/Repo.cpp:744 libdnf/repo/Repo.cpp:808
 #, c-format
 msgid "can not list keys: %s"
 msgstr "열쇠를 나열 할 수 없습니다 : %s"
 
-#: libdnf/repo/Repo.cpp:833
+#: libdnf/repo/Repo.cpp:837
 #, c-format
 msgid "Failed to retrieve GPG key for repo '%s': %s"
 msgstr "repo '%s': %sf 를 위해 GPG key 가져오기에 실패하였습니다"
 
-#: libdnf/repo/Repo.cpp:886
+#: libdnf/repo/Repo.cpp:890
 #, c-format
 msgid "repo %s: 0x%s already imported"
 msgstr "repo %s: 0x%s를 이미 가져왔습니다"
 
-#: libdnf/repo/Repo.cpp:914
+#: libdnf/repo/Repo.cpp:904 libdnf/utils/filesystem.cpp:79
+#, c-format
+msgid "Failed to create directory \"%s\": %d - %s"
+msgstr "디렉토리를 생성 할 수 없습니다 \"%s\": %d - %s"
+
+#: libdnf/repo/Repo.cpp:924
 #, c-format
 msgid "repo %s: imported key 0x%s."
 msgstr "repo %s: 0x%s 키를 가져왔습니다."
 
-#: libdnf/repo/Repo.cpp:1162
+#: libdnf/repo/Repo.cpp:1176
 #, c-format
 msgid "reviving: repo '%s' skipped, no metalink."
-msgstr "부활 : repo '%s'건너 뛰었습니다."
+msgstr "부활: repo '%s' 건너 뛰었으며, 메타링크가 없습니다."
 
-#: libdnf/repo/Repo.cpp:1181
+#: libdnf/repo/Repo.cpp:1195
 #, c-format
 msgid "reviving: repo '%s' skipped, no usable hash."
-msgstr "부활 : repo '%s'건너 뛰었습니다. 사용 가능한 해시가 없습니다."
+msgstr "부활: repo '%s'건너 뛰었으며, 사용 가능한 해쉬가 없습니다."
 
-#: libdnf/repo/Repo.cpp:1204
+#: libdnf/repo/Repo.cpp:1218
 #, c-format
 msgid "reviving: failed for '%s', mismatched %s sum."
-msgstr "되살리기 : 실패한 '%s', 불일치 %s 합집합."
+msgstr "부활 : '%s'에 실패하고, %s 합과 일치하지 않음."
 
-#: libdnf/repo/Repo.cpp:1210
+#: libdnf/repo/Repo.cpp:1224
 #, c-format
 msgid "reviving: '%s' can be revived - metalink checksums match."
-msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - metalink 체크섬이 일치합니다."
+msgstr "부활: '%s'는 부활 할 수 있습니다 - 메타링크 체크섬이 일치합니다."
 
-#: libdnf/repo/Repo.cpp:1235
+#: libdnf/repo/Repo.cpp:1253
 #, c-format
 msgid "reviving: '%s' can be revived - repomd matches."
-msgstr "되살아 난다 : '%s'부활 할 수 있습니다 - repomd가 일치합니다."
+msgstr "부활: '%s'는 부활 할 수 있습니다 - repomd가 일치합니다."
 
-#: libdnf/repo/Repo.cpp:1237
+#: libdnf/repo/Repo.cpp:1255
 #, c-format
 msgid "reviving: failed for '%s', mismatched repomd."
-msgstr "되살리기 : 실패한 '%s', 일치하지 않는 repomd."
+msgstr "부활: '%s'에 실패하고, 일치하지 않은 repomd."
 
-#: libdnf/repo/Repo.cpp:1255
+#: libdnf/repo/Repo.cpp:1273
 #, c-format
 msgid "Cannot create repo destination directory \"%s\": %s"
 msgstr "repo 목적지 디렉토리 \"%s\": %s 를 생성 할 수 없습니다"
 
-#: libdnf/repo/Repo.cpp:1261
-#, c-format
-msgid "Cannot create repo temporary directory \"%s\": %s"
-msgstr "임시 저장소 디렉토리를 만들 수 없습니다 \"%s\": %s"
-
-#: libdnf/repo/Repo.cpp:1275
+#: libdnf/repo/Repo.cpp:1293
 #, c-format
 msgid "Cannot create directory \"%s\": %s"
 msgstr "디렉토리를 만들 수 없습니다 \"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1298
+#: libdnf/repo/Repo.cpp:1316
 #, c-format
 msgid "Cannot rename directory \"%s\" to \"%s\": %s"
 msgstr "디렉터리 이름을 바꿀 수 없습니다 \"%s\"~\"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1321
+#: libdnf/repo/Repo.cpp:1339
 #, c-format
 msgid "repo: using cache for: %s"
-msgstr "repo : 캐시 사용 : %s"
+msgstr "repo: 캐쉬 사용: %s"
 
-#: libdnf/repo/Repo.cpp:1333
+#: libdnf/repo/Repo.cpp:1351
 #, c-format
 msgid "Cache-only enabled but no cache for '%s'"
-msgstr "캐시 만 사용 가능하지만 '%s'"
+msgstr "캐쉬만 사용 가능하지만 '%s'를 위해 캐쉬가 없습니다"
 
-#: libdnf/repo/Repo.cpp:1337
+#: libdnf/repo/Repo.cpp:1355
 #, c-format
 msgid "repo: downloading from remote: %s"
-msgstr "repo : 원격에서 내려받기 중 : %s"
+msgstr "repo: 원격에서 내려받기 중: %s"
 
-#: libdnf/repo/Repo.cpp:1344
+#: libdnf/repo/Repo.cpp:1362
 #, c-format
 msgid "Failed to download metadata for repo '%s': %s"
-msgstr "repo '%s': %s 를 위해 메타데이타 내려받기에 실패하였습니다"
+msgstr "repo를 위한 메타자료 내려받기에 실패하였습니다 '%s': %s"
 
-#: libdnf/repo/Repo.cpp:1370
+#: libdnf/repo/Repo.cpp:1388
 msgid "getCachedir(): Computation of SHA256 failed"
-msgstr "getCachedir () : SHA256 계산에 실패했습니다"
+msgstr "getCachedir(): SHA256 계산에 실패했습니다"
 
-#: libdnf/repo/Repo.cpp:1398
+#: libdnf/repo/Repo.cpp:1416
 #, c-format
 msgid "Cannot create persistdir \"%s\": %s"
 msgstr "persistdir \"%s\": %s 를 생성 할 수 없습니다"
 
-#: libdnf/repo/Repo.cpp:1775
+#: libdnf/repo/Repo.cpp:1793
 msgid "resume cannot be used simultaneously with the byterangestart param"
 msgstr "이력서는 byterangestart 매개 변수와 동시에 사용 할 수 없습니다"
 
-#: libdnf/repo/Repo.cpp:1792
+#: libdnf/repo/Repo.cpp:1810
 #, c-format
 msgid "PackageTarget initialization failed: %s"
-msgstr "PackageTarget 초기화에 실패했습니다 : %s"
+msgstr "PackageTarget 초기화에 실패했습니다: %s"
 
-#: libdnf/repo/Repo.cpp:1898
+#: libdnf/repo/Repo.cpp:1916
 #, c-format
 msgid "Cannot open %s: %s"
-msgstr "열 수 없다 %s: %s"
+msgstr "열 수 없습니다 %s: %s"
 
-#: libdnf/repo/Repo.cpp:1942
+#: libdnf/repo/Repo.cpp:1960
 #, c-format
 msgid "Log handler with id %ld doesn't exist"
-msgstr "ID가 있는 로그 처리기 %ld 존재하지 않는다"
+msgstr "ID가 있는 로그 처리기 %ld가 존재하지 않습니다"
 
 #: libdnf/transaction/Swdb.cpp:173
 msgid "In progress"
@@ -1079,11 +1131,12 @@ msgstr "완료된 연결에서 연결 항목 최신화를 시도합니다"
 
 #: libdnf/transaction/Transformer.cpp:76
 msgid "Database Corrupted: no row 'version' in table 'config'"
-msgstr "데이타베이스가 오염되었습니다: 테이블 'config'에 'version' 행이 없습니다"
+msgstr ""
+"데이타베이스가 오염되었습니다: 테이블 'config'에 'version' 행이 없습니다"
 
 #: libdnf/transaction/Transformer.cpp:681
 msgid "Transformer: can't open history persist dir"
-msgstr "변형 : persist dir 기록을 열 수 없습니다"
+msgstr "변형: persist dir 기록을 열 수 없습니다"
 
 #: libdnf/transaction/Transformer.cpp:694
 msgid "Couldn't find a history database"
@@ -1102,5 +1155,5 @@ msgstr "TransactionItem 상태가 설정되지 않았습니다. %s"
 msgid "Can't add console output to unsaved transaction"
 msgstr "저장되지 않은 연결에 콘솔 출력을 추가 할 수 없습니다"
 
-#~ msgid "failed calculating RPMDB checksum"
-#~ msgstr "RPMDB 체크섬 계산 실패"
+#~ msgid "Failed to parse module artifact NEVRA '%s'"
+#~ msgstr "모듈 artifact NERVE '%s' 구분 분석에 실패함"
diff --git a/po/libdnf.pot b/po/libdnf.pot
index 7ab5b67e..d7fb56ad 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: 2021-06-13 09:18-0400\n"
+"POT-Creation-Date: 2022-02-28 10:38+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -50,7 +50,7 @@ msgstr ""
 msgid "negative value is not allowed"
 msgstr ""
 
-#: libdnf/conf/ConfigMain.cpp:341
+#: libdnf/conf/ConfigMain.cpp:343
 #, c-format
 msgid "percentage '%s' is out of range"
 msgstr ""
@@ -105,122 +105,122 @@ msgstr ""
 msgid "GetValue(): Value not set"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3173 libdnf/dnf-context.cpp:3182
+#: libdnf/dnf-context.cpp:3178 libdnf/dnf-context.cpp:3187
 #, c-format
 msgid "Cannot enable more streams from module '%s' at the same time"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3191 libdnf/dnf-context.cpp:3209
+#: libdnf/dnf-context.cpp:3196 libdnf/dnf-context.cpp:3214
 #, c-format
 msgid ""
 "Cannot enable module '%1$s' stream '%2$s': State of module already modified"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3258
+#: libdnf/dnf-context.cpp:3263
 #, c-format
 msgid "Modular dependency problem with Defaults: %s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3261
+#: libdnf/dnf-context.cpp:3266
 #, c-format
 msgid "Modular dependency problem with the latest modules: %s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3265
+#: libdnf/dnf-context.cpp:3270
 #, c-format
 msgid "Modular dependency problem: %s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3288 libdnf/dnf-context.cpp:3312
-#: libdnf/dnf-context.cpp:3323 libdnf/dnf-context.cpp:3362
-#: libdnf/dnf-context.cpp:3378 libdnf/dnf-context.cpp:3410
-#: libdnf/dnf-context.cpp:3459 libdnf/dnf-context.cpp:3469
+#: libdnf/dnf-context.cpp:3293 libdnf/dnf-context.cpp:3317
+#: libdnf/dnf-context.cpp:3328 libdnf/dnf-context.cpp:3367
+#: libdnf/dnf-context.cpp:3383 libdnf/dnf-context.cpp:3415
+#: libdnf/dnf-context.cpp:3464 libdnf/dnf-context.cpp:3474
 #, c-format
 msgid "Unable to resolve argument '%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3295
+#: libdnf/dnf-context.cpp:3300
 #, c-format
 msgid ""
 "Only module name is required. Ignoring unneeded information in argument: '%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3309
+#: libdnf/dnf-context.cpp:3314
 #, c-format
 msgid "Cannot reset module '%s': State of module already modified"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3320
+#: libdnf/dnf-context.cpp:3325
 #, c-format
 msgid "Cannot disable module '%s': State of module already modified"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3351 libdnf/dnf-context.cpp:3447
-#: libdnf/dnf-context.cpp:3620
+#: libdnf/dnf-context.cpp:3356 libdnf/dnf-context.cpp:3452
+#: libdnf/dnf-context.cpp:3633
 msgid "No modular data available"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3368
+#: libdnf/dnf-context.cpp:3373
 #, c-format
 msgid "Ignoring unneeded information in argument: '%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3406
+#: libdnf/dnf-context.cpp:3411
 #, c-format
 msgid ""
 "Problem during enablement of dependency tree for module '%1$s' stream "
 "'%2$s': %3$s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3418
+#: libdnf/dnf-context.cpp:3423
 msgid "Problems appeared for module enable request:"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3513
+#: libdnf/dnf-context.cpp:3518
 #, c-format
 msgid "No active module packages found for module spec '%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3518
+#: libdnf/dnf-context.cpp:3523
 #, c-format
 msgid "Cannot install module '%s' from fail-safe repository"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3525
+#: libdnf/dnf-context.cpp:3530
 #, c-format
 msgid "No profile found matching '%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3571
+#: libdnf/dnf-context.cpp:3584
 #, c-format
 msgid "No match for package '%s' for module spec %s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3582
+#: libdnf/dnf-context.cpp:3595
 #, c-format
 msgid "Problem during install for module '%1$s' stream '%2$s': %3$s"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3591
+#: libdnf/dnf-context.cpp:3604
 msgid "Problems appeared for module install request:"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3650
+#: libdnf/dnf-context.cpp:3663
 msgid "Problems appeared for module reset request:"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3651
+#: libdnf/dnf-context.cpp:3664 libdnf/dnf-context.cpp:3723
 msgid "Problems appeared for module disable request:"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3689
+#: libdnf/dnf-context.cpp:3755
 #, c-format
 msgid ""
 "The operation would result in switching of module '%s' stream '%s' to stream "
 "'%s'"
 msgstr ""
 
-#: libdnf/dnf-context.cpp:3693
+#: libdnf/dnf-context.cpp:3759
 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 "
@@ -228,23 +228,23 @@ msgid ""
 "reset the module, you can install the other stream."
 msgstr ""
 
-#: libdnf/dnf-goal.cpp:85
+#: libdnf/dnf-goal.cpp:107
 msgid "Could not depsolve transaction; "
 msgstr ""
 
-#: libdnf/dnf-goal.cpp:87
+#: libdnf/dnf-goal.cpp:109
 #, c-format
 msgid "%i problem detected:\n"
 msgid_plural "%i problems detected:\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: libdnf/dnf-goal.cpp:95
+#: libdnf/dnf-goal.cpp:117
 #, c-format
 msgid " Problem %1$i: %2$s\n"
 msgstr ""
 
-#: libdnf/dnf-goal.cpp:97
+#: libdnf/dnf-goal.cpp:119
 #, c-format
 msgid " Problem: %s\n"
 msgstr ""
@@ -309,84 +309,84 @@ msgstr ""
 msgid "could not add erase element %1$s(%2$i)"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:395
+#: libdnf/dnf-sack.cpp:394
 msgid "failed to add solv"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:414
+#: libdnf/dnf-sack.cpp:413
 #, c-format
 msgid "no %1$s string for %2$s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:424
+#: libdnf/dnf-sack.cpp:423
 #, c-format
 msgid "failed to open: %s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:503
+#: libdnf/dnf-sack.cpp:502
 #, c-format
 msgid "cannot create temporary file: %s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:513
+#: libdnf/dnf-sack.cpp:512
 #, c-format
 msgid "failed opening tmp file: %s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:525
+#: libdnf/dnf-sack.cpp:524
 #, c-format
 msgid "write_main() failed writing data: %i"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:542
+#: libdnf/dnf-sack.cpp:541
 msgid "write_main() failed to re-load written solv file"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:607
+#: libdnf/dnf-sack.cpp:606
 #, c-format
 msgid "can not create temporary file %s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:625
+#: libdnf/dnf-sack.cpp:624
 #, c-format
 msgid "write_ext(%1$d) has failed: %2$d"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:680
+#: libdnf/dnf-sack.cpp:679
 msgid "null repo md file"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:689
+#: libdnf/dnf-sack.cpp:688
 #, c-format
 msgid "can not read file %1$s: %2$s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:703
+#: libdnf/dnf-sack.cpp:702
 msgid "repo_add_solv() has failed."
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:716
+#: libdnf/dnf-sack.cpp:715
 msgid "loading of MD_TYPE_PRIMARY has failed."
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:729
+#: libdnf/dnf-sack.cpp:728
 msgid "repo_add_repomdxml/rpmmd() has failed."
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:796
+#: libdnf/dnf-sack.cpp:795
 msgid "failed to auto-detect architecture"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:961
+#: libdnf/dnf-sack.cpp:960
 #, c-format
 msgid "failed creating cachedir %s"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:1738
+#: libdnf/dnf-sack.cpp:1737
 msgid "failed loading RPMDB"
 msgstr ""
 
-#: libdnf/dnf-sack.cpp:2462
+#: libdnf/dnf-sack.cpp:2521
 #, c-format
 msgid "No module defaults found: %s"
 msgstr ""
@@ -415,64 +415,73 @@ msgstr ""
 msgid "already at 100%% state [%s]"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:300
+#: libdnf/dnf-transaction.cpp:302
 #, c-format
 msgid "Sources not set when trying to ensure package %s"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:326
+#: libdnf/dnf-transaction.cpp:328
 #, c-format
 msgid "Failed to ensure %1$s as repo %2$s not found(%3$i repos loaded)"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:367
+#: libdnf/dnf-transaction.cpp:369
 msgid "Failed to check untrusted: "
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:377
+#: libdnf/dnf-transaction.cpp:379
 #, c-format
 msgid "Downloaded file for %s not found"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:397
+#: libdnf/dnf-transaction.cpp:399
 #, c-format
 msgid "package %1$s cannot be verified and repo %2$s is GPG enabled: %3$s"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903
+#: libdnf/dnf-transaction.cpp:833 libdnf/dnf-transaction.cpp:905
 msgid "Failed to get value for CacheDir"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:911
+#: libdnf/dnf-transaction.cpp:913
 #, c-format
 msgid "Failed to get filesystem free size for %s: "
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:919
+#: libdnf/dnf-transaction.cpp:921
 #, c-format
 msgid "Failed to get filesystem free size for %s"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:935
+#: libdnf/dnf-transaction.cpp:937
 #, c-format
 msgid "Not enough free space in %1$s: needed %2$s, available %3$s"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:1195
+#: libdnf/dnf-transaction.cpp:1196
 msgid "failed to set root"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:1416
+#: libdnf/dnf-transaction.cpp:1417
 #, c-format
 msgid "Error %i running transaction test"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:1456
+#: libdnf/dnf-transaction.cpp:1441
+#, c-format
+msgid "Error %i opening rpm database"
+msgstr ""
+
+#: libdnf/dnf-transaction.cpp:1449 libdnf/dnf-transaction.cpp:1495
+msgid "The rpmdbCookie() function did not return cookie of rpm database."
+msgstr ""
+
+#: libdnf/dnf-transaction.cpp:1464
 #, c-format
 msgid "Error %i running transaction"
 msgstr ""
 
-#: libdnf/dnf-transaction.cpp:1472
+#: libdnf/dnf-transaction.cpp:1480
 #, c-format
 msgid "Transaction did not go to writing phase, but returned no error(%i)"
 msgstr ""
@@ -678,42 +687,42 @@ msgstr ""
 msgid "both module %s and %s obsolete %s"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1055
+#: libdnf/goal/Goal.cpp:1141
 msgid "no solver set"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1060
+#: libdnf/goal/Goal.cpp:1146
 #, c-format
 msgid "failed to make %s absolute"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1067
+#: libdnf/goal/Goal.cpp:1153
 #, c-format
 msgid "failed writing debugdata to %1$s: %2$s"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1079
+#: libdnf/goal/Goal.cpp:1165
 msgid "no solv in the goal"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1081
+#: libdnf/goal/Goal.cpp:1167
 msgid "no solution, cannot remove protected package"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1084
+#: libdnf/goal/Goal.cpp:1170
 msgid "no solution possible"
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1210
+#: libdnf/goal/Goal.cpp:1296
 msgid "Problem: "
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1215
+#: libdnf/goal/Goal.cpp:1301
 #, c-format
 msgid "Problem %d: "
 msgstr ""
 
-#: libdnf/goal/Goal.cpp:1542
+#: libdnf/goal/Goal.cpp:1634
 msgid ""
 "The operation would result in removing the following protected packages: "
 msgstr ""
@@ -738,30 +747,30 @@ msgstr ""
 msgid "cannot stat path %1$s: %2$s"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:573
+#: libdnf/module/ModulePackage.cpp:604
 #, c-format
 msgid "Invalid format of Platform module: %s"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:588
+#: libdnf/module/ModulePackage.cpp:619
 msgid "Multiple module platforms provided by available packages\n"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:601
+#: libdnf/module/ModulePackage.cpp:632
 msgid "Multiple module platforms provided by installed packages\n"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:628
+#: libdnf/module/ModulePackage.cpp:659
 #, c-format
 msgid "Detection of Platform Module in %s failed: %s"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:637
+#: libdnf/module/ModulePackage.cpp:668
 #, c-format
 msgid "Missing PLATFORM_ID in %s"
 msgstr ""
 
-#: libdnf/module/ModulePackage.cpp:642
+#: libdnf/module/ModulePackage.cpp:673
 msgid "No valid Platform ID detected"
 msgstr ""
 
@@ -799,32 +808,32 @@ msgstr ""
 msgid "Resetting modules:\n"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1673
+#: libdnf/module/ModulePackageContainer.cpp:1704
 #, c-format
 msgid "Unable to load modular Fail-Safe data at '%s'"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1679
+#: libdnf/module/ModulePackageContainer.cpp:1710
 #, c-format
 msgid "Unable to load modular Fail-Safe data for module '%s:%s'"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1762
+#: libdnf/module/ModulePackageContainer.cpp:1791
 #, c-format
 msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1778
+#: libdnf/module/ModulePackageContainer.cpp:1807
 #, c-format
 msgid "Unable to save a modular Fail Safe data to '%s'"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1801
+#: libdnf/module/ModulePackageContainer.cpp:1830
 #, c-format
 msgid "Unable to remove a modular Fail Safe data in '%s'"
 msgstr ""
 
-#: libdnf/module/ModulePackageContainer.cpp:1833
+#: libdnf/module/ModulePackageContainer.cpp:1862
 #, c-format
 msgid ""
 "Unable to apply modular obsoletes to '%s:%s' because target module '%s' is "
@@ -856,7 +865,7 @@ msgstr ""
 msgid "Failed to upgrade streams: %s"
 msgstr ""
 
-#: libdnf/module/modulemd/ModuleMetadata.cpp:219
+#: libdnf/module/modulemd/ModuleMetadata.cpp:221
 #, c-format
 msgid "Cannot retrieve module obsoletes because no stream matching %s: %s"
 msgstr ""
@@ -914,7 +923,7 @@ msgid "Repository '%s' has unsupported type: 'type=%s', skipping."
 msgstr ""
 
 #: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641
-#: libdnf/repo/Repo.cpp:1382
+#: libdnf/repo/Repo.cpp:1400
 #, c-format
 msgid "repo '%s': 'basecachedir' is not set"
 msgstr ""
@@ -949,125 +958,131 @@ msgstr ""
 msgid "%s: gpgme_op_import(): %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907
+#: libdnf/repo/Repo.cpp:709 libdnf/repo/Repo.cpp:1162 libdnf/repo/Repo.cpp:1236
+#: libdnf/repo/Repo.cpp:1279
+#, c-format
+msgid "Cannot create repo temporary directory \"%s\": %s"
+msgstr ""
+
+#: libdnf/repo/Repo.cpp:717 libdnf/repo/Repo.cpp:783 libdnf/repo/Repo.cpp:917
 #, c-format
 msgid "%s: gpgme_ctx_set_engine_info(): %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804
+#: libdnf/repo/Repo.cpp:744 libdnf/repo/Repo.cpp:808
 #, c-format
 msgid "can not list keys: %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:833
+#: libdnf/repo/Repo.cpp:837
 #, c-format
 msgid "Failed to retrieve GPG key for repo '%s': %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:886
+#: libdnf/repo/Repo.cpp:890
 #, c-format
 msgid "repo %s: 0x%s already imported"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:914
+#: libdnf/repo/Repo.cpp:904 libdnf/utils/filesystem.cpp:79
+#, c-format
+msgid "Failed to create directory \"%s\": %d - %s"
+msgstr ""
+
+#: libdnf/repo/Repo.cpp:924
 #, c-format
 msgid "repo %s: imported key 0x%s."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1162
+#: libdnf/repo/Repo.cpp:1176
 #, c-format
 msgid "reviving: repo '%s' skipped, no metalink."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1181
+#: libdnf/repo/Repo.cpp:1195
 #, c-format
 msgid "reviving: repo '%s' skipped, no usable hash."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1204
+#: libdnf/repo/Repo.cpp:1218
 #, c-format
 msgid "reviving: failed for '%s', mismatched %s sum."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1210
+#: libdnf/repo/Repo.cpp:1224
 #, c-format
 msgid "reviving: '%s' can be revived - metalink checksums match."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1235
+#: libdnf/repo/Repo.cpp:1253
 #, c-format
 msgid "reviving: '%s' can be revived - repomd matches."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1237
+#: libdnf/repo/Repo.cpp:1255
 #, c-format
 msgid "reviving: failed for '%s', mismatched repomd."
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1255
+#: libdnf/repo/Repo.cpp:1273
 #, c-format
 msgid "Cannot create repo destination directory \"%s\": %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1261
-#, c-format
-msgid "Cannot create repo temporary directory \"%s\": %s"
-msgstr ""
-
-#: libdnf/repo/Repo.cpp:1275
+#: libdnf/repo/Repo.cpp:1293
 #, c-format
 msgid "Cannot create directory \"%s\": %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1298
+#: libdnf/repo/Repo.cpp:1316
 #, c-format
 msgid "Cannot rename directory \"%s\" to \"%s\": %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1321
+#: libdnf/repo/Repo.cpp:1339
 #, c-format
 msgid "repo: using cache for: %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1333
+#: libdnf/repo/Repo.cpp:1351
 #, c-format
 msgid "Cache-only enabled but no cache for '%s'"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1337
+#: libdnf/repo/Repo.cpp:1355
 #, c-format
 msgid "repo: downloading from remote: %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1344
+#: libdnf/repo/Repo.cpp:1362
 #, c-format
 msgid "Failed to download metadata for repo '%s': %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1370
+#: libdnf/repo/Repo.cpp:1388
 msgid "getCachedir(): Computation of SHA256 failed"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1398
+#: libdnf/repo/Repo.cpp:1416
 #, c-format
 msgid "Cannot create persistdir \"%s\": %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1775
+#: libdnf/repo/Repo.cpp:1793
 msgid "resume cannot be used simultaneously with the byterangestart param"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1792
+#: libdnf/repo/Repo.cpp:1810
 #, c-format
 msgid "PackageTarget initialization failed: %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1898
+#: libdnf/repo/Repo.cpp:1916
 #, c-format
 msgid "Cannot open %s: %s"
 msgstr ""
 
-#: libdnf/repo/Repo.cpp:1942
+#: libdnf/repo/Repo.cpp:1960
 #, c-format
 msgid "Log handler with id %ld doesn't exist"
 msgstr ""
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 9fb6834d..864983a9 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -1,20 +1,21 @@
 # Charles Lee <lchopn@gmail.com>, 2017. #zanata, 2020, 2021.
-# Ludek Janda <ljanda@redhat.com>, 2018. #zanata
-# Qiyu Yan <yanqiyu01@gmail.com>, 2021.
+# Ludek Janda <ljanda@redhat.com>, 2018. #zanata, 2021.
+# Sundeep Anand <suanand@redhat.com>, 2021, 2022.
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-05-16 09:18-0400\n"
-"PO-Revision-Date: 2021-04-23 08:02+0000\n"
-"Last-Translator: Charles Lee <lchopn@gmail.com>\n"
-"Language-Team: Chinese (Simplified) <https://translate.fedoraproject.org/projects/dnf/libdnf-dnf-4-master/zh_CN/>\n"
+"POT-Creation-Date: 2022-02-28 10:38+0100\n"
+"PO-Revision-Date: 2022-03-02 10:16+0000\n"
+"Last-Translator: Sundeep Anand <suanand@redhat.com>\n"
+"Language-Team: Chinese (Simplified) <https://translate.fedoraproject.org/"
+"projects/dnf/libdnf-rhel-9/zh_CN/>\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.6\n"
+"X-Generator: Weblate 4.11\n"
 
 #: libdnf/conf/ConfigMain.cpp:62 libdnf/conf/OptionSeconds.cpp:40
 msgid "no value specified"
@@ -33,7 +34,7 @@ msgstr "无法把 '%s' 转换为字节"
 #: libdnf/conf/ConfigMain.cpp:83 libdnf/conf/OptionSeconds.cpp:66
 #, c-format
 msgid "unknown unit '%s'"
-msgstr "未知单元 “%s”"
+msgstr "未知单元 '%s'"
 
 #: libdnf/conf/ConfigMain.cpp:204 libdnf/conf/OptionEnum.cpp:83
 #: libdnf/conf/OptionNumber.cpp:88
@@ -41,16 +42,14 @@ msgid "invalid value"
 msgstr "无效值"
 
 #: libdnf/conf/ConfigMain.cpp:207
-#, fuzzy
-#| msgid "'%s' is not an allowed value"
 msgid "value 1 is not allowed"
-msgstr "'%s'  不是一个允许的值"
+msgstr "1 不是一个被允许的值"
 
 #: libdnf/conf/ConfigMain.cpp:209
 msgid "negative value is not allowed"
-msgstr ""
+msgstr "负数值不被允许"
 
-#: libdnf/conf/ConfigMain.cpp:341
+#: libdnf/conf/ConfigMain.cpp:343
 #, c-format
 msgid "percentage '%s' is out of range"
 msgstr "百分数 '%s' 超出范围"
@@ -58,23 +57,23 @@ msgstr "百分数 '%s' 超出范围"
 #: libdnf/conf/OptionBinds.cpp:85
 #, c-format
 msgid "Configuration: OptionBinding with id \"%s\" does not exist"
-msgstr "配置:ID 为 \"%s\"  的 OptionBinding 不存在"
+msgstr "配置:ID 为 \"%s\" 的 OptionBinding 不存在"
 
 #: libdnf/conf/OptionBinds.cpp:97
 #, c-format
 msgid "Configuration: OptionBinding with id \"%s\" already exists"
-msgstr "配置:ID 为 \"%s\"  的 OptionBinding 已存在"
+msgstr "配置:ID 为 \"%s\" 的 OptionBinding 已存在"
 
 #: libdnf/conf/OptionBool.cpp:47
 #, c-format
 msgid "invalid boolean value '%s'"
-msgstr "无效的布尔值“%s”"
+msgstr "无效的布尔值 '%s'"
 
 #: libdnf/conf/OptionEnum.cpp:72 libdnf/conf/OptionEnum.cpp:158
 #: libdnf/conf/OptionString.cpp:64 libdnf/conf/OptionStringList.cpp:59
 #, c-format
 msgid "'%s' is not an allowed value"
-msgstr "'%s'  不是一个允许的值"
+msgstr "'%s' 不是一个允许的值"
 
 #: libdnf/conf/OptionNumber.cpp:73
 #, c-format
@@ -105,128 +104,148 @@ msgstr "无法把 '%s' 转换为秒"
 msgid "GetValue(): Value not set"
 msgstr "GetValue(): 值没有设置"
 
-#: libdnf/dnf-context.cpp:3170 libdnf/dnf-context.cpp:3179
+#: libdnf/dnf-context.cpp:3178 libdnf/dnf-context.cpp:3187
 #, c-format
 msgid "Cannot enable more streams from module '%s' at the same time"
 msgstr "无法同时从模块 '%s' 中启用更多流"
 
-#: libdnf/dnf-context.cpp:3188 libdnf/dnf-context.cpp:3206
+#: libdnf/dnf-context.cpp:3196 libdnf/dnf-context.cpp:3214
 #, c-format
 msgid ""
 "Cannot enable module '%1$s' stream '%2$s': State of module already modified"
 msgstr "无法启用模块 '%1$s' 流 '%2$s':已经修改的模块状态"
 
-#: libdnf/dnf-context.cpp:3253
+#: libdnf/dnf-context.cpp:3263
 #, c-format
 msgid "Modular dependency problem with Defaults: %s"
 msgstr "默认设置的模块依赖性问题:%s"
 
-#: libdnf/dnf-context.cpp:3256
-#, fuzzy, c-format
-#| msgid "some dependency problem"
+#: libdnf/dnf-context.cpp:3266
+#, c-format
 msgid "Modular dependency problem with the latest modules: %s"
-msgstr "一些依赖问题"
+msgstr "最新模块的模块化依赖关系问题: %s"
 
-#: libdnf/dnf-context.cpp:3260
-#, fuzzy, c-format
-#| msgid "some dependency problem"
+#: libdnf/dnf-context.cpp:3270
+#, c-format
 msgid "Modular dependency problem: %s"
-msgstr "一些依赖问题"
+msgstr "模块依赖问题:%s"
 
-#: libdnf/dnf-context.cpp:3294 libdnf/dnf-context.cpp:3318
-#: libdnf/dnf-context.cpp:3329 libdnf/dnf-context.cpp:3368
-#: libdnf/dnf-context.cpp:3384 libdnf/dnf-context.cpp:3416
-#: libdnf/dnf-context.cpp:3460 libdnf/dnf-context.cpp:3470
-#, fuzzy, c-format
-#| msgid "Failed to resolve: %s"
+#: libdnf/dnf-context.cpp:3293 libdnf/dnf-context.cpp:3317
+#: libdnf/dnf-context.cpp:3328 libdnf/dnf-context.cpp:3367
+#: libdnf/dnf-context.cpp:3383 libdnf/dnf-context.cpp:3415
+#: libdnf/dnf-context.cpp:3464 libdnf/dnf-context.cpp:3474
+#, c-format
 msgid "Unable to resolve argument '%s'"
-msgstr "无法解析: %s"
+msgstr "无法解析参数 '%s'"
 
-#: libdnf/dnf-context.cpp:3301
+#: libdnf/dnf-context.cpp:3300
 #, 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:3315
+#: libdnf/dnf-context.cpp:3314
 #, c-format
 msgid "Cannot reset module '%s': State of module already modified"
 msgstr "无法重置模块 '%s':已修改的模块状态"
 
-#: libdnf/dnf-context.cpp:3326
+#: libdnf/dnf-context.cpp:3325
 #, c-format
 msgid "Cannot disable module '%s': State of module already modified"
 msgstr "无法禁用模块 '%s':已经修改的模块状态"
 
-#: libdnf/dnf-context.cpp:3357 libdnf/dnf-context.cpp:3449
-#: libdnf/dnf-context.cpp:3559
+#: libdnf/dnf-context.cpp:3356 libdnf/dnf-context.cpp:3452
+#: libdnf/dnf-context.cpp:3633
 msgid "No modular data available"
-msgstr ""
+msgstr "没有可用的模块数据"
 
-#: libdnf/dnf-context.cpp:3374
+#: libdnf/dnf-context.cpp:3373
 #, c-format
 msgid "Ignoring unneeded information in argument: '%s'"
-msgstr ""
+msgstr "忽略参数:\"%s\" 中不需要的信息"
 
-#: libdnf/dnf-context.cpp:3412
+#: libdnf/dnf-context.cpp:3411
 #, c-format
 msgid ""
 "Problem during enablement of dependency tree for module '%1$s' stream "
 "'%2$s': %3$s"
-msgstr ""
+msgstr "为模块 '%1$s' 流 '%2$s' 启用依赖树时出现问题: %3$s"
 
-#: libdnf/dnf-context.cpp:3424
-msgid "Problems appeared for module enable request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3423
+msgid "Problems appeared for module enable request:"
+msgstr "模块启用请求出现问题:"
 
-#. this really should never happen; unless the modular repodata is corrupted
-#: libdnf/dnf-context.cpp:3496
+#: libdnf/dnf-context.cpp:3518
 #, c-format
-msgid "Failed to parse module artifact NEVRA '%s'"
-msgstr ""
+msgid "No active module packages found for module spec '%s'"
+msgstr "未找到模块规范 '%s' 的活动模块包"
+
+#: libdnf/dnf-context.cpp:3523
+#, c-format
+msgid "Cannot install module '%s' from fail-safe repository"
+msgstr "无法从故障保护存储库安装模块 '%s'"
 
 #: libdnf/dnf-context.cpp:3530
-msgid "Problems appeared for module install request"
-msgstr ""
+#, c-format
+msgid "No profile found matching '%s'"
+msgstr "未找到匹配 '%s' 的配置文件"
 
-#: libdnf/dnf-context.cpp:3590
-msgid "Problems appeared for module reset request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3584
+#, c-format
+msgid "No match for package '%s' for module spec %s"
+msgstr "没有匹配模块规范 %s 的包 '%s'"
 
-#: libdnf/dnf-context.cpp:3592
-msgid "Problems appeared for module disable request"
-msgstr ""
+#: libdnf/dnf-context.cpp:3595
+#, c-format
+msgid "Problem during install for module '%1$s' stream '%2$s': %3$s"
+msgstr "在安装模块 '%1$s' 流 '%2$s'时的问题:%3$s"
 
-#: libdnf/dnf-context.cpp:3628
+#: libdnf/dnf-context.cpp:3604
+msgid "Problems appeared for module install request:"
+msgstr "模块安装请求出现问题:"
+
+#: libdnf/dnf-context.cpp:3663
+msgid "Problems appeared for module reset request:"
+msgstr "模块重置请求出现问题:"
+
+#: libdnf/dnf-context.cpp:3664 libdnf/dnf-context.cpp:3723
+msgid "Problems appeared for module disable request:"
+msgstr "模块禁用请求出现问题:"
+
+#: libdnf/dnf-context.cpp:3755
 #, c-format
 msgid ""
-"The operation would result in switching of module '%s' stream '%s' to stream"
-" '%s'"
-msgstr ""
+"The operation would result in switching of module '%s' stream '%s' to stream "
+"'%s'"
+msgstr "这个操作会把模块 '%s' 从流 '%s' 切换到流 '%s'"
 
-#: libdnf/dnf-context.cpp:3632
+#: libdnf/dnf-context.cpp:3759
 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 <module_name>' 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 <module_name>' command. After you "
+"reset the module, you can install the other stream."
 msgstr ""
+"无法切换一个模块已启用的流。 \n"
+"推荐从模块中删除所有已安装的内容,使用 'microdnf module reset <module_name>' "
+"命令重置模块。在重置模块后就可以安装其他流。"
 
-#: libdnf/dnf-goal.cpp:85
+#: libdnf/dnf-goal.cpp:107
 msgid "Could not depsolve transaction; "
-msgstr "无法 depsolve 事务: "
+msgstr "无法 depsolve 事务; "
 
-#: libdnf/dnf-goal.cpp:87
+#: libdnf/dnf-goal.cpp:109
 #, c-format
 msgid "%i problem detected:\n"
 msgid_plural "%i problems detected:\n"
 msgstr[0] "发现 %i 问题:\n"
 
-#: libdnf/dnf-goal.cpp:95
+#: libdnf/dnf-goal.cpp:117
 #, c-format
 msgid " Problem %1$i: %2$s\n"
 msgstr " 问题 %1$i: %2$s\n"
 
-#: libdnf/dnf-goal.cpp:97
+#: libdnf/dnf-goal.cpp:119
 #, c-format
 msgid " Problem: %s\n"
 msgstr " 问题: %s\n"
@@ -236,7 +255,7 @@ 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
@@ -291,87 +310,87 @@ msgstr "无法找到软件包 %s"
 msgid "could not add erase element %1$s(%2$i)"
 msgstr "无法添加删除元素 %1$s(%2$i)"
 
-#: libdnf/dnf-sack.cpp:395
+#: libdnf/dnf-sack.cpp:394
 msgid "failed to add solv"
 msgstr "添加 solv 失败"
 
-#: libdnf/dnf-sack.cpp:414
+#: libdnf/dnf-sack.cpp:413
 #, c-format
 msgid "no %1$s string for %2$s"
 msgstr "没有为 %2$s 的 %1$s 字符串"
 
-#: libdnf/dnf-sack.cpp:424
+#: libdnf/dnf-sack.cpp:423
 #, c-format
 msgid "failed to open: %s"
 msgstr "打开失败:%s"
 
-#: libdnf/dnf-sack.cpp:503
+#: libdnf/dnf-sack.cpp:502
 #, c-format
 msgid "cannot create temporary file: %s"
 msgstr "不能创建临时文件: %s"
 
-#: libdnf/dnf-sack.cpp:513
+#: libdnf/dnf-sack.cpp:512
 #, c-format
 msgid "failed opening tmp file: %s"
 msgstr "打开 tmp 文件失败: %s"
 
-#: libdnf/dnf-sack.cpp:525
+#: libdnf/dnf-sack.cpp:524
 #, c-format
 msgid "write_main() failed writing data: %i"
 msgstr "write_main() 写数据失败: %i"
 
-#: libdnf/dnf-sack.cpp:542
+#: libdnf/dnf-sack.cpp:541
 msgid "write_main() failed to re-load written solv file"
 msgstr "write_main() 重新加载写的 solv 文件失败"
 
-#: libdnf/dnf-sack.cpp:607
+#: libdnf/dnf-sack.cpp:606
 #, c-format
 msgid "can not create temporary file %s"
 msgstr "不能创建临时文件 %s"
 
-#: libdnf/dnf-sack.cpp:625
+#: libdnf/dnf-sack.cpp:624
 #, c-format
 msgid "write_ext(%1$d) has failed: %2$d"
 msgstr "write_ext(%1$d) 已失败: %2$d"
 
-#: libdnf/dnf-sack.cpp:680
+#: libdnf/dnf-sack.cpp:679
 msgid "null repo md file"
 msgstr "null repo md 文件"
 
-#: libdnf/dnf-sack.cpp:689
+#: libdnf/dnf-sack.cpp:688
 #, c-format
 msgid "can not read file %1$s: %2$s"
 msgstr "不能读文件 %1$s: %2$s"
 
-#: libdnf/dnf-sack.cpp:703
+#: libdnf/dnf-sack.cpp:702
 msgid "repo_add_solv() has failed."
 msgstr "repo_add_solv() 已失败。"
 
-#: libdnf/dnf-sack.cpp:716
+#: libdnf/dnf-sack.cpp:715
 msgid "loading of MD_TYPE_PRIMARY has failed."
 msgstr "加载 MD_TYPE_PRIMARY 失败。"
 
-#: libdnf/dnf-sack.cpp:729
+#: libdnf/dnf-sack.cpp:728
 msgid "repo_add_repomdxml/rpmmd() has failed."
 msgstr "repo_add_repomdxml/rpmmd() 已失败。"
 
-#: libdnf/dnf-sack.cpp:796
+#: libdnf/dnf-sack.cpp:795
 msgid "failed to auto-detect architecture"
 msgstr "自动检测架构失败"
 
-#: libdnf/dnf-sack.cpp:961
+#: libdnf/dnf-sack.cpp:960
 #, c-format
 msgid "failed creating cachedir %s"
 msgstr "无法创建 cachedir %s"
 
-#: libdnf/dnf-sack.cpp:1738
+#: libdnf/dnf-sack.cpp:1737
 msgid "failed loading RPMDB"
 msgstr "无法加载 RPMDB"
 
-#: libdnf/dnf-sack.cpp:2462
+#: libdnf/dnf-sack.cpp:2521
 #, c-format
 msgid "No module defaults found: %s"
-msgstr ""
+msgstr "没有找到模块默认设置:%s"
 
 #: libdnf/dnf-state.cpp:1184
 #, c-format
@@ -397,64 +416,73 @@ msgstr "在一个没有设置大小的状态 %1$p 中做! [%2$s]"
 msgid "already at 100%% state [%s]"
 msgstr "已是 100%% 状态 [%s]"
 
-#: libdnf/dnf-transaction.cpp:300
+#: libdnf/dnf-transaction.cpp:302
 #, c-format
 msgid "Sources not set when trying to ensure package %s"
 msgstr "在尝试确保软件包 %s 时源没有设置"
 
-#: libdnf/dnf-transaction.cpp:326
+#: libdnf/dnf-transaction.cpp:328
 #, c-format
 msgid "Failed to ensure %1$s as repo %2$s not found(%3$i repos loaded)"
 msgstr "无法确保 %1$s,因为 repo %2$s 没有找到 (%3$i repos 已加载)"
 
-#: libdnf/dnf-transaction.cpp:367
+#: libdnf/dnf-transaction.cpp:369
 msgid "Failed to check untrusted: "
-msgstr "检查不被信任失败: "
+msgstr "检查不被信任失败 : "
 
-#: libdnf/dnf-transaction.cpp:377
+#: libdnf/dnf-transaction.cpp:379
 #, c-format
 msgid "Downloaded file for %s not found"
 msgstr "没有找到下载的文件 %s"
 
-#: libdnf/dnf-transaction.cpp:397
+#: libdnf/dnf-transaction.cpp:399
 #, 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"
 
-#: libdnf/dnf-transaction.cpp:831 libdnf/dnf-transaction.cpp:903
+#: libdnf/dnf-transaction.cpp:833 libdnf/dnf-transaction.cpp:905
 msgid "Failed to get value for CacheDir"
 msgstr "无法为 CacheDir 获得值"
 
-#: libdnf/dnf-transaction.cpp:911
+#: libdnf/dnf-transaction.cpp:913
 #, c-format
 msgid "Failed to get filesystem free size for %s: "
-msgstr "无法为 %s 获得文件系统可用空间的大小: "
+msgstr "无法为 %s 获得文件系统可用空间的大小: "
 
-#: libdnf/dnf-transaction.cpp:919
+#: libdnf/dnf-transaction.cpp:921
 #, c-format
 msgid "Failed to get filesystem free size for %s"
 msgstr "无法为 %s 获得文件系统可用空间的大小"
 
-#: libdnf/dnf-transaction.cpp:935
+#: libdnf/dnf-transaction.cpp:937
 #, c-format
 msgid "Not enough free space in %1$s: needed %2$s, available %3$s"
 msgstr "%1$s 没有足够的空闲空间: 需要 %2$s,可用 %3$s"
 
-#: libdnf/dnf-transaction.cpp:1195
+#: libdnf/dnf-transaction.cpp:1196
 msgid "failed to set root"
 msgstr "设置 root 失败"
 
-#: libdnf/dnf-transaction.cpp:1416
+#: libdnf/dnf-transaction.cpp:1417
 #, c-format
 msgid "Error %i running transaction test"
-msgstr "错误 %i 运行事务测试"
+msgstr "运行事务测试时错误 %i"
 
-#: libdnf/dnf-transaction.cpp:1456
+#: libdnf/dnf-transaction.cpp:1441
+#, c-format
+msgid "Error %i opening rpm database"
+msgstr "打开 rpm 数据库时错误 %i"
+
+#: libdnf/dnf-transaction.cpp:1449 libdnf/dnf-transaction.cpp:1495
+msgid "The rpmdbCookie() function did not return cookie of rpm database."
+msgstr "rpmdbCookie()函数没有返回 rpm 数据库的 cookie。"
+
+#: libdnf/dnf-transaction.cpp:1464
 #, c-format
 msgid "Error %i running transaction"
-msgstr "错误 %i 运行事务"
+msgstr "运行事务时错误 %i"
 
-#: libdnf/dnf-transaction.cpp:1472
+#: libdnf/dnf-transaction.cpp:1480
 #, c-format
 msgid "Transaction did not go to writing phase, but returned no error(%i)"
 msgstr "事务没有进入写阶段,但没有返回错误(%i)"
@@ -545,51 +573,51 @@ msgstr "软件包 %s 被排除过滤过滤掉"
 #: libdnf/goal/Goal.cpp:105
 #, c-format
 msgid "nothing provides %s needed by %s"
-msgstr ""
+msgstr "没有东西可提供 %s(%s 需要)"
 
 #: libdnf/goal/Goal.cpp:106
 #, c-format
 msgid "cannot install both %s and %s"
-msgstr ""
+msgstr "无法同时安装 %s 和 %s"
 
 #: libdnf/goal/Goal.cpp:107
 #, c-format
 msgid "package %s conflicts with %s provided by %s"
-msgstr ""
+msgstr "软件包 %s 与 %s(由 %s 提供)冲突"
 
 #: libdnf/goal/Goal.cpp:108
 #, c-format
 msgid "package %s obsoletes %s provided by %s"
-msgstr ""
+msgstr "软件包 %s 取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:109
 #, c-format
 msgid "installed package %s obsoletes %s provided by %s"
-msgstr ""
+msgstr "已安装的软件包 %s 取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:110
 #, c-format
 msgid "package %s implicitly obsoletes %s provided by %s"
-msgstr ""
+msgstr "软件包 %s 隐式地取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:111
 #, c-format
 msgid "package %s requires %s, but none of the providers can be installed"
-msgstr ""
+msgstr "软件包 %s 需要 %s,但没有提供者可以被安装"
 
 #: libdnf/goal/Goal.cpp:112
 #, c-format
 msgid "package %s conflicts with %s provided by itself"
-msgstr ""
+msgstr "软件包 %s 与自己提供的 %s 冲突"
 
 #: libdnf/goal/Goal.cpp:113
 #, c-format
 msgid "both package %s and %s obsolete %s"
-msgstr ""
+msgstr "软件包 %s 和 %s 同时取代了 %s"
 
 #: libdnf/goal/Goal.cpp:119
 msgid "problem with installed module "
-msgstr ""
+msgstr "已安装模块的问题 "
 
 #: libdnf/goal/Goal.cpp:123
 #, c-format
@@ -598,110 +626,107 @@ msgstr "模块 %s 不存在"
 
 #: libdnf/goal/Goal.cpp:126
 msgid "cannot install the best update candidate for module "
-msgstr ""
+msgstr "无法为模块安装最佳更新候选 "
 
 #: libdnf/goal/Goal.cpp:128 libdnf/goal/Goal.cpp:131
 #, c-format
 msgid "module %s is disabled"
-msgstr ""
+msgstr "模块 %s 被禁用"
 
 #: libdnf/goal/Goal.cpp:129
 #, c-format
 msgid "module %s does not have a compatible architecture"
-msgstr ""
+msgstr "模块 %s 没有兼容的架构"
 
 #: libdnf/goal/Goal.cpp:130
 #, c-format
 msgid "module %s is not installable"
-msgstr ""
+msgstr "模块 %s 不可安装"
 
 #: libdnf/goal/Goal.cpp:132
 #, c-format
 msgid "nothing provides %s needed by module %s"
-msgstr ""
+msgstr "没有东西提供 %s(模块 %s 需要它)"
 
 #: libdnf/goal/Goal.cpp:133
 #, c-format
 msgid "cannot install both modules %s and %s"
-msgstr ""
+msgstr "无法同时安装模块 %s 和 %s"
 
 #: libdnf/goal/Goal.cpp:134
 #, c-format
 msgid "module %s conflicts with %s provided by %s"
-msgstr ""
+msgstr "模块 %s 与 %s (由 %s 提供)冲突"
 
 #: libdnf/goal/Goal.cpp:135
 #, c-format
 msgid "module %s obsoletes %s provided by %s"
-msgstr ""
+msgstr "模块 %s 取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:136
 #, c-format
 msgid "installed module %s obsoletes %s provided by %s"
-msgstr ""
+msgstr "已安装的模块 %s 取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:137
 #, c-format
 msgid "module %s implicitly obsoletes %s provided by %s"
-msgstr ""
+msgstr "模块 %s 隐式地取代了 %s(由 %s 提供)"
 
 #: libdnf/goal/Goal.cpp:138
 #, c-format
 msgid "module %s requires %s, but none of the providers can be installed"
-msgstr ""
+msgstr "模块 %s 需要 %s,但没有提供者可以被安装"
 
 #: libdnf/goal/Goal.cpp:139
 #, c-format
 msgid "module %s conflicts with %s provided by itself"
-msgstr ""
+msgstr "模块 %s 与自己提供的 %s 冲突"
 
 #: libdnf/goal/Goal.cpp:140
 #, c-format
 msgid "both module %s and %s obsolete %s"
-msgstr ""
+msgstr "模块 %s 和 %s 同时取代了 %s"
 
-#: libdnf/goal/Goal.cpp:1055
+#: libdnf/goal/Goal.cpp:1141
 msgid "no solver set"
 msgstr "无 solver 设置"
 
-#: libdnf/goal/Goal.cpp:1060
+#: libdnf/goal/Goal.cpp:1146
 #, c-format
 msgid "failed to make %s absolute"
 msgstr "无法使 %s 绝对"
 
-#: libdnf/goal/Goal.cpp:1067
+#: libdnf/goal/Goal.cpp:1153
 #, c-format
 msgid "failed writing debugdata to %1$s: %2$s"
 msgstr "把 debugdata 写入到 %1$s 失败: %2$s"
 
-#: libdnf/goal/Goal.cpp:1079
+#: libdnf/goal/Goal.cpp:1165
 msgid "no solv in the goal"
 msgstr "在目标中没有 solv"
 
-#: libdnf/goal/Goal.cpp:1081
+#: libdnf/goal/Goal.cpp:1167
 msgid "no solution, cannot remove protected package"
 msgstr "没有解决方案,不能删除保护的软件包"
 
-#: libdnf/goal/Goal.cpp:1084
+#: libdnf/goal/Goal.cpp:1170
 msgid "no solution possible"
 msgstr "没有可能的解决方案"
 
-#: libdnf/goal/Goal.cpp:1210
-#, fuzzy
-#| msgid " Problem: %s\n"
+#: libdnf/goal/Goal.cpp:1296
 msgid "Problem: "
-msgstr "问题: %s "
+msgstr "问题: "
 
-#: libdnf/goal/Goal.cpp:1215
-#, fuzzy, c-format
-#| msgid " Problem: %s\n"
+#: libdnf/goal/Goal.cpp:1301
+#, c-format
 msgid "Problem %d: "
-msgstr "问题: %s "
+msgstr "问题 %d: "
 
-#: libdnf/goal/Goal.cpp:1542
+#: libdnf/goal/Goal.cpp:1634
 msgid ""
 "The operation would result in removing the following protected packages: "
-msgstr "这个操作可能会导致删除以下受保护的软件包: "
+msgstr "这个操作将会导致删除以下受保护的软件包: "
 
 #: libdnf/hy-iutil.cpp:326
 #, c-format
@@ -721,105 +746,105 @@ msgstr "无法创建目录 %1$s: %2$s"
 #: libdnf/hy-iutil.cpp:415
 #, c-format
 msgid "cannot stat path %1$s: %2$s"
-msgstr ""
+msgstr "无法 stat 路径 %1$s: %2$s"
 
-#: libdnf/module/ModulePackage.cpp:573
+#: libdnf/module/ModulePackage.cpp:604
 #, c-format
 msgid "Invalid format of Platform module: %s"
-msgstr ""
+msgstr "Platform 模块格式无效 : %s"
 
-#: libdnf/module/ModulePackage.cpp:588
+#: libdnf/module/ModulePackage.cpp:619
 msgid "Multiple module platforms provided by available packages\n"
-msgstr ""
+msgstr "可用软件包提供了多个模块平台\n"
 
-#: libdnf/module/ModulePackage.cpp:601
+#: libdnf/module/ModulePackage.cpp:632
 msgid "Multiple module platforms provided by installed packages\n"
-msgstr ""
+msgstr "已安装的软件包提供了多个模块平台\n"
 
-#: libdnf/module/ModulePackage.cpp:628
+#: libdnf/module/ModulePackage.cpp:659
 #, c-format
 msgid "Detection of Platform Module in %s failed: %s"
-msgstr ""
+msgstr "检测 %s 中的 Platform 模块失败: %s"
 
-#: libdnf/module/ModulePackage.cpp:637
+#: libdnf/module/ModulePackage.cpp:668
 #, c-format
 msgid "Missing PLATFORM_ID in %s"
-msgstr ""
+msgstr "在 %s 中缺少 PLATFORM_ID"
 
-#: libdnf/module/ModulePackage.cpp:642
+#: libdnf/module/ModulePackage.cpp:673
 msgid "No valid Platform ID detected"
-msgstr ""
+msgstr "没有检测到有效的 Platform ID"
 
 #: libdnf/module/ModulePackageContainer.cpp:107
 #, c-format
 msgid "Cannot enable multiple streams for module '%s'"
-msgstr ""
+msgstr "无法为模块 '%s' 启用多个流"
 
 #: libdnf/module/ModulePackageContainer.cpp:346
 #, c-format
 msgid "Conflicting defaults with repo '%s': %s"
-msgstr ""
+msgstr "默认设置与 repo '%s' 冲突 : %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:918
+#: libdnf/module/ModulePackageContainer.cpp:917
 msgid "Installing module profiles:\n"
-msgstr ""
+msgstr "安装模块配置档案:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:933
+#: libdnf/module/ModulePackageContainer.cpp:932
 msgid "Disabling module profiles:\n"
-msgstr ""
+msgstr "禁用模块配置档案:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:948
+#: libdnf/module/ModulePackageContainer.cpp:947
 msgid "Enabling module streams:\n"
-msgstr ""
+msgstr "启用模块流:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:962
+#: libdnf/module/ModulePackageContainer.cpp:961
 msgid "Switching module streams:\n"
-msgstr ""
+msgstr "切换模块流:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:980
+#: libdnf/module/ModulePackageContainer.cpp:979
 msgid "Disabling modules:\n"
-msgstr ""
+msgstr "禁用模块:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:991
+#: libdnf/module/ModulePackageContainer.cpp:990
 msgid "Resetting modules:\n"
-msgstr ""
+msgstr "重置模块:\n"
 
-#: libdnf/module/ModulePackageContainer.cpp:1674
+#: libdnf/module/ModulePackageContainer.cpp:1704
 #, c-format
 msgid "Unable to load modular Fail-Safe data at '%s'"
-msgstr ""
+msgstr "无法加载位于 '%s' 的模块 Fail-Safe 数据"
 
-#: libdnf/module/ModulePackageContainer.cpp:1680
+#: libdnf/module/ModulePackageContainer.cpp:1710
 #, c-format
 msgid "Unable to load modular Fail-Safe data for module '%s:%s'"
-msgstr ""
+msgstr "无法为模块 '%s:%s' 加载模块 Fail-Safe 数据"
 
-#: libdnf/module/ModulePackageContainer.cpp:1763
+#: libdnf/module/ModulePackageContainer.cpp:1791
 #, c-format
 msgid "Unable to create directory \"%s\" for modular Fail Safe data: %s"
-msgstr ""
+msgstr "无法为模块 Fail Safe 数据创建目录 \"%s\" : %s"
 
-#: libdnf/module/ModulePackageContainer.cpp:1779
+#: libdnf/module/ModulePackageContainer.cpp:1807
 #, c-format
 msgid "Unable to save a modular Fail Safe data to '%s'"
-msgstr ""
+msgstr "无法把模块 Fail Safe 数据保存到 '%s'"
 
-#: libdnf/module/ModulePackageContainer.cpp:1802
+#: libdnf/module/ModulePackageContainer.cpp:1830
 #, c-format
 msgid "Unable to remove a modular Fail Safe data in '%s'"
-msgstr ""
+msgstr "无法删除 '%s' 处的模块 Fail Safe 数据"
 
-#: libdnf/module/ModulePackageContainer.cpp:1834
+#: libdnf/module/ModulePackageContainer.cpp:1862
 #, c-format
 msgid ""
 "Unable to apply modular obsoletes to '%s:%s' because target module '%s' is "
 "disabled"
-msgstr ""
+msgstr "无法将模块化过时应用到 '%s:%s',因为目标模块 '%s' 被禁用"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:86
 #, c-format
 msgid "Failed to update from string: %s"
-msgstr ""
+msgstr "无法从字符串更新: %s"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:110
 #, c-format
@@ -829,57 +854,57 @@ msgstr "无法解析: %s"
 #: libdnf/module/modulemd/ModuleMetadata.cpp:115
 #, c-format
 msgid "There were errors while resolving modular defaults: %s"
-msgstr ""
+msgstr "在解析模块默认值时出现了错误:%s"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:120
 #, c-format
 msgid "Failed to upgrade defaults: %s"
-msgstr ""
+msgstr "无法升级默认值: %s"
 
 #: libdnf/module/modulemd/ModuleMetadata.cpp:123
 #, c-format
 msgid "Failed to upgrade streams: %s"
-msgstr ""
+msgstr "升级流失败: %s"
 
-#: libdnf/module/modulemd/ModuleMetadata.cpp:219
+#: libdnf/module/modulemd/ModuleMetadata.cpp:221
 #, c-format
 msgid "Cannot retrieve module obsoletes because no stream matching %s: %s"
-msgstr ""
+msgstr "无法获取模块过时,因为没有流匹配 %s:%s"
 
 #: libdnf/plugin/plugin.cpp:46
 #, c-format
 msgid "Can't load shared library \"%s\": %s"
-msgstr ""
+msgstr "无法加载共享库 \"%s\": %s"
 
 #: libdnf/plugin/plugin.cpp:61 libdnf/plugin/plugin.cpp:67
 #: libdnf/plugin/plugin.cpp:73 libdnf/plugin/plugin.cpp:79
 #, c-format
 msgid "Can't obtain address of symbol \"%s\": %s"
-msgstr ""
+msgstr "无法获取符号 \"%s\" 的地址: %s"
 
 #: libdnf/plugin/plugin.cpp:86
 #, c-format
 msgid "Loading plugin file=\"%s\""
-msgstr ""
+msgstr "正在加载插件文件=\"%s\""
 
 #: libdnf/plugin/plugin.cpp:89
 #, c-format
 msgid "Loaded plugin name=\"%s\", version=\"%s\""
-msgstr ""
+msgstr "已加载插件名=\"%s\", 版本=\"%s\""
 
 #: libdnf/plugin/plugin.cpp:96
 msgid "Plugins::loadPlugins() dirPath cannot be empty"
-msgstr ""
+msgstr "Plugins::loadPlugins() dirPath 不能为空"
 
 #: libdnf/plugin/plugin.cpp:105
 #, c-format
 msgid "Can't read plugin directory \"%s\": %s"
-msgstr ""
+msgstr "无法读取插件目录 \"%s\": %s"
 
 #: libdnf/plugin/plugin.cpp:114
 #, c-format
 msgid "Can't load plugin \"%s\": %s"
-msgstr ""
+msgstr "无法加载插件 \"%s\": %s"
 
 #: libdnf/repo/DependencySplitter.cpp:50
 msgid ""
@@ -887,6 +912,8 @@ msgid ""
 "deprecated and the support will be dropped in future versions. Use '=' "
 "operator instead."
 msgstr ""
+"在 reldeps 中使用 '==' 操作符可能导致一个未定义的行为。这个操作符已被废弃,并"
+"且在未来的版本中会取消对它的支持。请使用 '=' 操作符代替。"
 
 #: libdnf/repo/Repo.cpp:321
 #, c-format
@@ -899,25 +926,25 @@ msgid "Repository '%s' has unsupported type: 'type=%s', skipping."
 msgstr "仓库 '%s' 有不被支持的类型: 'type=%s', 忽略。"
 
 #: libdnf/repo/Repo.cpp:489 libdnf/repo/Repo.cpp:610 libdnf/repo/Repo.cpp:641
-#: libdnf/repo/Repo.cpp:1382
+#: libdnf/repo/Repo.cpp:1400
 #, c-format
 msgid "repo '%s': 'basecachedir' is not set"
-msgstr ""
+msgstr "Repo '%s': 'basecachedir' 没有设置"
 
 #: 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"
 msgstr "最大下载速度低于最小值。请修改 minrate 或 throttle 的配置"
 
 #: libdnf/repo/Repo.cpp:546
 #, c-format
 msgid "repo '%s': 'proxy_username' is set but not 'proxy_password'"
-msgstr ""
+msgstr "Repo '%s': 'proxy_username' 已被设置,但没有设置 'proxy_password'"
 
 #: libdnf/repo/Repo.cpp:548
 msgid "'proxy_username' is set but not 'proxy_password'"
-msgstr ""
+msgstr "'proxy_username' 已被设置,但没有设置 'proxy_password'"
 
 #: libdnf/repo/Repo.cpp:629
 #, c-format
@@ -934,125 +961,131 @@ msgstr "%s: gpgme_data_new_from_fd(): %s"
 msgid "%s: gpgme_op_import(): %s"
 msgstr "%s: gpgme_op_import(): %s"
 
-#: libdnf/repo/Repo.cpp:713 libdnf/repo/Repo.cpp:779 libdnf/repo/Repo.cpp:907
+#: libdnf/repo/Repo.cpp:709 libdnf/repo/Repo.cpp:1162 libdnf/repo/Repo.cpp:1236
+#: libdnf/repo/Repo.cpp:1279
+#, c-format
+msgid "Cannot create repo temporary directory \"%s\": %s"
+msgstr "无法创建 repo 临时目录 \"%s\": %s"
+
+#: libdnf/repo/Repo.cpp:717 libdnf/repo/Repo.cpp:783 libdnf/repo/Repo.cpp:917
 #, c-format
 msgid "%s: gpgme_ctx_set_engine_info(): %s"
 msgstr "%s: gpgme_ctx_set_engine_info(): %s"
 
-#: libdnf/repo/Repo.cpp:740 libdnf/repo/Repo.cpp:804
+#: libdnf/repo/Repo.cpp:744 libdnf/repo/Repo.cpp:808
 #, c-format
 msgid "can not list keys: %s"
 msgstr "不能列出 key: %s"
 
-#: libdnf/repo/Repo.cpp:833
+#: libdnf/repo/Repo.cpp:837
 #, c-format
 msgid "Failed to retrieve GPG key for repo '%s': %s"
-msgstr ""
+msgstr "为仓库 '%s' 获取 GPG 密钥失败 : %s"
 
-#: libdnf/repo/Repo.cpp:886
+#: libdnf/repo/Repo.cpp:890
 #, c-format
 msgid "repo %s: 0x%s already imported"
 msgstr "repo %s: 0x%s 已被导入"
 
-#: libdnf/repo/Repo.cpp:914
+#: libdnf/repo/Repo.cpp:904 libdnf/utils/filesystem.cpp:79
+#, c-format
+msgid "Failed to create directory \"%s\": %d - %s"
+msgstr "无法创建目录 \"%s\": %d - %s"
+
+#: libdnf/repo/Repo.cpp:924
 #, c-format
 msgid "repo %s: imported key 0x%s."
 msgstr "repo %s: 已导入密钥 0x%s。"
 
-#: libdnf/repo/Repo.cpp:1162
+#: libdnf/repo/Repo.cpp:1176
 #, c-format
 msgid "reviving: repo '%s' skipped, no metalink."
 msgstr "恢复中: 仓库 '%s' 已被跳过,无 metalink。"
 
-#: libdnf/repo/Repo.cpp:1181
+#: libdnf/repo/Repo.cpp:1195
 #, c-format
 msgid "reviving: repo '%s' skipped, no usable hash."
 msgstr "恢复中: 仓库 '%s' 已被跳过,无可用 hash。"
 
-#: libdnf/repo/Repo.cpp:1204
+#: libdnf/repo/Repo.cpp:1218
 #, c-format
 msgid "reviving: failed for '%s', mismatched %s sum."
 msgstr "恢复: '%s' 失败,不匹配的 %s sum。"
 
-#: libdnf/repo/Repo.cpp:1210
+#: libdnf/repo/Repo.cpp:1224
 #, c-format
 msgid "reviving: '%s' can be revived - metalink checksums match."
 msgstr "恢复中: '%s' 可以被恢复 - metalink 校验和匹配。"
 
-#: libdnf/repo/Repo.cpp:1235
+#: libdnf/repo/Repo.cpp:1253
 #, c-format
 msgid "reviving: '%s' can be revived - repomd matches."
 msgstr "恢复: '%s' 可用被恢复 - repomd 匹配。"
 
-#: libdnf/repo/Repo.cpp:1237
+#: libdnf/repo/Repo.cpp:1255
 #, c-format
 msgid "reviving: failed for '%s', mismatched repomd."
 msgstr "恢复: '%s' 失败,不匹配的 repomd。"
 
-#: libdnf/repo/Repo.cpp:1255
+#: libdnf/repo/Repo.cpp:1273
 #, c-format
 msgid "Cannot create repo destination directory \"%s\": %s"
 msgstr "无法创建仓库目标目录 \"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1261
-#, c-format
-msgid "Cannot create repo temporary directory \"%s\": %s"
-msgstr "无法创建 repo 临时目录 \"%s\": %s"
-
-#: libdnf/repo/Repo.cpp:1275
+#: libdnf/repo/Repo.cpp:1293
 #, c-format
 msgid "Cannot create directory \"%s\": %s"
 msgstr "无法创建目录 \"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1298
+#: libdnf/repo/Repo.cpp:1316
 #, c-format
 msgid "Cannot rename directory \"%s\" to \"%s\": %s"
 msgstr "无法把目录 \"%s\" 重命名为 \"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1321
+#: libdnf/repo/Repo.cpp:1339
 #, c-format
 msgid "repo: using cache for: %s"
 msgstr "仓库: 正在为 %s 使用缓存"
 
-#: libdnf/repo/Repo.cpp:1333
+#: libdnf/repo/Repo.cpp:1351
 #, c-format
 msgid "Cache-only enabled but no cache for '%s'"
 msgstr "仅使用缓存已开启但没有 '%s' 的缓存"
 
-#: libdnf/repo/Repo.cpp:1337
+#: libdnf/repo/Repo.cpp:1355
 #, c-format
 msgid "repo: downloading from remote: %s"
 msgstr "repo: 从远程下载: %s"
 
-#: libdnf/repo/Repo.cpp:1344
+#: libdnf/repo/Repo.cpp:1362
 #, c-format
 msgid "Failed to download metadata for repo '%s': %s"
-msgstr ""
+msgstr "为仓库 '%s' 下载元数据失败 : %s"
 
-#: libdnf/repo/Repo.cpp:1370
+#: libdnf/repo/Repo.cpp:1388
 msgid "getCachedir(): Computation of SHA256 failed"
 msgstr "getCachedir(): 计算 SHA256 失败"
 
-#: libdnf/repo/Repo.cpp:1398
+#: libdnf/repo/Repo.cpp:1416
 #, c-format
 msgid "Cannot create persistdir \"%s\": %s"
-msgstr ""
+msgstr "无法创建 persistdir \"%s\": %s"
 
-#: libdnf/repo/Repo.cpp:1775
+#: libdnf/repo/Repo.cpp:1793
 msgid "resume cannot be used simultaneously with the byterangestart param"
 msgstr "resume 不能和 the byterangestart 参数同时使用"
 
-#: libdnf/repo/Repo.cpp:1792
+#: libdnf/repo/Repo.cpp:1810
 #, c-format
 msgid "PackageTarget initialization failed: %s"
 msgstr "PackageTarget 初始失败: %s"
 
-#: libdnf/repo/Repo.cpp:1898
+#: libdnf/repo/Repo.cpp:1916
 #, c-format
 msgid "Cannot open %s: %s"
 msgstr "无法打开 %s: %s"
 
-#: libdnf/repo/Repo.cpp:1942
+#: libdnf/repo/Repo.cpp:1960
 #, c-format
 msgid "Log handler with id %ld doesn't exist"
 msgstr "id 为 %ld 的日志处理器不存在"
@@ -1081,7 +1114,7 @@ msgstr "试图在已完成的事务中更新事务"
 
 #: libdnf/transaction/Transformer.cpp:76
 msgid "Database Corrupted: no row 'version' in table 'config'"
-msgstr ""
+msgstr "数据库损坏:表 'config' 中没有 'version' 行"
 
 #: libdnf/transaction/Transformer.cpp:681
 msgid "Transformer: can't open history persist dir"
@@ -1104,8 +1137,8 @@ msgstr "TransactionItem 状态没有设置:%s"
 msgid "Can't add console output to unsaved transaction"
 msgstr "无法向未保存的事务中添加控制台输出"
 
+#~ msgid "Failed to parse module artifact NEVRA '%s'"
+#~ msgstr "无法解析模块工件 NEVRA '%s'"
+
 #~ msgid "Bad id for repo: %s, byte = %s %d"
 #~ msgstr "repo 的 id 无效: %s, byte = %s %d"
-
-#~ msgid "failed calculating RPMDB checksum"
-#~ msgstr "无法计算 RPMDB checksum"
-- 
2.35.1