Thunderbird e Lightning, come sincronizzare il calendario tra due profili Linux e Windows

Mi sono trovato ad aver necessità di utilizzare Mozilla Thunderbird sulla mia macchina in dual boot, Ubuntu e Windows. La necessità era quella di condividere la posta (un account IMAP) e il calendario tra le due installazioni. Non ho potuto usare lo stesso profilo (come già faccio con Firefox) per due motivi: il plugin Lightning è platform-dependent (è diverso tra Linux e Windows) e il profilo IMAP di Windows veniva corrotto da Thunderbird su Ubuntu.

Dopo varie prove e letture, mi sono “ispirato” a questo articolo e ho deciso di utilizzare due profili diversi, uno su Ubuntu e uno su Windows 7, creando dei link tra le sole cartelle dei due profili che mi interessavano.

Il problema è stato trovare informazioni aggiornate, dato che uso (attualmente) Mozilla Thunderbird 45.8.0 e Lightning 4.7.8. Sono riuscito a reperire le informazioni riguardanti dove le informazioni venivano salvate (i dati dei calendari sono nella cartella “calendar-data“, le rubriche in file “.mab“), per cui ho deciso di creare dei link in questo modo:

[profilo Ubuntu]             |       [profilo Windows]
 /                           |        /
 +-- calendar-data          ➜|➜       +-- calendar-data
 +-- Mail                    |        +-- Mail
      |                      |             |
      +-- Local Folders     ➜|➜            +-- Local Folders
 +-- abook.mab              ➜|➜       +-- abook.mab
 +-- history.mab            ➜|➜       +-- history.mab

Sincronizzare le rubriche è stato facile: tramite le funzionalità di esporta/importa ho salvato i dati delle rubriche di Ubuntu e dopo aver creato i collegamenti li ho travasati nella rubrica di Windows che era in uso… a parte qualche doppione da bonificare non ho avuto nessun problema.

Le rogne mi si sono presentate invece con il calendario: anche se avevo condiviso la cartella contenente i file, ogni profilo “vedeva” un suo proprio calendario e non l’altro. Ho effettuato varie prove, ma la condivisione della cartella “calendar-data” non sembrava sufficiente.
Cercando un po’ più approfonditamente e aprendo i file SQLite del calendario, ho trovato questa risposta e ho capito l’inghippo: ogni installazione di Lightning crea un suo “personale” calendario, identificato da un id univoco; il problema è che questo id non è mai visibile da interfaccia, ma è salvato nel file SQLite (associato ad ogni elemento) e nel file delle preferenze “prefs.js“.
In particolare, nel file delle preferenze la riga che contiene l’ordine di visualizzazione dei calendari indica quali vengono usati dal profilo (gli id in elenco sono separati da uno spazio):

user_pref("calendar.list.sortOrder", "id1 id2 ...");
user_pref("calendar.registry.id1.calendar-main-default", true);
user_pref("calendar.registry.id1.calendar-main-in-composite", true);
user_pref("calendar.registry.id1.name", "Predefinito");
user_pref("calendar.registry.id1.type", "storage");
user_pref("calendar.registry.id1.uri", "moz-storage-calendar://");

Le righe successive sono le impostazioni di ogni particolare calendario.

Avendo tutte le informazioni in mio possesso, la sequenza dei passi che ho eseguito per avere lo stesso calendario nei due profili è stata questa:

  1. usando Ubuntu, ho chiusto Thunderbird
  2. ho confrontato i due file “prefs.js” dei due profili e il file “calendar-data/local.sqlite“, e ho raccolto nel profilo Ubuntu tutti gli id presenti nei due file e nel database (oltre a modificare la riga di cui sopra ho anche copiato le successive per ogni calendario)
  3. ho avviato Thunderbird, e nel calendario ho spostato tutti gli appuntamenti e tutte le attività nel calendario principale (quello che volevo mantenere)
  4. ho cancellato tutti gli altri calendari e ho chiuso Thunderbird

E ora vivo felice e contento!!! 😀

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *