Skip to content

Commit 490a0a6

Browse files
committed
docs: add DEBIAN_SETUP.md using uv for Debian environments
1 parent c269768 commit 490a0a6

1 file changed

Lines changed: 39 additions & 7 deletions

File tree

LINUX_SETUP.md

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,39 +8,68 @@ git clone git@github.com:[username]/malariagen-data-python.git
88
cd malariagen-data-python
99
```
1010

11-
## 2. Install Python
11+
## 2. Install pipx
12+
13+
Choose the command for your Linux distribution:
14+
15+
**Ubuntu, Debian, and Mint:**
16+
1217
```bash
13-
sudo add-apt-repository ppa:deadsnakes/ppa
14-
sudo apt install python3.10 python3.10-venv
18+
sudo apt update
19+
sudo apt install -y pipx
20+
pipx ensurepath
1521
```
1622

17-
## 3. Install pipx and poetry
23+
**Fedora:**
24+
25+
```bash
26+
sudo dnf install pipx
27+
pipx ensurepath
28+
```
29+
30+
**Arch Linux:**
31+
32+
```bash
33+
sudo pacman -S python-pipx
34+
pipx ensurepath
35+
```
36+
37+
*(Note: You may need to open a new terminal or run `source ~/.profile` to apply PATH changes after this step).*
38+
39+
## 3. Install Poetry and Python 3.12
40+
41+
The package requires `>=3.10,<3.13`. We use Poetry's built-in installer to handle the Python version universally across all distributions.
42+
1843
```bash
19-
python3.10 -m pip install --user pipx
20-
python3.10 -m pipx ensurepath
2144
pipx install poetry
45+
poetry python install 3.12
2246
```
2347

2448
## 4. Create and activate development environment
49+
2550
```bash
26-
poetry install
51+
poetry env use 3.12
52+
poetry install --extras dev
2753
poetry shell
2854
```
2955

3056
## 5. Install pre-commit hooks
57+
3158
```bash
3259
pipx install pre-commit
3360
pre-commit install
3461
```
3562

3663
Run pre-commit checks manually:
64+
3765
```bash
3866
pre-commit run --all-files
3967
```
4068

4169
## 6. Run tests
4270

4371
Run fast unit tests using simulated data:
72+
4473
```bash
4574
poetry run pytest -v tests/anoph
4675
```
@@ -50,16 +79,19 @@ poetry run pytest -v tests/anoph
5079
To run legacy tests which read data from GCS, you'll need to [request access to MalariaGEN data on GCS](https://malariagen.github.io/vector-data/vobs/vobs-data-access.html).
5180

5281
Once access has been granted, [install the Google Cloud CLI](https://cloud.google.com/sdk/docs/install):
82+
5383
```bash
5484
./install_gcloud.sh
5585
```
5686

5787
Then obtain application-default credentials:
88+
5889
```bash
5990
./google-cloud-sdk/bin/gcloud auth application-default login
6091
```
6192

6293
Once authenticated, run legacy tests:
94+
6395
```bash
6496
poetry run pytest --ignore=tests/anoph -v tests
6597
```

0 commit comments

Comments
 (0)