38 lines
1.3 KiB
Nix
38 lines
1.3 KiB
Nix
|
{ stdenv, fetchurl
|
||
|
, meson, pkg-config, wayland, ninja
|
||
|
, cairo, libinput, pango, wayland-protocols, libxkbcommon
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
version = "2020-03-29";
|
||
|
commit = "6388a49e0f431d6d5fcbd152b8ae4fa8e87884ee";
|
||
|
in stdenv.mkDerivation rec {
|
||
|
pname = "wshowkeys-unstable";
|
||
|
inherit version;
|
||
|
|
||
|
src = fetchurl {
|
||
|
url = "https://git.sr.ht/~sircmpwn/wshowkeys/archive/${commit}.tar.gz";
|
||
|
sha256 = "0iplmw13jmc8d3m307kc047zq8yqwm42kw9fpm270562i3p0qk4d";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [ meson pkg-config wayland ninja ];
|
||
|
buildInputs = [ cairo libinput pango wayland-protocols libxkbcommon ];
|
||
|
|
||
|
meta = with stdenv.lib; {
|
||
|
description = "Displays keys being pressed on a Wayland session";
|
||
|
longDescription = ''
|
||
|
Displays keypresses on screen on supported Wayland compositors (requires
|
||
|
wlr_layer_shell_v1 support).
|
||
|
Note: This tool requires root permissions to read input events, but these
|
||
|
permissions are dropped after startup. The NixOS module provides such a
|
||
|
setuid binary (use "programs.wshowkeys.enable = true;").
|
||
|
'';
|
||
|
homepage = "https://git.sr.ht/~sircmpwn/wshowkeys";
|
||
|
license = with licenses; [ gpl3Only mit ];
|
||
|
# Some portions of the code are taken from Sway which is MIT licensed.
|
||
|
# TODO: gpl3Only or gpl3Plus (ask upstream)?
|
||
|
platforms = platforms.unix;
|
||
|
maintainers = with maintainers; [ primeos berbiche ];
|
||
|
};
|
||
|
}
|