CLI reference#
conda-presto registers as a conda subcommand plugin. After installation,
conda presto is available alongside other conda commands.
Synopsis#
conda presto [OPTIONS] [SPECS...]
Resolve package specs or environment files to fully pinned package lists without installing anything.
Positional arguments#
SPECSOne or more conda match specs, e.g.
python=3.12 numpy. These are combined with any specs found in files passed via--file.
Options#
-c,--channelAdditional channel to search. Can be repeated. Conda also includes channels from
.condarcunless--override-channelsis present. When the effective conda context has no channels or onlydefaults, conda-presto uses channels from input files, thenCONDA_PRESTO_CHANNELS.conda presto -c conda-forge -c bioconda python=3.12
-p,--platformTarget platform subdir (e.g.
linux-64,osx-arm64,win-64). Can be repeated to solve for multiple platforms in parallel. When omitted, solves for the current host platform only.conda presto -p linux-64 -p osx-arm64 python=3.12
-f,--filePath to an environment file. Can be repeated. Each file is selected and parsed through conda’s installed environment-specifier plugins. The base installation supports environment YAML and requirements files, while the required conda-lockfiles package adds conda-lock and rattler-lock formats. The adapter does not accept conda’s explicit-file specifier as input. Specs from all files are merged with positional specs.
conda presto -f environment.yml -f extra-deps.yml -p linux-64
--formatRoute the output through a conda exporter plugin instead of emitting the default JSON. See Output formats for the full list.
conda presto --format explicit -c conda-forge -p linux-64 zlib
-O,--override-channelsIgnore channels configured in
.condarcand use only the channels given via-c.--solverStandard conda parser option. Direct
conda prestoresolves always use rattler through conda-rattler-solver, so this option does not select a different engine for the subcommand. To delegate a conda transaction to the broker-backed Presto solver, useconda --solver=presto ...instead.--use-localAdd conda’s local build channel. Equivalent to
-c local.--repodata-fnSelect a repodata filename. Can be repeated. Conda adds
repodata.jsonas a final fallback.--experimental {jlap,lock}Deprecated option inherited from conda’s networking parser. Both choices are no longer supported and the option has no conda-presto-specific behavior.
--repodata-use-zst,--no-repodata-use-zstEnable or disable compressed
repodata.json.zstmetadata.--repodata-use-shards,--no-repodata-use-shardsEnable or disable sharded repodata where a channel provides it.
-C,--use-index-cacheAccept cached channel metadata even when its normal time-to-live has expired.
-k,--insecureDisable TLS certificate verification for channel access.
--no-lockDisable conda locking while reading or updating the repodata cache. Avoid this when another conda process can use the same package cache.
--offlineRun without network access. Only packages already present in the local repodata cache are considered.
--serveStart the HTTP API server instead of solving. Combine with
--hostand--portto configure the bind address.conda presto --serve --port 9000
--hostBind address for the HTTP server. Default: the value of
CONDA_PRESTO_HOST, or127.0.0.1.--portPort for the HTTP server. Default: the value of
CONDA_PRESTO_PORT, or8000.
Examples#
Resolve a single package for one platform:
conda presto -c conda-forge -p linux-64 zlib
Resolve an environment file for multiple platforms:
conda presto -f environment.yml -p linux-64 -p osx-arm64
Merge inline specs with a file and produce an explicit lockfile:
conda presto -f environment.yml -p linux-64 --format explicit scipy
Convert environment.yml to pixi.lock:
conda presto -f environment.yml -p linux-64 --format pixi-lock-v6 > pixi.lock
Convert one lockfile format to another without solving:
conda presto -f pixi.lock -p linux-64 --format conda-lock-v1 > conda-lock.yml
Start the HTTP server on a custom port:
conda presto --serve --host 0.0.0.0 --port 9000
Use the broker-backed Presto solver for a conda transaction:
conda create --dry-run --solver presto -n demo -c conda-forge numpy
Offline solve using only cached repodata:
conda presto --offline -c conda-forge -p linux-64 zlib
Exit codes#
Code |
Meaning |
|---|---|
0 |
Command completed. Default JSON output may still contain per-platform |
1 |
Invalid input, unknown format, or solver failure on an exporter-format path. |
2 |
Argument parsing error from |