1 { lib, buildGoModule, fetchFromGitHub, installShellFiles, perl, file }:
7 src = fetchFromGitHub {
11 sha256 = "0lypbgf96bcc4m3968xa4il1zwprsdyc0pw6pl9mqq7djxabikd0";
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'
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}" ];
30 make build/man/holo-build.8 VERSION=${version}
33 checkInputs = [ file ];
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
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
54 description = "Cross-distribution system package compiler";
55 homepage = "https://holocm.org/";
56 license = licenses.gpl3Plus;
57 maintainers = with maintainers; [ SuperSandro2000 ];