about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lib/maintainers.nix1
-rw-r--r--pkgs/applications/misc/devilspie2/default.nix38
-rw-r--r--pkgs/top-level/all-packages.nix4
3 files changed, 43 insertions, 0 deletions
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 07f7a0a15daa..0a146e517258 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -80,6 +80,7 @@
   dfoxfranke = "Daniel Fox Franke <dfoxfranke@gmail.com>";
   dmalikov = "Dmitry Malikov <malikov.d.y@gmail.com>";
   doublec = "Chris Double <chris.double@double.co.nz>";
+  ebzzry = "Rommel Martinez <ebzzry@gmail.com>";
   ederoyd46 = "Matthew Brown <matt@ederoyd.co.uk>";
   eduarrrd = "Eduard Bachmakov <e.bachmakov@gmail.com>";
   edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
diff --git a/pkgs/applications/misc/devilspie2/default.nix b/pkgs/applications/misc/devilspie2/default.nix
new file mode 100644
index 000000000000..50ae2b2d15f6
--- /dev/null
+++ b/pkgs/applications/misc/devilspie2/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, intltool, pkgconfig, glib, gtk, lua, libwnck3 }:
+
+stdenv.mkDerivation rec {
+  name = "devilspie2-${version}";
+  version = "0.39";
+
+  src = fetchurl {
+    url = "http://download.savannah.gnu.org/releases/devilspie2/devilspie2_0.39-src.tar.gz";
+    sha256 = "07b74ffc078e5f01525d9da7a1978b4c1a9725b814b344f83a1a203cf4caae09";
+  };
+
+  buildInputs = [ intltool pkgconfig glib gtk lua libwnck3 ];
+
+  patchPhase = ''
+    sed -i -e s@/usr/local@$out@ Makefile
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/man/man1
+    cp bin/devilspie2 $out/bin
+    cp devilspie2.1 $out/share/man/man1
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Devilspie2 is a window matching utility.";
+    longDescription = ''
+      Devilspie2 is a window matching utility, allowing the user to
+      perform scripted actions on windows as they are created. For
+      example you can script a terminal program to always be
+      positioned at a specific screen position, or position a window
+      on a specific workspace.
+    '';
+    homepage = http://www.gusnan.se/devilspie2/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.ebzzry ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 94079eaac043..00904eee2a81 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1275,6 +1275,10 @@ let
 
   detox = callPackage ../tools/misc/detox { };
 
+  devilspie2 = callPackage ../applications/misc/devilspie2 {
+    gtk = gtk3;
+  };
+
   ddccontrol = callPackage ../tools/misc/ddccontrol { };
 
   ddccontrol-db = callPackage ../data/misc/ddccontrol-db { };