about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/window-managers/dwm/default.nix')
-rw-r--r--nixpkgs/pkgs/applications/window-managers/dwm/default.nix50
1 files changed, 31 insertions, 19 deletions
diff --git a/nixpkgs/pkgs/applications/window-managers/dwm/default.nix b/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
index eb349e6f3b17..2c3ed2e47e88 100644
--- a/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
@@ -1,34 +1,46 @@
-{lib, stdenv, fetchurl, libX11, libXinerama, libXft, writeText, patches ? [], conf ? null}:
+{ lib, stdenv, fetchurl, libX11, libXinerama, libXft, writeText, patches ? [ ], conf ? null}:
 
-with lib;
-
-let
-  name = "dwm-6.2";
-in
-stdenv.mkDerivation {
-  inherit name;
+stdenv.mkDerivation rec {
+  pname = "dwm";
+  version = "6.2";
 
   src = fetchurl {
-    url = "https://dl.suckless.org/dwm/${name}.tar.gz";
+    url = "https://dl.suckless.org/dwm/${pname}-${version}.tar.gz";
     sha256 = "03hirnj8saxnsfqiszwl2ds7p0avg20izv9vdqyambks00p2x44p";
   };
 
   buildInputs = [ libX11 libXinerama libXft ];
 
-  prePatch = ''sed -i "s@/usr/local@$out@" config.mk'';
+  prePatch = ''
+    sed -i "s@/usr/local@$out@" config.mk
+  '';
 
   # Allow users set their own list of patches
   inherit patches;
 
   # Allow users to set the config.def.h file containing the configuration
-  postPatch = let configFile = if isDerivation conf || builtins.isPath conf then conf else writeText "config.def.h" conf;
-  in optionalString (conf!=null) "cp ${configFile} config.def.h";
-
-  meta = {
-    homepage = "https://suckless.org/";
-    description = "Dynamic window manager for X";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [viric];
-    platforms = with lib.platforms; all;
+  postPatch =
+    let
+      configFile =
+        if lib.isDerivation conf || builtins.isPath conf
+        then conf else writeText "config.def.h" conf;
+    in
+    lib.optionalString (conf != null) "cp ${configFile} config.def.h";
+
+  meta = with lib; {
+    homepage = "https://dwm.suckless.org/";
+    description = "An extremely fast, small, and dynamic window manager for X";
+    longDescription = ''
+      dwm is a dynamic window manager for X. It manages windows in tiled,
+      monocle and floating layouts. All of the layouts can be applied
+      dynamically, optimising the environment for the application in use and the
+      task performed.
+      Windows are grouped by tags. Each window can be tagged with one or
+      multiple tags. Selecting certain tags displays all windows with these
+      tags.
+    '';
+    license = licenses.mit;
+    maintainers = with maintainers; [ viric ];
+    platforms = platforms.all;
   };
 }