Environment variables

The following environment variables are respected by the tooling in generated projects.

Project generation and updates

SKIP_INIT_MIGRATE

When 1, skips the automatic initialization/migration during copier copy/copier update.

Development environment

VENV_PYTHON

Overrides the Python version (MAJOR.MINOR) used for the development virtual environment, which defaults to the venv_python answer. Useful when the configured version is hard to come by locally. An existing venv with a different version is recreated.

VENV_SYSTEM_SITE_PACKAGES

When 1, the development virtual environment and the nox session venvs inherit system-wide packages, easing development of OS-specific extensions. Implies a venv + pip fallback since uv does not consider inherited packages.

TOOLS_SILENT

When set, suppresses status output of the bundled developer tools.

SKIP

Comma-separated list of pre-commit hook IDs to skip. Useful on platforms lacking prebuilt hook binaries, e.g. FreeBSD.

nox sessions

SKIP_REQUIREMENTS_INSTALL

When 1, skips dependency installation in nox sessions, speeding up repeated runs.

EXTRA_REQUIREMENTS_INSTALL

Whitespace-separated list of extra requirements to install into the session venv, e.g. a debugger.

SALT_REQUIREMENT

Overrides the Salt requirement in test/docs sessions. Defaults to the project’s minimum Salt version. The special value salt==master installs Salt from the git master branch, release branch values like salt==3007.x from the corresponding upstream git branch.

COVERAGE_REQUIREMENT

Overrides the pinned coverage requirement.

PYLINT_REPORT

Path to additionally write the lint sessions’ output to.

Detected

  • CI, JENKINS_URL, DRONE – indicate a CI context: nox sessions install dependencies verbosely, test daemons receive longer start timeouts and rootless Podman autodetection is disabled.

  • XDG_RUNTIME_DIR – used to locate the rootless Podman socket for container tests.