gnu: Enable tests for ruby-multi-json.
[jackhill/guix/guix.git] / gnu / packages / lxqt.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
4 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
5 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
6 ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
7 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
8 ;;;
9 ;;; This file is part of GNU Guix.
10 ;;;
11 ;;; GNU Guix is free software; you can redistribute it and/or modify it
12 ;;; under the terms of the GNU General Public License as published by
13 ;;; the Free Software Foundation; either version 3 of the License, or (at
14 ;;; your option) any later version.
15 ;;;
16 ;;; GNU Guix is distributed in the hope that it will be useful, but
17 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
18 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 ;;; GNU General Public License for more details.
20 ;;;
21 ;;; You should have received a copy of the GNU General Public License
22 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
23
24 (define-module (gnu packages lxqt)
25 #:use-module (guix download)
26 #:use-module ((guix licenses) #:select (lgpl2.1+))
27 #:use-module (guix packages)
28 #:use-module (guix utils)
29 #:use-module (guix build-system cmake)
30 #:use-module (gnu packages)
31 #:use-module (gnu packages glib)
32 #:use-module (gnu packages kde-frameworks)
33 #:use-module (gnu packages pkg-config)
34 #:use-module (gnu packages qt))
35
36 (define-public libqtxdg
37 (package
38 (name "libqtxdg")
39 (version "1.2.0")
40 (source
41 (origin
42 (method url-fetch)
43 (uri
44 (string-append "https://github.com/lxde/libqtxdg/releases/"
45 "download/" version "/" name "-" version ".tar.xz"))
46 (sha256
47 (base32
48 "1ncqs0lcll5nx69hxfg33m3jfkryjqrjhr2kdci0b8pyaqdv1jc8"))))
49 (build-system cmake-build-system)
50 (arguments
51 `(#:tests? #f ; test fails with message "Exception"
52 #:configure-flags '("-DBUILD_TESTS=ON")))
53 (native-inputs
54 `(("pkg-config" ,pkg-config)))
55 (propagated-inputs
56 `(("qtbase" ,qtbase))) ; according to Qt5Xdg.pc
57 (home-page "https://github.com/lxde/libqtxdg")
58 (synopsis "Qt implementation of freedesktop.org xdg specifications")
59 (description "Libqtxdg implements the freedesktop.org xdg specifications
60 in Qt.")
61 (license lgpl2.1+)))
62
63 (define-public liblxqt
64 (package
65 (name "liblxqt")
66 (version "0.9.0")
67 (source
68 (origin
69 (method url-fetch)
70 (uri
71 (string-append "https://github.com/lxde/" name
72 "/archive/" version ".tar.gz"))
73 (file-name (string-append name "-" version ".tar.gz"))
74 (sha256
75 (base32
76 "0mbl3qc0yfgfsndqrw8vg8k5irsy0pg2wrad8nwv0aphphd4n7rg"))
77 (patches (search-patches "liblxqt-include.patch"))))
78 (build-system cmake-build-system)
79 (arguments
80 `(#:tests? #f))
81 (native-inputs `(("pkg-config" ,pkg-config)))
82 (inputs
83 `(("kwindowsystem" ,kwindowsystem)
84 ("libqtxdg" ,libqtxdg)
85 ("qtbase" ,qtbase)
86 ("qttools" ,qttools)
87 ("qtx11extras" ,qtx11extras)))
88 (home-page "http://lxqt.org/")
89 (synopsis "Core utility library for all LXQt components")
90 (description "liblxqt provides the basic libraries shared by the
91 components of the LXQt desktop environment.")
92 (license lgpl2.1+)))
93
94 (define-public lxqt-session
95 (package
96 (name "lxqt-session")
97 (version "0.9.0")
98 (source
99 (origin
100 (method url-fetch)
101 (uri
102 (string-append "https://github.com/lxde/" name
103 "/archive/" version ".tar.gz"))
104 (file-name (string-append name "-" version ".tar.gz"))
105 (sha256
106 (base32
107 "1sdwcfrfqkg7ibrsncs1skdap9n8wm4rg6n9d0fgdz2q4d45h75a"))))
108 (build-system cmake-build-system)
109 (native-inputs `(("pkg-config" ,pkg-config)))
110 (inputs
111 `(("kwindowsystem" ,kwindowsystem)
112 ("liblxqt" ,liblxqt)
113 ("libqtxdg" ,libqtxdg)
114 ("qtbase" ,qtbase)
115 ("qttools" ,qttools)
116 ("qtx11extras" ,qtx11extras)))
117 (arguments
118 `(#:tests? #f ; no check target
119 #:phases
120 (modify-phases %standard-phases
121 (add-before 'configure 'fix-installation-paths
122 (lambda _
123 ;; The variable LXQT_TRANSLATIONS_DIR is set in
124 ;; liblxqt-0.9.0/share/cmake/lxqt/lxqt-config.cmake
125 ;; to the liblxqt installation directory, followed by
126 ;; "/share/lxqt/translations".
127 ;; We need to have it point to the current installation
128 ;; directory instead.
129 (substitute* '("lxqt-session/CMakeLists.txt"
130 "lxqt-config-session/CMakeLists.txt")
131 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
132 "${CMAKE_INSTALL_PREFIX}/share/lxqt/translations")))))))
133 (home-page "http://lxqt.org/")
134 (synopsis "Session manager for LXQt")
135 (description "lxqt-session provides the standard session manager
136 for the LXQt desktop environment.")
137 (license lgpl2.1+)))
138
139 (define-public lxqt-build-tools
140 (package
141 (name "lxqt-build-tools")
142 (version "0.5.0")
143 (source
144 (origin
145 (method url-fetch)
146 (uri (string-append "https://github.com/lxde/lxqt-build-tools/releases/"
147 "download/" version "/" name "-" version ".tar.xz"))
148 (file-name (string-append name "-" version ".tar.xz"))
149 (sha256
150 (base32
151 "13b5x26p6ycnwzlgg1cgvlc88wjrjmlb3snrrmzh0xgh9h6hhvd6"))))
152 (build-system cmake-build-system)
153 (arguments
154 `(#:tests? #f)) ; no tests
155 (native-inputs
156 `(("pkg-config" ,pkg-config)
157 ("glib" ,glib)))
158 (inputs
159 `(("qtbase" ,qtbase)))
160 (synopsis "LXQt Build tools")
161 (description
162 "Lxqt-build-tools is providing several tools needed to build LXQt
163 itself as well as other components maintained by the LXQt project.")
164 (home-page "http://lxqt.org")
165 (license lgpl2.1+)))