{ installShellFiles , lib , rustPlatform , fetchFromGitHub }: rustPlatform.buildRustPackage rec { pname = "steamguard-cli"; version = "0.12.3"; src = fetchFromGitHub { owner = "dyc3"; repo = pname; rev = "v${version}"; hash = "sha256-qfyo63u6gBkGNxVBmFsz9YXs6duRU/VnFly40C13vI8="; }; cargoHash = "sha256-B8/WCSHC905wDxYGLYVMT0QxgMiGR0/VMVzOlyTKPss="; nativeBuildInputs = [ installShellFiles ]; postInstall = '' installShellCompletion --cmd steamguard \ --bash <($out/bin/steamguard completion --shell bash) \ --fish <($out/bin/steamguard completion --shell fish) \ --zsh <($out/bin/steamguard completion --shell zsh) \ ''; meta = with lib; { changelog = "https://github.com/dyc3/steamguard-cli/releases/tag/v${version}"; description = "A linux utility for generating 2FA codes for Steam and managing Steam trade confirmations."; homepage = "https://github.com/dyc3/steamguard-cli"; license = with licenses; [ gpl3Only ]; mainProgram = "steamguard"; maintainers = with maintainers; [ surfaceflinger ]; platforms = platforms.linux; }; }