5 , withWayland ? true, cairo, libxkbcommon, wayland
6 , withX ? true, libXi, libXinerama, libXft, libXfixes, libXtst, libX11, libXext
9 stdenv.mkDerivation rec {
13 src = fetchFromGitHub {
17 hash = "sha256-5B3Ec+R1vF2iI0ennYcsRlnFXJkSns0jVbyAWJA4lTU=";
21 nativeBuildInputs = [ git ];
23 buildInputs = lib.optionals withWayland [
27 ] ++ lib.optionals withX [
37 makeFlags = [ "PREFIX=$(out)" ]
38 ++ lib.optional (!withWayland) "DISABLE_WAYLAND=y"
39 ++ lib.optional (!withX) "DISABLE_X=y";
42 substituteInPlace mk/linux.mk \
43 --replace '-m644' '-Dm644' \
44 --replace '-m755' '-Dm755' \
45 --replace 'warpd.1.gz $(DESTDIR)' 'warpd.1.gz -t $(DESTDIR)' \
46 --replace 'bin/warpd $(DESTDIR)' 'bin/warpd -t $(DESTDIR)'
50 description = "A modal keyboard driven interface for mouse manipulation.";
51 homepage = "https://github.com/rvaiya/warpd";
52 changelog = "https://github.com/rvaiya/warpd/blob/${src.rev}/CHANGELOG.md";
53 maintainers = with maintainers; [ hhydraa ];
54 license = licenses.mit;
55 platforms = platforms.linux;
56 mainProgram = "warpd";