1# `haredo` {#haredo-hook}
2
3This hook uses [the `haredo` command runner](https://sr.ht/~autumnull/haredo/) to build, check, and install the package. It overrides `buildPhase`, `checkPhase`, and `installPhase` by default.
4
5The hook builds its targets in parallel if [`config.enableParallelBuilding`](#var-stdenv-enableParallelBuilding) is set to `true`.
6
7## `buildPhase` {#haredo-hook-buildPhase}
8
9This phase attempts to build the default target.
10
11[]{#haredo-hook-haredoBuildTargets} Targets can be explicitly set by adding a string to the `haredoBuildTargets` list.
12
13[]{#haredo-hook-dontUseHaredoBuild} This behavior can be disabled by setting `dontUseHaredoBuild` to `true`.
14
15## `checkPhase` {#haredo-hook-checkPhase}
16
17This phase searches for the `check.do` or `test.do` targets, running them if they exist.
18
19[]{#haredo-hook-haredoCheckTargets} Targets can be explicitly set by adding a string to the `haredoCheckTargets` list.
20
21[]{#haredo-hook-dontUseHaredoCheck} This behavior can be disabled by setting `dontUseHaredoCheck` to `true`.
22
23## `installPhase` {#haredo-hook-installPhase}
24
25This phase attempts to build the `install.do` target, if it exists.
26
27[]{#haredo-hook-haredoInstallTargets} Targets can be explicitly set by adding a string to the `haredoInstallTargets` list.
28
29[]{#haredo-hook-dontUseHaredoInstall} This behavior can be disabled by setting `dontUseHaredoInstall` to `true`.