875 Views
November 18, 24
スライド概要
新しいCondaパッケージマネージャーのPixiの説明スライドです。
Pixi について 2024/11/16@ぎーじゅくもくもく会 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi :新世代のCondaパッケージマネージャ パッケージ管理の課題を解決する新しい選択肢 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi とは? Pixi: Condaパッケージマネージャー Rust で実装された高速かつ安全な設計 モダンな開発ワークフローをサポート 特徴 サブコマンドが rye と似ている( pixi add , pixi run ) 軽量かつ依存関係解決が高速 pyproject.toml をネイティブにサポート 仮想環境を意識せずに直接プロジェクトを管理可能 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
なぜ Pixi を使うべきか? 従来の問題点: 仮想環境( venv )の管理が面倒 pip や conda の依存関係解決に時間がかかる conda のC++実装の mamba や micromamba は速い pip だとグローバル環境を汚染しやすい conda だと環境を切り分けられるがグローバルに必要なパッケージを 環境ごとにインストールする必要がある condax を使うという手はある Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
の解決策: プロジェクトごとに環境を完全に分離 インストールが高速(Rust のおかげ!) 標準化された設定ファイル ( pixi.toml ) Pixi Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi の基本的な使い方 インストール # UNIX系 curl -sSL https://install.pixi.dev | bash # Conda conda install pixi -c conda-forge # Homebrew brew install pixi Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
プロジェクトを始める pixi init pixi add <パッケージ名> # プログラムを実行 pixi run python # もしくは明示的に仮想環境に入ってプログラムを実行 pixi shell python Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
パッケージのインストール # プロジェクトにインストール(その環境だけで使える) pixi add python==3.13 numpy pandas polars # グローバルインストール(すべての環境で使えるようになる) pixi global install ruby rust julia git Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi の便利な機能 タスクランナー機能: pixi task add <タスク名> でタスクを定義 pixi run <タスク名 or コマンド名> でタスク/コマンドを実行 環境のクリーンアップ: 依存関係をシンプルに管理 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi の強み:従来ツールとの比較 ツール Pixi pip conda 速度 高速 遅い 遅い 安全性 高い 普通 高い 依存解決 正確 微妙 正確 セットアップ 簡単 簡単 やや複雑 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi の安全性 による設計: メモリ安全性が高い 依存関係の分離: グローバル環境を一切汚染しない Rust Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
Pixi を使うメリット Python 環境を簡潔かつ安全に管理 パフォーマンス重視の開発 モダンなエコシステムとの互換性 Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
次のステップ 1. 公式ドキュメントを読む https://pixi.sh 2. 使ってみよう 簡単なプロジェクトで始めると Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128
ご清聴ありがとうございました! Pixi: 新世代のCondaパッケージマネージャ | @masa_u1128