Gnomeでお気に入りのサンドボックスアプリケーションを実行すると、ダッシュボードに新しいアイコンが生成されるのはなぜですか?

Gnomeでお気に入りのサンドボックスアプリケーションを実行すると、ダッシュボードに新しいアイコンが生成されるのはなぜですか?

言うよりも見せる方が簡単だと思います。

新しいアイコン

私のダッシュ画像からわかるように、グラデーションの背景のTorアイコンをクリックしましたが、実際にはダッシュに新しいアイコンを持つアプリが開かれました。少し迷惑。

これは、Firejail、Bubblewrap、またはその他のサンドボックスアプリケーションで開くようにアプリケーションで.desktopファイルを変更した場合に発生します。

Exec=/usr/bin/firejail /usr/lib/firefox/firefox

それでは、なぜこれが起こり、どのように防ぐことができますか?

答え1

やや曖昧な問題が見つかりましたが、オンラインで解決策が見つかりませんでした。だからここに投稿する必要があると思いました。

$HOSTNAMEその原因はサンドボックスアプリケーションの一般的な変更のようです。$HOSTNAMEアプリケーションを開いたユーザーと異なる場合は、アプリケーションの新しいアイコンが作成されます。

単純化のためにFirejailを使用する例を紹介しましたが、実際にはBubblewrapを使用しました。 Firejailのソリューションも似ていると確信しています。完成のために誰かが答えを提供できることを嬉しく思います。

したがって、Bubblewrapではデフォルトで次の行を削除できます。

--unshare-uts \
--hostname FIREFOX \

または、$HOSTNAME同じままである限り、実際には共有を取り消すことができます。 (しかし、これが追加の保護を提供しているかどうかはわかりません。)たとえば、次のようになります。

--unshare-uts \
--hostname "${HOSTNAME}" \

$HOSTNAME別のオプションは、プログラムを開始する前に実際に設定を変更できることです。export HOSTNAME=FIREFOX私には適していません。しかしhostnamectl hostname FIREFOX、それは。問題は、$HOSTNAMEプログラムの実行中に意志が変わらないことです。これにより、他のプログラムが中断したり、他の問題が発生する可能性があります。

hostnamectl hostname FIREFOX

bwrap \
[...]
--unshare-uts \
--hostname FIREFOX \
[...]
/usr/lib/firefox/firefox

hostnamectl hostname "${HOSTNAME}"

これをテストしていませんが、理論的には約5秒間スリープモードに入るスクリプトをバックグラウンドで実行し、アプリが起動するのを待ってから背景を設定できるはずです$HOSTNAME。それでも、これが問題を引き起こす可能性があるかどうかはわかりません。

明らかに、この少し不快な解決策があなたとあなたの状況/「脅威モデル」に適しているかどうかは完全にあなた次第です。

関連情報