1 #!/bin/bash 2 3 # Example evolution synchronization script by Nicolas Tetreault, 4 # modified by Linus Walleij. 5 6 # Define target files 7 SYNC_HOME=$HOME/MTP_device_sync 8 9 # Define tool locations 10 SENDFILE=`which mtp-sendfile` 11 # SENDFILE="$HOME/comp-apps/bin/sendfile" 12 #EADDEXP=`which evolution-addressbook-export` 13 # This is the location in Fedora Core 5: 14 EADDEXP="/usr/libexec/evolution/2.6/evolution-addressbook-export" 15 16 # You need to change the name of the files 17 # that contains the calendar and contacts on your device. 18 # You can find out by starting Gnomad2, choose the data transfer 19 # tab, sort by size (it should be small files, extension .ics and .vcf) 20 # On my Zen Microphoto, the calendar and contacts files are called 21 # 6651416 with the ics and vcf extensions, respectively. 22 CALENDAR_FILE="6651416.ics" 23 CONTACTS_FILE="6651416.vcf" 24 25 # The evolution address book. To list your addressbooks, type: 26 # evolution-addressbook-export -l 27 # the output for me: 28 # "file:///home/nt271/.evolution/addressbook/local/system 29 # ","Personal",26 30 # "file:///home/nt271/.evolution/addressbook/local/1158600180.5386.0@sierra" 31 # ,"MicroPhoto",24 32 # I only want the Microphoto addressbook and the output will be 33 # $SYNC_HOME/contacts/Evolution_contacts.vcf 34 EVOLUTION_CONTACTS="file:///home/linus/.evolution/addressbook/local/system" 35 36 # Check for sync dir, create it if needed 37 38 if test -d $SYNC_HOME ; then 39 echo "$SYNC_HOME exists, OK." 40 else 41 echo "$SYNC_HOME must first be created..." 42 mkdir $SYNC_HOME 43 # This is a working dir for contact merging, you can put 44 # in some extra .vcf files here as well if you like. 45 mkdir $SYNC_HOME/contacts 46 # Here you can place some extra calendars to be sync:ed, you 47 # can put in some extra .ics files of any kind here. 48 mkdir $SYNC_HOME/calendars 49 fi 50 51 # Check for prerequisites 52 53 if test -f $EADDEXP ; then 54 echo "evolution-addressbook-export present in $EADDEXP, OK." 55 else 56 echo "Cannot locate evolution-addressbook-export!!" 57 exit 0 58 fi 59 60 61 # Next line merges all of your tasklist, your personal calendar, 62 # and then any saved to disk calendar you have placed in 63 # $SYNC_HOME/calendars 64 65 cat $HOME/.evolution/tasks/local/system/tasks.ics \ 66 $HOME/.evolution/calendar/local/system/calendar.ics \ 67 $SYNC_HOME/calendars/*.ics> $SYNC_HOME/$CALENDAR_FILE 68 69 # Use evolution-addressbook-export (installed with Evolution) to 70 # export your contacts to vcard. 71 72 $EADDEXP --format=vcard \ 73 --output=$SYNC_HOME/contacts/Evolution_contacts.vcf \ 74 $EVOLUTION_CONTACTS 75 76 # Repeat for each addressbook you want to upload. 77 78 # The next command will then merge all the contact lists 79 80 cat $SYNC_HOME/contacts/*.vcf > $SYNC_HOME/$CONTACTS_FILE 81 82 # The calendar and contacts files now need to be converted from unix 83 # to DOS linefeeds (CR+LF instead of just LF) 84 85 unix2dos $SYNC_HOME/$CALENDAR_FILE $SYNC_HOME/$CONTACTS_FILE 86 87 # You can now upload the ics and vcf files to you My Organizer folder 88 # on your device. Change the path to your sendfile command. 89 # Sending the vcf file is only supported in CVS version at this time 90 91 $SENDFILE -f "My Organizer" -t ics $SYNC_HOME/$CALENDAR_FILE 92 $SENDFILE -f "My Organizer" -t vcf $SYNC_HOME/$CONTACTS_FILE 93 94