chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / zu / zunit / package.nix
blob501aad737c02fc6bceea24e780c2a81bdec7398e
2   lib,
3   stdenvNoCC,
4   fetchFromGitHub,
5   zsh,
6   revolver,
7   installShellFiles,
8   testers,
9   nix-update-script,
12 stdenvNoCC.mkDerivation (finalAttrs: {
13   pname = "zunit";
14   version = "0.8.2";
16   src = fetchFromGitHub {
17     owner = "zunit-zsh";
18     repo = "zunit";
19     rev = "v${finalAttrs.version}";
20     hash = "sha256-GkBewb795piCaniZJZpGEZFhKaNs8p8swV5z34OegPY=";
21     deepClone = true; # Needed in order to get "tests" folder
22   };
24   strictDeps = true;
25   doCheck = true;
26   doInstallCheck = true;
28   nativeBuildInputs = [
29     zsh
30     installShellFiles
31   ];
32   nativeCheckInputs = [ revolver ];
33   buildInputs = [
34     zsh
35     revolver
36   ];
38   postPatch = ''
39     for i in $(find src/ -type f -print); do
40       substituteInPlace $i \
41         --replace-warn " revolver " " ${lib.getExe revolver} "
42     done
43   '';
45   buildPhase = ''
46     runHook preBuild
48     zsh build.zsh
50     runHook postBuild
51   '';
53   checkPhase = ''
54     runHook preCheck
56     HOME="$TEMPDIR" zsh zunit
58     runHook postCheck
59   '';
61   installPhase = ''
62     runHook preInstall
64     install -Dm755 zunit $out/bin/zunit
66     runHook postInstall
67   '';
69   postInstall = ''
70     installShellCompletion --cmd zunit --zsh zunit.zsh-completion
71   '';
73   installCheckPhase = ''
74     runHook preInstallCheck
76     PATH=$PATH:$out/bin zunit --help
78     runHook postInstallCheck
79   '';
81   passthru = {
82     tests.version = testers.testVersion { package = finalAttrs.finalPackage; };
83     updateScript = nix-update-script { };
84   };
86   meta = {
87     description = "Powerful testing framework for ZSH projects";
88     homepage = "https://zunit.xyz/";
89     downloadPage = "https://github.com/zunit-zsh/zunit/releases";
90     changelog = "https://github.com/zunit-zsh/zunit/releases/tag/${finalAttrs.src.rev}";
91     license = lib.licenses.mit;
92     mainProgram = "zunit";
93     inherit (zsh.meta) platforms;
94     maintainers = with lib.maintainers; [ d-brasher ];
95   };