Akonadi and AddressBook: Difference between revisions
improved readability; minor updates |
Update configuration and data locations, remove obsolete information. |
||
Line 12: | Line 12: | ||
<!--T:3--> | <!--T:3--> | ||
;Real data | ;Real data | ||
:By ''real data'' we mean the data, like the contacts or events. These data are stored either on a groupware server or in local files. Where exactly depends on the resource you are using. E.g. the ''Personal Contacts'' resource stores its data under $ | :By ''real data'' we mean the data, like the contacts or events. These data are stored either on a groupware server or in local files. Where exactly depends on the resource you are using. E.g. the ''Personal Contacts'' resource stores its data under ''$XDG_DATA_HOME/contacts''. | ||
<!--T:4--> | <!--T:4--> | ||
Line 20: | Line 20: | ||
<!--T:5--> | <!--T:5--> | ||
;Configuration data | ;Configuration data | ||
:The ''configuration data'' are the data that configure the '''Akonadi''' server and the individual resources. The general configuration data for the server can be found under $ | :The ''configuration data'' are the data that configure the '''Akonadi''' server and the individual resources. The general configuration data for the server can be found under ''$XDG_CONFIG_HOME/akonadi''. The configuration data for each indvidual resources are stored under ''$XDG_CONFIG_HOME/akonadi_xyz_resourcerc#'' ('''''xyz''''' is name of resource and '''''#''''' its instance number). | ||
<!--T:22--> | <!--T:22--> | ||
:The '''Akonadi''' server configuration is a couple of files in ''$ | :The '''Akonadi''' server configuration is a couple of files in ''$XDG_CONFIG_HOME/akonadi''. It contains which data sources and helper programs are active and will be started and watched (so they can be restarted on crashes) by one of '''Akonadi's''' server processes '''(akonadi_control)'''. | ||
<!--T:23--> | <!--T:23--> | ||
:Each data source handler (called resources) or helper program (called agents) can have its own configuration although some agents or resources don't require configuration. | :Each data source handler (called resources) or helper program (called agents) can have its own configuration although some agents or resources don't require configuration. The general rule is that for every entry in ''$XDG_CONFIG_HOME/akonadi/agentsrc'' there is a corresponding configuration file in ''$XDG_CONFIG_HOME''. For example, if the ''[Instances]'' section in ''agentrc'' contains an entry for ''akonadi_ical_resource_2'', there is also a config file called ''akonadi_ical_resource_2rc'' in the ''$XDG_CONFIG_HOME directory''. | ||
<!--T:24--> | <!--T:24--> | ||
:Depending on the type of data, such config files for resources will have filenames or directory names of where the data is stored. Common locations are KDE's legacy default files, e.g. $HOME/.kde/share/apps/korganizer/std.ics. New default locations are files and directories in $ | :Depending on the type of data, such config files for resources will have filenames or directory names of where the data is stored. Common locations are KDE's legacy default files, e.g. ''$HOME/.kde/share/apps/korganizer/std.ics''. New default locations are files and directories in ''$XDG_DATA_HOME'', e.g. ''$XDG_DATA_HOME/contacts''. | ||
==Organising Backups== <!--T:6--> | ==Organising Backups== <!--T:6--> |
Revision as of 10:40, 4 December 2023
This information was provided by Tobias Koenig, KDE-PIM developer.
Some Definitions
- Real data
- By real data we mean the data, like the contacts or events. These data are stored either on a groupware server or in local files. Where exactly depends on the resource you are using. E.g. the Personal Contacts resource stores its data under $XDG_DATA_HOME/contacts.
- Cached data
- The cached data are copies of the real data that are kept in the database for faster access and offline caching. The database also keeps the meta data which are management data needed by Akonadi to work correctly.
- Configuration data
- The configuration data are the data that configure the Akonadi server and the individual resources. The general configuration data for the server can be found under $XDG_CONFIG_HOME/akonadi. The configuration data for each indvidual resources are stored under $XDG_CONFIG_HOME/akonadi_xyz_resourcerc# (xyz is name of resource and # its instance number).
- The Akonadi server configuration is a couple of files in $XDG_CONFIG_HOME/akonadi. It contains which data sources and helper programs are active and will be started and watched (so they can be restarted on crashes) by one of Akonadi's server processes (akonadi_control).
- Each data source handler (called resources) or helper program (called agents) can have its own configuration although some agents or resources don't require configuration. The general rule is that for every entry in $XDG_CONFIG_HOME/akonadi/agentsrc there is a corresponding configuration file in $XDG_CONFIG_HOME. For example, if the [Instances] section in agentrc contains an entry for akonadi_ical_resource_2, there is also a config file called akonadi_ical_resource_2rc in the $XDG_CONFIG_HOME directory.
- Depending on the type of data, such config files for resources will have filenames or directory names of where the data is stored. Common locations are KDE's legacy default files, e.g. $HOME/.kde/share/apps/korganizer/std.ics. New default locations are files and directories in $XDG_DATA_HOME, e.g. $XDG_DATA_HOME/contacts.
Organising Backups
So now we need to decide what to back up. If you want to backup the "real data", then it depends on the resources you have configured... if you use a groupware server, then the backup should be done there. For contacts, the files under $HOME/.local/share/contacts will normally be what you need.
The Akonadi tray icon offers you a backup and restore function. That backs up the "cache data" which might not include all of your data! It can be helpful if you want to clone a system 1:1, then you can copy the cached data together with the real data and the configuration, so you don't have to load the data again from the sources (e.g. groupware server).
Examining your Resources
KRunner offers you Akonadi Resource Configuration, or you can access this through the
. From KDE 4.6 you will find it in You may find several resources set up. You may find one labelledAddress Book - No KDE address book plugin configured yet.
That's the old compatibility bridge (possibly created by the migrator tool). You should remove this one!
std.vcf - Ready
This is the VCard File Resource which points to $HOME/.kde/share/apps/kabc/std.vcf per default. It is not recommended that you use that one, as it doesn't share the benefit of Akonadi.
Personal Contacts - Offline
That's the preferred resource for your local contacts which points to
$HOME/.local/share/contacts
Note that this may say "Offline" when in fact you are using it. This is a display bug, and can safely be ignored.
And when more components use Akonadi?
When the rest of the components move to Akonadi, will all the data be under ~/.local/share? That should make backup easy. Well, contacts and mails are stored there now, I don't know what the plan for events/todos is, but it would make sense to store them there as well. We'll keep it in mind when discussion pops up!
Troubleshooting
Problem: Your update to 4.6 and your addressbook is suddenly completely blank
Solution: This is new behaviour in 4.6 - you can choose whether to display specific addressbooks or all of them. In front of each addressbook name there is a checkbox. Use that to enable the addressbooks you want to use.