Akonadi
Introduction
The Akonadi framework is responsible for providing applications with a centralized database to store, index and retrieve the user's personal information. This includes the user's emails, contacts, calendars, events, journals, alarms, notes, etc. In SC 4.4, KAddressBook became the first application to start using the Akonadi framework. In SC 4.7, KMail, KOrganizer, KJots, etc. were updated to use Akonadi as well. In addition, several Plasma widgets also use Akonadi to store and retrieve calendar events, notes, etc.
At the time of writing, the following applications are enabled to use the Akonadi framework to centrally store and access user data. Follow through to each application's page to learn more.
KMail
Mail Client Uses Akonadi to store emails
KAddressBook
Contact Manager Uses Akonadi to store contact information
KOrganizer
Personal Organizer Uses Akonadi to store calendars, events, journals, etc.
KJots
Note Taking Application Uses Akonadi to store notes
KAlarm
Personal alarm scheduler Uses Akonadi to store alarms
In addition to this, plasma widgets like the Digital Clock widget, the Notes widget also use Akonadi to store and retrieve events and notes.
Controlling the Akonadi server
The Akonadi control module in System Settings provides an easy means to starting, stopping, restarting and querying the status of the Akonadi server. You may also accomplish this from the commandline using the command akonadictl. Using this method, you can get additional useful information on the console.
To start the Akonadi server,
akonadictl start
To stop the Akonadi server,
akonadictl stop
To restart a running Akonadi server,
akonadictl restart
To query the status of the Akonadi server,
akonadictl status
Disabling the Akonadi subsystem
The Akonadi server is started by any Akonadi-enabled application. If you don't want Akonadi to be started after login, you have to ensure that no Akonadi-enabled application is launched at login or thereafter. Remember to check Plasma widgets as well — the Digital Clock widget in the default panel, for instance uses Akonadi to (optionally) display calendar events and this is enabled in its settings by default (see the "Display Events" option) . You must remove any widgets that may start it from your start-up, if you wish Akonadi to start only when you start KMail or other applications.
The Akonadi server is launched automatically at login whenever any Akonadi-enabled application requests access to it.
To disable the Akonadi subsystem, first, shut down the running Akonadi server from the control module or the command line:
akonadictl stop
Now, edit the file ~/.config/akonadi/akonadiserverrc and change StartServer from true to false:
StartServer=false
The Akonadi server will no longer start now. Remember that no Akonadi-enabled applications will work now - they will only complain about not being able to launch the server.
Frequently Asked Questions
Where is my data now?
A full explanation of where the data is stored and Akonadi's interaction with it is available in Andras Mantia's blog
Migration problems
Akonadi's Glossary entry has a brief description of its purpose and other useful links. This page explains how Akonadi and KAddressBook work together.
High CPU or Memory usage
If you are experiencing 100% CPU usage by the virtuoso-t process when using Akonadi and related applications, try this proposed workaround while it is being investigated: In KRunner's configuration page, disable the Nepomuk search plugin and the Contact plugin. Then, log out and back in. For further information and inputs, report back here or on the Forum or on the IRC channel #kontact.
Akonadi and Nepomuk, why?
There is often a good deal of confusion about Akonadi and Nepomuk. Why data from Akonadi is indexed in Nepomuk explains exactly why we have both, and what their roles are. Don't miss the additional information from Will Stephenson in the Comments section.
Troubleshooting
Can't read any details of some messages or big delays to read it
if you aren't able to read some emails and see a message with " please wait ... ", you may logout and login KDE session to reinitialize all processes, might help.