gnu: Add emacs-slime.
[jackhill/guix/guix.git] / gnu / packages / kde.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
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.
10 ;;;
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.
15 ;;;
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/>.
18
19 (define-module (gnu packages kde)
20 #:use-module ((guix licenses) #:select (bsd-2 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3+))
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 ruby)
35 #:use-module (gnu packages video)
36 #:use-module (gnu packages xml)
37 #:use-module (gnu packages xorg))
38
39 (define-public automoc4
40 (package
41 (name "automoc4")
42 (version "0.9.88")
43 (source (origin
44 (method url-fetch)
45 (uri (string-append "http://download.kde.org/stable/" name
46 "/" version "/" name "-"
47 version ".tar.bz2"))
48 (sha256
49 (base32
50 "0jackvg0bdjg797qlbbyf9syylm0qjs55mllhn11vqjsq3s1ch93"))))
51 (build-system cmake-build-system)
52 (inputs
53 `(("qt" ,qt-4)))
54 (arguments
55 `(#:tests? #f)) ; no check target
56 (home-page "http://techbase.kde.org/Development/Tools/Automoc4")
57 (synopsis "Build tool for KDE")
58 (description "AutoMoc4 automatically generates moc-files for KDE.")
59 (license bsd-2)))
60
61 (define-public phonon
62 (package
63 (name "phonon")
64 (version "4.8.3")
65 (source (origin
66 (method url-fetch)
67 (uri (string-append "http://download.kde.org/stable/" name
68 "/" version "/src/"
69 name "-" version ".tar.xz"))
70 (sha256
71 (base32
72 "05nshngk03ln90vsjz44dx8al576f4vd5fvhs1l0jmx13jb9q551"))))
73 (build-system cmake-build-system)
74 ;; FIXME: Add optional input libqzeitgeist once available.
75 (native-inputs
76 `(("automoc4" ,automoc4)
77 ("pkg-config" ,pkg-config)))
78 (inputs
79 `(("glib" ,glib)
80 ("libx11" ,libx11)
81 ("pulseaudio" ,pulseaudio)))
82 (propagated-inputs
83 `(("qt" ,qt-4))) ; according to phonon.pc
84 (arguments
85 `(#:tests? #f)) ; no test target
86 (home-page "http://phonon.kde.org/")
87 (synopsis "Qt 4 multimedia API")
88 (description "KDE desktop environment")
89 (license lgpl2.1+)))
90
91 (define-public qjson
92 (package
93 (name "qjson")
94 (version "0.8.1")
95 (source (origin
96 (method url-fetch)
97 (uri (string-append "https://github.com/flavio/qjson/archive/"
98 version ".tar.gz"))
99 (file-name (string-append name "-" version ".tar.gz"))
100 (sha256
101 (base32
102 "163fspi0xc705irv79qw861fmh68pjyla9vx3kqiq6xrdhb9834j"))))
103 (build-system cmake-build-system)
104 (inputs
105 `(("qt" ,qt-4)))
106 (arguments
107 `(#:tests? #f)) ; no test target
108 (home-page "http://qjson.sourceforge.net/")
109 (synopsis "Qt-based library for handling JSON")
110 (description "QJson is a Qt-based library that maps JSON data to QVariant
111 objects and vice versa. JSON arrays are mapped to QVariantList instances,
112 while JSON objects are mapped to QVariantMap.")
113 (license lgpl2.1+)))
114
115 (define-public libdbusmenu-qt
116 (package
117 (name "libdbusmenu-qt")
118 (version "0.9.2")
119 (source (origin
120 (method url-fetch)
121 (uri (string-append "https://launchpad.net/" name "/trunk/"
122 version "/+download/"
123 name "-" version ".tar.bz2"))
124 (sha256
125 (base32
126 "1v0ri5g9xw2z64ik0kx0ra01v8rpjn2kxprrxppkls1wvav1qv5f"))))
127 (build-system cmake-build-system)
128 (native-inputs
129 `(("doxygen" ,doxygen) ; used for static documentation
130 ("pkg-config" ,pkg-config)
131 ("qjson", qjson))) ; used for the tests
132 (inputs
133 `(("qt" ,qt-4)))
134 (arguments
135 `(#:tests? #f)) ; no check target
136 (home-page "https://launchpad.net/libdbusmenu-qt/")
137 (synopsis "Qt implementation of the DBusMenu protocol")
138 (description "The library provides a Qt implementation of the DBusMenu
139 protocol. The DBusMenu protocol makes it possible for applications to export
140 and import their menus over DBus.")
141 (license lgpl2.0+)))
142
143 (define-public attica
144 (package
145 (name "attica")
146 (version "0.4.2")
147 (source (origin
148 (method url-fetch)
149 (uri (string-append "http://download.kde.org/stable/"
150 name "/"
151 name "-" version ".tar.bz2"))
152 (sha256
153 (base32
154 "1y74gsyzi70dfr9d1f1b08k130rm3jaibsppg8dv5h3211vm771v"))))
155 (build-system cmake-build-system)
156 (inputs
157 `(("qt" ,qt-4)))
158 (home-page "https://projects.kde.org/projects/frameworks/attica")
159 (synopsis "Qt library for the Open Collaboration Services API")
160 (description "Attica is a Qt library that implements the Open
161 Collaboration Services API version 1.6. It grants easy access to the
162 services such as querying information about persons and contents. The
163 library is used in KNewStuff3 as content provider. In order to integrate
164 with KDE's Plasma Desktop, a platform plugin exists in kdebase.")
165 (license lgpl2.1+)))
166
167 (define-public strigi
168 (package
169 (name "strigi")
170 (version "0.7.8")
171 (source (origin
172 (method url-fetch)
173 (uri (string-append "http://www.vandenoever.info/software/"
174 name "/"
175 name "-" version ".tar.bz2"))
176 (sha256
177 (base32
178 "12grxzqwnvbyqw7q1gnz42lypadxmq89vk2qpxczmpmc4nk63r23"))))
179 (build-system cmake-build-system)
180 (native-inputs
181 `(("pkg-config" ,pkg-config)))
182 ;; FIXME: Add optional inputs XAttr, FAM, Log4cxx
183 (inputs
184 `(("clucene" ,clucene)
185 ("dbus" ,dbus)
186 ("exiv2" ,exiv2)
187 ("ffmpeg" ,ffmpeg)
188 ("libxml2" ,libxml2)
189 ("perl" ,perl)
190 ("python" ,python-wrapper)
191 ("qt" ,qt-4)
192 ("zlib" ,zlib)))
193 (arguments
194 `(#:tests? #f)) ; FIXME: Test 23/25 ProcessInputStreamTest fails.
195 (home-page "http://www.vandenoever.info/software/strigi/")
196 (synopsis "Desktop search daemon")
197 (description "Strigi is a desktop search daemon with the following
198 main features:
199 very fast crawling;
200 very small memory footprint;
201 no hammering of the system;
202 pluggable backend, currently clucene and hyperestraier, sqlite3 and xapian
203 are in the works;
204 communication between daemon and search program over an abstract interface,
205 currently a simple socket;
206 simple interface for implementing plugins for extracting information;
207 calculation of sha1 for every file crawled
208 (allows fast finding of duplicates).")
209 (license lgpl2.0+)))
210
211 (define-public oxygen-icons
212 (package
213 (name "oxygen-icons")
214 (version "4.14.2")
215 (source (origin
216 (method url-fetch)
217 (uri (string-append "http://download.kde.org/stable/" version
218 "/src/" name "-"
219 version ".tar.xz"))
220 (sha256
221 (base32
222 "1mz73f54qh2vd8ibp60f6fjflrprz0lvqfkgh805l7wfhrv4ckbz"))))
223 (build-system cmake-build-system)
224 (arguments
225 `(#:tests? #f)) ; no test target
226 (home-page "http://www.kde.org/")
227 (synopsis "Oxygen icon theme for the KDE desktop")
228 (description "KDE desktop environment")
229 (license lgpl3+)))