{ lib , stdenv , rustPlatform , fetchFromGitHub , gpgme , libgpg-error , libxcb , libxkbcommon , python3 , AppKit , Foundation , libiconv , libobjc , libresolv }: rustPlatform.buildRustPackage rec { pname = "gpg-tui"; version = "0.9.0"; src = fetchFromGitHub { owner = "orhun"; repo = "gpg-tui"; rev = "v${version}"; hash = "sha256-iIMpAAIw6djLNP9lnrHV7D198VcHspQP4OHcr2LNKOA="; }; cargoHash = "sha256-xrv1tFzPReHDA+gr/RPCvSM7Sa7v8OKAEY+fSUjPT50="; nativeBuildInputs = [ gpgme # for gpgme-config libgpg-error # for gpg-error-config python3 ]; buildInputs = [ gpgme libgpg-error libxcb libxkbcommon ] ++ lib.optionals stdenv.isDarwin [ AppKit Foundation libiconv libobjc libresolv ]; meta = with lib; { description = "Terminal user interface for GnuPG"; homepage = "https://github.com/orhun/gpg-tui"; changelog = "https://github.com/orhun/gpg-tui/blob/${src.rev}/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ dotlambda ]; }; }