summary refs log tree commit diff
diff options
context:
space:
mode:
authorEmery <emery@v36.space>2015-12-29 11:13:12 +0100
committerEmery <emery@v36.space>2015-12-30 11:10:30 +0100
commit952563d6201268180e27e33f4ed0f3dbe054f2be (patch)
tree6dee042a4e0089e55a33488a71d16762f3bd2722
parent2c9369dc439ef7e68ed4839b16dad0d2d7628b96 (diff)
downloadnixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar.gz
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar.bz2
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar.lz
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar.xz
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.tar.zst
nixpkgs-952563d6201268180e27e33f4ed0f3dbe054f2be.zip
WindowLab: initial pkg at 1.40
http://nickgravgaard.com/windowlab/
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/services/x11/window-managers/windowlab.nix22
-rw-r--r--pkgs/applications/window-managers/windowlab/default.nix34
-rw-r--r--pkgs/top-level/all-packages.nix2
4 files changed, 59 insertions, 0 deletions
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 5c1cde98d3d..7fc41b0e9ca 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -441,6 +441,7 @@
   ./services/x11/window-managers/metacity.nix
   ./services/x11/window-managers/none.nix
   ./services/x11/window-managers/twm.nix
+  ./services/x11/window-managers/windowlab.nix
   ./services/x11/window-managers/wmii.nix
   ./services/x11/window-managers/xmonad.nix
   ./services/x11/xfs.nix
diff --git a/nixos/modules/services/x11/window-managers/windowlab.nix b/nixos/modules/services/x11/window-managers/windowlab.nix
new file mode 100644
index 00000000000..fb891a39fa4
--- /dev/null
+++ b/nixos/modules/services/x11/window-managers/windowlab.nix
@@ -0,0 +1,22 @@
+{lib, pkgs, config, ...}:
+
+let
+  cfg = config.services.xserver.windowManager.windowlab;
+in
+
+{
+  options = {
+    services.xserver.windowManager.windowlab.enable =
+      lib.mkEnableOption "windowlab";
+  };
+
+  config = lib.mkIf cfg.enable {
+    services.xserver.windowManager = {
+      session =
+        [{ name  = "windowlab";
+           start = "${pkgs.windowlab}/bin/windowlab";
+        }];
+    };
+    environment.systemPackages = [ pkgs.windowlab ];
+  };
+}
diff --git a/pkgs/applications/window-managers/windowlab/default.nix b/pkgs/applications/window-managers/windowlab/default.nix
new file mode 100644
index 00000000000..39865c4b3e7
--- /dev/null
+++ b/pkgs/applications/window-managers/windowlab/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, pkgconfig
+, libX11, libXext, libXft }:
+
+let version = "1.40"; in
+stdenv.mkDerivation {
+  name = "windowlab-${version}";
+
+  src = fetchurl {
+    url = "http://nickgravgaard.com/windowlab/windowlab-${version}.tar";
+    sha256 = "1fx4jwq4s98p2wpvawsiww7d6568bpjgcjpks61dzfj8p2j32s4d";
+  };
+
+  buildInputs = [ pkgconfig libX11 libXext libXft ];
+
+  postPatch =
+    ''
+      mv Makefile Makefile.orig
+      echo \
+         "
+          DEFINES += -DXFT
+          EXTRA_INC += $(pkg-config --cflags xft)
+          EXTRA_LIBS += $(pkg-config --libs xft)
+         " > Makefile
+      sed "s|/usr/local|$out|g" Makefile.orig >> Makefile
+    '';
+
+  meta = with stdenv.lib;
+    { description = "Small and simple stacking window manager";
+      homepage    = "http://nickgravgaard.com/windowlab/";
+      license     = licenses.gpl2;
+      maintainers = with maintainers; [ ehmry ];
+      platforms   = platforms.linux;
+    };
+}
\ No newline at end of file
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e8ceb32a499..929ac7f4050 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13571,6 +13571,8 @@ let
     freerdp = freerdpUnstable;
   };
 
+  windowlab = callPackage ../applications/window-managers/windowlab { };
+
   windowmaker = callPackage ../applications/window-managers/windowmaker { };
 
   alsamixer.app = callPackage ../applications/window-managers/windowmaker/dockapps/alsamixer.app.nix { };