aboutsummaryrefslogtreecommitdiff
path: root/dwl-custom.nix
diff options
context:
space:
mode:
authorRaghuram Subramani <raghus2247@gmail.com>2024-02-01 14:34:10 +0530
committerRaghuram Subramani <raghus2247@gmail.com>2024-02-01 14:34:10 +0530
commitb182e9735b58183c9f6a408cc8dc9de146855e62 (patch)
treec1b77667fcbd64dc67a705599342e7bcf7cc8528 /dwl-custom.nix
parenta69d84490f47a7bb0c2c965ae4c5d1b00298d19c (diff)
add nix
Diffstat (limited to 'dwl-custom.nix')
-rw-r--r--dwl-custom.nix78
1 files changed, 78 insertions, 0 deletions
diff --git a/dwl-custom.nix b/dwl-custom.nix
new file mode 100644
index 0000000..58ab702
--- /dev/null
+++ b/dwl-custom.nix
@@ -0,0 +1,78 @@
+{ lib
+, stdenv
+, installShellFiles
+, libX11
+, libinput
+, libxcb
+, libxkbcommon
+, pixman
+, pkg-config
+, wayland-scanner
+, wayland
+, wayland-protocols
+, wlroots_0_16
+, xcbutilwm
+, xwayland
+, gnumake
+}:
+
+stdenv.mkDerivation ({
+ pname = "dwl";
+ version = "0.5";
+
+ src = builtins.path { name = "dwl-custom"; path = ./.; };
+
+ nativeBuildInputs = [
+ installShellFiles
+ pkg-config
+ gnumake
+ ];
+
+ buildInputs = [
+ libinput
+ libxcb
+ libxkbcommon
+ pixman
+ wayland
+ wayland-protocols
+ wlroots_0_16
+ libX11
+ xcbutilwm
+ xwayland
+ wayland-scanner
+ ];
+
+ outputs = [ "out" "man" ];
+
+ makeFlags = [
+ "PKG_CONFIG=${stdenv.cc.targetPrefix}pkg-config"
+ "WAYLAND_SCANNER=wayland-scanner"
+ "PREFIX=$(out)"
+ "MANDIR=$(man)/share/man"
+ ];
+
+ buildPhase = ''
+ make clean
+ make
+ '';
+
+ meta = {
+ homepage = "https://github.com/tomaskallup/dwl/";
+ description = "Dynamic window manager for Wayland";
+ longDescription = ''
+ dwl is a compact, hackable compositor for Wayland based on wlroots. It is
+ intended to fill the same space in the Wayland world that dwm does in X11,
+ primarily in terms of philosophy, and secondarily in terms of
+ functionality. Like dwm, dwl is:
+
+ - Easy to understand, hack on, and extend with patches
+ - One C source file (or a very small number) configurable via config.h
+ - Limited to 2000 SLOC to promote hackability
+ - Tied to as few external dependencies as possible
+ '';
+ license = lib.licenses.gpl3Only;
+ maintainers = [ lib.maintainers.AndersonTorres ];
+ inherit (wayland.meta) platforms;
+ mainProgram = "dwl";
+ };
+})