gnu: Add python-click-log.
[jackhill/guix/guix.git] / gnu / packages / lxqt.scm
CommitLineData
e5e06930
AE
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;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages lxqt)
21 #:use-module (guix download)
22 #:use-module ((guix licenses) #:select (lgpl2.1+))
23 #:use-module (guix packages)
24 #:use-module (guix utils)
25 #:use-module (guix build-system cmake)
44a477e1 26 #:use-module (gnu packages)
6bb5a8a1 27 #:use-module (gnu packages kde-frameworks)
e5e06930
AE
28 #:use-module (gnu packages pkg-config)
29 #:use-module (gnu packages qt))
30
31(define-public libqtxdg
32 (package
33 (name "libqtxdg")
6cef1b9b 34 (version "1.2.0")
e5e06930
AE
35 (source
36 (origin
37 (method url-fetch)
38 (uri
f8822418
AE
39 (string-append "http://downloads.lxqt.org/libqtxdg/" version "/"
40 name "-" version ".tar.xz"))
e5e06930
AE
41 (sha256
42 (base32
6cef1b9b 43 "1ncqs0lcll5nx69hxfg33m3jfkryjqrjhr2kdci0b8pyaqdv1jc8"))))
e5e06930
AE
44 (build-system cmake-build-system)
45 (arguments
6cef1b9b
AE
46 `(#:tests? #f ; test fails with message "Exception"
47 #:configure-flags '("-DBUILD_TESTS=ON")))
e5e06930
AE
48 (native-inputs
49 `(("pkg-config" ,pkg-config)))
50 (propagated-inputs
51 `(("qt" ,qt))) ; according to Qt5Xdg.pc
52 (home-page "https://github.com/lxde/libqtxdg")
53 (synopsis "Qt implementation of freedesktop.org xdg specifications")
54 (description "Libqtxdg implements the freedesktop.org xdg specifications
55in Qt.")
56 (license lgpl2.1+)))
6bb5a8a1
AE
57
58(define-public liblxqt
59 (package
60 (name "liblxqt")
61 (version "0.9.0")
62 (source
63 (origin
64 (method url-fetch)
65 (uri
250ffe4d
AE
66 (string-append "http://downloads.lxqt.org/lxqt/" version "/"
67 name "-" version ".tar.xz"))
44a477e1 68 (sha256
6bb5a8a1 69 (base32
c9f69380 70 "0ljdzqavvy82qwwwnhg2bgbshl2ns0k2lcswxlx1cfc8rcdr9w5l"))
44a477e1 71 (patches (map search-patch '("liblxqt-include.patch")))))
6bb5a8a1
AE
72 (build-system cmake-build-system)
73 (arguments
74 `(#:tests? #f))
75 (native-inputs `(("pkg-config" ,pkg-config)))
76 (inputs
77 `(("kwindowsystem" ,kwindowsystem)
78 ("libqtxdg" ,libqtxdg)))
79 (home-page "http://lxqt.org/")
80 (synopsis "Core utility library for all LXQt components")
81 (description "liblxqt provides the basic libraries shared by the
250ffe4d 82components of the LXQt desktop environment.")
6bb5a8a1 83 (license lgpl2.1+)))
cfa2e4ad
AE
84
85
86(define-public lxqt-common
87 (package
88 (name "lxqt-common")
89 (version "0.9.1")
90 (source
91 (origin
92 (method url-fetch)
93 (uri
94 (string-append "http://downloads.lxqt.org/lxqt/" version "/"
95 name "-" version ".tar.xz"))
96 (sha256
97 (base32
98 "0kbkwmrdjhfbq60wf2yfbsjmci8xlw13ilxxa7yxq68n1aqjqmvf"))))
99 (build-system cmake-build-system)
100 (arguments
101 `(#:tests? #f ; no check target
102 #:phases
103 (modify-phases %standard-phases
104 (add-before 'configure 'fix-installation-paths
105 (lambda _
106 ;; The variable LXQT_ETC_XDG_DIR is set in
107 ;; liblxqt-0.9.0/share/cmake/lxqt/lxqt-config.cmake
108 ;; to the Qt5 installation directory, followed by "/etc/xdg".
109 ;; We need to have it point to the current installation
110 ;; directory instead.
111 (substitute* '("config/CMakeLists.txt"
112 "menu/CMakeLists.txt")
113 (("\\$\\{LXQT_ETC_XDG_DIR\\}")
114 "${CMAKE_INSTALL_PREFIX}/etc/xdg")
115 ;; In the same file, LXQT_SHARE_DIR is set to the installation
116 ;; directory of liblxqt, followed by "/share/lxqt".
117 (("\\$\\{LXQT_SHARE_DIR\\}")
118 "${CMAKE_INSTALL_PREFIX}/share/lxqt"))
119 ;; Replace absolute directories.
120 (substitute* "autostart/CMakeLists.txt"
121 (("/etc/xdg")
122 "${CMAKE_INSTALL_PREFIX}/etc/xdg"))
123 (substitute* "xsession/CMakeLists.txt"
124 (("/usr/share")
125 "${CMAKE_INSTALL_PREFIX}/share")))))))
126 (inputs
127 `(("kwindowsystem" ,kwindowsystem)
128 ("liblxqt" ,liblxqt)
129 ("libqtxdg" ,libqtxdg)))
130 (home-page "http://lxqt.org/")
131 (synopsis "Common files for LXQt")
132 (description "lxqt-common provides the desktop integration files
133(themes, icons, configuration files etc.) for the LXQt
134desktop environment.")
135 (license lgpl2.1+)))
54033a4d
AE
136
137(define-public lxqt-session
138 (package
139 (name "lxqt-session")
140 (version "0.9.0")
141 (source
142 (origin
143 (method url-fetch)
144 (uri
145 (string-append "http://downloads.lxqt.org/lxqt/" version "/"
146 name "-" version ".tar.xz"))
147 (sha256
148 (base32
149 "01hxand1gqbcaw14lh7z6w5zssgfaffcjncv752c2c7272wzyhy5"))))
150 (build-system cmake-build-system)
151 (native-inputs
152 `(("pkg-config" ,pkg-config)))
153 (inputs
154 `(("kwindowsystem" ,kwindowsystem)
155 ("liblxqt" ,liblxqt)
156 ("libqtxdg" ,libqtxdg)))
157 (arguments
158 `(#:tests? #f ; no check target
159 #:phases
160 (modify-phases %standard-phases
161 (add-before 'configure 'fix-installation-paths
162 (lambda _
163 ;; The variable LXQT_TRANSLATIONS_DIR is set in
164 ;; liblxqt-0.9.0/share/cmake/lxqt/lxqt-config.cmake
165 ;; to the liblxqt installation directory, followed by
166 ;; "/share/lxqt/translations".
167 ;; We need to have it point to the current installation
168 ;; directory instead.
169 (substitute* '("lxqt-session/CMakeLists.txt"
170 "lxqt-config-session/CMakeLists.txt")
171 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
172 "${CMAKE_INSTALL_PREFIX}/share/lxqt/translations")))))))
173 (home-page "http://lxqt.org/")
174 (synopsis "Session manager for LXQt")
175 (description "lxqt-session provides the standard session manager
176for the LXQt desktop environment.")
177 (license lgpl2.1+)))