Environment Variables#

This page lists environment variables used by conda-ship and generated runtimes.

Builder Variables#

CONDA_SHIP_TEMPLATE

Path to a prebuilt generic runtime template. cs build uses this when --template is not supplied and no installed template is found next to cs.

CONDA_SHIP_EXECUTABLE

Path used by the Python conda ship adapter to find the cs executable. This is mainly useful for source checkouts, tests, and custom packaging. If set, it must point to an executable file. The adapter does not fall back to another cs when this value is invalid.

CONDA_SHIP_ERROR_FORMAT

Internal diagnostic format used by the Python conda ship adapter. When set to json, cs writes a single structured JSON diagnostic line for builder failures. The adapter parses that line and renders a normal conda-facing error. Users normally do not need to set this themselves.

Runtime Variables#

CONDA_SHIP_PREFIX

Universal managed-prefix override. It takes precedence over a runtime-specific prefix variable. Use this for a runtime named conda because that runtime does not treat CONDA_PREFIX as an install override. CONDA_PREFIX can describe an activated conda environment and must not redirect the runtime bootstrap.

The remaining runtime variable names are derived from runtime-name. Non-alphanumeric characters become underscores and letters are uppercased.

RUNTIME_PREFIX

Override the managed prefix path. For a runtime named demo, the variable is DEMO_PREFIX. This compatibility variable is accepted for runtime names other than conda. CONDA_SHIP_PREFIX takes precedence when both are set.

RUNTIME_BUNDLE

Runtime-specific path to an external package bundle directory. The actual variable name is based on the runtime name. Non-alphanumeric characters become underscores and letters are uppercased. For demo, the variable is DEMO_BUNDLE.

RUNTIME_OFFLINE

Runtime-specific flag for offline bootstrap mode. For demo, the variable is DEMO_OFFLINE. Empty, 0, and false disable the flag. Other non-empty values enable it.

Runtime Update Coordinator Variables#

These variables define the version-one child-process contract for downstream transaction coordinators. They are not normal user-facing runtime controls. See Generated Runtime Reference for the required bootstrap, lock, and call sequence.

CONDA_SHIP_INTERNAL_UPDATE

Select the helper action. Version one defines v1/record-installation, v1/check, v1/stage, and v1/apply. Generated runtimes do not reserve a delegate subcommand for these operations.

CONDA_SHIP_INTERNAL_UPDATE_CANDIDATE

Lowercase SHA256 selected from the v1/check result. It is required by v1/stage and is ignored by the other actions.

CONDA_SHIP_INTERNAL_UPDATE_OFFLINE

Disable network access for update resolution and staging. Empty, 0, and false disable the flag. Other non-empty values enable it. An HTTPS update requires previously cached repodata and package content in this mode. A file:// channel is read directly.

CONDA_SHIP_INTERNAL_UPDATE_OWNERSHIP

Installed executable ownership for v1/record-installation. Supported values are direct and external.

CONDA_SHIP_INTERNAL_UPDATE_INSTALLATION

Non-blank installation label for v1/record-installation, such as standalone, constructor, homebrew, pipx, or uv-tool. The value is stored unchanged.

CONDA_SHIP_INTERNAL_UPDATE_EXECUTABLE

Optional absolute stable executable path for v1/record-installation. The path must resolve to the running executable. When omitted, the runtime uses its invocation path.

CONDA_SHIP_INTERNAL_UPDATE_INSTRUCTION

Optional non-empty external-manager instruction for v1/record-installation. Direct ownership rejects this variable.

Delegate Environment#

The runtime executes the configured delegate from the managed prefix without presenting that prefix as an activated conda environment. It does not set CONDA_PREFIX, CONDA_DEFAULT_ENV, or CONDA_SHLVL. Delegate arguments and the inherited process streams remain unchanged.

PATH

Managed-prefix executable directories are prepended to the inherited value so the delegate and its child processes can find installed commands and shared libraries. This changes PATH only. It does not activate the prefix.

Test And Development Variable#

CONDA_SHIP_ALLOW_UNSTAMPED_TEMPLATE

Allows the generic runtime template binary to run without stamped runtime data. This is used by tests. Downstream runtimes should not set it.

Warning

Do not set CONDA_SHIP_ALLOW_UNSTAMPED_TEMPLATE in distribution builds or user environments. It exists only so tests can exercise the generic template binary.