diff options
Diffstat (limited to 'nixpkgs/pkgs/os-specific/darwin/kwm')
-rw-r--r-- | nixpkgs/pkgs/os-specific/darwin/kwm/default.nix | 34 | ||||
-rw-r--r-- | nixpkgs/pkgs/os-specific/darwin/kwm/org.nixos.kwm.plist | 26 |
2 files changed, 60 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/os-specific/darwin/kwm/default.nix b/nixpkgs/pkgs/os-specific/darwin/kwm/default.nix new file mode 100644 index 000000000000..273ea7345d9d --- /dev/null +++ b/nixpkgs/pkgs/os-specific/darwin/kwm/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchzip }: + +stdenv.mkDerivation rec { + pname = "kwm"; + version = "4.0.5"; + + src = fetchzip { + stripRoot = false; + url = "https://github.com/koekeishiya/kwm/releases/download/v${version}/Kwm-${version}.zip"; + sha256 = "1ld1vblg3hmc6lpb8p2ljvisbkijjkijf4y87z5y1ia4k8pk7mxb"; + }; + + # TODO: Build this properly once we have swiftc. + dontBuild = true; + + installPhase = '' + mkdir -p $out/bin + cp kwmc $out/bin/kwmc + cp kwm overlaylib.dylib $out + + mkdir -p $out/Library/LaunchDaemons + cp ${./org.nixos.kwm.plist} $out/Library/LaunchDaemons/org.nixos.kwm.plist + substituteInPlace $out/Library/LaunchDaemons/org.nixos.kwm.plist --subst-var out + ''; + + meta = with lib; { + description = "Tiling window manager with focus follows mouse for OSX"; + homepage = "https://github.com/koekeishiya/kwm"; + downloadPage = "https://github.com/koekeishiya/kwm/releases"; + platforms = platforms.darwin; + maintainers = with maintainers; [ lnl7 ]; + license = licenses.mit; + }; +} diff --git a/nixpkgs/pkgs/os-specific/darwin/kwm/org.nixos.kwm.plist b/nixpkgs/pkgs/os-specific/darwin/kwm/org.nixos.kwm.plist new file mode 100644 index 000000000000..eafce2ab4a46 --- /dev/null +++ b/nixpkgs/pkgs/os-specific/darwin/kwm/org.nixos.kwm.plist @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>Label</key> + <string>org.nixos.kwm</string> + <key>ProgramArguments</key> + <array> + <string>@out@/kwm</string> + </array> + <key>KeepAlive</key> + <true/> + <key>Sockets</key> + <dict> + <key>Listeners</key> + <dict> + <key>SockServiceName</key> + <string>3020</string> + <key>SockType</key> + <string>dgram</string> + <key>SockFamily</key> + <string>IPv4</string> + </dict> +</dict> +</dict> +</plist> |