From ae1d77b36d17d5886b4cc24ec0291c8bce4fc7bf Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 11 Mar 2026 08:43:55 +0100 Subject: [PATCH] gnu: Add emacs-khalel. * gnu/packages/emacs-xyz.scm (emacs-khalel): New variable. Change-Id: I1f2dd0e21a2e84911165d98245e45c078f9011a8 --- gnu/packages/emacs-xyz.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2724f4aabf..63d42ef8c0 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -204,12 +204,14 @@ #:use-module (gnu packages aspell) #:use-module (gnu packages audio) #:use-module (gnu packages bash) + #:use-module (gnu packages calendar) #:use-module (gnu packages chez) #:use-module (gnu packages cmake) #:use-module (gnu packages code) #:use-module (gnu packages cpp) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages dav) #:use-module (gnu packages dictionaries) #:use-module (gnu packages djvu) #:use-module (gnu packages ebook) @@ -8407,6 +8409,41 @@ them whenever another command is invoked.") a command.") (license license:gpl3+))) +(define-public emacs-khalel + (package + (name "emacs-khalel") + (version "0.1.15") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/hperrey/khalel") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06h5272kmg0ykf0zqdy2qwhlzszqsw176l1brk04bg8xyc3a4384")))) + (build-system emacs-build-system) + (arguments + (list + #:tests? #f ;no tests + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'locate-input-binaries + (lambda* (#:key inputs #:allow-other-keys) + (emacs-substitute-variables "khalel.el" + ("khalel-khal-command" + (search-input-file inputs "/bin/khal")) + ("khalel-vdirsyncer-command" + (search-input-file inputs "/bin/vdirsyncer")))))))) + (inputs (list khal vdirsyncer)) + (home-page "https://gitlab.com/hperrey/khalel") + (synopsis "Interact with local or remote CalDAV calendars") + (description + "Khalel accesses calendars stored in ICS files and provides means of +listing existing events, edit them as well as to create new ones largely +through an Org mode interface.") + (license license:gpl3+))) + (define-public emacs-khardel (package (name "emacs-khardel")