2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Anacondaはもう古い?次世代パッケージ管理ツール【Pixi】を徹底解剖

Posted at

はじめに

最近、研究用にPythonのパッケージ管理をしたくなり、色々あさっていたところuvというRust製の高速パッケージ管理ツールに辿り着いた。ただ、古いpip依存のパッケージのインストールができず泣く泣く断念しかけたところ、Pixiというconda型パッケージ管理ツールに出会った。ビビッと来たものがあったので、今回はその魅力をご紹介!!

古くてuvでのインストールを断念したパッケージはこちら

pipとconda

Pythonでパッケージ管理をする人にとって誰もが知ってるであろうパッケージ管理ツールにpipcondaがある。あまり違いをわかっていない人も多いので違いをまとめてみた。

項目 pip conda
管理対象 Pythonパッケージのみ Python + 他言語のパッケージ
リポジトリ PyPI (Python Package Index) Conda (Anaconda, conda-forge)
依存関係解決 単純 高度
速度 標準的 遅い
用途 Web開発 データサイエンス・機械学習

condaはPython以外のパッケージや仮想環境を扱うことができて便利である一方で、動作が一般的に遅いことが知られている。一方でpipはPythonのパッケージのみを扱うことを目的としており、condaと比べて軽量で高速である一方、仮想環境管理はvenvなど他のツールと組み合わせる必要がある。

Pixiとは

  • Pixi軽量・高速・直感的をコンセプトに登場したconda型パッケージ管理ツール
  • Pythonのパッケージ管理にとどまらず、他のプログラミング言語にも対応

従来ツールとの比較

項目 pip uv conda Pixi
リポジトリ PyPI PyPI Conda Conda + PyPI
管理対象 Pythonのみ Pythonのみ Python + 他言語 Python + 他言語
速度 標準的 :white_check_mark:速い 遅い :white_check_mark:速い
安全性 低い :white_check_mark:高い :white_check_mark:高い :white_check_mark:高い
依存関係解決 単純 単純 :white_check_mark:高度 :white_check_mark:高度

PixiはRust製であることで高速化を実現し、pipとcondaのいいとこどりをしたパッケージ管理であることがわかる。またPixiでは他のパッケージ管理ツールではあまり実装されていない、タスクランナー機能を持ち合わせており、よく使うコマンド群を簡単にまとめることもできる!

インストール方法

以下のような形でインストールできる。詳しくは公式ドキュメントを参照。

Linux or macOS

curl -fsSL https://pixi.sh/install.sh | bash

Windows

powershell -ExecutionPolicy ByPass -c "irm -useb https://pixi.sh/install.ps1 | iex"

powershell -c "irm -useb https://pixi.sh/install.ps1 | more"

pixiの詳しい使い方や便利機能については本記事では割愛したいと思う。
また別の記事で書いて公開しようと思うのでお楽しみに。

まとめ

  • 軽量・高速・直感的を目指すPixiは、pipcondaのいいとこ取りをした強力なパッケージ管理ツール
  • Rust製特有の高速性と安全性が大きな魅力
  • チーム開発で重宝されるタスクランナー機能も持ち合わせている
  • Python以外の言語を使ったプロジェクトでも活躍の可能性大

パッケージ管理で悩んでいるなら、次世代パッケージ管理ツールPixiをぜひ一度試してみてください!

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?