2024/07/15(月) [n年前の日記]
#1 [python] MSYS2上でrangerが動かなくなっていた
Windows10 x64 22H2 + MSYS2 + MinGW64 の環境で、CUIで利用できるファイラー ranger を起動しようとしたら、import ranger の行で「そんなモジュールは無い」とエラーが出てしまった。変だな。以前インストールしていたはずなのだけど。
pip install ranger-fm と打ってみたら警告が出てきてインストールできなかった。
ググってみたら、最近の pip はシステム側のPythonにモジュールをインストールできない仕様になっていたらしい。
_俺流!PEP668とうまくやっていく方法 | スクエニ ITエンジニア ブログ
_pipで--break-system-packagesの問題について - Qiita
「--break-system-packages」をつけることで、システムを破壊してでもインストールせよ、という指定になるらしい。ranger が動かないと色々不便なので、この際インストールしてしまうことにした。どうせ今までもインストールしていたのだし…。
しかし、こんな仕様になってしまったら、Python で作られたこの手のツールは ―― システム側にインストールすることを前提にして作ってあったツール群は困ってしまうのではないか…? 何もかもが、仮想環境を作ってその中で開発するプロジェクトというわけでもないだろうに…。
pip install ranger-fm と打ってみたら警告が出てきてインストールできなかった。
$ pip install ranger-fm error: externally-managed-environment This environment is externally managed -> To install Python packages system-wide, try 'pacman -S python-xyz', where xyz is the package you are trying to install. If you wish to install a non-MSYS2-packaged Python package, create a virtual environment using 'python -m venv path/to/venv'. Then use path/to/venv/bin/python and path/to/venv/bin/pip. note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification.
ググってみたら、最近の pip はシステム側のPythonにモジュールをインストールできない仕様になっていたらしい。
_俺流!PEP668とうまくやっていく方法 | スクエニ ITエンジニア ブログ
_pipで--break-system-packagesの問題について - Qiita
「--break-system-packages」をつけることで、システムを破壊してでもインストールせよ、という指定になるらしい。ranger が動かないと色々不便なので、この際インストールしてしまうことにした。どうせ今までもインストールしていたのだし…。
pip install ranger-fm --break-system-packages
しかし、こんな仕様になってしまったら、Python で作られたこの手のツールは ―― システム側にインストールすることを前提にして作ってあったツール群は困ってしまうのではないか…? 何もかもが、仮想環境を作ってその中で開発するプロジェクトというわけでもないだろうに…。
[ ツッコむ ]
#2 [linux] nnnをMSYS2上でインストールしてみた
nnnというCUIファイラーをMSYS2上でインストールしてみた。ranger に似ているファイラーらしい。
ranger のインストールが、Python の pip の仕様変更でほんのちょっと面倒なことになりつつあるようなので、代替ファイラーを検討してみることにした。
nnn で起動する。
ranger のインストールが、Python の pip の仕様変更でほんのちょっと面倒なことになりつつあるようなので、代替ファイラーを検討してみることにした。
$ pacman -Ss nnn msys/nnn 4.9-1 The fastest terminal file manager ever written. $ pacman -S nnn 依存関係を解決しています... 衝突するパッケージがないか確認しています... パッケージ (1) nnn-4.9-1 合計インストール容量: 0.11 MiB :: インストールを行いますか? [Y/n] y ... (1/1) インストール nnn [#######################################] 100% nnn の提案パッケージ atool: for more archive formats [インストール済み] libarchive: for more archive formats [インストール済み] zip: for zip archive format [インストール済み] unzip: for zip archive format [インストール済み] rclone: mount remotes
nnn で起動する。
- カーソルキーの上下でカーソル移動。
- カーソルキーの右でフォルダの中に入れる。
- カーソルキーの左で親フォルダに移動。
- qキーで終了。
- !キーでShellを開ける。
- 開いた Shell 上で、Ctrl + D を押せば Shell から抜けて nnn に戻ってくる。
- ?キーでヘルプ表示。
◎ 参考ページ :
[ ツッコむ ]
以上、1 日分です。