emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [OT] org-caldav and radicale


From: Simon Thum
Subject: Re: [O] [OT] org-caldav and radicale
Date: Mon, 19 Jan 2015 21:59:47 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0



On 01/19/2015 05:05 AM, Eric Abrahamsen wrote:
I'm finally getting around to trying to have an Org-generated calendar
available on my Android tablet. I looked at a few caldav servers, and
settled on Radicale as looking like about the right level of
usability/configurability.

I don't think I'm doing it right, and can't find any examples online.
Can someone who's doing this (I know there are some of you) just show me
the basic configuration? Specifically, how do I create a new calendar on
the server, and how do I refer to it? My Radicale config has this:

Well I just put it on my server over http/DAV and have it auto-regenerate from org (happens to be in git on the same machine) using a script. But even if you generate locally and push, the following might help you:

export bash script:

# export ical via org (funnyly, the X.org-trick causes harm here)
echo ">>> exporting iCalendar..."
emacs -batch -l ~/.emacs.d/init.el -l ~/bin/ical-export-3.el --kill

echo ">>> done with export."


export elisp script:


;; export icalendar using new icalendar exporter
(require 'ox-icalendar)

; remove-if and friends
(require 'cl)

; inhibit source block execution during export
(setq org-export-babel-evaluate nil)

;; TODO check this TZ (also if to give decimal 47 (solidus) prefix)
(setq org-icalendar-timezone "Europe/Berlin")

;; while this violates iCal (missing VTIMEZONE), it is the nicest of options for my setup
(setq org-icalendar-date-time-format ";TZID=%Z:%Y%m%dT%H%M%S")

;; Mins alarm
(setq org-icalendar-alarm-time 15)

;; use inhertited tags for iCal categories (add TODO state?)
(setq org-icalendar-categories '(all-tags))

;; target file
(setq org-icalendar-combined-agenda-file "~/org-export/all.ics")

; create sumo "all.ics" iCal
(org-icalendar-combine-agenda-files)

; create one without external stuff; sadly tags cannot yet be used
(let (
(org-agenda-files (remove-if (lambda (f) (string-match "external" f)) (org-agenda-files)))
      (org-icalendar-combined-agenda-file "~/org-export/org-native.ics")
      )
  (org-icalendar-combine-agenda-files)
  )


The last part (without external) is only relevant if you have external calendars represented in org that you do not neccessarily want re-represented in the ical. Anyway, tweak as neccessary.


HTH,

Simon


[storage]
type = filesystem
filesystem_folder = /home/eric/apps/cal/collections

If I touch a file called "eric" in the "collections" directory, and then
access the server via HTTP (ie http://cal.myserver.com/eric), the file
is correctly served as an (empty) calendar and downloaded by my browser.

How do I get org-caldav to mesh with that? I thought this would do it:

(setq org-caldav-url "http://cal.myserver.com";)
(setq org-caldav-calendar-id "eric")

But when I call `org-caldav-sync' it first collects all the headings
it's supposed to, and then gives me:

org-caldav-get-event-etag-list: Error while getting eventlist from
http://cal.myserver.com/eric/. Got status code: 207.

If I run it again, it offers to delete all the relevant Org headings.

I suspect I've just got something configured wrong, but can't think of
what. Any pointers?

Thanks!
Eric






reply via email to

[Prev in Thread] Current Thread [Next in Thread]