depot/third_party/nixpkgs/pkgs/by-name/ip/ipatool/package.nix

52 lines
1.3 KiB
Nix

{ lib
, buildGoModule
, fetchFromGitHub
, nix-update-script
, testers
, ipatool
}:
buildGoModule rec {
pname = "ipatool";
version = "2.1.4";
src = fetchFromGitHub {
owner = "majd";
repo = "ipatool";
rev = "v${version}";
hash = "sha256-e+gkr8i6dVfxyBM5Vi2YpW4eQ4LE2vhgQadLAFeHK4Q=";
};
vendorHash = "sha256-aVMWXlHMGdbApKLhuZZpaAYY5QpMMgXc/6f9r79/dTw=";
ldflags = [
"-s"
"-w"
"-X github.com/majd/ipatool/v2/cmd.version=${version}"
];
# go generate ./... fails because of a missing module: github.com/golang/mock/mockgen
# which is required to run the tests, check if next release fixes it.
# preCheck = ''
# go generate ./...
# '';
doCheck = false;
passthru = {
updateScript = nix-update-script { };
tests.version = testers.testVersion {
inherit version;
package = ipatool;
command = "ipatool --version";
};
};
meta = with lib; {
description = "Command-line tool that allows searching and downloading app packages (known as ipa files) from the iOS App Store";
homepage = "https://github.com/majd/ipatool";
changelog = "https://github.com/majd/ipatool/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ gaelreyrol ];
mainProgram = "ipatool";
};
}