pipx

私も愛用しています。

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 は裏で以下を自動化しています :

  1. 仮想環境を作成(共有用 venv 利用)
  2. package をインストール
  3. 実行ファイルや man ページをユーザーの PATH にシンボリックリンク
  4. 一時実行時も同様に仮想環境を生成して実行

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 でリセット

研究環境やツール導入に最適で、他ユーザーにも導入しやすいツールです👍 他にも知りたいコマンドや応用事例があればお気軽に聞いてください!


投稿日

カテゴリー:

投稿者:

タグ: