aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorMukilan Thiyagarajan <mukilan@igalia.com>2024-12-16 14:50:37 +0530
committerGitHub <noreply@github.com>2024-12-16 09:20:37 +0000
commit88a35b3cc99b6bf47099f1551b6a2349bba76c15 (patch)
tree67ad14a3a325e09c614b2ad53da50b846d023661 /README.md
parentf757fa46acc865f42205d152dd06e381a674f788 (diff)
downloadservo-88a35b3cc99b6bf47099f1551b6a2349bba76c15.tar.gz
servo-88a35b3cc99b6bf47099f1551b6a2349bba76c15.zip
mach: adopt `uv` and avoid system python (#34632)
This allows us to use `uv` for: 1. Installing a pinned Python version 2. Installing the dependency packages using `uv`'s pip compatible interface. 4. Bootstrapping `mach` without a Python installion on the host, using `uv run` This change also introduces a new 'composite' GitHub action to setup python in the different CI workflows. There is no support for externally managed python installations and virtual environments. These could be added in the future. Fixes #34095, #34547 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Diffstat (limited to 'README.md')
-rw-r--r--README.md16
1 files changed, 9 insertions, 7 deletions
diff --git a/README.md b/README.md
index 0c83a837d29..8147702f92d 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,8 @@ For more detailed build instructions, see the Servo book under [Setting up your
### macOS
-- Download and install [`python`](https://www.python.org/downloads/macos/) (version 3.10 to 3.12), [Xcode](https://developer.apple.com/xcode/), and [`brew`](https://brew.sh/).
+- Download and install [Xcode](https://developer.apple.com/xcode/) and [`brew`](https://brew.sh/).
+- Install `uv`: `curl -LsSf https://astral.sh/uv/install.sh | sh`
- Install `rustup`: `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`
- Restart your shell to make sure `cargo` is available
- Install the other dependencies: `./mach bootstrap`
@@ -25,11 +26,12 @@ For more detailed build instructions, see the Servo book under [Setting up your
### Linux
-- Install `curl` and `python` (version 3.10 to 3.12):
- - Arch: `sudo pacman -S --needed curl python python-pip`
- - Debian, Ubuntu: `sudo apt install curl python3-pip python3-venv python3-setuptools`
- - Fedora: `sudo dnf install curl python3 python3-pip python3-devel`
- - Gentoo: `sudo emerge net-misc/curl dev-python/pip`
+- Install `curl`:
+ - Arch: `sudo pacman -S --needed curl`
+ - Debian, Ubuntu: `sudo apt install curl`
+ - Fedora: `sudo dnf install curl`
+ - Gentoo: `sudo emerge net-misc/curl`
+- Install `uv`: `curl -LsSf https://astral.sh/uv/install.sh | sh`
- Install `rustup`: `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`
- Restart your shell to make sure `cargo` is available
- Install the other dependencies: `./mach bootstrap`
@@ -37,7 +39,7 @@ For more detailed build instructions, see the Servo book under [Setting up your
### Windows
-- Download and install [`python`](https://www.python.org/downloads/windows/) (version 3.10 to 3.12), [`choco`](https://chocolatey.org/install#individual), and [`rustup`](https://win.rustup.rs/)
+- Download [`uv`](https://docs.astral.sh/uv/getting-started/installation/#standalone-installer), [`choco`](https://chocolatey.org/install#individual), and [`rustup`](https://win.rustup.rs/)
- Be sure to select *Quick install via the Visual Studio Community installer*
- In the Visual Studio Installer, ensure the following components are installed:
- **Windows 10 SDK (10.0.19041.0)** (`Microsoft.VisualStudio.Component.Windows10SDK.19041`)