{ lib , rustPlatform , fetchFromGitHub , installShellFiles , stdenv , darwin }: rustPlatform.buildRustPackage rec { pname = "sagoin"; version = "0.2.0"; src = fetchFromGitHub { owner = "figsoda"; repo = pname; rev = "v${version}"; sha256 = "sha256-BCsNsBD+ZkxhIy1yC+N0AqbEsQ2ElfWLtnBOG+0hHXk="; }; cargoSha256 = "sha256-B8P92utlmZlxNfzBidNUaGw7BhgkOPwD0yahtKZ2yto="; nativeBuildInputs = [ installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ]; postInstall = '' installManPage artifacts/sagoin.1 installShellCompletion artifacts/sagoin.{bash,fish} --zsh artifacts/_sagoin ''; GEN_ARTIFACTS = "artifacts"; meta = with lib; { description = "A command-line submission tool for the UMD CS Submit Server"; homepage = "https://github.com/figsoda/sagoin"; changelog = "https://github.com/figsoda/sagoin/blob/v${version}/CHANGELOG.md"; license = licenses.agpl3Plus; maintainers = with maintainers; [ figsoda ]; }; }