pixi 基本使用
1 pixi 介紹
pixi 是新一代的套件管理工具
2 pixi 安裝
curl -fsSL https://pixi.sh/install.sh | sh
Note
執行完後重啟 terminal
若下載遇到任何問題或需要下載 windows 版本可參考 官方網站教學
3 pixi init
pixi init ./pixi-project
cd ./pixi-project
Tip本步驟會在
pixi-project 資料夾創建 pixi.toml,點我看範例
[workspace]
authors = ["benson lee <benson106075@gmail.com>"]
channels = ["conda-forge"]
name = "pixi-project"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
修改 channel,新增 bioconda
pixi project channel add conda-forge
pixi project channel add bioconda
Tip本步驟會修改
pixi.toml,在 channels 新增 bioconda ,點我看範例
[workspace]
authors = ["benson lee <benson106075@gmail.com>"]
channels = ["conda-forge", "bioconda"]
name = "pixi-project"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
4 pixi add
透過 pixi add 新增套件
pixi add python cowpy numpy
pixi add r-base r-ggplot2
pixi add samtools
Tip本步驟會修改
pixi.toml,在 dependencies 新增各套件 ,點我看範例
[workspace]
authors = ["benson lee <benson106075@gmail.com>"]
channels = ["conda-forge", "bioconda"]
name = "pixi-project"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
python = ">=3.14.3,<3.15"
cowpy = ">=1.1.5,<2"
numpy = ">=2.4.2,<3"
r-base = ">=4.5.2,<4.6"
r-ggplot2 = ">=4.0.2,<5"
samtools = ">=1.22.1,<2"
5 pixi install
安裝 pixi.toml 中定義的所有套件
pixi install
Note第一次執行會產生 pixi.lock(或在依賴變更時更新)
pixi.lock 會記錄所有套件的確切版本與來源,用於確保環境可重現(reproducible)。
pixi.lock範例:
version: 6
environments:
default:
channels:
- url: https://conda.anaconda.org/conda-forge/
- url: https://conda.anaconda.org/bioconda/
options:
pypi-prerelease-mode: if-necessary-or-explicit
packages:
linux-64:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/_r-mutex-1.0.1-anacondar_1.tar.bz2
- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_101.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bwidget-1.10.1-ha770c72_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_8.conda
...以下省略
5.1 pixi install –locked
使用 lockfile 安裝,確保版本完全一致
pixi install --locked6 pixi task add
使用 pixi task add 新增
pixi task add run_python python ./src/hello.py
pixi task add run_samtools ./src/samtools_test.sh
pixi task add run_R Rscript ./src/demo_ggplot.R
Tip本步驟會修改
pixi.toml,在 tasks 新增各指令 ,點我看範例
[workspace]
authors = ["benson lee <benson106075@gmail.com>"]
channels = ["conda-forge", "bioconda"]
name = "pixi-project"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
run_python = "python ./src/hello.py"
run_samtools = "./src/samtools_test.sh"
run_R = "Rscript ./src/demo_ggplot.R"
[dependencies]
python = ">=3.14.3,<3.15"
cowpy = ">=1.1.5,<2"
numpy = ">=2.4.2,<3"
r-base = ">=4.5.2,<4.6"
r-ggplot2 = ">=4.0.2,<5"
samtools = ">=1.22.1,<2"
7 pixi run
pixi run run_python
Note預期輸出
__________________
< Hello Pixi fans! >
------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
任意一個 1~100的數值
- 同樣也能測試看看這兩個功能
pixi run run_samtools
pixi run run_R