mirror of
				https://github.com/astral-sh/uv.git
				synced 2025-10-31 12:06:13 +00:00 
			
		
		
		
	 c9637f00f0
			
		
	
	
		c9637f00f0
		
			
		
	
	
	
	
		
			
			## Summary A bunch of fixes and improvements on different parts of the documentation. For Docker documentation changes, links to the relevant documentations have been included in the commit messages.
		
			
				
	
	
		
			87 lines
		
	
	
	
		
			6.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			6.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Environment variables
 | |
| 
 | |
| uv accepts the following command-line arguments as environment variables:
 | |
| 
 | |
| - `UV_INDEX_URL`: Equivalent to the `--index-url` command-line argument. If set, uv will use this
 | |
|   URL as the base index for searching for packages.
 | |
| - `UV_EXTRA_INDEX_URL`: Equivalent to the `--extra-index-url` command-line argument. If set, uv
 | |
|   will use this space-separated list of URLs as additional indexes when searching for packages.
 | |
| - `UV_CACHE_DIR`: Equivalent to the `--cache-dir` command-line argument. If set, uv will use this
 | |
|   directory for caching instead of the default cache directory.
 | |
| - `UV_NO_CACHE`: Equivalent to the `--no-cache` command-line argument. If set, uv will not use the
 | |
|   cache for any operations.
 | |
| - `UV_RESOLUTION`: Equivalent to the `--resolution` command-line argument. For example, if set to
 | |
|   `lowest-direct`, uv will install the lowest compatible versions of all direct dependencies.
 | |
| - `UV_PRERELEASE`: Equivalent to the `--prerelease` command-line argument. For example, if set to
 | |
|   `allow`, uv will allow pre-release versions for all dependencies.
 | |
| - `UV_SYSTEM_PYTHON`: Equivalent to the `--system` command-line argument. If set to `true`, uv
 | |
|   will use the first Python interpreter found in the system `PATH`.
 | |
|   WARNING: `UV_SYSTEM_PYTHON=true` is intended for use in continuous integration (CI) or
 | |
|   containerized environments and should be used with caution, as modifying the system Python
 | |
|   can lead to unexpected behavior.
 | |
| - `UV_PYTHON`: Equivalent to the `--python` command-line argument. If set to a path, uv will
 | |
|   use this Python interpreter for all operations.
 | |
| - `UV_BREAK_SYSTEM_PACKAGES`: Equivalent to the `--break-system-packages` command-line argument. If
 | |
|   set to `true`, uv will allow the installation of packages that conflict with system-installed
 | |
|   packages.
 | |
|   WARNING: `UV_BREAK_SYSTEM_PACKAGES=true` is intended for use in continuous integration (CI) or
 | |
|   containerized environments and should be used with caution, as modifying the system Python
 | |
|   can lead to unexpected behavior.
 | |
| - `UV_NATIVE_TLS`: Equivalent to the `--native-tls` command-line argument. If set to `true`, uv
 | |
|   will use the system's trust store instead of the bundled `webpki-roots` crate.
 | |
| - `UV_INDEX_STRATEGY`: Equivalent to the `--index-strategy` command-line argument. For example, if
 | |
|   set to `unsafe-any-match`, uv will consider versions of a given package available across all
 | |
|   index URLs, rather than limiting its search to the first index URL that contains the package.
 | |
| - `UV_REQUIRE_HASHES`: Equivalent to the `--require-hashes` command-line argument. If set to `true`,
 | |
|   uv will require that all dependencies have a hash specified in the requirements file.
 | |
| - `UV_CONSTRAINT`: Equivalent to the `--constraint` command-line argument. If set, uv will use this
 | |
|   file as the constraints file. Uses space-separated list of files.
 | |
| - `UV_LINK_MODE`: Equivalent to the `--link-mode` command-line argument. If set, uv will use this
 | |
|   as a link mode.
 | |
| - `UV_NO_BUILD_ISOLATION`: Equivalent to the `--no-build-isolation` command-line argument. If set,
 | |
