nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix

Zig {#zig}#

Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software.

In Nixpkgs, zig overrides the default build, check and install phases.

Example code snippet {#zig-example-code-snippet}#

{
  lib,
  stdenv,
  zig,
}:

stdenv.mkDerivation {
  # . . .

  nativeBuildInputs = [ zig ];

  zigBuildFlags = [ "-Dman-pages=true" ];

  dontUseZigCheck = true;

  # . . .
}

Variables controlling zig {#zig-variables-controlling}#

zig Exclusive Variables {#zig-exclusive-variables}#

The variables below are exclusive to zig.

dontUseZigConfigure {#dont-use-zig-configure}#

Disables using zigConfigurePhase.

dontUseZigBuild {#dont-use-zig-build}#

Disables using zigBuildPhase.

dontUseZigCheck {#dont-use-zig-check}#

Disables using zigCheckPhase.

dontUseZigInstall {#dont-use-zig-install}#

Disables using zigInstallPhase.

dontSetZigDefaultFlags {#dont-set-zig-default-flags}#

Disables using a set of default flags when performing zig builds.

Similar variables {#zig-similar-variables}#

The following variables are similar to their stdenv.mkDerivation counterparts.

zig Variable stdenv.mkDerivation Counterpart
zigBuildFlags buildFlags
zigCheckFlags checkFlags
zigInstallFlags installFlags

Variables honored by zig {#zig-variables-honored}#

The following variables commonly used by stdenv.mkDerivation are honored by zig.

  • prefixKey
  • dontAddPrefix