summary refs log tree commit diff
path: root/pkgs/applications/window-managers/picom/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/window-managers/picom/default.nix')
-rw-r--r--pkgs/applications/window-managers/picom/default.nix65
1 files changed, 65 insertions, 0 deletions
diff --git a/pkgs/applications/window-managers/picom/default.nix b/pkgs/applications/window-managers/picom/default.nix
new file mode 100644
index 00000000000..ad5f73ab173
--- /dev/null
+++ b/pkgs/applications/window-managers/picom/default.nix
@@ -0,0 +1,65 @@
+{ stdenv, lib, fetchFromGitHub, pkgconfig, uthash, asciidoc, docbook_xml_dtd_45
+, docbook_xsl, libxslt, libxml2, makeWrapper, meson, ninja
+, xorgproto, libxcb ,xcbutilrenderutil, xcbutilimage, pixman, libev
+, dbus, libconfig, libdrm, libGL, pcre, libX11
+, libXinerama, libXext, xwininfo, libxdg_basedir }:
+
+stdenv.mkDerivation rec {
+  pname = "picom";
+  version = "7.5";
+
+  src = fetchFromGitHub {
+    owner  = "yshui";
+    repo   = "picom";
+    rev    = "v${version}";
+    sha256 = "1l48fxl04vkzr4r94sl37nbbw7a621rn8sxmkbdv4252i1gjxd4z";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    meson ninja
+    pkgconfig
+    uthash
+    asciidoc
+    docbook_xml_dtd_45
+    docbook_xsl
+    makeWrapper
+  ];
+
+  buildInputs = [
+    dbus libX11 libXext
+    xorgproto
+    libXinerama libdrm pcre libxml2 libxslt libconfig libGL
+    libxcb xcbutilrenderutil xcbutilimage
+    pixman libev
+    libxdg_basedir
+  ];
+
+  NIX_CFLAGS_COMPILE = "-fno-strict-aliasing";
+
+  mesonFlags = [
+    "-Dbuild_docs=true"
+  ];
+
+  installFlags = [ "PREFIX=$(out)" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/picom-trans \
+      --prefix PATH : ${lib.makeBinPath [ xwininfo ]}
+  '';
+
+  meta = with lib; {
+    description = "A fork of XCompMgr, a sample compositing manager for X servers";
+    longDescription = ''
+      A fork of XCompMgr, which is a sample compositing manager for X
+      servers supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE
+      extensions. It enables basic eye-candy effects. This fork adds
+      additional features, such as additional effects, and a fork at a
+      well-defined and proper place.
+    '';
+    license = licenses.mit;
+    homepage = "https://github.com/yshui/picom";
+    maintainers = with maintainers; [ ertes enzime twey ];
+    platforms = platforms.linux;
+  };
+}