diff --git a/pkgs/by-name/hy/hyprprop/package.nix b/pkgs/by-name/hy/hyprprop/package.nix new file mode 100644 index 000000000000..f50e592506f6 --- /dev/null +++ b/pkgs/by-name/hy/hyprprop/package.nix @@ -0,0 +1,71 @@ +{ + lib, + stdenvNoCC, + bash, + copyDesktopItems, + coreutils, + fetchFromGitHub, + jq, + makeDesktopItem, + makeWrapper, + nix-update-script, + scdoc, + slurp, +}: +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "hyprprop"; + version = "0.1-unstable-2024-12-01"; + + src = fetchFromGitHub { + owner = "hyprwm"; + repo = "contrib"; + rev = "d7c55140f1785b8d9fef351f1cd2a4c9e1eaa466"; + hash = "sha256-sp14z0mrqrtmouz1+bU4Jh8/0xi+xwQHF2l7mhGSSVU="; + }; + + sourceRoot = "${finalAttrs.src.name}/hyprprop"; + + buildInputs = [ + bash + scdoc + ]; + + makeFlags = [ "PREFIX=$(out)" ]; + + nativeBuildInputs = [ + makeWrapper + copyDesktopItems + ]; + + postInstall = '' + wrapProgram $out/bin/hyprprop --prefix PATH ':' \ + "${ + lib.makeBinPath [ + coreutils + slurp + jq + ] + }" + ''; + + desktopItems = + let + desktopItem = makeDesktopItem { + name = "hyprprop"; + exec = "hyprprop"; + desktopName = "Hyprprop"; + terminal = true; + startupNotify = false; + }; + in + [ desktopItem ]; + + passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; + meta = { + description = "An xprop replacement for Hyprland"; + license = lib.licenses.mit; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ khaneliman ]; + mainProgram = "hyprprop"; + }; +})