Only install/use khalel if khal is available

This commit is contained in:
Evie Litherland-Smith 2024-10-21 10:03:41 +01:00
parent 71f3ebc7d0
commit 1a9fb3c2ff

View file

@ -375,7 +375,8 @@ Rules and packages for buffer management and window navigation.
#+end_src #+end_src
*** Khalel *** Khalel
#+begin_src emacs-lisp #+begin_src emacs-lisp
(add-to-list 'package-selected-packages 'khalel) (if (executable-find "khal" nil)
(add-to-list 'package-selected-packages 'khalel))
(use-package khalel (use-package khalel
:if (package-installed-p 'khalel) :if (package-installed-p 'khalel)
:after (org-agenda) :after (org-agenda)
@ -390,7 +391,10 @@ Rules and packages for buffer management and window navigation.
(khalel-import-org-file-confirm-overwrite nil) (khalel-import-org-file-confirm-overwrite nil)
(khalel-import-start-date "-365d") (khalel-import-start-date "-365d")
(khalel-import-end-date "+365d") (khalel-import-end-date "+365d")
(khalel-import-org-file-header "#+TITLE: khalel imported calendar events\n#+COLUMNS: %ITEM %TIMESTAMP %LOCATION %CALENDAR\n#+CATEGORY: Calendar\n\n")) (khalel-import-org-file-header "#+TITLE: khalel imported calendar events\n#+COLUMNS: %ITEM %TIMESTAMP %LOCATION %CALENDAR\n#+CATEGORY: Calendar\n\n")
:config
(khalel-import-events)
(khalel-add-capture-template))
#+end_src #+end_src
*** MU4E *** MU4E
Configure email with iCalendar event support, to integrate with Configure email with iCalendar event support, to integrate with
@ -948,12 +952,7 @@ Configure email with iCalendar event support, to integrate with
(file+olp "notes.org" "Inbox")) (file+olp "notes.org" "Inbox"))
("t" "Task" entry ("t" "Task" entry
(file+olp "tasks.org" "Inbox") (file+olp "tasks.org" "Inbox")
"* TODO %?\nDEADLINE: %t\n %i\n %a") "* TODO %?\nDEADLINE: %t\n %i\n %a"))))
("#" "used by gnus-icalendar-org" entry
(file+olp "calendar/email.org" "Inbox")
"%i" :immediate-finish t)))
:config
(with-eval-after-load 'khalel (khalel-add-capture-template)))
(when (or (package-installed-p 'emacsql-sqlite) (when (or (package-installed-p 'emacsql-sqlite)
(package-installed-p 'emacsql-sqlite-builtin)) (package-installed-p 'emacsql-sqlite-builtin))
@ -1048,10 +1047,6 @@ Configure email with iCalendar event support, to integrate with
'(("p" "Personal Agenda" tags "+personal") '(("p" "Personal Agenda" tags "+personal")
("w" "Work Agenda" tags "+work")))) ("w" "Work Agenda" tags "+work"))))
(with-eval-after-load 'org-agenda
(require 'khalel)
(khalel-import-events))
(use-package ox-icalendar (use-package ox-icalendar
:after org :after org
:custom :custom