私も愛用しています。
pipx は、Python製のCLIアプリケーションを簡単にインストール・実行できるツールで、仮想環境をアプリごとに隔離しつつ、バイナリをPATHに露出する仕組みです 。
🛠 インストール方法
Linux
python3 -m pip install --user pipx
python3 -m pipx ensurepath
または、APTでインストールできます:
sudo apt update
sudo apt install pipx
pipx ensurepath
macOS
brew install pipx
pipx ensurepath
PATH周りに問題が生じたら pipx ensurepath --prepend や --global フラグも便利です (pipx.pypa.io)。
Windows
Scoop使用:
scoop install pipx
pipx ensurepath
または pip から:
py -m pip install --user pipx
.\pipx.exe ensurepath
基本操作
アプリのインストール
pipx install PACKAGE_NAME
例:
pipx install pycowsay
pycowsay mooo
これで仮想環境を自動生成し、コマンドをグローバルに使えるようになります 。
アプリの一覧表示
pipx list
インストール済みアプリと仮想環境の情報を確認できます 。
アップグレード・アンインストール
pipx upgrade PACKAGE_NAME
pipx uninstall PACKAGE_NAME
すべてのアプリを一括アップグレード
pipx upgrade-all
問題が起きたときの再構築
pipx reinstall-all
これは特に Python のバージョン変更後や pipx 自体を更新した後に有効です (pipx.pypa.io)。
実行専用(一時的実行)
最新バージョンを一時環境で使いたいとき:
pipx run PACKAGE
特定バージョン指定やGitリポジトリからの実行も可能です 。
便利な機能
- inject: 既存仮想環境に依存パッケージを追加
pipx inject ptpython requests pendulum - –python フラグ: 特定のPythonバージョンでインストール
pipx install --python python3.10 pycowsay - –pip-args, –index-url: private repo対応や pip オプション指定 (pipx.pypa.io)
背景・しくみ
pipx は裏で以下を自動化しています :
- 仮想環境を作成(共有用 venv 利用)
- package をインストール
- 実行ファイルや man ページをユーザーの PATH にシンボリックリンク
- 一時実行時も同様に仮想環境を生成して実行
pip + venv と何が違う?
- 完全自動化:仮想環境の生成から PATH シンボリックまでワンコマンド
- 隔離環境:各アプリが依存バージョンで他と衝突せず、
- スムーズな実行:
pycowsayのように、インストール後すぐ使える (pipx.pypa.io)
✅ まとめ
- インストール:
pip install --user pipx+pipx ensurepath - アプリ:
pipx install,pipx list,upgrade,uninstall - 一時実行:
pipx run - 依存追加:
pipx inject - トラブル:
pipx reinstall-allでリセット
研究環境やツール導入に最適で、他ユーザーにも導入しやすいツールです👍 他にも知りたいコマンドや応用事例があればお気軽に聞いてください!