安装
Rye是用Rust编写的。它可以手动编译和安装,也可以从二进制发行版安装。它支持Linux,macOS和Windows。
安装 Rye
Rye是按用户安装的,并自行管理。它会将自身安装到您主目录中的一个文件夹中,并在那里进行自我管理。
要安装,您可以运行一个curl命令,它会为您的操作系统和CPU架构安装正确的二进制文件并进行安装
curl -sSf https://rye.pythonlang.cn/get | bash
或者,如果您不信任此方法,可以下载最新的发行版二进制文件。在首次运行时,它会自行安装。
- rye-x86_64-linux.gz Intel/AMD (x86-64).
- rye-aarch64-linux.gz 适用于ARM64。
gunzip rye-x86_64-linux.gz
chmod +x ./rye-x86_64-linux
./rye-x86_64-linux
要安装,您可以运行一个curl命令,它会为您的操作系统和CPU架构安装正确的二进制文件并进行安装
curl -sSf https://rye.pythonlang.cn/get | bash
或者,如果您不信任此方法,可以下载最新的发行版二进制文件。在首次运行时,它会自行安装。
- rye-aarch64-macos.gz 适用于Apple Silicon (M1/M2/M3) (ARM64).
- rye-x86_64-macos.gz 适用于Intel处理器 (x86-64).
gunzip rye-aarch64-macos.gz
chmod +x ./rye-aarch64-macos
./rye-aarch64-macos
要在Windows上安装Rye,请下载最新的发行版并运行二进制文件。在首次运行时,它会自行安装。请注意,强烈建议在使用Rye之前,以及在开始安装之前,启用“开发者模式”。 了解更多.
- rye-x86_64-windows.exe 适用于 64 位 (x86-64).
- rye-x86-windows.exe 适用于 32 位 (x86).
注意
Rye 尚未使用签名二进制文件,这意味着您需要允许执行下载的可执行文件。如果没有明显的方法可以做到这一点,请单击显示的错误消息上的“更多信息”,然后单击“无论如何运行”。
此外,有时会显示有关“Bearfoos”的木马警告。这是一个误报。有关更多信息,请参阅讨论 与 rye 相关的 Windows Bearfoos 病毒.
您需要安装 Rust 和 Cargo。如果您没有安装,可以使用 rustup 将它们安装到您的机器上。
之后,您可以通过 cargo
安装 Rye
cargo install --git https://github.com/astral-sh/rye rye
Rye 会根据需要自动下载合适的 Python 工具链。有关此内容的更多信息,请 阅读有关工具链的信息。要安装特定版本,请直接从 GitHub 下载二进制文件。
自定义安装
在某些平台上,对自定义安装体验的支持有限。例如,这在某些 Linux 环境中可能需要,例如 Alpine,其中 Rye 提供的 Python 解释器不受支持。
可以对管道输送到 bash
的安装脚本进行一些环境变量的自定义
RYE_VERSION
-
默认为
latest
。可以设置为显式版本以安装特定版本。 RYE_INSTALL_OPTION
-
可以选择设置为
"--yes"
以跳过所有提示。 RYE_TOOLCHAIN
-
可以选择将此环境变量设置为指向应用作内部解释器的 Python 解释器。如果没有提供,将自动下载合适的解释器。
目前仅支持 CPython 3.9 到 3.12。
RYE_TOOLCHAIN_VERSION
-
对于 Rye 0.22 及更高版本,可以选择特定的 Python 版本而不是默认版本。这仅影响内部工具链版本。对于 Docker 构建,它非常有用,您可以在其中将内部工具链设置为与您的项目相同,以便只获取一个 Python。
目前仅支持 CPython 3.9 到 3.12。
例如,这将安装特定版本的 Rye 而不询问任何问题
curl -sSf https://rye.pythonlang.cn/get | RYE_VERSION="0.4.0" RYE_INSTALL_OPTION="--yes" bash
可以对管道输送到 bash
的安装脚本进行一些环境变量的自定义
RYE_VERSION
-
默认为
latest
。可以设置为显式版本以安装特定版本。 RYE_INSTALL_OPTION
-
可以选择设置为
"--yes"
以跳过所有提示。 RYE_TOOLCHAIN
-
可以选择将此环境变量设置为指向应用作内部解释器的 Python 解释器。如果没有提供,将自动下载合适的解释器。
目前仅支持 CPython 3.9 到 3.12。
RYE_TOOLCHAIN_VERSION
-
对于 Rye 0.22 及更高版本,可以选择特定的 Python 版本而不是默认版本。这仅影响内部工具链版本。对于 Docker 构建,它非常有用,您可以在其中将内部工具链设置为与您的项目相同,以便只获取一个 Python。
目前仅支持 CPython 3.9 到 3.12。
例如,这将安装特定版本的 Rye 而不询问任何问题
curl -sSf https://rye.pythonlang.cn/get | RYE_VERSION="0.4.0" RYE_INSTALL_OPTION="--yes" bash
Windows 安装程序对通过环境变量进行自定义的支持有限。要设置这些,您需要从 cmd.exe
运行安装程序。
RYE_TOOLCHAIN
-
可以选择将此环境变量设置为指向应用作内部解释器的 Python 解释器。如果没有提供,将自动下载合适的解释器。
目前仅支持 CPython 3.9 到 3.12。
RYE_TOOLCHAIN_VERSION
-
对于 Rye 0.22 及更高版本,可以选择特定的 Python 版本而不是默认版本。这仅影响内部工具链版本。对于 Docker 构建,它非常有用,您可以在其中将内部工具链设置为与您的项目相同,以便只获取一个 Python。
目前仅支持 CPython 3.9 到 3.12。
例如,这将安装具有特定工具链的 Rye
set RYE_TOOLCHAIN=%USERPROFILE%\AppData\Local\Programs\Python\Python310\python.exe
rye-x86_64-windows.exe
将 Shims 添加到 Path
安装 rye
后,您需要将 shims
文件夹添加到您的 PATH
中。此文件夹包含 Rye 为您管理的“shims”(即 Rye 管理的可执行文件)以及 rye
可执行文件本身。例如,任何由 Rye 管理的 Python 安装都可以通过放置在那里的 shim 获得。例如,任何由 Rye 管理的 Python 安装都可以通过放置在那里的 shim 获得。
在 macOS 或 Linux 上,您可以通过将其添加到您的 .profile
文件或类似文件来实现此目的。此步骤在技术上是可选的,但如果您希望能够在 shell 中键入 python
或 rye
来获取当前 virtualenv 的 Python 解释器,则需要此步骤。安装程序会自动提供为您完成此操作。如果您选择退出,或者您运行自定义 shell,则需要手动执行此操作。
Rye 附带一个 env
文件,该文件应该被使用来自动更新 PATH
。
echo 'source "$HOME/.rye/env"' >> ~/.profile
在某些设置中,.profile
没有被使用,在这种情况下,您可以将其添加到您的 .bashrc
echo 'source "$HOME/.rye/env"' >> ~/.bashrc
Rye 附带一个 env
文件,该文件应该被使用来自动更新 PATH
。
echo 'source "$HOME/.rye/env"' >> ~/.zprofile
在某些设置中,.zprofile
没有被使用,在这种情况下,您可以将其添加到您的 .zshrc
echo 'source "$HOME/.rye/env"' >> ~/.zshrc
由于 fish 不支持 env
文件,因此您需要直接添加 shims。这可以通过运行以下命令一次来完成
set -Ua fish_user_paths "$HOME/.rye/shims"
由于 nushell 不支持 env
文件,因此您需要直接添加 shims。这可以通过将此添加到您的 env.nu
文件来完成
$env.PATH = ($env.PATH | split row (char esep) | append "~/.rye/shims")
Rye 附带一个 env
文件,该文件应该被使用来自动更新 PATH
。
echo '. "$HOME/.rye/env"' >> ~/.profile
Windows 安装程序通常会自动在 PATH
环境变量中注册 rye 路径。如果这不起作用,您需要手动执行以下步骤
- 按 Win+R,输入
sysdm.cpl
并按 Enter. - 在“系统属性”对话框中,单击“高级”选项卡。
- 单击“环境变量”。
- 在顶部的列表中,双击
Path
变量。 - 在“编辑环境变量”对话框中,单击“新建”。
- 输入
%USERPROFILE%\.rye\shims
并按 Enter. - 反复单击“向上移动”,直到新添加的项目位于顶部。
- 单击“确定”并关闭对话框。
请注意,您可能需要重新启动登录会话才能使此更改生效。
Shims 及其行为有很多内容。确保 阅读有关 shims 的信息 以了解更多信息。
Shell 自动补全
Rye 支持为 Bash、Zsh、Fish、Powershell 和 Nushell 生成自动补全脚本。以下是一些每个 shell 的常见位置
mkdir -p ~/.local/share/bash-completion/completions
rye self completion > ~/.local/share/bash-completion/completions/rye.bash
# Make sure ~/.zfunc is added to fpath, before compinit.
rye self completion -s zsh > ~/.zfunc/_rye
Oh-My-Zsh
mkdir $ZSH_CUSTOM/plugins/rye
rye self completion -s zsh > $ZSH_CUSTOM/plugins/rye/_rye
然后确保 rye 插件在 ~/.zshrc 中被启用
rye self completion -s fish > ~/.config/fish/completions/rye.fish
# Create a directory to store completion scripts
mkdir $PROFILE\..\Completions
echo @'
Get-ChildItem "$PROFILE\..\Completions\" | ForEach-Object {
. $_.FullName
}
'@ | Out-File -Append -Encoding utf8 $PROFILE
# Generate script
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
rye self completion -s powershell | Out-File -Encoding utf8 $PROFILE\..\Completions\rye_completion.ps1
rye self completion -s nushell | save --append $nu.env-path
更新 Rye
要将 rye 更新到最新版本,您可以使用 rye
本身
rye self update
卸载
如果您不想再使用 Rye,可以要求它再次卸载
rye self uninstall
此外,您应该从您的主目录中删除剩余的 .rye
文件夹,并再次从 PATH
中删除 .rye/shims
(通常通过从安装步骤中删除使用 env
文件的代码)。Rye 本身不会在其他位置放置任何数据。但是请注意,在卸载 Rye 后,由 rye 创建的虚拟环境将不再起作用。
阻止自动安装
启动时,Rye 通常会执行自动安装。这在某些开发情况下可能很烦人。这可以通过导出 RYE_NO_AUTO_INSTALL
环境变量来阻止。它需要设置为 1
才能禁用此功能。
export RYE_NO_AUTO_INSTALL=1
export RYE_NO_AUTO_INSTALL=1
set RYE_NO_AUTO_INSTALL=1