gnu: emacs-sly: Update to 20200228.
[jackhill/guix/guix.git] / gnu / packages / dunst.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015, 2017, 2018 Alex Kost <alezost@gmail.com>
3 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
4 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
5 ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
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 dunst)
23 #:use-module (guix packages)
24 #:use-module (guix git-download)
25 #:use-module (guix build-system gnu)
26 #:use-module ((guix licenses) #:prefix license:)
27 #:use-module (gnu packages base)
28 #:use-module (gnu packages freedesktop)
29 #:use-module (gnu packages glib)
30 #:use-module (gnu packages gnome)
31 #:use-module (gnu packages gtk)
32 #:use-module (gnu packages perl)
33 #:use-module (gnu packages pkg-config)
34 #:use-module (gnu packages xorg))
35
36 (define-public dunst
37 (package
38 (name "dunst")
39 (version "1.4.1")
40 (source (origin
41 (method git-fetch)
42 (uri (git-reference
43 (url "https://github.com/dunst-project/dunst")
44 (commit (string-append "v" version))))
45 (file-name (git-file-name name version))
46 (sha256
47 (base32
48 "0xjj1f2jr1ja5grj6wrx5jjz1sx5fpqnvkw7nqi4452j3nc4p4l2"))))
49 (build-system gnu-build-system)
50 (arguments
51 '(#:tests? #f ; no check target
52 #:make-flags (list "CC=gcc"
53 (string-append "PREFIX=" %output)
54 ;; Otherwise it tries to install service file
55 ;; to "dbus" store directory.
56 (string-append "SERVICEDIR_DBUS=" %output
57 "/share/dbus-1/services")
58 "dunstify")
59 #:phases (modify-phases %standard-phases
60 (delete 'configure)
61 (add-after 'install 'install-dunstify
62 (lambda* (#:key outputs #:allow-other-keys)
63 (let ((out (assoc-ref outputs "out")))
64 (install-file "dunstify"
65 (string-append out "/bin")))
66 #t)))))
67 (native-inputs
68 `(("pkg-config" ,pkg-config)
69 ("perl" ,perl) ; for pod2man
70 ("which" ,which)))
71 (inputs
72 `(("dbus" ,dbus)
73 ("gdk-pixbuf" ,gdk-pixbuf+svg) ; for svg support
74 ("glib" ,glib)
75 ("cairo" ,cairo)
76 ("pango" ,pango)
77 ("libnotify" ,libnotify) ; for dunstify
78 ("libx11" ,libx11)
79 ("libxscrnsaver" ,libxscrnsaver)
80 ("libxinerama" ,libxinerama)
81 ("libxrandr" ,libxrandr)
82 ("libxdg-basedir" ,libxdg-basedir)))
83 (home-page "https://dunst-project.org/")
84 (synopsis "Customizable and lightweight notification daemon")
85 (description
86 "Dunst is a highly configurable and minimalistic notification daemon.
87 It provides @code{org.freedesktop.Notifications} D-Bus service, so it is
88 started automatically on the first call via D-Bus.")
89 (license license:bsd-3)))