| #!/bin/bash |
| |
| # Example evolution synchronization script by Nicolas Tetreault, |
| # modified by Linus Walleij. |
| |
| # Define target files |
| SYNC_HOME=$HOME/MTP_device_sync |
| |
| # Define tool locations |
| SENDFILE=`which mtp-sendfile` |
| # SENDFILE="$HOME/comp-apps/bin/sendfile" |
| #EADDEXP=`which evolution-addressbook-export` |
| # This is the location in Fedora Core 5: |
| EADDEXP="/usr/libexec/evolution/2.6/evolution-addressbook-export" |
| |
| # You need to change the name of the files |
| # that contains the calendar and contacts on your device. |
| # You can find out by starting Gnomad2, choose the data transfer |
| # tab, sort by size (it should be small files, extension .ics and .vcf) |
| # On my Zen Microphoto, the calendar and contacts files are called |
| # 6651416 with the ics and vcf extensions, respectively. |
| CALENDAR_FILE="6651416.ics" |
| CONTACTS_FILE="6651416.vcf" |
| |
| # The evolution address book. To list your addressbooks, type: |
| # evolution-addressbook-export -l |
| # the output for me: |
| # "file:///home/nt271/.evolution/addressbook/local/system |
| # ","Personal",26 |
| # "file:///home/nt271/.evolution/addressbook/local/1158600180.5386.0@sierra" |
| # ,"MicroPhoto",24 |
| # I only want the Microphoto addressbook and the output will be |
| # $SYNC_HOME/contacts/Evolution_contacts.vcf |
| EVOLUTION_CONTACTS="file:///home/linus/.evolution/addressbook/local/system" |
| |
| # Check for sync dir, create it if needed |
| |
| if test -d $SYNC_HOME ; then |
| echo "$SYNC_HOME exists, OK." |
| else |
| echo "$SYNC_HOME must first be created..." |
| mkdir $SYNC_HOME |
| # This is a working dir for contact merging, you can put |
| # in some extra .vcf files here as well if you like. |
| mkdir $SYNC_HOME/contacts |
| # Here you can place some extra calendars to be sync:ed, you |
| # can put in some extra .ics files of any kind here. |
| mkdir $SYNC_HOME/calendars |
| fi |
| |
| # Check for prerequisites |
| |
| if test -f $EADDEXP ; then |
| echo "evolution-addressbook-export present in $EADDEXP, OK." |
| else |
| echo "Cannot locate evolution-addressbook-export!!" |
| exit 0 |
| fi |
| |
| |
| # Next line merges all of your tasklist, your personal calendar, |
| # and then any saved to disk calendar you have placed in |
| # $SYNC_HOME/calendars |
| |
| cat $HOME/.evolution/tasks/local/system/tasks.ics \ |
| $HOME/.evolution/calendar/local/system/calendar.ics \ |
| $SYNC_HOME/calendars/*.icsĀ > $SYNC_HOME/$CALENDAR_FILE |
| |
| # Use evolution-addressbook-export (installed with Evolution) to |
| # export your contacts to vcard. |
| |
| $EADDEXP --format=vcard \ |
| --output=$SYNC_HOME/contacts/Evolution_contacts.vcf \ |
| $EVOLUTION_CONTACTS |
| |
| # Repeat for each addressbook you want to upload. |
| |
| # The next command will then merge all the contact lists |
| |
| cat $SYNC_HOME/contacts/*.vcf > $SYNC_HOME/$CONTACTS_FILE |
| |
| # The calendar and contacts files now need to be converted from unix |
| # to DOS linefeeds (CR+LF instead of just LF) |
| |
| unix2dos $SYNC_HOME/$CALENDAR_FILE $SYNC_HOME/$CONTACTS_FILE |
| |
| # You can now upload the ics and vcf files to you My Organizer folder |
| # on your device. Change the path to your sendfile command. |
| # Sending the vcf file is only supported in CVS version at this time |
| |
| $SENDFILE -f "My Organizer" -t ics $SYNC_HOME/$CALENDAR_FILE |
| $SENDFILE -f "My Organizer" -t vcf $SYNC_HOME/$CONTACTS_FILE |
| |