答案1
您希望應用程式使用 KDE 檔案選擇對話框,以便您可以擁有與 Dolphin 相符的外觀。
正如您所看到的,Spectacle 等本機應用程式確實符合要求,但其他應用程式則不然。這可能是因為不合格的應用程式是基於 gtk 的並使用 GTK 檔案選擇對話框:
Firefox 預設使用 gtk 檔案選擇對話框
要讓 Firefox(一個 gtk 應用程式)使用 KDE 檔案選擇對話框,請從以下終端啟動它:
GTK_USE_PORTAL=1 firefox
現在,你會看到
同樣,你可以使編輯器和其他 gtk 應用程序,請使用 KDE 檔案選擇對話框。
您將看到以下內容GTK_USE_PORTAL=1 gedit
:
如果您確定要始終使用 KDE 檔案選擇對話框,您可以新增export GTK_USE_PORTAL=1
到〜/.profile。登出並重新登入後,所有應用程式都將使用 KDE 檔案選擇對話方塊。
請注意,您的系統中應存在以下兩個軟體包:
- xdg-桌面-入口網站-kde
- xdg-桌面門戶
答案2
問題
大多數基於 GTK 的應用程式(如 Firefox)將預設開啟 GTK 檔案選擇器(“Nautilus”),與當前桌面環境無關。
(臨時)解決方案
然而,大多數 GTK 應用程式支援使用 xdg 桌面入口網站。作為先決條件,請確保您擁有軟體包xdg-desktop-portal
並xdg-desktop-portal-kde
已安裝且是最新的。要檢查 GTK 應用程式是否支援桌面門戶,請從設定了環境變數的控制台啟動它GTK_USE_PORTAL=1
。例如,要啟動 Firefox 並測試從GTK_USE_PORTAL=1 firefox
命令列運行的檔案選擇器。如果應用程式即使在這樣啟動時仍然使用 Nautilus,則它使用的 GTK 版本不支援環境變數或桌面入口網站。在這種情況下你無能為力,只能希望該程式是開源的並且你可以自己修復它。有另一種選擇,但它非常老套,我不推薦它
永久解決方案
若要使所有應用程式在設定環境變數的情況下啟動,請建立 KDE 會話環境變數(請參閱KDE 使用者庫 wiki以供參考):
- 確保您已安裝
xdg-desktop-portal
並xdg-desktop-portal-kde
- 確保路徑
$HOME/.config/plasma-workspace/env
存在
$ mkdir -p $HOME/.config/plasma-workspace/env
- 在該目錄中建立一個新
.sh
文件,名稱和內容任意export GTK_USE_PORTAL=1
。.sh
$ echo "export GTK_USE_PORTAL=1" >> $HOME/.config/plasma-workspace/env/gtk_use_portal.sh
- 重新啟動/登出並再次登入
請注意,這僅在您使用 KDE 會話時才有效。如果您切換到 Gnome 會話,KDE 顯然不會設定環境變量,並且所有應用程式都將恢復為預設值。
為什麼不.profile
?
我在網路上找到的大多數解決方案都建議在文件中設定永久環境變數.profile
。雖然這適用於 Flatpak 應用程序,但它似乎不適用於本機應用程式(截至今天)。將其設為 KDE 會話環境變數也適用於大多數本機應用程式(如果它們支援)。
答案3
安裝幫助了我(來自 pacman-manager)
xdg-desktop-portal-gtk
這篇文章
https://bugzilla.mozilla.org/show_bug.cgi?id=1639575#c17
在此輸入影像描述