Subject: [bug#38751] [PATCH v2] gnu: Add picom.

From: Alexandru-Sergiu Marton <[email-masked]>
Date: Sat, 28 Dec 2019 09:49:45 +0200

* gnu/packages/compton.scm (picom): New variable.
---
Added comments regarding licensing and it now builds man pages.

 gnu/packages/compton.scm | 56 +++++++++++++++++++++++++++++++++++++++-
 1 file changed, 55 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/compton.scm b/gnu/packages/compton.scm
index c5b4c4ef5f..51b92fc79c 100644
--- a/gnu/packages/compton.scm
+++ b/gnu/packages/compton.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017 José Miguel Sánchez García <[email-masked]>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <[email-masked]>
+;;; Copyright © 2019 Alexandru-Sergiu Marton <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,6 +23,7 @@
   #:use-module (guix packages)
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages gl)
@@ -31,7 +33,11 @@
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xml)
-  #:use-module (gnu packages xorg))
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages datastructures)
+  #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages pcre))
 
 (define-public compton
   (let ((upstream-version "0.1_beta2"))
@@ -103,3 +109,51 @@ performance).
 @item Some more options...
 @end itemize\n")
       (license license:expat))))
+
+(define-public picom
+  (package
+    (name "picom")
+    (version "7.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/yshui/picom.git")
+             (commit (string-append "v" version))
+             (recursive? #t)))
+       (sha256
+        (base32
+         "1l48fxl04vkzr4r94sl37nbbw7a621rn8sxmkbdv4252i1gjxd4z"))
+       (file-name (string-append "picom-" version))))
+    (build-system meson-build-system)
+    (inputs
+     `(("dbus" ,dbus)
+       ("libconfig" ,libconfig)
+       ("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("mesa" ,mesa)
+       ("xprop" ,xprop)
+       ("libev" ,libev)
+       ("xcb-util-renderutil" ,xcb-util-renderutil)
+       ("xcb-util-image" ,xcb-util-image)
+       ("pixman" ,pixman)
+       ("uthash" ,uthash)
+       ("libxdg-basedir" ,libxdg-basedir)
+       ("pcre" ,pcre)))
+    (native-inputs
+     `(("asciidoc" ,asciidoc)
+       ("pkg-config" ,pkg-config)
+       ("xorgproto" ,xorgproto)))
+    (arguments
+     '(#:build-type "release"
+       #:configure-flags '("-Dbuild_docs=true")))
+    (home-page "https://github.com/yshui/picom")
+    (synopsis "Compositor for X11")
+    (description
+     "Picom is a standalone compositor for Xorg, suitable for use
+with window managers that do not provide compositing.
+
+Picom is a fork of compton, which is a fork of xcompmgr-dana,
+which in turn is a fork of xcompmgr.")
+    (license (list license:expat      ;; The original compton lincense.
+                   license:mpl2.0)))) ;; License used by new picom files.
-- 
2.24.1