summary refs log tree commit diff
path: root/pkgs/applications/window-managers/xmonad/wrapper.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/window-managers/xmonad/wrapper.nix')
-rw-r--r--pkgs/applications/window-managers/xmonad/wrapper.nix16
1 files changed, 16 insertions, 0 deletions
diff --git a/pkgs/applications/window-managers/xmonad/wrapper.nix b/pkgs/applications/window-managers/xmonad/wrapper.nix
new file mode 100644
index 00000000000..cb02a214d5b
--- /dev/null
+++ b/pkgs/applications/window-managers/xmonad/wrapper.nix
@@ -0,0 +1,16 @@
+{ stdenv, ghcWithPackages, xmessage, makeWrapper, packages }:
+
+let
+xmonadEnv = ghcWithPackages (self: [ self.xmonad ] ++ packages self);
+in stdenv.mkDerivation {
+  name = "xmonad-with-packages";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildCommand = ''
+    mkdir -p $out/bin
+    makeWrapper ${xmonadEnv}/bin/xmonad $out/bin/xmonad \
+      --set NIX_GHC "${xmonadEnv}/bin/ghc" \
+      --set XMONAD_XMESSAGE "${xmessage}/bin/xmessage"
+  '';
+}