gnu: Add granite.
[jackhill/guix/guix.git] / gnu / packages / pantheon.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
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 pantheon)
20 #:use-module (gnu packages gettext)
21 #:use-module (gnu packages glib)
22 #:use-module (gnu packages gnome)
23 #:use-module (gnu packages gtk)
24 #:use-module (gnu packages pkg-config)
25 #:use-module (gnu packages)
26 #:use-module (guix build-system meson)
27 #:use-module (guix git-download)
28 #:use-module ((guix licenses) :prefix license:)
29 #:use-module (guix packages)
30 #:use-module (guix utils))
31
32 (define-public granite
33 (package
34 (name "granite")
35 (version "5.4.0")
36 (source (origin
37 (method git-fetch)
38 (uri (git-reference
39 (url "https://github.com/elementary/granite.git")
40 (commit version)))
41 (file-name (git-file-name name version))
42 (sha256
43 (base32
44 "0acicv3f9gksb352v88lwap8ailjsxdrfknl2xql7blasbjzl2q0"))))
45 (build-system meson-build-system)
46 (arguments
47 `(#:phases
48 (modify-phases %standard-phases
49 (add-after 'unpack 'disable-icon-cache
50 (lambda _
51 (setenv "DESTDIR" "/")
52 #t)))))
53 (inputs
54 `(("gtk" ,gtk+)))
55 (native-inputs
56 `(("gettext" ,gettext-minimal)
57 ("glib" ,glib)
58 ("gobject-introspection" ,gobject-introspection)
59 ("libgee" ,libgee)
60 ("pkg-config" ,pkg-config)
61 ("vala" ,vala)))
62 (home-page "https://github.com/elementary/granite")
63 (synopsis "Library that extends GTK with common widgets and utilities")
64 (description "Granite is a companion library for GTK+ and GLib. Among other
65 things, it provides complex widgets and convenience functions designed for use
66 in apps built for the Pantheon desktop.")
67 (license license:lgpl3+)))