Fedora Account System
Red Hat Associate
Red Hat Customer
Installing Kleopatra or KGpg on Fedora forces the installation of the entire Akonadi suite, including a MariaDB server and several PIM-related libraries. This is excessive for users who only need a simple GPG encryption/decryption tool and do not use KDE's personal information management suite. The current dependency chain pulls in packages such as: akonadi-server akonadi-mime mariadb (and its server) kmailtransport kmime kpimtextedit ktextaddons libkleo ... And many other related libraries. This makes the installation unnecessarily heavy and can be problematic for users who have no interest in running a local database server or Akonadi services (i'm using thunderbird and remove pkg related with akonadi so as to let my system as réactive as possible). Reproducible: Always Steps to Reproduce: 1. terminal > sudo dnf install akonadi / kgpg 2. 33 package will be installed 3. Actual Results: Installation de : kleopatra x86_64 0:26.04.2-1.fc44 updates 16.8 MiB Installation des dépendances : akonadi-mime x86_64 0:26.04.2-1.fc44 updates 1.3 MiB akonadi-server x86_64 0:26.04.2-1.fc44 updates 13.6 MiB gnupg2-scdaemon x86_64 0:2.4.9-16.fc44 updates 709.2 KiB gnupg2-smime x86_64 0:2.4.9-16.fc44 updates 533.3 KiB kidentitymanagement x86_64 0:26.04.2-1.fc44 updates 955.8 KiB kmailtransport x86_64 0:26.04.2-1.fc44 updates 1.3 MiB kmbox x86_64 0:26.04.2-1.fc44 updates 122.1 KiB kmime x86_64 0:26.04.2-1.fc44 updates 544.7 KiB kpimtextedit x86_64 0:26.04.2-1.fc44 updates 979.1 KiB ksmtp x86_64 0:26.04.2-1.fc44 updates 265.4 KiB ktextaddons-common noarch 0:2.0.1-1.fc44 updates 2.4 MiB ktextaddons-qt6 x86_64 0:2.0.1-1.fc44 updates 5.2 MiB libkleo x86_64 0:26.04.2-1.fc44 updates 4.8 MiB mariadb x86_64 3:11.8.6-2.fc44 fedora 27.6 MiB mariadb-common noarch 3:11.8.6-2.fc44 fedora 301.7 KiB mariadb-errmsg noarch 3:11.8.6-2.fc44 fedora 2.3 MiB mariadb-server x86_64 3:11.8.6-2.fc44 fedora 78.1 MiB mimetreeparser x86_64 0:26.04.2-1.fc44 updates 1.6 MiB mysql-selinux noarch 0:1.0.14-3.fc44 fedora 49.9 KiB perl-DBD-MariaDB x86_64 0:1.24-4.fc44 fedora 382.9 KiB perl-DBI x86_64 0:1.647-5.fc44 fedora 2.2 MiB perl-Math-BigInt noarch 1:2.0050.03-4.fc44 fedora 1.1 MiB perl-Math-Complex noarch 0:1.63-524.fc44 updates 85.1 KiB perl-Sys-Hostname x86_64 0:1.25-524.fc44 updates 15.7 KiB qgpgme-qt6 x86_64 0:2.0.1-4.fc44 updates 1.2 MiB Installation des dépendances faibles : akonadi-server-mysql x86_64 0:26.04.2-1.fc44 updates 3.2 KiB cyrus-sasl-md5 x86_64 0:2.1.28-35.fc44 fedora 84.1 KiB mariadb-backup x86_64 3:11.8.6-2.fc44 fedora 23.3 MiB mariadb-client-utils noarch 3:11.8.6-2.fc44 fedora 190.1 KiB mariadb-cracklib-password-check x86_64 3:11.8.6-2.fc44 fedora 12.9 KiB mariadb-gssapi-server x86_64 3:11.8.6-2.fc44 fedora 19.8 KiB mariadb-server-utils noarch 3:11.8.6-2.fc44 fedora 34.2 KiB Résumé de la transaction : Installation : 33 paquets Expected Results: Kleopatra (or kgpg) should be installable without pulling in the entire Akonadi suite and MariaDB server. Additional Information: The discussion on discuss.kde.org confirmed that Akonadi is not a strict requirement for basic GPG operations. https://discuss.kde.org/t/seeking-advice-symmy-vs-kdecrypt-for-gpg-file-management-on-fedora/48010/2
The problem here is that kleopatra requires akonadi-mime (ref.: https://github.com/KDE/kleopatra/blob/master/CMakeLists.txt#L145) which in turn pulls in the akonadi server. Similarly, kgpg pulls in cmake(KPim6AkonadiContactWidgets) which in turn pulls in the various parts of akonadi.
Oh also, it does pull in akonadi-server, but you can delete it after, it's a 'Recommends' not a 'Requires'.
NO it is impossible to uninstall akonadi-server without to remove also kleopatra! look: ``` purgdown: akonadi-server akonadi-server-mysql 55s 3ms Paquet Architecture Version Dépôt Taille Suppression de : akonadi-server x86_64 0:26.04.2-1.fc44 updates 13.6 MiB akonadi-server-mysql x86_64 0:26.04.2-1.fc44 updates 3.2 KiB Suppression des paquets dépendants : kleopatra x86_64 0:26.04.2-1.fc44 updates 16.8 MiB Suppression des dépendances inutilisées : akonadi-mime x86_64 0:26.04.2-1.fc44 updates 1.3 MiB cyrus-sasl-md5 x86_64 0:2.1.28-35.fc44 fedora 84.1 KiB gnupg2-scdaemon x86_64 0:2.4.9-16.fc44 updates 709.2 KiB gnupg2-smime x86_64 0:2.4.9-16.fc44 updates 533.3 KiB kidentitymanagement x86_64 0:26.04.2-1.fc44 updates 955.8 KiB kmailtransport x86_64 0:26.04.2-1.fc44 updates 1.3 MiB kmbox x86_64 0:26.04.2-1.fc44 updates 122.1 KiB kmime x86_64 0:26.04.2-1.fc44 updates 544.7 KiB kpimtextedit x86_64 0:26.04.2-1.fc44 updates 979.1 KiB ksmtp x86_64 0:26.04.2-1.fc44 updates 265.4 KiB ktextaddons-common noarch 0:2.0.1-1.fc44 updates 2.4 MiB ktextaddons-qt6 x86_64 0:2.0.1-1.fc44 updates 5.2 MiB libkleo x86_64 0:26.04.2-1.fc44 updates 4.8 MiB mariadb x86_64 3:11.8.6-2.fc44 fedora 27.6 MiB mariadb-backup x86_64 3:11.8.6-2.fc44 fedora 23.3 MiB mariadb-client-utils noarch 3:11.8.6-2.fc44 fedora 190.1 KiB mariadb-common noarch 3:11.8.6-2.fc44 fedora 301.7 KiB mariadb-cracklib-password-check x86_64 3:11.8.6-2.fc44 fedora 12.9 KiB mariadb-errmsg noarch 3:11.8.6-2.fc44 fedora 2.3 MiB mariadb-gssapi-server x86_64 3:11.8.6-2.fc44 fedora 19.8 KiB mariadb-server x86_64 3:11.8.6-2.fc44 fedora 78.1 MiB mariadb-server-utils noarch 3:11.8.6-2.fc44 fedora 34.2 KiB mimetreeparser x86_64 0:26.04.2-1.fc44 updates 1.6 MiB mysql-selinux noarch 0:1.0.14-3.fc44 fedora 49.9 KiB perl-DBD-MariaDB x86_64 0:1.24-4.fc44 fedora 382.9 KiB perl-DBI x86_64 0:1.647-5.fc44 fedora 2.2 MiB perl-Math-BigInt noarch 1:2.0050.03-4.fc44 fedora 1.1 MiB perl-Math-Complex noarch 0:1.63-524.fc44 updates 85.1 KiB perl-Sys-Hostname x86_64 0:1.25-524.fc44 updates 15.7 KiB qgpgme-qt6 x86_64 0:2.0.1-4.fc44 updates 1.2 MiB Résumé de la transaction : Suppression : 33 paquets ``` it's not a 'Recommends' but a 'Requires'...
i've repported it to the discuss. you're right. thanks
Actually, sorry I wasn't clear: Try to remove akonadi-server-mysql. That is the database part alone and should also pull away mariadb (If it isn't used for something else)
Thank you for your detailed and technical explanation regarding the Akonadi dependencies for Kleopatra and KGpg. I understand that these dependencies are hard-coded in the source (CMakeLists.txt) and are not an error from the Fedora packagers. However, I would like to suggest a possible improvement that could benefit many users who, like me, want to use Kleopatra or KGpg without installing the entire Akonadi suite and a MariaDB server. **Suggestion :** Split the Akonadi-related packages into smaller, more modular sub-packages. For example: - `akonadi-mime-core` (for the essential MIME handling needed by Kleopatra) - `akonadi-contact-core` (for the contact widgets needed by KGpg) - `akonadi-server-core` (for a minimal server setup, without the full MariaDB dependency) This approach would allow the main `kleopatra` and `kgpg` packages to depend only on these minimal core sub-packages. Users who need the full PIM suite could still install the complete `akonadi` meta-package, while users who only need GPG file management could install a much lighter version. **Benefits :** - Significantly reduces the installation size for users who don't use Akonadi. - Avoids running unnecessary services (like a local database server) on the user's system. - Makes Kleopatra and KGpg more accessible and attractive to a wider audience. I understand this would require significant work from the Fedora packagers and potentially upstream. However, this kind of modularization has been successfully implemented for other KDE applications. I believe it would be a valuable improvement for the Fedora ecosystem. What do you think about this approach? Is this something that could be considered for a future release? Thank you for your time and consideration.
Haven't you read my last comment? Those packages in themselves are not big, it's only annoying for the Sql server part. Which you can remove.
Indeed, by testing each dependency of Kleopatra, I manage to significantly reduce the number (9), even though Akonadi, Kmime, etc., remain necessary. Okay, thank you. The proposal to split the package is still relevant for Kleopatra and kgpg.