diff options
Diffstat (limited to 'nixpkgs/pkgs/by-name/ow/owmods-cli/package.nix')
-rw-r--r-- | nixpkgs/pkgs/by-name/ow/owmods-cli/package.nix | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/ow/owmods-cli/package.nix b/nixpkgs/pkgs/by-name/ow/owmods-cli/package.nix new file mode 100644 index 000000000000..19961f193e2a --- /dev/null +++ b/nixpkgs/pkgs/by-name/ow/owmods-cli/package.nix @@ -0,0 +1,71 @@ +{ lib +, stdenv +, nix-update-script +, fetchFromGitHub +, rustPlatform +, pkg-config +, installShellFiles +, zstd +, libsoup_3 +, makeWrapper +, mono +, wrapWithMono ? true +, openssl +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "owmods-cli"; + version = "0.13.0"; + + src = fetchFromGitHub { + owner = "ow-mods"; + repo = "ow-mod-man"; + rev = "cli_v${version}"; + hash = "sha256-JCPuKGO0pbhQaNmZUcZ95EZbXubrjZnw0qJmKCGuAoQ="; + }; + + cargoHash = "sha256-dTEEpjonvFYFv16e0eS71B4OMiYueYSfcs8gmSYeHPc="; + + nativeBuildInputs = [ + pkg-config + installShellFiles + ] ++ lib.optional wrapWithMono makeWrapper; + + buildInputs = [ + zstd + libsoup_3 + ] ++ lib.optionals stdenv.isLinux [ + openssl + ] ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Security + darwin.apple_sdk.frameworks.SystemConfiguration + ]; + + env = { + ZSTD_SYS_USE_PKG_CONFIG = true; + }; + + buildAndTestSubdir = "owmods_cli"; + + postInstall = '' + cargo xtask dist_cli + installManPage dist/cli/man/* + installShellCompletion --cmd owmods \ + dist/cli/completions/owmods.{bash,fish,zsh} + '' + lib.optionalString wrapWithMono '' + wrapProgram $out/bin/${meta.mainProgram} --prefix PATH : '${mono}/bin' + ''; + + passthru.updateScript = nix-update-script {}; + + meta = with lib; { + description = "CLI version of the mod manager for Outer Wilds Mod Loader"; + homepage = "https://github.com/ow-mods/ow-mod-man/tree/main/owmods_cli"; + downloadPage = "https://github.com/ow-mods/ow-mod-man/releases/tag/cli_v${version}"; + changelog = "https://github.com/ow-mods/ow-mod-man/releases/tag/cli_v${version}"; + mainProgram = "owmods"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ bwc9876 spoonbaker locochoco ]; + }; +} |