python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / package-management / holo-build / default.nix
blob847c8a726d0f323c6ba253be576c0bc2a211e563
1 { lib, buildGoModule, fetchFromGitHub, installShellFiles, perl, file }:
3 buildGoModule rec {
4   pname = "holo-build";
5   version = "1.6.1";
7   src = fetchFromGitHub {
8     owner = "holocm";
9     repo = pname;
10     rev = "v${version}";
11     sha256 = "0lypbgf96bcc4m3968xa4il1zwprsdyc0pw6pl9mqq7djxabikd0";
12   };
14   postPatch = ''
15     substituteInPlace Makefile \
16       --replace 'VERSION :=' 'VERSION ?='
17     substituteInPlace src/holo-build.sh \
18       --replace '/usr/lib/holo/holo-build' '${placeholder "out"}/lib/holo/holo-build'
19   '';
21   vendorSha256 = null;
23   nativeBuildInputs = [ installShellFiles perl ];
25   subPackages = [ "src/holo-build" ];
27   ldflags = [ "-s" "-w" "-X github.com/holocm/holo-build/src/holo-build/common.version=${version}" ];
29   postBuild = ''
30     make build/man/holo-build.8 VERSION=${version}
31   '';
33   checkInputs = [ file ];
35   checkPhase = ''
36     ln -s ../../go/bin/holo-build build/holo-build
37     go build -ldflags "-s -w -X github.com/holocm/holo-build/src/holo-build/common.version=${version}" -o build/dump-package ./src/dump-package
38     bash test/compiler/run_tests.sh
39     bash test/interface/run_tests.sh
40   '';
42   postInstall = ''
43     installManPage build/man/*
44     installShellCompletion --bash --name holo-build util/autocomplete.bash
45     installShellCompletion --zsh --name _holo-build util/autocomplete.zsh
47     # install wrapper script
48     mkdir -p $out/lib/holo
49     mv $out/bin/holo-build $out/lib/holo/holo-build
50     cp src/holo-build.sh $out/bin/holo-build
51   '';
53   meta = with lib; {
54     description = "Cross-distribution system package compiler";
55     homepage = "https://holocm.org/";
56     license = licenses.gpl3Plus;
57     maintainers = with maintainers; [ SuperSandro2000 ];
58   };