summary refs log tree commit diff
path: root/gnu/packages/kde-frameworks.scm
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2019-10-23 17:43:58 +0200
committerHartmut Goebel <h.goebel@crazy-compilers.com>2019-11-10 22:18:19 +0100
commit862862e592e4e63f28854ab2550ab1dd754c88a0 (patch)
tree72a3e4e1fa8e9b57490565df646cd4fa1e48e287 /gnu/packages/kde-frameworks.scm
parent1dd1076c5e80141ab65dddce053e93fc5af18c84 (diff)
downloadguix-862862e592e4e63f28854ab2550ab1dd754c88a0.tar.gz
gnu: Add kcalendarcore.
This is now a part of KDE Frameworks.

* gnu/packages/kde-frameworks.scm(kcalendarcore): New variable.
Diffstat (limited to 'gnu/packages/kde-frameworks.scm')
-rw-r--r--gnu/packages/kde-frameworks.scm62
1 files changed, 62 insertions, 0 deletions
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 85c3736669..96bd36a88a 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -38,6 +38,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
+  #:use-module (gnu packages calendar)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages disk)
@@ -429,6 +430,67 @@ GZip format, via a subclass of QIODevice.")
     (license (list license:lgpl2.1 license:lgpl2.1+
                    license:lgpl3+ license:bsd-2))))
 
+(define-public kcalendarcore
+  (package
+    (name "kcalendarcore")
+    (version "5.63.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://kde/stable/frameworks/"
+                    (version-major+minor version) "/"
+                    name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1cqqwpd6faz7sd6jrda564xxvwr231b175h2w3ilxx6hvz9yrps3"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("perl" ,perl)
+       ("tzdata" ,tzdata-for-tests)))
+    (inputs
+     `(("libical" ,libical)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'disable-failing-libical3-tests
+           (lambda _
+             ;; testicaltimezones fails with some time-zone issue
+             (substitute* "autotests/CMakeLists.txt"
+               (("macro_unit_tests\\(testicaltimezones\\)" line)
+                (string-append "## " line))
+               (("target_link_libraries\\(testicaltimezones " line)
+                (string-append "## " line)))
+             (for-each
+              delete-file
+              (list
+               ;; test cases are generated for each .ics file. These fail:
+               "autotests/data/Compat-libical3/AppleICal_1.5.ics"
+               "autotests/data/Compat-libical3/Evolution_2.8.2_timezone_test.ics"
+               "autotests/data/Compat-libical3/KOrganizer_3.1a.ics"
+               "autotests/data/Compat-libical3/MSExchange.ics"
+               "autotests/data/Compat-libical3/Mozilla_1.0.ics"))
+             #t))
+         (add-before 'check 'set-timezone
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "TZ" "Europe/Prague")
+             (setenv "TZDIR"
+                     (string-append (assoc-ref inputs "tzdata")
+                                    "/share/zoneinfo"))
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Library for interfacing with calendars")
+    (description "This library provides access to and handling of calendar
+data.  It supports the standard formats iCalendar and vCalendar and the group
+scheduling standard iTIP.
+
+A calendar contains information like incidences (events, to-dos, journals),
+alarms, time zones, and other useful information.  This API provides access to
+that calendar information via well known calendar formats iCalendar (or iCal)
+and the older vCalendar.")
+    (license (list license:lgpl3+ license:bsd-2))))
+
 (define-public kcodecs
   (package
     (name "kcodecs")