gnu: Add gnome-shell-extension-noannoyance.
[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 ;;;
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 gnome-xyz)
20 #:use-module (guix build-system trivial)
21 #:use-module (guix build-system gnu)
22 #:use-module (guix git-download)
23 #:use-module (guix packages)
24 #:use-module ((guix licenses) #:prefix license:)
25
26 #:use-module (gnu packages glib)
27 #:use-module (gnu packages pkg-config))
28
29 (define-public delft-icon-theme
30 (package
31 (name "delft-icon-theme")
32 (version "1.10")
33 (source
34 (origin
35 (method git-fetch)
36 (uri (git-reference
37 (url "https://github.com/madmaxms/iconpack-delft.git")
38 (commit (string-append "v" version))))
39 (sha256
40 (base32
41 "0vw3yw9f9ygzfd2k3zrfih3r0vkzlhk1bmsk8sapvk7np24i1z9s"))
42 (file-name (git-file-name name version))))
43 (build-system trivial-build-system)
44 (arguments
45 `(#:modules ((guix build utils))
46 #:builder
47 (begin
48 (use-modules (guix build utils))
49 (copy-recursively (assoc-ref %build-inputs "source") "icons")
50 (delete-file "icons/README.md")
51 (delete-file "icons/LICENSE")
52 (delete-file "icons/logo.jpg")
53 (copy-recursively "icons" (string-append %output "/share/icons")))))
54 (home-page "https://www.gnome-look.org/p/1199881/")
55 (synopsis "Continuation of Faenza icon theme with up to date app icons")
56 (description "Delft is a fork of the popular icon theme Faenza with up to
57 date app icons. It will stay optically close to the original Faenza icons,
58 which haven't been updated for some years. The new app icons are ported from
59 the Obsidian icon theme.")
60 (license license:gpl3)))
61
62 (define-public gnome-shell-extension-dash-to-dock
63 (package
64 (name "gnome-shell-extension-dash-to-dock")
65 (version "65")
66 (source (origin
67 (method git-fetch)
68 (uri (git-reference
69 (url "https://github.com/micheleg/dash-to-dock.git")
70 (commit (string-append "extensions.gnome.org-v"
71 version))))
72 (sha256
73 (base32
74 "0ln49l9s0yfl30pi77pz7xlmh63l9vjppi863kry5lay10dsvz47"))
75 (file-name (git-file-name name version))))
76 (build-system gnu-build-system)
77 (arguments
78 '(#:tests? #f
79 #:make-flags (list (string-append "INSTALLBASE="
80 (assoc-ref %outputs "out")
81 "/share/gnome-shell/extensions"))
82 #:phases
83 (modify-phases %standard-phases
84 (delete 'bootstrap)
85 (delete 'configure))))
86 (native-inputs
87 `(("intltool" ,intltool)
88 ("pkg-config" ,pkg-config)))
89 (propagated-inputs
90 `(("glib" ,glib)
91 ("glib" ,glib "bin")))
92 (synopsis "Transforms GNOME's dash into a dock")
93 (description "This extension moves the dash out of the
94 overview, transforming it into a dock for easier application launching and
95 faster window switching.")
96 (home-page "https://micheleg.github.io/dash-to-dock/")
97 (license license:gpl2+)))
98
99 (define-public gnome-shell-extension-noannoyance
100 (package
101 (name "gnome-shell-extension-noannoyance")
102 (version "5")
103 (source (origin
104 (method git-fetch)
105 (uri (git-reference
106 (url "https://github.com/BjoernDaase/noannoyance.git")
107 (commit "e37b5b3c31f577b4698bc6659bc9fec5ea9ac5d4")))
108 (sha256
109 (base32
110 "0fa8l3xlh8kbq07y4385wpb908zm6x53z81q16xlmin97dln32hh"))
111 (file-name (git-file-name name version))))
112 (build-system trivial-build-system)
113 (arguments
114 '(#:modules ((guix build utils))
115 #:builder
116 (begin
117 (use-modules (guix build utils))
118 (let ((dst (string-append
119 (assoc-ref %outputs "out")
120 "/share/gnome-shell/extensions/"
121 "noannoyance@daase.net")))
122 (mkdir-p dst)
123 (copy-recursively (assoc-ref %build-inputs "source") dst)))))
124 (synopsis "Removes 'Window is ready' annotation")
125 (description "One of the many extensions, that remove this message.
126 It uses ES6 syntax and claims to be more actively maintained than others.")
127 (home-page "https://extensions.gnome.org/extension/2182/noannoyance/")
128 (license license:gpl2)))