summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2020-08-03 15:56:58 +0300
committerEfraim Flashner <efraim@flashner.co.il>2020-08-05 13:10:14 +0300
commita9a2742b223aedf21d6803d90378ff8f66cf1193 (patch)
tree5799bee9cc0f66a8fab363fd6b53dc01dd4668ee
parent3866a9aef46cb0e2fd523d7a938695d0155b6c0e (diff)
downloadguix-a9a2742b223aedf21d6803d90378ff8f66cf1193.tar.gz
gnu: Add confclerk.
* gnu/packages/calendar.scm (confclerk): New variable.
-rw-r--r--gnu/packages/calendar.scm59
1 files changed, 58 insertions, 1 deletions
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 53c73c969d..9987ae1bf8 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
 ;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -46,6 +46,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages time)
@@ -282,3 +283,59 @@ of day, written in C, and including bindings for C++, pascal, perl, php, python,
 and ruby.  It includes two illustrative command-line programs, @code{hcal} and
 @code{hdate}, and some snippets and scripts written in the binding languages.")
     (license license:gpl3+)))
+
+(define-public confclerk
+  (package
+    (name "confclerk")
+    (version "0.6.4")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://www.toastfreeware.priv.at/tarballs/"
+                            "confclerk/confclerk-" version ".tar.gz"))
+        (sha256
+         (base32
+          "10rhg44px4nvbkd3p341cmp2ds43jn8r4rvgladda9v8zmsgr2b3"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               ;; Install directory is currently hard-coded.
+               (substitute* "src/app/app.pro"
+                 (("PREFIX = /usr/bin")
+                  (string-append "PREFIX =" out "/bin")))
+               (invoke "qmake"))))
+         (add-after 'install 'install-docs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out   (assoc-ref outputs "out"))
+                    (share (string-append out "/share")))
+               (install-file "data/confclerk.1"
+                             (string-append share "/man/man1"))
+               (install-file "data/confclerk.desktop"
+                             (string-append share "/applications"))
+               (install-file "data/confclerk.svg"
+                             (string-append share "/icons/hicolor/scalable/apps"))
+               #t))))
+       #:tests? #f)) ; no tests
+    (native-inputs
+     `(("perl" ,perl))) ; pod2man
+    (inputs
+     `(("qtbase" ,qtbase)))
+    (home-page "https://www.toastfreeware.priv.at/confclerk")
+    (synopsis "Offline conference schedule application")
+    (description
+     "ConfClerk is an application written in Qt, which makes conference schedules
+available offline.  It displays the conference schedule from various views,
+support searches on various items (speaker, speech topic, location, etc.) and
+enables you to select favorite events and create your own schedule.
+
+At the moment ConfClerk is able to import schedules in XML format created by
+the PentaBarf conference management system (or frab) used by e.g. FOSDEM,
+DebConf, FrOSCon, Grazer LinuxTage, and the CCC congresses.
+
+ConfClerk is targeted at mobile devices but works on any system running Qt.")
+    (license (list license:gpl2+
+                   license:lgpl3)))) ; or cc-by3.0 for src/icons/*