Linux 中有没有一种方法可以设置以 sudo 身份运行应用程序时使用的所需图标集和主题。例如,现在如果我输入...
sudo gedit /et/fstab
然后,如果我单击“另存为”,则文件保存对话框与我自己的桌面环境设置不匹配,它似乎使用默认图标和默认主题(Adwaita)。
是否可以在任何地方进行配置以使它们匹配(或者更好的是我想让它们基本相同但具有不同的颜色以表明我正在运行提升)。
如果相关的话,我正在 Manjaro 上运行 Gnome。
我尝试过直接 gsettings 命令行调用:
sudo gsettings set org.gnome.desktop.interface icon-theme 'Tela-red-dark'
但这是行不通的,它确实让我考虑做我的下一件事,这解释了为什么这行不通。
我尝试过运行dconf-editor
,sudo
但只提供有限的选项,不包括配置此类内容所需的桌面设置。
这是操作系统的限制还是在更深的地方我可以配置“默认”设置?
由于我感兴趣,我也运行了这个......
sudo gsettings get org.gnome.desktop.interface icon-theme
让我的大脑进一步混乱,而不是返回阿德维塔(这是运行 GUI 窗口中使用的sudo
)它返回帕皮鲁斯-黑暗-玛雅这是您在 Manjaro 中创建新用户时使用的默认图标主题。
稍后的....
sudo
我直接以 root 身份登录,并使用我想要的配置设置 root(类似于我的主 UI 设置,但具有大的耀眼的红色危险颜色),这与本地使用时出现的内容没有任何区别。
并且...
在被告知sudo
不应该用于此类事情后,我为我的用例配置并按照本文中的说明pkexec
启用:gedit
如何使用 pkexec 以 root 身份运行 GUI 应用程序?
sudo
我得到了与从 UI 角度使用完全相同的结果。
提升权限的应用程序似乎使用自己的默认配置进行操作,以了解如何显示,这似乎不尊重登录用户(这对我来说很有意义)或根这……没有。
我原来的问题仍然存在 - 如何更改提升的应用程序使用的 UI 设置?
答案1
我最终解决了这个问题——一路上进行了多次调整(一切都很好)。
首先,我查看了使用pkexec
而不是sudo
- 这也给出了一个很好的 GUI 密码提示,但是直到您配置它以允许编辑器运行它才起作用。
为了使用它,请按照这篇文章中的说明进行操作:如何使用 pkexec 以 root 身份运行 GUI 应用程序?gedit
- 一旦为(或您选择的 GUI 编辑器)创建了设置文件,那么一切就都很好了pkexec
。
但这并不能解决根本问题,即主题的应用。为了应用主题,你必须做几件事 - 错过任何一个,它就不起作用......
- 注销并登录根
- 确保根如果您的用户空间中安装了主题,则安装的主题与您的用户帐户相同。
- 放根主题设置就像你自己的一样
- 重新启动(这很重要 - 注销并不能解决问题)
- 使用您自己的帐户重新登录
pkexec
使用、gksu
或其他命令运行编辑器sudo
(对最终结果没有影响)- UI 现在将与您的设置相匹配。
这仍然给我留下了一些奇怪的、意想不到的行为。例如 - 我配置了根使用我在我的帐户上使用的相同 GTK+ 主题的轻型版本以及具有不同颜色文件夹的图标主题(因此根东西会以鲜红色的目光看着我)。虽然这适用于登录时根这似乎在我的帐户上被忽略,并且“pkexec”(或您使用的任何提升的运行命令)使用我自己的图标主题和颜色。我仍然觉得这个......奇怪 - 似乎 GUI 需要安装一些东西根但根据您自己的帐户加载首选项 - 我希望这些首选项能够反映在根但情况似乎并非如此。
此时仍希望更多地了解上下文如何交互,但最初的问题已经解决。