gnu: gnome-shell-extension-dash-to-dock: Update to 67.
[jackhill/guix/guix.git] / gnu / packages / gnome-xyz.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at>
3 ;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
4 ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
5 ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
6 ;;;
7 ;;; This file is part of GNU Guix.
8 ;;;
9 ;;; GNU Guix is free software; you can redistribute it and/or modify it
10 ;;; under the terms of the GNU General Public License as published by
11 ;;; the Free Software Foundation; either version 3 of the License, or (at
12 ;;; your option) any later version.
13 ;;;
14 ;;; GNU Guix is distributed in the hope that it will be useful, but
15 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;;; GNU General Public License for more details.
18 ;;;
19 ;;; You should have received a copy of the GNU General Public License
20 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
21
22 (define-module (gnu packages gnome-xyz)
23 #:use-module (guix build-system trivial)
24 #:use-module (guix build-system gnu)
25 #:use-module (guix git-download)
26 #:use-module (guix packages)
27 #:use-module ((guix licenses) #:prefix license:)
28 #:use-module (gnu packages base)
29 #:use-module (gnu packages bash)
30 #:use-module (gnu packages glib)
31 #:use-module (gnu packages gnome)
32 #:use-module (gnu packages gtk)
33 #:use-module (gnu packages pkg-config)
34 #:use-module (gnu packages ruby)
35 #:use-module (gnu packages xml))
36
37 (define-public matcha-theme
38 (package
39 (name "matcha-theme")
40 (version "2019-11-02")
41 (source
42 (origin
43 (method git-fetch)
44 (uri
45 (git-reference
46 (url "https://github.com/vinceliuice/matcha")
47 (commit version)))
48 (file-name (git-file-name name version))
49 (sha256
50 (base32
51 "0wci9ahap8kynq8cbyxr7aba9ndb1d4kiq42xvzr34vw1rhcahrr"))))
52 (build-system trivial-build-system)
53 (arguments
54 '(#:modules ((guix build utils))
55 #:builder
56 (begin
57 (use-modules (guix build utils))
58 (let* ((out (assoc-ref %outputs "out"))
59 (source (assoc-ref %build-inputs "source"))
60 (bash (assoc-ref %build-inputs "bash"))
61 (coreutils (assoc-ref %build-inputs "coreutils"))
62 (themesdir (string-append out "/share/themes")))
63 (setenv "PATH"
64 (string-append coreutils "/bin:"
65 (string-append bash "/bin:")))
66 (copy-recursively source (getcwd))
67 (patch-shebang "Install")
68 (mkdir-p themesdir)
69 (invoke "./Install" "-d" themesdir)
70 #t))))
71 (inputs
72 `(("gtk-engines" ,gtk-engines)))
73 (native-inputs
74 `(("bash" ,bash)
75 ("coreutils" ,coreutils)))
76 (synopsis "Flat design theme for GTK 3, GTK 2 and GNOME-Shell")
77 (description "Matcha is a flat Design theme for GTK 3, GTK 2 and
78 Gnome-Shell which supports GTK 3 and GTK 2 based desktop environments
79 like Gnome, Unity, Budgie, Pantheon, XFCE, Mate and others.")
80 (home-page "https://github.com/vinceliuice/matcha")
81 (license license:gpl3+)))
82
83 (define-public delft-icon-theme
84 (package
85 (name "delft-icon-theme")
86 (version "1.10")
87 (source
88 (origin
89 (method git-fetch)
90 (uri (git-reference
91 (url "https://github.com/madmaxms/iconpack-delft.git")
92 (commit (string-append "v" version))))
93 (sha256
94 (base32
95 "0vw3yw9f9ygzfd2k3zrfih3r0vkzlhk1bmsk8sapvk7np24i1z9s"))
96 (file-name (git-file-name name version))))
97 (build-system trivial-build-system)
98 (arguments
99 `(#:modules ((guix build utils))
100 #:builder
101 (begin
102 (use-modules (guix build utils))
103 (copy-recursively (assoc-ref %build-inputs "source") "icons")
104 (substitute* "icons/Delft/index.theme"
105 (("gnome") "Adwaita"))
106 (delete-file "icons/README.md")
107 (delete-file "icons/LICENSE")
108 (delete-file "icons/logo.jpg")
109 (copy-recursively "icons" (string-append %output "/share/icons")))))
110 (home-page "https://www.gnome-look.org/p/1199881/")
111 (synopsis "Continuation of Faenza icon theme with up to date app icons")
112 (description "Delft is a fork of the popular icon theme Faenza with up to
113 date app icons. It will stay optically close to the original Faenza icons,
114 which haven't been updated for some years. The new app icons are ported from
115 the Obsidian icon theme.")
116 (license license:gpl3)))
117
118 (define-public gnome-shell-extension-dash-to-dock
119 (package
120 (name "gnome-shell-extension-dash-to-dock")
121 (version "67")
122 (source (origin
123 (method git-fetch)
124 (uri (git-reference
125 (url "https://github.com/micheleg/dash-to-dock.git")
126 (commit (string-append "extensions.gnome.org-v"
127 version))))
128 (sha256
129 (base32
130 "1746xm0iyvyzj6m3pvjx11smh9w1s7naz426ki0dlr5l7jh3mpy5"))
131 (file-name (git-file-name name version))))
132 (build-system gnu-build-system)
133 (arguments
134 '(#:tests? #f
135 #:make-flags (list (string-append "INSTALLBASE="
136 (assoc-ref %outputs "out")
137 "/share/gnome-shell/extensions"))
138 #:phases
139 (modify-phases %standard-phases
140 (delete 'bootstrap)
141 (delete 'configure))))
142 (native-inputs
143 `(("glib:bin" ,glib "bin")
144 ("intltool" ,intltool)
145 ("pkg-config" ,pkg-config)))
146 (propagated-inputs
147 `(("glib" ,glib)))
148 (synopsis "Transforms GNOME's dash into a dock")
149 (description "This extension moves the dash out of the
150 overview, transforming it into a dock for easier application launching and
151 faster window switching.")
152 (home-page "https://micheleg.github.io/dash-to-dock/")
153 (license license:gpl2+)))
154
155 (define-public gnome-shell-extension-hide-app-icon
156 (let ((commit "4188aa5f4ba24901a053a0c3eb0d83baa8625eab")
157 (revision "0"))
158 (package
159 (name "gnome-shell-extension-hide-app-icon")
160 (version (git-version "2.7" revision commit))
161 (source
162 (origin
163 (method git-fetch)
164 (uri (git-reference
165 (url (string-append "https://github.com/michael-rapp"
166 "/gnome-shell-extension-hide-app-icon.git"))
167 (commit commit)))
168 (sha256
169 (base32
170 "1i28n4bz6wrhn07vpxkr6l1ljyn7g8frp5xrr11z3z32h2hxxcd6"))
171 (file-name (git-file-name name version))))
172 (build-system gnu-build-system)
173 (arguments
174 '(#:tests? #f ; no test target
175 #:make-flags (list (string-append "EXTENSIONS_DIR="
176 (assoc-ref %outputs "out")
177 "/share/gnome-shell/extensions"))
178 #:phases
179 (modify-phases %standard-phases
180 (delete 'configure) ; no configure script
181 (replace 'install
182 (lambda* (#:key outputs #:allow-other-keys)
183 (let ((out (assoc-ref outputs "out"))
184 (pre "/share/gnome-shell/extensions/")
185 (dir "hide-app-icon@mrapp.sourceforge.com"))
186 (copy-recursively dir (string-append out pre dir))
187 #t))))))
188 (native-inputs
189 `(("glib" ,glib "bin")
190 ("intltool" ,intltool)))
191 (propagated-inputs
192 `(("glib" ,glib)))
193 (synopsis "Hide app icon from GNOME's panel")
194 (description "This extension allows to hide the icon and/or title of the
195 currently focused application in the top panel of the GNOME shell.")
196 (home-page
197 "https://github.com/michael-rapp/gnome-shell-extension-hide-app-icon/")
198 (license
199 ;; README.md and LICENSE.txt disagree -- the former claims v3, the
200 ;; latter v2. No mention of "or later" in either place or in the code.
201 (list license:gpl2
202 license:gpl3)))))
203
204 (define-public gnome-shell-extension-dash-to-panel
205 (package
206 (name "gnome-shell-extension-dash-to-panel")
207 (version "26")
208 (source (origin
209 (method git-fetch)
210 (uri (git-reference
211 (url "https://github.com/home-sweet-gnome/dash-to-panel.git")
212 (commit (string-append "v" version))))
213 (sha256
214 (base32
215 "1phfx2pblygpcvsppsqqqflm7qnz46mqkw29hj0nv2dn69hf4xbc"))
216 (file-name (git-file-name name version))))
217 (build-system gnu-build-system)
218 (arguments
219 `(#:tests? #f
220 #:make-flags (list (string-append "INSTALLBASE="
221 (assoc-ref %outputs "out")
222 "/share/gnome-shell/extensions")
223 (string-append "VERSION="
224 ,(package-version
225 gnome-shell-extension-dash-to-panel)))
226 #:phases
227 (modify-phases %standard-phases
228 (delete 'bootstrap)
229 (delete 'configure))))
230 (native-inputs
231 `(("intltool" ,intltool)
232 ("pkg-config" ,pkg-config)))
233 (propagated-inputs
234 `(("glib" ,glib)
235 ("glib" ,glib "bin")))
236 (synopsis "Icon taskbar for GNOME Shell")
237 (description "This extension moves the dash into the gnome main
238 panel so that the application launchers and system tray are combined
239 into a single panel, similar to that found in KDE Plasma and Windows 7+.")
240 (home-page "https://github.com/home-sweet-gnome/dash-to-panel/")
241 (license license:gpl2+)))
242
243 (define-public gnome-shell-extension-noannoyance
244 (package
245 (name "gnome-shell-extension-noannoyance")
246 (version "5")
247 (source (origin
248 (method git-fetch)
249 (uri (git-reference
250 (url "https://github.com/BjoernDaase/noannoyance.git")
251 (commit "e37b5b3c31f577b4698bc6659bc9fec5ea9ac5d4")))
252 (sha256
253 (base32
254 "0fa8l3xlh8kbq07y4385wpb908zm6x53z81q16xlmin97dln32hh"))
255 (file-name (git-file-name name version))))
256 (build-system trivial-build-system)
257 (arguments
258 '(#:modules ((guix build utils))
259 #:builder
260 (begin
261 (use-modules (guix build utils))
262 (let ((dst (string-append
263 (assoc-ref %outputs "out")
264 "/share/gnome-shell/extensions/"
265 "noannoyance@daase.net")))
266 (mkdir-p dst)
267 (copy-recursively (assoc-ref %build-inputs "source") dst)))))
268 (synopsis "Removes 'Window is ready' annotation")
269 (description "One of the many extensions, that remove this message.
270 It uses ES6 syntax and claims to be more actively maintained than others.")
271 (home-page "https://extensions.gnome.org/extension/2182/noannoyance/")
272 (license license:gpl2)))
273
274 (define-public numix-theme
275 (package
276 (name "numix-theme")
277 (version "2.6.7")
278 (source (origin
279 (method git-fetch)
280 (uri (git-reference
281 (url "https://github.com/numixproject/numix-gtk-theme.git")
282 (commit version)))
283 (file-name (git-file-name name version))
284 (sha256
285 (base32
286 "12mw0kr0kkvg395qlbsvkvaqccr90cmxw5rrsl236zh43kj8grb7"))))
287 (build-system gnu-build-system)
288 (arguments
289 '(#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
290 #:phases
291 (modify-phases %standard-phases
292 (delete 'configure)
293 (delete 'check))))
294 (native-inputs
295 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas
296 ("gnome-shell" ,gnome-shell)
297 ("gtk+" ,gtk+)
298 ("xmllint" ,libxml2)
299 ("ruby-sass" ,ruby-sass)))
300 (synopsis "Flat theme with light and dark elements")
301 (description "Numix is a modern flat theme with a combination of light and
302 dark elements. It supports GNOME, Unity, Xfce, and Openbox.")
303 (home-page "https://numixproject.github.io")
304 (license license:gpl3+)))
305
306 (define-public papirus-icon-theme
307 (let ((version "0.0.0") ;; The package does not use semver
308 (revision "0")
309 (tag "20191201"))
310 (package
311 (name "papirus-icon-theme")
312 (version (git-version version revision tag))
313 (source
314 (origin
315 (method git-fetch)
316 (uri (git-reference
317 (url "https://github.com/PapirusDevelopmentTeam/papirus-icon-theme.git")
318 (commit tag)))
319 (sha256
320 (base32
321 "0lnz1kmz28xh1f4slbsx7ycji5hgszyiyprbf5w5fbjhvi5gzw1h"))
322 (file-name (git-file-name name version))))
323 (build-system gnu-build-system)
324 (arguments
325 '(#:tests? #f
326 #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
327 #:phases
328 (modify-phases %standard-phases
329 (delete 'bootstrap)
330 (delete 'configure)
331 (delete 'build))))
332 (native-inputs
333 `(("gtk+:bin" ,gtk+ "bin")))
334 (home-page "https://git.io/papirus-icon-theme")
335 (synopsis "Fork of Paper icon theme with a lot of new icons and a few extras")
336 (description "Papirus is a fork of the icon theme Paper with a lot of new icons
337 and a few extra features.")
338 (license license:gpl3))))