Linux

您可以自定義通過 sudo 執行應用程序時使用的 UI / 圖示嗎?

  • August 10, 2021

在 Linux 中有沒有辦法設置以 sudo 執行應用程序時使用的所需圖示集和主題。目前,例如,如果我鍵入…

sudo gedit /et/fstab

然後,如果我點擊另存為,則文件保存對話框與我自己的桌面環境設置不匹配,它似乎使用預設圖示和預設主題 (Adwaita)。

是否有任何地方可以配置它以使它們匹配(或者更好的是,我想讓它們大致相同,但用不同的顏色表示我正在執行提升)。

如果相關,我正在 Manjaro 上執行 Gnome。

我嘗試了直接 gsettings 命令行呼叫:

sudo gsettings set org.gnome.desktop.interface icon-theme 'Tela-red-dark'

但這不起作用,它確實讓我考慮做我的下一件事,這解釋了為什麼這不起作用。

我試過在下執行dconf-editorsudo但它只提供有限的選項,不包括配置這些東西所需的桌面設置。

這是作業系統限制,還是在更深的地方我可以配置“預設”設置?

由於我有興趣,我也跑了這個……

sudo gsettings get org.gnome.desktop.interface icon-theme

為了進一步混淆我的大腦,它沒有返回Adwaita(這是sudo執行 GUI 視窗中使用的),而是返回了 Papirus-Dark-Maia,這是在 Manjaro 中創建新使用者時使用的預設圖示主題。

稍後的….

我直接以 root 身份登錄,並使用我想要的配置(類似於我的主 UI 設置,但具有明顯的紅色危險顏色)設置 root,這與在sudo本地使用時出現的內容沒有任何區別。

並且…

在被告知sudo不應該用於此類事情后,我pkexec為我的案例配置並按照這篇文章中的說明啟用gedit如何使用 pkexec 以 root 身份執行 GUI 應用程序?

sudo從 UI 的角度來看,我得到了與使用完全相同的結果。

提升權限的應用程序似乎使用它們自己的預設配置執行,以顯示哪些似乎不尊重登錄使用者(這對我來說很有意義)或root ……不。

我最初的問題仍然存在 - 如何更改提升的應用程序使用的 UI 設置?

我最終解決了這個問題 - 在此過程中進行了多次調整(一切都很好)。

首先,我查看了 usingpkexec而不是sudo- 這也提供了一個不錯的 GUI 密碼提示,但是在您將其配置為允許您的編輯器執行之前,它不起作用。

為了使用它,請按照這篇文章中的說明進行操作:如何使用 pkexec 以 root 身份執行 GUI 應用程序?gedit- 一旦為(或您選擇的 GUI 編輯器)創建了設置文件,那麼一切都很好pkexec

但這並不能解決根本問題,即主題的應用。為了應用主題,你必須做幾件事——錯過任何一個都行不通……

  1. 註銷並以root身份登錄
  2. 如果您在使用者空間中安裝了主題,請確保root安裝了與您的使用者帳戶相同的主題。
  3. 主題設置設置為像您自己的一樣
  4. 重新啟動(這很關鍵 - 註銷不會切斷它)
  5. 再次登錄您自己的帳戶
  6. pkexec使用、或其他方式執行您的編輯器gksusudo對最終結果沒有影響) - UI 現在將與您的設置相匹配。

這仍然給我留下了一些奇怪的意外行為。例如 - 我將root配置為使用我在帳戶上使用的同一 GTK+ 主題的輕量版,並使用具有不同顏色文件夾的圖示主題(因此,root的東西會以鮮紅色的形式向我閃爍)。雖然這適用於以root身份登錄時,這似乎在我的帳戶中被忽略,並且“pkexec”(或您使用的任何提升的執行命令)使用我自己的圖示主題和顏色。我仍然覺得這……奇怪 - 似乎 GUI 需要為root安裝東西,但會根據您自己的帳戶載入首選項 - 我原以為這些首選項會由root反映,但這似乎不是案子。

在這一點上,仍然希望更多地了解上下文如何互動,但最初的問題已經解決。

引用自:https://unix.stackexchange.com/questions/663822