gnu: matcha-theme: Update to 2021-01-01.
[jackhill/guix/guix.git] / gnu / packages / gnome-xyz.scm
CommitLineData
b26a239c 1;;; GNU Guix --- Functional package management for GNU
7e6bbd8b 2;;; Copyright © 2019, 2020 Leo Prikler <leo.prikler@student.tugraz.at>
ec574bb3 3;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
72332f3c 4;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
fb18f32e 5;;; Copyright © 2020 Alex Griffin <a@ajgrf.com>
60d5ad80 6;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
f43e7462 7;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
e7c79125 8;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
991a5710 9;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
8d7efc7a 10;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
fdfc1c81 11;;; Copyright © 2020 Ellis Kenyo <me@elken.dev>
b26a239c
LP
12;;;
13;;; This file is part of GNU Guix.
14;;;
15;;; GNU Guix is free software; you can redistribute it and/or modify it
16;;; under the terms of the GNU General Public License as published by
17;;; the Free Software Foundation; either version 3 of the License, or (at
18;;; your option) any later version.
19;;;
20;;; GNU Guix is distributed in the hope that it will be useful, but
21;;; WITHOUT ANY WARRANTY; without even the implied warranty of
22;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23;;; GNU General Public License for more details.
24;;;
25;;; You should have received a copy of the GNU General Public License
26;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
27
28(define-module (gnu packages gnome-xyz)
29 #:use-module (guix build-system trivial)
30 #:use-module (guix build-system gnu)
fb18f32e 31 #:use-module (guix build-system copy)
fdd48135 32 #:use-module (guix build-system meson)
b26a239c
LP
33 #:use-module (guix git-download)
34 #:use-module (guix packages)
35 #:use-module ((guix licenses) #:prefix license:)
ec574bb3
AT
36 #:use-module (gnu packages base)
37 #:use-module (gnu packages bash)
fdd48135 38 #:use-module (gnu packages gettext)
b26a239c 39 #:use-module (gnu packages glib)
72332f3c 40 #:use-module (gnu packages gnome)
ec574bb3 41 #:use-module (gnu packages gtk)
72332f3c 42 #:use-module (gnu packages pkg-config)
fdd48135
AG
43 #:use-module (gnu packages python-xyz)
44 #:use-module (gnu packages ssh)
45 #:use-module (gnu packages tls)
72332f3c 46 #:use-module (gnu packages ruby)
f43e7462 47 #:use-module (gnu packages web)
72332f3c 48 #:use-module (gnu packages xml))
b26a239c 49
ec574bb3
AT
50(define-public matcha-theme
51 (package
52 (name "matcha-theme")
51d3c845 53 (version "2021-01-01")
ec574bb3
AT
54 (source
55 (origin
56 (method git-fetch)
57 (uri
58 (git-reference
b050e205 59 (url "https://github.com/vinceliuice/Matcha-gtk-theme")
ec574bb3
AT
60 (commit version)))
61 (file-name (git-file-name name version))
62 (sha256
63 (base32
51d3c845 64 "1pa6ra87wlq0gwz4n03l6xv0pxiamr5dygycvppms8v6xyc2aa0r"))))
ec574bb3
AT
65 (build-system trivial-build-system)
66 (arguments
67 '(#:modules ((guix build utils))
68 #:builder
69 (begin
70 (use-modules (guix build utils))
71 (let* ((out (assoc-ref %outputs "out"))
72 (source (assoc-ref %build-inputs "source"))
73 (bash (assoc-ref %build-inputs "bash"))
74 (coreutils (assoc-ref %build-inputs "coreutils"))
75 (themesdir (string-append out "/share/themes")))
76 (setenv "PATH"
77 (string-append coreutils "/bin:"
78 (string-append bash "/bin:")))
79 (copy-recursively source (getcwd))
b050e205 80 (patch-shebang "install.sh")
ec574bb3 81 (mkdir-p themesdir)
b050e205 82 (invoke "./install.sh" "-d" themesdir)
ec574bb3
AT
83 #t))))
84 (inputs
85 `(("gtk-engines" ,gtk-engines)))
86 (native-inputs
87 `(("bash" ,bash)
88 ("coreutils" ,coreutils)))
89 (synopsis "Flat design theme for GTK 3, GTK 2 and GNOME-Shell")
90 (description "Matcha is a flat Design theme for GTK 3, GTK 2 and
91Gnome-Shell which supports GTK 3 and GTK 2 based desktop environments
92like Gnome, Unity, Budgie, Pantheon, XFCE, Mate and others.")
93 (home-page "https://github.com/vinceliuice/matcha")
94 (license license:gpl3+)))
95
b26a239c
LP
96(define-public delft-icon-theme
97 (package
98 (name "delft-icon-theme")
999279f0 99 (version "1.14")
b26a239c
LP
100 (source
101 (origin
102 (method git-fetch)
103 (uri (git-reference
b0e7b699 104 (url "https://github.com/madmaxms/iconpack-delft")
b26a239c
LP
105 (commit (string-append "v" version))))
106 (sha256
107 (base32
999279f0 108 "1iw85cxx9lv7irs28qi3815dk9f9vldv2j7jf1x5l1dqzwaxgwpb"))
b26a239c 109 (file-name (git-file-name name version))))
3282137d 110 (build-system copy-build-system)
b26a239c 111 (arguments
3282137d
LP
112 `(#:install-plan
113 `(("." "share/icons" #:exclude ("README.md" "LICENSE" "logo.jpg")))
114 #:phases
115 (modify-phases %standard-phases
116 (add-after 'unpack 'patch-index.theme
117 (lambda _
118 (substitute* "Delft/index.theme"
119 (("gnome") "Adwaita"))
120 #t)))))
b26a239c
LP
121 (home-page "https://www.gnome-look.org/p/1199881/")
122 (synopsis "Continuation of Faenza icon theme with up to date app icons")
123 (description "Delft is a fork of the popular icon theme Faenza with up to
124date app icons. It will stay optically close to the original Faenza icons,
125which haven't been updated for some years. The new app icons are ported from
126the Obsidian icon theme.")
127 (license license:gpl3)))
0f0bffc4 128
e3d80f3c
GL
129(define-public gnome-shell-extension-appindicator
130 (package
131 (name "gnome-shell-extension-appindicator")
19b7d41d 132 (version "33")
e3d80f3c
GL
133 (source (origin
134 (method git-fetch)
135 (uri (git-reference
136 (url
8ed4c468 137 "https://github.com/ubuntu/gnome-shell-extension-appindicator")
e3d80f3c
GL
138 (commit (string-append "v" version))))
139 (sha256
140 (base32
19b7d41d 141 "0qm77s080nbf4gqnfzpwp8a7jf7lliz6fxbsd3lasvrr11pgsk87"))
e3d80f3c 142 (file-name (git-file-name name version))))
f6a151cd 143 (build-system copy-build-system)
e3d80f3c 144 (arguments
f6a151cd
LP
145 `(#:install-plan
146 '(("." ,(string-append "share/gnome-shell/extensions/"
147 "appindicatorsupport@rgcjonas.gmail.com")))))
e3d80f3c
GL
148 (synopsis "Adds KStatusNotifierItem support to GNOME Shell")
149 (description "This extension integrates Ubuntu AppIndicators
150and KStatusNotifierItems (KDE's successor of the systray) into
151GNOME Shell.")
152 (home-page "https://github.com/ubuntu/gnome-shell-extension-appindicator/")
153 (license license:gpl2+)))
154
0e741a89
JH
155(define-public gnome-shell-extension-clipboard-indicator
156 (package
157 (name "gnome-shell-extension-clipboard-indicator")
158 (version "34")
159 (source (origin
160 (method git-fetch)
161 (uri (git-reference
162 (url (string-append "https://github.com/Tudmotu/"
163 "gnome-shell-extension-clipboard-indicator.git"))
164 (commit (string-append "v" version))))
165 (file-name (git-file-name name version))
166 (sha256
167 (base32
168 "0i00psc1ky70zljd14jzr627y7nd8xwnwrh4xpajl1f6djabh12s"))
169 (modules '((guix build utils)))
170 (snippet
171 ;; Remove pre-compiled settings schemas and translations from
172 ;; source, as they are generated as part of build. Upstream
173 ;; includes them for people who want to run the software
174 ;; directly from source tree.
175 '(begin (delete-file "schemas/gschemas.compiled")
176 (for-each delete-file (find-files "locale" "\\.mo$"))
177 #t))))
178 (build-system copy-build-system)
179 (arguments
180 '(#:install-plan
181 '(("." "share/gnome-shell/extensions/clipboard-indicator@tudmotu.com"
182 #:include-regexp ("\\.css$" "\\.compiled$" "\\.js(on)?$" "\\.mo$" "\\.xml$")))
183 #:phases
184 (modify-phases %standard-phases
185 (add-before 'install 'compile-schemas
186 (lambda _
187 (with-directory-excursion "schemas"
188 (invoke "glib-compile-schemas" "."))
189 #t))
190 (add-before 'install 'compile-locales
191 (lambda _ (invoke "./compile-locales.sh")
192 #t)))))
193 (native-inputs
194 `(("gettext" ,gettext-minimal)
195 ("glib:bin" ,glib "bin"))) ; for glib-compile-schemas
196 (home-page "https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator")
197 (synopsis "Clipboard manager extension for GNOME Shell")
198 (description "Clipboard Indicator is a clipboard manager for GNOME Shell
199that caches clipboard history.")
200 (license license:expat)))
201
e7c79125
EZ
202(define-public gnome-shell-extension-topicons-redux
203 (package
204 (name "gnome-shell-extension-topicons-redux")
205 (version "6")
206 (source
207 (origin
208 (method git-fetch)
209 (uri (git-reference
210 (url "https://gitlab.com/pop-planet/TopIcons-Redux.git")
211 (commit version)))
212 (file-name (git-file-name name version))
213 (sha256
214 (base32 "1dli9xb545n3xlj6q4wl0y5gzkm903zs47p8fiq71pdvbr6v38rj"))))
215 (build-system gnu-build-system)
216 (native-inputs
217 `(("glib" ,glib "bin")))
218 (arguments
219 `(#:tests? #f ;no test defined in the project
220 #:phases
221 (modify-phases %standard-phases
222 (delete 'configure)
223 (delete 'build)
224 (replace 'install
225 (lambda* (#:key outputs #:allow-other-keys)
226 (let ((out (assoc-ref outputs "out")))
227 (invoke "make"
228 "install"
229 (string-append
230 "INSTALL_PATH="
231 out
232 "/share/gnome-shell/extensions"))))))))
233 (home-page "https://gitlab.com/pop-planet/TopIcons-Redux")
234 (synopsis "Display legacy tray icons in the GNOME Shell top panel")
235 (description "Many applications, such as chat clients, downloaders, and
236some media players, are meant to run long-term in the background even after you
237close their window. These applications remain accessible by adding an icon to
238the GNOME Shell Legacy Tray. However, the Legacy Tray was removed in GNOME
2393.26. TopIcons Redux brings those icons back into the top panel so that it's
7230f6d5 240easier to keep track of applications running in the background.")
e7c79125
EZ
241 (license license:gpl2+)))
242
0f0bffc4
LP
243(define-public gnome-shell-extension-dash-to-dock
244 (package
245 (name "gnome-shell-extension-dash-to-dock")
7e6bbd8b 246 (version "67")
0f0bffc4
LP
247 (source (origin
248 (method git-fetch)
249 (uri (git-reference
b0e7b699 250 (url "https://github.com/micheleg/dash-to-dock")
0f0bffc4
LP
251 (commit (string-append "extensions.gnome.org-v"
252 version))))
253 (sha256
254 (base32
7e6bbd8b 255 "1746xm0iyvyzj6m3pvjx11smh9w1s7naz426ki0dlr5l7jh3mpy5"))
0f0bffc4
LP
256 (file-name (git-file-name name version))))
257 (build-system gnu-build-system)
258 (arguments
259 '(#:tests? #f
260 #:make-flags (list (string-append "INSTALLBASE="
261 (assoc-ref %outputs "out")
262 "/share/gnome-shell/extensions"))
263 #:phases
264 (modify-phases %standard-phases
265 (delete 'bootstrap)
266 (delete 'configure))))
267 (native-inputs
1f3902ec
LP
268 `(("glib:bin" ,glib "bin")
269 ("intltool" ,intltool)
0f0bffc4
LP
270 ("pkg-config" ,pkg-config)))
271 (propagated-inputs
1f3902ec 272 `(("glib" ,glib)))
0f0bffc4
LP
273 (synopsis "Transforms GNOME's dash into a dock")
274 (description "This extension moves the dash out of the
275overview, transforming it into a dock for easier application launching and
276faster window switching.")
277 (home-page "https://micheleg.github.io/dash-to-dock/")
278 (license license:gpl2+)))
34bcfae2 279
fdd48135
AG
280(define-public gnome-shell-extension-gsconnect
281 (package
282 (name "gnome-shell-extension-gsconnect")
a1f84aca
AG
283 ;; v33 is the last version to support GNOME 3.34
284 (version "33")
fdd48135
AG
285 (source (origin
286 (method git-fetch)
287 (uri (git-reference
288 (url (string-append "https://github.com/andyholmes"
289 "/gnome-shell-extension-gsconnect.git"))
290 (commit (string-append "v" version))))
291 (file-name (git-file-name name version))
292 (sha256
293 (base32
a1f84aca 294 "1q03axhn75i864vgmd6myhmgwrmnpf01gsd1wl0di5x9q8mic2zn"))))
fdd48135
AG
295 (build-system meson-build-system)
296 (arguments
297 `(#:configure-flags
298 (let* ((out (assoc-ref %outputs "out"))
299 (name+version (strip-store-file-name out))
300 (gschema-dir (string-append out
301 "/share/gsettings-schemas/"
302 name+version
303 "/glib-2.0/schemas"))
304 (gnome-shell (assoc-ref %build-inputs "gnome-shell"))
305 (openssh (assoc-ref %build-inputs "openssh"))
306 (openssl (assoc-ref %build-inputs "openssl")))
307 (list
308 (string-append "-Dgnome_shell_libdir=" gnome-shell "/lib")
309 (string-append "-Dgsettings_schemadir=" gschema-dir)
310 (string-append "-Dopenssl_path=" openssl "/bin/openssl")
311 (string-append "-Dsshadd_path=" openssh "/bin/ssh-add")
312 (string-append "-Dsshkeygen_path=" openssh "/bin/ssh-keygen")
313 (string-append "-Dsession_bus_services_dir=" out "/share/dbus-1/services")
314 "-Dpost_install=true"))
315 #:phases
316 (modify-phases %standard-phases
317 (add-before 'configure 'fix-paths
318 (lambda* (#:key inputs #:allow-other-keys)
319 (let* ((glib (assoc-ref inputs "glib:bin"))
320 (gapplication (string-append glib "/bin/gapplication"))
321 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
322 (substitute* "data/org.gnome.Shell.Extensions.GSConnect.desktop"
323 (("gapplication") gapplication))
324 (for-each
325 (lambda (file)
326 (substitute* file
327 (("'use strict';")
328 (string-append "'use strict';\n\n"
329 "'" gi-typelib-path "'.split(':').forEach("
330 "path => imports.gi.GIRepository.Repository."
331 "prepend_search_path(path));"))))
332 '("src/extension.js" "src/prefs.js"))
333 #t)))
334 (add-after 'install 'wrap-daemons
335 (lambda* (#:key inputs outputs #:allow-other-keys)
336 (let* ((out (assoc-ref outputs "out"))
337 (service-dir
338 (string-append out "/share/gnome-shell/extensions"
339 "/gsconnect@andyholmes.github.io/service"))
340 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
341 (wrap-program (string-append service-dir "/daemon.js")
342 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
343 #t))))))
344 (inputs
345 `(("at-spi2-core" ,at-spi2-core)
346 ("caribou" ,caribou)
347 ("evolution-data-server" ,evolution-data-server)
fdd48135
AG
348 ("gjs" ,gjs)
349 ("glib" ,glib)
350 ("glib:bin" ,glib "bin")
351 ("gsound" ,gsound)
352 ("gnome-shell" ,gnome-shell)
353 ("gtk+" ,gtk+)
354 ("nautilus" ,nautilus)
355 ("openssh" ,openssh)
356 ("openssl" ,openssl)
357 ("python-nautilus" ,python-nautilus)
358 ("python-pygobject" ,python-pygobject)
359 ("upower" ,upower)))
360 (native-inputs
361 `(("gettext" ,gettext-minimal)
362 ("gobject-introspection" ,gobject-introspection)
363 ("libxml2" ,libxml2)
364 ("pkg-config" ,pkg-config)))
365 (home-page "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki")
366 (synopsis "Connect GNOME Shell with your Android phone")
367 (description "GSConnect is a complete implementation of KDE Connect
368especially for GNOME Shell, allowing devices to securely share content, like
369notifications or files, and other features like SMS messaging and remote
370control.")
371 (license license:gpl2)))
372
5be0ff33
LP
373(define-public gnome-shell-extension-hide-app-icon
374 (let ((commit "4188aa5f4ba24901a053a0c3eb0d83baa8625eab")
375 (revision "0"))
376 (package
377 (name "gnome-shell-extension-hide-app-icon")
378 (version (git-version "2.7" revision commit))
379 (source
d17eb101
LP
380 (origin
381 (method git-fetch)
382 (uri (git-reference
383 (url (string-append "https://github.com/michael-rapp"
384 "/gnome-shell-extension-hide-app-icon.git"))
385 (commit commit)))
386 (sha256
387 (base32
388 "1i28n4bz6wrhn07vpxkr6l1ljyn7g8frp5xrr11z3z32h2hxxcd6"))
389 (file-name (git-file-name name version))))
5be0ff33
LP
390 (build-system gnu-build-system)
391 (arguments
392 '(#:tests? #f ; no test target
393 #:make-flags (list (string-append "EXTENSIONS_DIR="
394 (assoc-ref %outputs "out")
395 "/share/gnome-shell/extensions"))
396 #:phases
397 (modify-phases %standard-phases
398 (delete 'configure) ; no configure script
399 (replace 'install
400 (lambda* (#:key outputs #:allow-other-keys)
d17eb101
LP
401 (let ((out (assoc-ref outputs "out"))
402 (pre "/share/gnome-shell/extensions/")
403 (dir "hide-app-icon@mrapp.sourceforge.com"))
404 (copy-recursively dir (string-append out pre dir))
405 #t))))))
5be0ff33
LP
406 (native-inputs
407 `(("glib" ,glib "bin")
408 ("intltool" ,intltool)))
409 (propagated-inputs
410 `(("glib" ,glib)))
411 (synopsis "Hide app icon from GNOME's panel")
309aaea5 412 (description "This extension hides the icon and/or title of the
5be0ff33 413currently focused application in the top panel of the GNOME shell.")
d17eb101
LP
414 (home-page
415 "https://github.com/michael-rapp/gnome-shell-extension-hide-app-icon/")
5be0ff33 416 (license
d17eb101
LP
417 ;; README.md and LICENSE.txt disagree -- the former claims v3, the
418 ;; latter v2. No mention of "or later" in either place or in the code.
5be0ff33
LP
419 (list license:gpl2
420 license:gpl3)))))
421
8a02ae7f
GL
422(define-public gnome-shell-extension-dash-to-panel
423 (package
424 (name "gnome-shell-extension-dash-to-panel")
ee3be810 425 (version "38")
8a02ae7f
GL
426 (source (origin
427 (method git-fetch)
428 (uri (git-reference
b0e7b699 429 (url "https://github.com/home-sweet-gnome/dash-to-panel")
8a02ae7f
GL
430 (commit (string-append "v" version))))
431 (sha256
432 (base32
ee3be810 433 "1kvybb49l1vf0fvh8d0c6xkwnry8m330scamf5x40y63d4i213j1"))
8a02ae7f
GL
434 (file-name (git-file-name name version))))
435 (build-system gnu-build-system)
436 (arguments
437 `(#:tests? #f
438 #:make-flags (list (string-append "INSTALLBASE="
439 (assoc-ref %outputs "out")
440 "/share/gnome-shell/extensions")
441 (string-append "VERSION="
442 ,(package-version
443 gnome-shell-extension-dash-to-panel)))
444 #:phases
445 (modify-phases %standard-phases
446 (delete 'bootstrap)
447 (delete 'configure))))
448 (native-inputs
449 `(("intltool" ,intltool)
450 ("pkg-config" ,pkg-config)))
451 (propagated-inputs
452 `(("glib" ,glib)
453 ("glib" ,glib "bin")))
454 (synopsis "Icon taskbar for GNOME Shell")
455 (description "This extension moves the dash into the gnome main
456panel so that the application launchers and system tray are combined
457into a single panel, similar to that found in KDE Plasma and Windows 7+.")
458 (home-page "https://github.com/home-sweet-gnome/dash-to-panel/")
459 (license license:gpl2+)))
460
34bcfae2
LP
461(define-public gnome-shell-extension-noannoyance
462 (package
463 (name "gnome-shell-extension-noannoyance")
464 (version "5")
465 (source (origin
466 (method git-fetch)
467 (uri (git-reference
b0e7b699 468 (url "https://github.com/BjoernDaase/noannoyance")
34bcfae2
LP
469 (commit "e37b5b3c31f577b4698bc6659bc9fec5ea9ac5d4")))
470 (sha256
471 (base32
472 "0fa8l3xlh8kbq07y4385wpb908zm6x53z81q16xlmin97dln32hh"))
473 (file-name (git-file-name name version))))
c456d18b 474 (build-system copy-build-system)
34bcfae2 475 (arguments
c456d18b
LP
476 '(#:install-plan
477 '(("." "share/gnome-shell/extensions/noannoyance@daase.net"))))
e10587c5
PN
478 (synopsis "Remove 'Window is ready' annotation")
479 (description "One of the many extensions that remove this message.
34bcfae2
LP
480It uses ES6 syntax and claims to be more actively maintained than others.")
481 (home-page "https://extensions.gnome.org/extension/2182/noannoyance/")
482 (license license:gpl2)))
72332f3c 483
fb18f32e
AG
484(define-public gnome-shell-extension-paperwm
485 (package
486 (name "gnome-shell-extension-paperwm")
9720894c 487 (version "36.0")
fb18f32e
AG
488 (source (origin
489 (method git-fetch)
490 (uri (git-reference
b0e7b699 491 (url "https://github.com/paperwm/PaperWM")
fb18f32e
AG
492 (commit version)))
493 (file-name (git-file-name name version))
494 (sha256
495 (base32
9720894c 496 "1ssnabwxrns36c61ppspjkr9i3qifv08pf2jpwl7cjv3pvyn4kly"))
60d5ad80
JH
497 (snippet
498 '(begin (delete-file "schemas/gschemas.compiled")))))
fb18f32e
AG
499 (build-system copy-build-system)
500 (arguments
501 '(#:install-plan
502 '(("." "share/gnome-shell/extensions/paperwm@hedning:matrix.org"
fd621674
JH
503 #:include-regexp ("\\.js(on)?$" "\\.css$" "\\.ui$" "\\.png$"
504 "\\.xml$" "\\.compiled$")))
60d5ad80
JH
505 #:phases
506 (modify-phases %standard-phases
507 (add-before 'install 'compile-schemas
508 (lambda _
509 (with-directory-excursion "schemas"
510 (invoke "make"))
511 #t)))))
512 (native-inputs
513 `(("glib:bin" ,glib "bin"))) ; for glib-compile-schemas
fb18f32e
AG
514 (home-page "https://github.com/paperwm/PaperWM")
515 (synopsis "Tiled scrollable window management for GNOME Shell")
516 (description "PaperWM is an experimental GNOME Shell extension providing
517scrollable tiling of windows and per monitor workspaces. It's inspired by paper
518notebooks and tiling window managers.")
519 (license license:gpl3)))
520
f43e7462
KK
521(define-public greybird-gtk-theme
522 (package
523 (name "greybird-gtk-theme")
524 (version "3.22.12")
525 (source (origin
526 (method git-fetch)
527 (uri
528 (git-reference
529 (url "https://github.com/shimmerproject/Greybird")
530 (commit (string-append "v" version))))
531 (file-name (git-file-name name version))
532 (sha256
533 (base32
534 "1j66ddvl3pmwh2v8ajm8r5g5nbsr7r262ff1qn2nf3i0gy8b3lq8"))))
535 (build-system meson-build-system)
536 (native-inputs
537 `(("gtk+" ,gtk+)
538 ("glib:bin" ,glib "bin") ; for "glib-compile-resources"
539 ("librsvg" ,librsvg)
540 ("pkg-config" ,pkg-config)
541 ("ruby-sass" ,ruby-sass)
542 ("sassc" ,sassc)))
543 (home-page "https://shimmerproject.org/")
544 (synopsis "Grey GTK+ theme based on Bluebird")
545 (description "Greybird is a grey derivative of the Bluebird theme by the
546Shimmer Project. It supports GNOME, Unity, and Xfce.")
547 (license (list license:gpl2+ license:cc-by-sa3.0))))
548
ec5a3021 549(define-public numix-gtk-theme
72332f3c 550 (package
ec5a3021 551 (name "numix-gtk-theme")
72332f3c
GL
552 (version "2.6.7")
553 (source (origin
554 (method git-fetch)
555 (uri (git-reference
b0e7b699 556 (url "https://github.com/numixproject/numix-gtk-theme")
72332f3c
GL
557 (commit version)))
558 (file-name (git-file-name name version))
559 (sha256
560 (base32
561 "12mw0kr0kkvg395qlbsvkvaqccr90cmxw5rrsl236zh43kj8grb7"))))
562 (build-system gnu-build-system)
563 (arguments
a457c55a
TGR
564 '(#:make-flags
565 (list (string-append "INSTALL_DIR="
566 (assoc-ref %outputs "out")
567 "/share/themes/Numix"))
991a5710 568 #:tests? #f
72332f3c
GL
569 #:phases
570 (modify-phases %standard-phases
991a5710 571 (delete 'configure)))) ; no configure script
72332f3c
GL
572 (native-inputs
573 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas
574 ("gnome-shell" ,gnome-shell)
575 ("gtk+" ,gtk+)
576 ("xmllint" ,libxml2)
577 ("ruby-sass" ,ruby-sass)))
578 (synopsis "Flat theme with light and dark elements")
579 (description "Numix is a modern flat theme with a combination of light and
580dark elements. It supports GNOME, Unity, Xfce, and Openbox.")
581 (home-page "https://numixproject.github.io")
582 (license license:gpl3+)))
099ce5d4 583
ec5a3021
TGR
584(define-public numix-theme
585 (deprecated-package "numix-theme" numix-gtk-theme))
586
099ce5d4
GL
587(define-public papirus-icon-theme
588 (let ((version "0.0.0") ;; The package does not use semver
e7a7a483
GL
589 (revision "2")
590 (tag "20200602"))
099ce5d4
GL
591 (package
592 (name "papirus-icon-theme")
593 (version (git-version version revision tag))
594 (source
595 (origin
596 (method git-fetch)
597 (uri (git-reference
b0e7b699 598 (url "https://github.com/PapirusDevelopmentTeam/papirus-icon-theme")
099ce5d4
GL
599 (commit tag)))
600 (sha256
601 (base32
e7a7a483 602 "0yv19kl8jr2jmh9018b1qmnq68alw84vrmb35jm462qd3qzzdgah"))
099ce5d4
GL
603 (file-name (git-file-name name version))))
604 (build-system gnu-build-system)
605 (arguments
606 '(#:tests? #f
607 #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
608 #:phases
609 (modify-phases %standard-phases
610 (delete 'bootstrap)
611 (delete 'configure)
612 (delete 'build))))
613 (native-inputs
614 `(("gtk+:bin" ,gtk+ "bin")))
615 (home-page "https://git.io/papirus-icon-theme")
616 (synopsis "Fork of Paper icon theme with a lot of new icons and a few extras")
617 (description "Papirus is a fork of the icon theme Paper with a lot of new icons
618and a few extra features.")
619 (license license:gpl3))))
8d7efc7a
RP
620
621(define-public vala-language-server
622 (package
623 (name "vala-language-server")
624 ;; Note to maintainer: VLS must be built with a Vala toolchain the same
625 ;; version or newer. Therefore when you update this package you may need
626 ;; to update Vala too.
f7b1b22e 627 (version "0.48.1")
8d7efc7a
RP
628 (source (origin
629 (method git-fetch)
630 (uri (git-reference
b0e7b699 631 (url "https://github.com/benwaffle/vala-language-server")
8d7efc7a
RP
632 (commit version)))
633 (file-name (git-file-name name version))
634 (sha256
f7b1b22e 635 (base32 "12k095052jkvbiyz8gzkj6w7r7p16d5m18fyikl48yvh5nln8fw0"))))
8d7efc7a
RP
636 (build-system meson-build-system)
637 (arguments '(#:glib-or-gtk? #t))
638 (inputs
639 `(("glib" ,glib)
640 ("json-glib" ,json-glib)
641 ("jsonrpc-glib" ,jsonrpc-glib)
642 ("libgee" ,libgee)
d1d69543 643 ("vala" ,vala-0.50)))
8d7efc7a
RP
644 (native-inputs
645 `(("pkg-config" ,pkg-config)))
646 (home-page "https://github.com/benwaffle/vala-language-server")
647 (synopsis "Language server for Vala")
648 (description "The Vala language server is an implementation of the Vala
649language specification for the Language Server Protocol (LSP). This tool is
650used in text editing environments to provide a complete and integrated
651feature-set for programming Vala effectively.")
652 (license license:lgpl2.1+)))
fdfc1c81
EK
653
654(define-public nordic-theme
655 (let ((commit "07d764c5ebd5706e73d2e573f1a983e37b318915")
656 (revision "0"))
657 (package
658 (name "nordic-theme")
659 (version (git-version "1.9.0" revision commit))
660 (source
661 (origin
662 (method git-fetch)
663 (uri (git-reference
664 (url "https://github.com/EliverLara/Nordic")
665 (commit commit)))
666 (sha256
667 (base32
668 "0y2s9d6h1b195s6afp1gb5rb1plfslkpbw2brd30a9d66wfvsqk0"))
669 (file-name (git-file-name name version))))
670 (build-system copy-build-system)
671 (arguments
672 `(#:install-plan
673 `(("." "share/themes/nord"
674 #:exclude ("README.md" "LICENSE" "Art/" "package.json"
675 "package-lock.json" "Gulpfile.js")))))
676 (home-page "https://github.com/EliverLara/Nordic")
677 (synopsis "Dark Gtk3.20+ theme using the Nord color pallete")
678 (description "Nordic is a Gtk3.20+ theme created using the Nord color
679pallete.")
680 (license license:gpl3))))