gnu: python-babel: Update to 2.7.0.
[guix.git] / gnu / packages / compton.scm
blobc5b4c4ef5f63dce92676e3b211c8462e712e96d4
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
3 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
20 (define-module (gnu packages compton)
21   #:use-module ((guix licenses) #:prefix license:)
22   #:use-module (guix packages)
23   #:use-module (guix git-download)
24   #:use-module (guix build-system gnu)
25   #:use-module (gnu packages docbook)
26   #:use-module (gnu packages documentation)
27   #:use-module (gnu packages gl)
28   #:use-module (gnu packages glib)
29   #:use-module (gnu packages pkg-config)
30   #:use-module (gnu packages python)
31   #:use-module (gnu packages textutils)
32   #:use-module (gnu packages xdisorg)
33   #:use-module (gnu packages xml)
34   #:use-module (gnu packages xorg))
36 (define-public compton
37   (let ((upstream-version "0.1_beta2"))
38     (package
39       (name "compton")
40       (version (string-filter (char-set-complement (char-set #\_))
41                               upstream-version))
42       (source
43        (origin
44          (method git-fetch)
45          (uri (git-reference
46                (url "https://github.com/chjj/compton.git")
47                (commit (string-append "v" upstream-version))))
48          (sha256
49           (base32
50            "0v65viilhnd2xgvmdpzc1srxszcg8kj1vhi5gy9292j48w0s2fx1"))
51          (file-name (git-file-name name version))))
52       (build-system gnu-build-system)
53       (inputs
54        `(("dbus" ,dbus)
55          ("libconfig" ,libconfig)
56          ("libx11" ,libx11)
57          ("libxcomposite" ,libxcomposite)
58          ("libxdamage" ,libxdamage)
59          ("libxext" ,libxext)
60          ("libxfixes" ,libxfixes)
61          ("libxinerama" ,libxinerama)
62          ("libxrandr" ,libxrandr)
63          ("libxrender" ,libxrender)
64          ("mesa" ,mesa)
65          ("xprop" ,xprop)
66          ("xwininfo" ,xwininfo)))
67       (native-inputs
68        `(("asciidoc" ,asciidoc)
69          ("libdrm" ,libdrm)
70          ("pkg-config" ,pkg-config)
71          ("python" ,python)
72          ("xorgproto" ,xorgproto)))
73       (arguments
74        `(#:make-flags (list
75                        "CC=gcc"
76                        "NO_REGEX_PCRE=1"          ; pcre makes build fail
77                        (string-append "PREFIX=" (assoc-ref %outputs "out")))
78          #:tests? #f                              ; no tests
79          #:phases
80          (modify-phases %standard-phases
81            (delete 'configure))))
82       (home-page "https://github.com/chjj/compton")
83       (synopsis "Compositor for X11")
84       (description
85        "Compton is a compositor for the Xorg display server and a for of
86 xcompmgr-dana, which implements some changes like:
88 @itemize
89 @item OpenGL backend (@command{--backend glx}), in addition to the old X Render
90 backend.
91 @item Inactive window transparency (@command{-i}) and dimming
92 (@command{--inactive-dim}).
93 @item Menu transparency (@command{-m}, thanks to Dana).
94 @item Shadows are now enabled for argb windows, e.g terminals with transparency
95 @item Removed serverside shadows (and simple compositing) to clean the code,
96 the only option that remains is clientside shadows.
97 @item Configuration files (see the man page for more details).
98 @item Colored shadows (@command{--shadow-[red/green/blue]}).
99 @item A new fade system.
100 @item VSync support (not always working).
101 @item Blur of background of transparent windows, window color inversion (bad in
102 performance).
103 @item Some more options...
104 @end itemize\n")
105       (license license:expat))))