1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
4 ;;; This file is part of GNU Guix.
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages kde)
20 #:use-module ((guix licenses) #:select (bsd-2 lgpl2.0+ lgpl2.1 lgpl2.1+))
21 #:use-module (guix packages)
22 #:use-module (guix download)
23 #:use-module (guix build-system cmake)
24 #:use-module (gnu packages compression)
25 #:use-module (gnu packages doxygen)
26 #:use-module (gnu packages geeqie)
27 #:use-module (gnu packages glib)
28 #:use-module (gnu packages perl)
29 #:use-module (gnu packages pkg-config)
30 #:use-module (gnu packages pulseaudio)
31 #:use-module (gnu packages python)
32 #:use-module (gnu packages qt)
33 #:use-module (gnu packages rdf)
34 #:use-module (gnu packages video)
35 #:use-module (gnu packages xml)
36 #:use-module (gnu packages xorg))
38 (define-public automoc4
44 (uri (string-append "http://download.kde.org/stable/" name
45 "/" version "/" name "-"
49 "0jackvg0bdjg797qlbbyf9syylm0qjs55mllhn11vqjsq3s1ch93"))))
50 (build-system cmake-build-system)
54 `(#:tests? #f)) ; no check target
55 (home-page "http://techbase.kde.org/Development/Tools/Automoc4")
56 (synopsis "build tool for KDE")
57 (description "KDE desktop environment")
66 (uri (string-append "http://download.kde.org/stable/" name
68 name "-" version ".tar.xz"))
71 "1sxrnwm16dxy32xmrqf26762wmbqing1zx8i4vlvzgzvd9xy39ac"))))
72 (build-system cmake-build-system)
73 ;; FIXME: Add interpreter ruby once available.
74 ;; Add optional input libqtzeitgeist.
76 `(("automoc4" ,automoc4)
79 ("pulseaudio" ,pulseaudio)
82 `(("pkg-config" ,pkg-config)))
84 `(#:tests? #f)) ; no test target
85 (home-page "http://phonon.kde.org/")
86 (synopsis "Qt 4 multimedia API")
87 (description "KDE desktop environment")
96 (uri (string-append "https://github.com/flavio/qjson/archive/"
100 "163fspi0xc705irv79qw861fmh68pjyla9vx3kqiq6xrdhb9834j"))))
101 (build-system cmake-build-system)
105 `(#:tests? #f)) ; no test target
106 (home-page "http://qjson.sourceforge.net/")
107 (synopsis "Qt-based library for handling JSON")
108 (description "QJson is a Qt-based library that maps JSON data to QVariant
109 objects and vice versa. JSON arrays are mapped to QVariantList instances,
110 while JSON objects are mapped to QVariantMap.")
113 (define-public libdbusmenu-qt
115 (name "libdbusmenu-qt")
119 (uri (string-append "https://launchpad.net/" name "/trunk/"
120 version "/+download/"
121 name "-" version ".tar.bz2"))
124 "1v0ri5g9xw2z64ik0kx0ra01v8rpjn2kxprrxppkls1wvav1qv5f"))))
125 (build-system cmake-build-system)
127 `(("doxygen" ,doxygen) ; used for static documentation
128 ("pkg-config" ,pkg-config)
129 ("qjson", qjson))) ; used for the tests
133 `(#:tests? #f)) ; no check target
134 (home-page "https://launchpad.net/libdbusmenu-qt/")
135 (synopsis "Qt implementation of the DBusMenu protocol")
136 (description "The library provides a Qt implementation of the DBusMenu
137 protocol. The DBusMenu protocol makes it possible for applications to export
138 and import their menus over DBus.")
141 (define-public attica
147 (uri (string-append "http://download.kde.org/stable/"
149 name "-" version ".tar.bz2"))
152 "1y74gsyzi70dfr9d1f1b08k130rm3jaibsppg8dv5h3211vm771v"))))
153 (build-system cmake-build-system)
156 (home-page "https://projects.kde.org/projects/kdesupport/attica")
157 (synopsis "Qt library for the Open Collaboration Services API")
158 (description "Attica is a Qt library that implements the Open
159 Collaboration Services API version 1.6. It grants easy access to the
160 services such as querying information about persons and contents. The
161 library is used in KNewStuff3 as content provider. In order to integrate
162 with KDE's Plasma Desktop, a platform plugin exists in kdebase.")
165 (define-public strigi
171 (uri (string-append "http://www.vandenoever.info/software/"
173 name "-" version ".tar.bz2"))
176 "12grxzqwnvbyqw7q1gnz42lypadxmq89vk2qpxczmpmc4nk63r23"))))
177 (build-system cmake-build-system)
179 `(("pkg-config" ,pkg-config)))
180 ;; FIXME: Add optional inputs XAttr, FAM, Log4cxx
182 `(("clucene" ,clucene)
188 ("python" ,python-wrapper)
192 `(#:tests? #f)) ; FIXME: Test 23/25 ProcessInputStreamTest fails.
193 (home-page "http://www.vandenoever.info/software/strigi/")
194 (synopsis "Desktop search daemon")
195 (description "Strigi is a desktop search daemon with the following
198 very small memory footprint;
199 no hammering of the system;
200 pluggable backend, currently clucene and hyperestraier, sqlite3 and xapian
202 communication between daemon and search program over an abstract interface,
203 currently a simple socket;
204 simple interface for implementing plugins for extracting information;
205 calculation of sha1 for every file crawled
206 (allows fast finding of duplicates).")