{ lib , rustPlatform , fetchFromGitHub , pkg-config , wrapGAppsHook4 , cairo , gdk-pixbuf , glib , gtk4 , libadwaita , pango , copyDesktopItems , installShellFiles }: rustPlatform.buildRustPackage rec { pname = "satty"; version = "0.9.0"; src = fetchFromGitHub { owner = "gabm"; repo = "Satty"; rev = "v${version}"; hash = "sha256-640npBvOO4SZfQI5Tq1FY+B7Bg75YsaoGd/XhWAy9Zs="; }; cargoHash = "sha256-H+PnZWNaxdNaPLZmKJIcnEBTnpeXCxGC9cXnzR2hfoc="; nativeBuildInputs = [ copyDesktopItems pkg-config wrapGAppsHook4 installShellFiles ]; buildInputs = [ cairo gdk-pixbuf glib gtk4 libadwaita pango ]; postInstall = '' install -Dt $out/share/icons/hicolor/scalable/apps/ assets/satty.svg installShellCompletion --cmd satty \ --bash completions/satty.bash \ --fish completions/satty.fish \ --zsh completions/_satty ''; desktopItems = [ "satty.desktop" ]; meta = with lib; { description = "A screenshot annotation tool inspired by Swappy and Flameshot"; homepage = "https://github.com/gabm/Satty"; license = licenses.mpl20; maintainers = with maintainers; [ pinpox donovanglover ]; mainProgram = "satty"; platforms = lib.platforms.linux; }; }