From a9a2742b223aedf21d6803d90378ff8f66cf1193 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 3 Aug 2020 15:56:58 +0300 Subject: [PATCH] gnu: Add confclerk. * gnu/packages/calendar.scm (confclerk): New variable. --- gnu/packages/calendar.scm | 59 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 58 insertions(+), 1 deletion(-) 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 ;;; Copyright © 2015, 2016, 2017 Leo Famulari ;;; Copyright © 2016 Kei Kebreau -;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2016, 2017, 2020 Efraim Flashner ;;; Copyright © 2016 Troy Sankey ;;; Copyright © 2016 Stefan Reichoer ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice @@ -46,6 +46,7 @@ (define-module (gnu packages calendar) #: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 @@ (define-public libhdate 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/*