pipx
pipxにアクセスしてREADMEを読む。
以下コマンドでインストールする。
sudo apt update sudo apt install pipx pipx ensurepath sudo pipx ensurepath --global # optional to allow pipx actions with --global argument
エラー
エラー1
以下のようなエラーログが延々と出る。
Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is heWaiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend.
sudo rm -rf /var/lib/dpkg/lock /var/lib/dpkg/lock-frontend
エラー2
sudo apt install pipx
パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています... 完了 状態情報を読み取っています... 完了 以下のパッケージが自動でインストールされましたが、もう必要とされていません: libbasicusageenvironment1 libgroupsock8 liblivemedia77 python3-v4l2 これを削除するには 'sudo apt autoremove' を利用してください。 以下の追加パッケージがインストールされます: fonts-font-awesome ghp-import libjs-bootstrap4 libjs-highlight.js libjs-lunr libjs-modernizr libjs-popper.js libjs-sizzle mkdocs node-jquery python3-argcomplete python3-dateutil python3-iniconfig python3-joblib python3-livereload python3-lunr python3-markdown python3-mergedeep python3-nltk python3-packaging python3-pluggy python3-py python3-pytest python3-pyyaml-env-tag python3-regex python3-tornado python3-userpath python3-watchdog python3-yaml sphinx-rtd-theme-common 提案パッケージ: libjs-es5-shim mkdocs-doc nodejs coffeescript node-less node-uglify python-livereload-doc python3-django python3-slimmer python-lunr-doc python-markdown-doc subversion python3-pycurl python-tornado-doc python3-twisted 推奨パッケージ: prover9 E: Could not get lock /var/cache/apt/archives/lock. It is held by process 5683 (apt) N: Be aware that removing the lock file is not a solution and may break your system. E: ディレクトリ /var/cache/apt/archives/ をロックできません
sudo rm /var/cache/apt/archives/lock
成功
sudo apt install pipx
8,131 kB のアーカイブを取得する必要があります。 この操作後に追加で 29.8 MB のディスク容量が消費されます。 続行しますか? [Y/n] Y
pipx
version
$ pipx --version 1.1.0
help
$ pipx --help usage: pipx [-h] [--version] {install,inject,upgrade,upgrade-all,uninstall,uninstall-all,reinstall,reinstall-all,list,run,runpip,ensurepath,environment,completions} ... Install and execute apps from Python packages. Binaries can either be installed globally into isolated Virtual Environments or run directly in a temporary Virtual Environment. Virtual Environment location is /home/pi/.local/pipx/venvs. Symlinks to apps are placed in /home/pi/.local/bin. optional environment variables: PIPX_HOME Overrides default pipx location. Virtual Environments will be installed to $PIPX_HOME/venvs. PIPX_BIN_DIR Overrides location of app installations. Apps are symlinked or copied here. PIPX_DEFAULT_PYTHON Overrides default python used for commands. USE_EMOJI Overrides emoji behavior. Default value varies based on platform. options: -h, --help show this help message and exit --version Print version and exit subcommands: Get help for commands with pipx COMMAND --help {install,inject,upgrade,upgrade-all,uninstall,uninstall-all,reinstall,reinstall-all,list,run,runpip,ensurepath,environment,completions} install Install a package inject Install packages into an existing Virtual Environment upgrade Upgrade a package upgrade-all Upgrade all packages. Runs `pip install -U <pkgname>` for each package. uninstall Uninstall a package uninstall-all Uninstall all packages reinstall Reinstall a package reinstall-all Reinstall all packages list List installed packages run Download the latest version of a package to a temporary virtual environment, then run an app from it. Also compatible with local `__pypackages__` directory (experimental). runpip Run pip in an existing pipx-managed Virtual Environment ensurepath Ensure directories necessary for pipx operation are in your PATH environment variable. environment Print a list of variables used in pipx.constants. completions Print instructions on enabling shell completions for pipx
所感
正直ウンザリしている。Pythonのツールに。Pythonの環境構築まわりは次々とアプリが出てきては変わり、学習コストがかかる。Pythonのビルド、Pythonバージョン管理、パッケージ管理、仮想環境、それぞれに複数のツールが出てきては消えていき毎回学習が必要という地獄。さらには管理ツールを管理するツールanyenv
なども出てきて、一体いつになったら本題に入れるんだ状態。
今回のpipxも同じだろう。もうPythonの環境自体触りたくないし、インストールもしたくないのだが、使っているツールの最新版をインストールするのに必要そうだったので仕方なく入れた。
どうせインストールで躓くんだろうなと思ったら、ラズパイOSのパッケージマネージャの時点で躓いた。先が思いやられる。