diff options
Diffstat (limited to 'pkgs/by-name/sw/swayosd/package.nix')
-rw-r--r-- | pkgs/by-name/sw/swayosd/package.nix | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/pkgs/by-name/sw/swayosd/package.nix b/pkgs/by-name/sw/swayosd/package.nix new file mode 100644 index 000000000000..b2a7b17b4315 --- /dev/null +++ b/pkgs/by-name/sw/swayosd/package.nix @@ -0,0 +1,71 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, wrapGAppsHook +, cargo +, coreutils +, gtk-layer-shell +, libevdev +, libinput +, libpulseaudio +, meson +, ninja +, rustc +, stdenv +, udev +}: + +stdenv.mkDerivation rec { + pname = "swayosd"; + version = "unstable-2023-07-18"; + + src = fetchFromGitHub { + owner = "ErikReider"; + repo = "SwayOSD"; + rev = "b14c83889c7860c174276d05dec6554169a681d9"; + hash = "sha256-MJuTwEI599Y7q+0u0DMxRYaXsZfpksc2csgnK9Ghp/E="; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}"; + hash = "sha256-pExpzQwuHREhgkj+eZ8drBVsh/B3WiQBBh906O6ymFw="; + }; + + nativeBuildInputs = [ + wrapGAppsHook + pkg-config + meson + rustc + cargo + ninja + rustPlatform.cargoSetupHook + ]; + + buildInputs = [ + gtk-layer-shell + libevdev + libinput + libpulseaudio + udev + ]; + + patches = [ + ./swayosd_systemd_paths.patch + ]; + + postPatch = '' + substituteInPlace data/udev/99-swayosd.rules \ + --replace /bin/chgrp ${coreutils}/bin/chgrp \ + --replace /bin/chmod ${coreutils}/bin/chmod + ''; + + meta = with lib; { + description = "A GTK based on screen display for keyboard shortcuts"; + homepage = "https://github.com/ErikReider/SwayOSD"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ aleksana ]; + platforms = platforms.linux; + }; +} |