デスクトップTeamsクライアントでHTTP(S)リンクをクリックするたびに約5秒間停止すると、エラーメッセージが表示されます。 「Firefoxは既に実行中ですが応答しません。Firefoxを使用するには、まず既存のプロセスを閉じて再起動する必要があります。デバイスを使用するか、別のプロファイルを使用してください。」
言うまでもなく、私のFirefoxは実行中で反応が良く、多くのタブが開いています。私はそれをオフにしたり、他のプロファイルを使用するつもりはありません。
Thunderbird、Telegramなどの他のプログラムでリンクをクリックしても、そのような問題はありません。
このメッセージを開いた状態で「ps -ef」を実行すると、次のプロセスツリーが表示されます。
rakula 30542 30440 0 11:42 pts/10 00:00:00 /opt/firefox/firefox-bin https://URL <-- the "message" process
rakula 30440 23518 0 11:42 pts/10 00:00:00 /bin/sh /usr/bin/xdg-open https://URL
rakula 23518 1 0 11:14 pts/10 00:00:15 /opt/teams/teams --disable-namespace-sandbox --disable-setuid-sandbox
「https://URL」は私がクリックしたリンクです。 "rakula"は私のX11セッションが実行されるユーザー名です。
ターミナル(urxvt)で「/bin/sh /usr/bin/xdg-open https://URL」を手動で実行すると、期待どおりに機能します。実行中のFirefoxウィンドウで新しいタブが開きます。混乱しています。私がこのコマンドを手動で実行することと、チームが同じコマンドを実行することとの間で何が異なりますか?後者が異なる動作をする理由は何ですか?
Gentoo Linux、dwm、Firefox 99、Teams 1.4.00.26453-r1 FirefoxはPortage firefox-binパッケージからインストールされ、TeamsもPortageからインストールされます。この問題は、異なるバージョンの Firefox と Teams の間で存続します。 Debian LinuxとKDEではこの問題は発生しません。
答え1
DBUS_SESSION_BUS_ADDRESS=disabled:
Teamsが不明な理由でエクスポートを実行したことがわかりました。
簡単なラッパースクリプトを作成し、次の場所に配置しました/usr/local/bin/firefox-wrapper.sh
。
#!/bin/bash
unset DBUS_SESSION_BUS_ADDRESS
/usr/bin/firefox-bin $*
そして、編集して/usr/share/applications/firefox-bin.desktop
Exec =が私のラッパースクリプトを指すように設定しました。