Xebar Saram writes:
i was wondering if anyone was syncing orgmode calendar with
google cal, and if so how? i tried this
https://github.com/myuhe/org-gcal.el/issues
which gave errors all the time and thus stopped being usable
im looking for a robust solution. any ideas?
I export the agenda using org-icalendar-combine-agenda-files. If
you have access to a server, it is enough to point
org-icalendar-combined-agenda-file to the right location in your
server and then adding the ics file location in google calendar
(Other calendars/Add by URL). You can automate this with a timer:
#+BEGIN_SRC emacs-lisp
(org-icalendar-combined-agenda-file
"~/public_html/calendar.ics")
(run-with-idle-timer (* 60 60) t
'org-icalendar-combine-agenda-files)
#+END_SRC
If you do not have access to a server, you could use github
(https://pages.github.com/) or bitbucket
(https://confluence.atlassian.com/bitbucket/publishing-a-website-on-bitbucket-221449776.html)
to create a website for your account. Then you can point
org-icalendar-combined-agenda-file to the repo of your website and
commit and push every time that you export the agenda to the ics
file. In this case change org-icalendar-combined-agenda-file
accordingly.
#+BEGIN_SRC emacs-lisp
(org-icalendar-combined-agenda-file
"/path/to/personal/website/repo/calendar.ics")
#+END_SRC
If you do not like timers, you can also automate the process
creating an sh file:
#+BEGIN_EXAMPLE
#!/bin/bash
emacsclient -a '' -e "(org-icalendar-combine-agenda-files nil)"
cd /path/to/personal/website/repo
git add calendar.ics
git commit -m "Update calendar"
git push
#+END_EXAMPLE
And then using a cronjob.
Best,
--
Jorge.