カテゴリ

Debian系 Proxmox VE

OS・ディストリビューションは は正確には Proxmox VE 6.0

Package: xdg-utils
Version: 1.1.3-1
  • デスクトップ環境として LXDE を使っている状況でSlack内のURL等が開けない( ホームディレクトリ+URL みたいなパスを開こうとする)症状が発生。
  • xdg-open [URL] を実行してみると同様のエラーでブラウザでWebページを表示できないことが確認。
  • xdg-open はシェルスクリプトなので cp /usr/bin/xdg-open /usr/local/bin/xdg-open として /usr/local/bin/xdg-open の方をいじりながらデバッグした結果、 open_lxde() で引数がURLかファイルかを検証している箇所でURLでもローカルファイル扱いされていることを発見

ということで以下を修正すると正常に動作するようになりました。

# xdg-open 931行目
# if pcmanfm --help >/dev/null 2>&1 -a is_file_url_or_path "$1"; then
# ↓
# ↓ (if の条件式を `[ 〜 ]` で括る)
# ↓
if [ pcmanfm --help >/dev/null 2>&1 -a is_file_url_or_path "$1" ]; then

/usr/local/bin 内にコピーしたものを修正することで /usr/local/bin 内のものを優先して利用されるはず(詳しくは which xdg-open で)
将来的に xdg-utils パッケージが更新され修正された際に削除できるように。

コメント