From ec71fb1f75c90593f1b858a2c1269782ed5d545a Mon Sep 17 00:00:00 2001 From: Zanie Blue Date: Thu, 24 Oct 2024 16:04:21 -0500 Subject: [PATCH] Move the installation configuration docs to a separate page (#8546) --- docs/configuration/installer.md | 50 ++++++++++++++++++++++++++++ docs/getting-started/installation.md | 41 ++--------------------- mkdocs.template.yml | 1 + 3 files changed, 53 insertions(+), 39 deletions(-) create mode 100644 docs/configuration/installer.md diff --git a/docs/configuration/installer.md b/docs/configuration/installer.md new file mode 100644 index 000000000..352689b5c --- /dev/null +++ b/docs/configuration/installer.md @@ -0,0 +1,50 @@ +# Configuring the uv installer + +## Changing the install path + +By default, uv is installed to `~/.cargo/bin`. To change the installation path, use +`UV_INSTALL_DIR`: + +=== "macOS and Linux" + + ```console + $ curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR="/custom/path" sh + ``` + +=== "Windows" + + ```powershell + $env:UV_INSTALL_DIR = "C:\Custom\Path" powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" + ``` + +## Disabling shell modifications + +The installer may also update your shell profiles to ensure the uv binary is on your `PATH`. To +disable this behavior, use `INSTALLER_NO_MODIFY_PATH`. For example: + +```console +$ curl -LsSf https://astral.sh/uv/install.sh | env INSTALLER_NO_MODIFY_PATH=1 sh +``` + +If installed with `INSTALLER_NO_MODIFY_PATH`, subsequent operations, like `uv self update`, will not +modify your shell profiles. + +## Unmanaged installations + +In ephemeral environments like CI, use `UV_UNMANAGED_INSTALL` to install uv to a specific path while +preventing the installer from modifying shell profiles or environment variables: + +```console +$ curl -LsSf https://astral.sh/uv/install.sh | env UV_UNMANAGED_INSTALL="/custom/path" sh +``` + +The use of `UV_UNMANAGED_INSTALL` will also disable self-updates (via `uv self update`). + +## Passing options to the install script + +Using environment variables is recommended because they are consistent across platforms. However, +options can be passed directly to the install script. For example, to see the available options: + +```console +$ curl -LsSf https://astral.sh/uv/install.sh | sh -s -- --help +``` diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index cc354a12e..e89a1534e 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -52,45 +52,8 @@ Request a specific version by including it in the URL: Alternatively, the installer or binaries can be downloaded directly from [GitHub](#github-releases). -#### Configuring installation - -By default, uv is installed to `~/.cargo/bin`. To change the installation path, use -`UV_INSTALL_DIR`: - -=== "macOS and Linux" - - ```console - $ curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR="/custom/path" sh - ``` - -=== "Windows" - - ```powershell - $env:UV_INSTALL_DIR = "C:\Custom\Path" powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" - ``` - -The installer will also update your shell profiles to ensure the uv binary is on your `PATH`. To -disable this behavior, use `INSTALLER_NO_MODIFY_PATH`. For example: - -```console -$ curl -LsSf https://astral.sh/uv/install.sh | env INSTALLER_NO_MODIFY_PATH=1 sh -``` - -Using environment variables is recommended because they are consistent across platforms. However, -options can be passed directly to the install script. For example, to see the available options: - -```console -$ curl -LsSf https://astral.sh/uv/install.sh | sh -s -- --help -``` - -In ephemeral environments like CI, use `UV_UNMANAGED_INSTALL` to install uv to a specific path while -preventing the installer from modifying shell profiles or environment variables: - -```console -$ curl -LsSf https://astral.sh/uv/install.sh | env UV_UNMANAGED_INSTALL="/custom/path" sh -``` - -The use of `UV_UNMANAGED_INSTALL` will also disable self-updates (via `uv self update`). +See the documentation on [installer configuration](../configuration/installer.md) for details on +customizing your uv installation. ### PyPI diff --git a/mkdocs.template.yml b/mkdocs.template.yml index b8817b5eb..b5685b81c 100644 --- a/mkdocs.template.yml +++ b/mkdocs.template.yml @@ -107,6 +107,7 @@ nav: - Environment variables: configuration/environment.md - Authentication: configuration/authentication.md - Package indexes: configuration/indexes.md + - Installer: configuration/installer.md - Integration guides: - guides/integration/index.md - Docker: guides/integration/docker.md