Lightning Calendar Data — 2

Exporting Lightning calendar data into TDE KAlarm turned out not to be horrifically frustrating. Some trial-and-error passes were needed to create a final file suitable for importing into KAlarm. The following steps seem sufficient:

  1. Export the Lightning calendar data as a local.sqlite.ics text file.
  2. Convert line endings in the exported file from DOS to Unix.
  3. sed -i '/^X-REMINDERFOX/d' local.sqlite.ics
  4. sed -i '/^X-TDE-KALARM-FONTCOLOR/d' local.sqlite.ics
  5. sed -i '/^CATEGORIES:/d' local.sqlite.ics
  6. sed -i '/^SEQUENCE/d' local.sqlite.ics
  7. sed -i '/^TRANSP:/d' local.sqlite.ics
  8. sed -i '/^X-MOZ/d' local.sqlite.ics
  9. sed -i '/^X-LIC-ERROR/d' local.sqlite.ics
  10. sed -i '/ter with an illegal type for property: VALUE=DURATION/d' local.sqlite.ics
  11. sed -i 's|DESCRIPTION:|SUMMARY:|' local.sqlite.ics

The local.sqlite.ics file name is based on the sqlite database name used in Lightning.

Some of thess steps are to remove remnants from the original KAlarm and ReminderFox days that Lightning never was designed to scrub.

Date strings in the exported Lightning data are UTC. TDE KAlarm seemed to ignore that and seemed to expect local times. Some additional sed massaging to local time helped. Basically convert strings such as 140000Z to a local time without any trailing Z. These field strings can be identified with a Z suffix in the DTSTART: and DTEND: data fields. There are two more fields in the exported file with data strings, LAST-MODIFIED and DTSTAMP, but KAlarm did not seem to need those fields or those fields were not important with respect to how the user sees the data.

All of this could be scripted, but by the time the trial-and-error sessions ended the data was already imported into KAlarm.

For many weeks reminder events were monitored with both Lightning and KAlarm to ensure a compatible 1:1 transfer.

Importing into KDE KAlarm would be more ideal to better fit with using KDE daily. Recent versions of KDE KAlarm render Akonadi optional, but using the KDE version has to wait until the next official release of Slackware. Happily, testing the KDE KAlarm in a Slackware Current virtual machine (VM) by importing the TDE calendar.ics file is a non event. The TDE data file seems fully compatible although one sed command fix is helpful:

sed -i 's|X-TDE|X-KDE|' calendar.ics

Also noticed is a fresh import succeeded best. When later updating Slackware 15.0 to KDE 5.27.x, moving from the TDE to KDE version of KAlarm should be seamless.

The Lightning calendar add-on now is disabled. Thunderbird launches many times faster.

Curiosity prompted some time to import the TDE KAlarm calendar.ics file into Thunderbird Lightning. Some quick trial-and-error attempts did not go well. There does not seem to be a simple way to return the data into Lightning. Memory has faded from when the data was exported from KAlarm into ReminderFox other than remembering the task was not trivial. Oddly, the original conversion scripts were lost. Since a round-trip return of the data is not needed immediately, any related tinkering will wait until another day.

Posted: Category: Usability Tagged: Thunderbird, Migrate

Next: Gracefully Closing Programs Redux

Previous: Lightning Calendar Data — 1