Another new application is BackupMail.
I developed during 4.9 cycle after seeing that there was no application to export/import KMail data in order to transfer the KMail settings from a computer from another, for instance.
Until now the method (in KMail1) to restore KMail was to create an archive and extract it in the new user home.
But with Akonadi it was not possible to do it, because we use numeric identifiers for folders, in the configuration files, rather than folder paths.
So all configs will break if we just copy the config file to another computer, where the numeric identifier will be different.
What is necessary to backup/restore in KMail application?
- The main configuration file, kmail2rc, of course.
- Maildir directory structure, mailbox files.
- identity settings.
- filters settings.
- mailtransport settings.
- all pop3/imap/maildir/mailbox resources.
- ldap server (kabldaprc).
- Akonadi database.
- and other configs as templatesconfigurationrc, akonadi_archivemail_agentrc.
So before saving data in zip file, we must to convert all configs settings which use an akonadi id to a real path.
When we restore them, we convert real path to an akonadi id. I developed a piece of code which tests if a real path can be found in akonadi database and returns its id.
During restoring we will not just overwrite config files we will merge information when it’s possible.
For example we do not overwrite akonadi resources but we create new resources. So it is not conflict with existing setup.
Same as for identities and mail transports.
We will adapt filters arguments to use new identity or collection folder etc.
Future in 4.10:
I will continue to improve it, and merge some settings, for example ldap server for the moment it is not merged but I overwrite a file.
I will create an expert mode where we will able to specify which resources/settings we want to import.
And perhaps I will extend backup to other pim applications.
If you have some features to add it send me an email or report it to bugs.kde.org