tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
haredo: init at 1.0.5
Gustavo Coutinho de Souza
2 years ago
68fee72c
67273d0d
+140
2 changed files
expand all
collapse all
unified
split
pkgs
by-name
ha
haredo
package.nix
setup-hook.sh
+71
pkgs/by-name/ha/haredo/package.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ stdenv
2
+
, lib
3
+
, fetchFromSourcehut
4
+
, hare
5
+
, scdoc
6
+
, nix-update-script
7
+
}:
8
+
stdenv.mkDerivation (finalAttrs: {
9
+
pname = "haredo";
10
+
version = "1.0.5";
11
+
12
+
outputs = [ "out" "man" ];
13
+
14
+
src = fetchFromSourcehut {
15
+
owner = "~autumnull";
16
+
repo = "haredo";
17
+
rev = finalAttrs.version;
18
+
hash = "sha256-gpui5FVRw3NKyx0AB/4kqdolrl5vkDudPOgjHc/IE4U=";
19
+
};
20
+
21
+
nativeBuildInputs = [
22
+
hare
23
+
scdoc
24
+
];
25
+
26
+
preBuild = ''
27
+
HARECACHE="$(mktemp -d --tmpdir harecache.XXXXXXXX)"
28
+
export HARECACHE
29
+
export PREFIX=${builtins.placeholder "out"}
30
+
'';
31
+
32
+
buildPhase = ''
33
+
runHook preBuild
34
+
35
+
./bootstrap.sh
36
+
37
+
runHook postBuild
38
+
'';
39
+
40
+
checkPhase = ''
41
+
runHook preCheck
42
+
43
+
./bin/haredo test
44
+
45
+
runHook postCheck
46
+
'';
47
+
48
+
installPhase = ''
49
+
runHook preInstall
50
+
51
+
./bootstrap.sh install
52
+
53
+
runHook postInstall
54
+
'';
55
+
56
+
dontConfigure = true;
57
+
doCheck = true;
58
+
59
+
setupHook = ./setup-hook.sh;
60
+
61
+
passthru.updateScript = nix-update-script { };
62
+
63
+
meta = {
64
+
description = "A simple and unix-idiomatic build automator";
65
+
homepage = "https://sr.ht/~autumnull/haredo/";
66
+
license = lib.licenses.wtfpl;
67
+
maintainers = with lib.maintainers; [ onemoresuza ];
68
+
mainProgram = "haredo";
69
+
inherit (hare.meta) platforms badPlatforms;
70
+
};
71
+
})
+69
pkgs/by-name/ha/haredo/setup-hook.sh
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
haredoBuildPhase() {
2
+
runHook preBuild
3
+
4
+
local buildTargets jobs
5
+
read -ra buildTargets <<<"${haredoBuildTargets-}"
6
+
echoCmd "haredo build targets" "${buildTargets[@]}"
7
+
if [[ ! -v enableParallelBuilding || -n "${enableParallelBuilding-}" ]]; then
8
+
jobs="${NIX_BUILD_CORES}"
9
+
fi
10
+
haredo ${jobs:+"-j${jobs}"} "${buildTargets[@]}"
11
+
12
+
runHook postBuild
13
+
}
14
+
15
+
haredoCheckPhase() {
16
+
runHook preCheck
17
+
18
+
local checkTargets jobs
19
+
20
+
if [[ -n "${haredoCheckTargets:-}" ]]; then
21
+
read -ra checkTargets <<<"${haredoCheckTargets}"
22
+
else
23
+
for dofile in "check.do" "test.do"; do
24
+
[[ -r "${dofile}" ]] && {
25
+
checkTargets=("${dofile%".do"}")
26
+
break
27
+
}
28
+
done
29
+
fi
30
+
31
+
if [[ -z "${checkTargets:-}" ]]; then
32
+
printf -- 'haredoCheckPhase ERROR: no check targets were found' 1>&2
33
+
exit 1
34
+
else
35
+
echoCmd "haredo check targets" "${checkTargets[@]}"
36
+
if [[ ! -v enableParallelChecking || -n "${enableParallelChecking-}" ]]; then
37
+
jobs="${NIX_BUILD_CORES}"
38
+
fi
39
+
haredo ${jobs:+"-j${jobs}"} "${checkTargets[@]}"
40
+
fi
41
+
42
+
runHook postCheck
43
+
}
44
+
45
+
haredoInstallPhase() {
46
+
runHook preInstall
47
+
48
+
local installTargets jobs
49
+
read -ra installTargets <<<"${haredoInstallTargets:-"install"}"
50
+
echoCmd "haredo install targets" "${installTargets[@]}"
51
+
if [[ ! -v enableParallelInstalling || -n "${enableParallelInstalling-}" ]]; then
52
+
jobs="${NIX_BUILD_CORES}"
53
+
fi
54
+
haredo ${jobs:+"-j${jobs}"} "${installTargets[@]}"
55
+
56
+
runHook postInstall
57
+
}
58
+
59
+
if [[ -z "${dontUseHaredoBuild-}" && -z "${buildPhase-}" ]]; then
60
+
buildPhase="haredoBuildPhase"
61
+
fi
62
+
63
+
if [[ -z "${dontUseHaredoCheck-}" && -z "${checkPhase-}" ]]; then
64
+
checkPhase="haredoCheckPhase"
65
+
fi
66
+
67
+
if [[ -z "${dontUseHaredoInstall-}" && -z "${installPhase-}" ]]; then
68
+
installPhase="haredoInstallPhase"
69
+
fi