diff options
Diffstat (limited to 'pkgs/by-name/ni/nix-fast-build/package.nix')
-rw-r--r-- | pkgs/by-name/ni/nix-fast-build/package.nix | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/by-name/ni/nix-fast-build/package.nix b/pkgs/by-name/ni/nix-fast-build/package.nix new file mode 100644 index 0000000000000..f610c1f3a9acf --- /dev/null +++ b/pkgs/by-name/ni/nix-fast-build/package.nix @@ -0,0 +1,58 @@ +{ + lib, + stdenv, + fetchFromGitHub, + python3Packages, + nix-eval-jobs, + nix-output-monitor, + nix-update-script, +}: + +python3Packages.buildPythonApplication rec { + pname = "nix-fast-build"; + version = "1.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Mic92"; + repo = "nix-fast-build"; + rev = "refs/tags/${version}"; + hash = "sha256-8zW6eWvE9T03cMpo/hY8RRZIsSCfs1zmsJOkEZzuYwM="; + }; + + build-system = [ python3Packages.setuptools ]; + + makeWrapperArgs = [ + "--prefix PATH : ${ + lib.makeBinPath ( + [ + nix-eval-jobs + nix-eval-jobs.nix + ] + ++ lib.optional (lib.meta.availableOn stdenv.buildPlatform nix-output-monitor.compiler) nix-output-monitor + ) + }" + ]; + + # Don't run integration tests as they try to run nix + # to build stuff, which we cannot do inside the sandbox. + checkPhase = '' + PYTHONPATH= $out/bin/nix-fast-build --help + ''; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { + description = "Combine the power of nix-eval-jobs with nix-output-monitor to speed-up your evaluation and building process"; + homepage = "https://github.com/Mic92/nix-fast-build"; + changelog = "https://github.com/Mic92/nix-fast-build/releases/tag/${version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + getchoo + mic92 + ]; + mainProgram = "nix-fast-build"; + }; +} |