pixi は次世代 Python パッケージマネージャ。

  • conda-forge からダウンロードするので幅広いツールを入れることができる
  • conda, mamba の置き換えが可能
    • 仮想環境をつくり、conda/mamba (=conda-forge) のパッケージおよび pip (=PyPI) のパッケージを一括で管理することができる。
    • uv pip と異なり、pip コマンドをそのまま使うので問題も発生しにくい
  • global 環境にインストールすることによりどこでもコマンドを実行できるようになるため、apt, homebrew のような役割も果たせる。これらの置き換えも可能と謳う
    • global というが、すべてのファイルは $HOME/.pixi に落とされるので、パッケージはユーザーごとに管理される。このディレクトリ自体を消すだけで pixi 全体がアンインストールされる。簡単!

パッケージを global 環境にインストール

上に書いたように pixi はホーム以下にパッケージを落とすので、ここで言う global とはシステム全体という意味ではなくユーザー全体という意味。

インストールするには pixi global install xxx 。インストールしたコマンドは $HOME/.pixi/bin にバイナリが配置されるのでこれを PATH に加える。

conda-forge が丸ごと使えるので有名どころはインストールできる。

  • nvim, fish, fzf, yazi, fd, zellij などなど
  • fd が fd-find になっていたりと、パッケージ名とがコマンド名が違うことが時々あるので conda-forge を検索する。
    • ex. pixi search '*fd*'fd-find を見つけた後、 pixi search fd-find をすると詳細な情報を見られる

インストールされたシェルツールのリストは $HOME/.pixi/manifests/pixi-global.toml に保存されている。これをバックアップしておけば、新しい PC にコピーしてきて

pixi global sync

で開発環境をすぐに再現することができる。

cf. pixi global でシェルツールを華麗に管理する

conda/mamba を置き換え、仮想環境マネージャとして使う

Conda と比較したときのコマンドの対応表が Conda/Mamba - Pixi by prefix.dev にある。
シナリオごとにまとめ直すと以下のとおり

仮想環境の作り方

pixi init env_name
cd env_name && pixi shell # env_name環境での新たなシェルを起動。 pixi shell -e env_name でもよい
pixi add python=3.12 # バージョンは好きに選ぶ
python3 -m ensurepip # これでpip3が使えるようになる

仮想環境を起動する

pixi shell -e env_name
pip3 install <pypi packages> # PyPIのパッケージが使える
pixi add <conda-forge packages> # conda-forgeのパッケージも使える
python3 ... # コマンドを実行

もし conda activate のように、既存のシェルを保ったまま仮想環境に入りたい場合は

eval "$(pixi shell-hook)"

とする。(Shell - Pixi by prefix.dev)

環境を一度消してやり直す

pixi clean -e env_name

さらに詳しく

より詳しい pixi の活用法について、以下が参考になる