Ubuntu – How to remove KDE PIM modules from Kubuntu 18.04

kdekubuntuplasma-5

I would like to remove all KDE PIM related modules: kmail, calendar, akonadi and the db etc as I am not using them actively. There is no clear documentation on how to uninstall those modules apart from some old discussion board comments which are caught between KDE/plasma 4 and 5.

So how do I safely uninstall PIM modules on ubuntu 18.04 which is plasma 5.12? I was using them and I can see these processes running, if there is a way to completely disable them, that can work too.

Best Answer

In Bionic Beaver (18.04), a minimal install option is offered to users. Ubuntu, Ubuntu Mate, and Kubuntu are three distributions I know of that offer the option.

For Kubuntu 18.04, you'll see this (taken from here):

Kubuntu Minimal

The release notes for Kubuntu 18.04 have this:

Minimal install option
This is now available in the installer for Kubuntu.

For Kubuntu this removes KDE PIM applications, Libreoffice, Cantata and mpd, plus some additional internet and media applications. At present a full Plasma Desktop is left in place, plus basic applications and utilities. Firefox as a browser, and VLC as a media player, are also retained.

A list of what is not included in the minimal install relative to the full install is here. I can't say how up to date the list is but there's a section on KDE PIM to provide you guidance in case you want to remove stuff from an existing full install.

# KDE PIM

accountwizard
akonadi-backend-mysql
akonadi-server
akregator
kaddressbook
kdepim-addons
kdepim-runtime
kdepim-themeeditors
kleopatra
kmail
knotes
kontact
korganizer
ktnef
mbox-importer
pim-data-exporter
pim-sieve-editor

I've checked some of the entries above using apt purge -s package-name. Each of the packages I checked only removed the named package and nothing else.

There's also a section titled residual deps/reverse-deps.

# residual deps/reverse-deps

ktorrent-data
konversation-data
mysql-client-core-5.7
mysql-server-core-5.7
kde-config-mailtransport
kf5-kdepim-apps-libs-data
kf5-messagelib-data
kio-ldap
kio-sieve
libkf5akonadiagentbase5
libkf5akonadicalendar5abi2
libkf5akonadicalendar-data
libkf5akonadicontact5abi1
libkf5akonadicontact-data
libkf5akonadicore5abi1
libkf5akonadicore-bin
libkf5akonadimime5
libkf5akonadimime-data
libkf5akonadinotes5
libkf5akonadinotes-data
libkf5akonadiprivate5
libkf5akonadisearch-bin
libkf5akonadisearchcore5
libkf5akonadisearch-data
libkf5akonadisearchdebug5
libkf5akonadisearchpim5
libkf5akonadisearch-plugins
libkf5akonadisearchxapian5
libkf5akonadiwidgets5
libkf5alarmcalendar5abi1
libkf5alarmcalendar-data
libkf5calendarcore5abi1
libkf5calendarsupport5abi1
libkf5calendarsupport-data
libkf5calendarutils5abi1
libkf5calendarutils-bin
libkf5calendarutils-data
libkf5contacteditor5
libkf5contacteditor-data
libkf5contacts5
libkf5contacts-data
libkf5eventviews5
libkf5eventviews-data
libkf5followupreminder5
libkf5grantleetheme5
libkf5grantleetheme-data
libkf5grantleetheme-plugins
libkf5gravatar5
libkf5gravatar-data
libkf5identitymanagement5abi1
libkf5identitymanagement-data
libkf5imap5
libkf5imap-data
libkf5incidenceeditor5abi2
libkf5incidenceeditor-bin
libkf5incidenceeditor-data
libkf5kaddressbookgrantlee5
libkf5kaddressbookimportexport5
libkf5kdepimdbusinterfaces5
libkf5kmanagesieve5
libkf5kontactinterface5
libkf5kontactinterface-data
libkf5ksieve5
libkf5ksieve-data
libkf5ksieveui5
libkf5ldap5
libkf5ldap-data
libkf5libkdepim5abi2
libkf5libkdepimakonadi5
libkf5libkdepim-data
libkf5libkdepim-plugins
libkf5libkleo5abi1
libkf5mailcommon5abi4
libkf5mailcommon-plugins
libkf5mailimporter5abi1
libkf5mailimporterakonadi5
libkf5mailimporter-data
libkf5mailtransport5abi2
libkf5mailtransportakonadi5
libkf5mailtransport-data
libkf5mbox5
libkf5messagecomposer5abi2
libkf5messagecore5abi2
libkf5messagelist5abi1
libkf5messageviewer5abi4
libkf5messageviewer-plugins
libkf5mime5abi2
libkf5mime-data
libkf5mimetreeparser5abi2
libkf5pimcommon5abi3
libkf5pimcommonakonadi5
libkf5pimcommon-plugins
libkf5pimtextedit5abi2
libkf5pimtextedit-data
libkf5sendlater5
libkf5syndication5
libkf5templateparser5abi2
libkf5tnef5
libkf5tnef-data
libkf5webengineviewer5abi3
libkpimgapicalendar5
libkpimgapicontacts5
libkpimgapitasks5
libkpimimportwizard5
libkpimkdav5
libkpimkdav-data

It's also useful to run akonadictl status to what see akonadiis up to on your system. On my system, I see:

$ akonadictl status
Akonadi Control: stopped
Akonadi Server: stopped
Akonadi Server Search Support: available (Remote Search)
Available Agent Types: akonadi_akonotes_resource, akonadi_archivemail_agent, akonadi_birthdays_resource, akonadi_contacts_resource, akonadi_davgroupware_resource, akonadi_ews_resource, akonadi_ewsmta_resource, akonadi_facebook_resource, akonadi_followupreminder_agent, akonadi_googlecalendar_resource, akonadi_googlecontacts_resource, akonadi_ical_resource, akonadi_icaldir_resource, akonadi_imap_resource, akonadi_indexing_agent, akonadi_invitations_agent, akonadi_kalarm_dir_resource, akonadi_kalarm_resource, akonadi_kolab_resource, akonadi_maildir_resource, akonadi_maildispatcher_agent, akonadi_mailfilter_agent, akonadi_mbox_resource, akonadi_migration_agent, akonadi_mixedmaildir_resource, akonadi_newmailnotifier_agent, akonadi_notes_agent, akonadi_notes_resource, akonadi_openxchange_resource, akonadi_pop3_resource, akonadi_sendlater_agent, akonadi_tomboynotes_resource, akonadi_vcard_resource, akonadi_vcarddir_resource
$ 

And man akonadictl has

stop   : Stops the Akonadi server and all its processes cleanly

which you may find useful.

Another useful command is compgen:

$ compgen -c | grep mysql
mysqld
mysqld-akonadi
mysql
mysql_upgrade
mysql_install_db
mysql_embedded
mysqlcheck
$

On my system, both pgrep -i -al akonadi and pgrep -i -al mysql come up empty.