|   uv will skip isolation when building source distributions.
 | |
| - `UV_CUSTOM_COMPILE_COMMAND`: Used to override uv in the output header of the `requirements.txt`
 | |
|   files generated by `uv pip compile`. Intended for use-cases in which `uv pip compile` is called
 | |
|   from within a wrapper script, to include the name of the wrapper script in the output file.
 | |
| - `UV_KEYRING_PROVIDER`: Equivalent to the `--keyring-provider` command-line argument. If set, uv
 | |
|   will use this value as the keyring provider.
 | |
| - `UV_CONFIG_FILE`: Equivalent to the `--config-file` command-line argument. Expects a path to a
 | |
|   local `uv.toml` file to use as the configuration file.
 | |
| - `UV_CONCURRENT_DOWNLOADS`: Sets the maximum number of in-flight concurrent downloads that uv
 | |
|   will perform at any given time.
 | |
| - `UV_CONCURRENT_BUILDS`: Sets the maximum number of source distributions that uv will build
 | |
|   concurrently at any given time.
 | |
| - `UV_CONCURRENT_INSTALLS`: Used to control the number of threads used when installing and unzipping
 | |
|   packages.
 | |
| - `UV_EXCLUDE_NEWER`: Equivalent to the `--exclude-newer` command-line argument. If set, uv will
 | |
|   exclude distributions published after the specified date.
 | |
| 
 | |
| In each case, the corresponding command-line argument takes precedence over an environment variable.
 | |
| 
 | |
| In addition, uv respects the following environment variables:
 | |
| 
 | |
| - `SSL_CERT_FILE`: If set, uv will use this file as the certificate bundle instead of the system's
 | |
|   trust store.
 | |
| - `SSL_CLIENT_CERT`: If set, uv will use this file for mTLS authentication. This should be a single
 | |
|   file containing both the certificate and the private key in PEM format.
 | |
| - `RUST_LOG`: If set, uv will use this value as the log level for its `--verbose` output. Accepts
 | |
|   any filter compatible with the `tracing_subscriber` crate. For example, `RUST_LOG=trace` will
 | |
|   enable trace-level logging. See the [tracing documentation](https://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html#example-syntax)
 | |
|   for more.
 | |
| - `HTTP_PROXY`, `HTTPS_PROXY`, `ALL_PROXY`: The proxy to use for all HTTP/HTTPS requests.
 | |
| - `HTTP_TIMEOUT` (or `UV_HTTP_TIMEOUT`): If set, uv will use this value (in seconds) as the timeout
 | |
|   for HTTP reads (default: 30 s).
 | |
| - `PYC_INVALIDATION_MODE`: The validation modes to use when run with `--compile`.
 | |
|   See: [`PycInvalidationMode`](https://docs.python.org/3/library/py_compile.html#py_compile.PycInvalidationMode).
 | |
| - `VIRTUAL_ENV`: Used to detect an activated virtual environment.
 | |
| - `CONDA_PREFIX`: Used to detect an activated Conda environment.
 | |
| - `PROMPT`: Used to detect the use of the Windows Command Prompt (as opposed to PowerShell).
 | |
| - `NU_VERSION`: Used to detect the use of NuShell.
 | |
| - `FISH_VERSION`: Used to detect the use of the Fish shell.
 | |
| - `BASH_VERSION`: Used to detect the use of the Bash shell.
 | |
| - `ZSH_VERSION`: Used to detect the use of the Zsh shell.
 | |
| - `MACOSX_DEPLOYMENT_TARGET`: Used with `--python-platform macos` and related variants to set the
 | |
|   deployment target (i.e., the minimum supported macOS version). Defaults to `12.0`, the
 | |
|   least-recent non-EOL macOS version at time of writing.
 | |
| - `NO_COLOR`: Disable colors. Takes precedence over `FORCE_COLOR`. See [no-color.org](https://no-color.org).
 | |
| - `FORCE_COLOR`: Enforce colors regardless of TTY support. See [force-color.org](https://force-color.org).
 |