为根启动的应用程序设置特定主题

我希望以root身份启动的应用程序与以普通用户启动的应用程序不同。

这可以通过使用不是来自usr/share/themes的主题来完成,但我还没有找到修改根应用程序使用的默认主题的方法。

可以这样做吗?

使用sudo gnome-appearance-properties不起作用。

当您发现以root身份启动的应用程序采用调用它们的用户的主题时,您就是对的。

但是,只有少数应用程序才有意义以root身份启动。 幸运的是,这些只是三个应用程序:

  • gedit中
  • 鹦鹉螺
  • 终奌站

所有这三个应用程序至少可以部分地以桌面主题为主题。 一旦它们以root身份发布,就可以应用对主题的更改并保留:

在此处输入图像描述

左:默认主题| 右:根主题

我找到了一个黑客来获得系统范围的变化:)

  • 从“ 外观首选项”中选择您在〜/ .themes中安装的主题
  • / root中创建一个.themes文件夹:

sudo mkdir /root/.themes

  • 将您的主题复制到/root/.themes

sudo cp -r ~/.themes/yourTheme /root/.themes

  • 删除/root/.themes/yourTheme中gtk-2.0metacity-1文件夹:

sudo rm -R /root/.themes/yourTheme/gtk-2.0 /root/.themes/yourTheme/metacity-1

  • 将新根主题的gtk-2.0metacity-1文件夹复制到/root/.themes

sudo cp -r /PathToRootTheme/gtk-2.0 /root/.themes/yourTheme/ ; sudo cp -r /PathToRootTheme/metacity-1 /root/.themes/yourTheme/

我用了不同的方法。 我为普通用户使用每用户主题和图标。 这些是〜/ .themes〜/ .icons 。 我的方法涉及欺骗根应用程序以为他们使用当前用户的本地主题 ,但实际上使用另一个全局主题

方法1 :使用系统范围/全局主题和根应用程序的图标

步骤1 :在/root/.themes和/root/.icons中创建符号链接到您希望用于根应用程序的全局主题和图标。 如果它们不存在,请创建/root/.themes/root/.icons文件夹:

 sudo mkdir /root/.themes sudo mkdir /root/.icons 

我使用默认的Ubuntu主题( Ambiance )和图标( ubuntu-mono-dark ).Replace Ambianceubuntu-mono-dark以及您想要使用的主题和图标,并运行以下命令:

 sudo ln -s -t /root/.themes /usr/share/themes/Ambiance sudo ln -s -t /root/.icons /usr/share/icons/ubuntu-mono-dark 

但请确保主题和图标在/ usr / share / themes/ usr / share / icons中可用,否则Root Apps将无法访问它们,它们看起来很难看。

注意:之前的答案涉及将整个主题和图标文件夹复制到/root/.themes和/root/.icons。 在本答案的方法2中使用了类似的方法。 但是,我更喜欢符号链接,因为它们可以避免数据重复并完成工作。

步骤2 :将/root/.themes和/root/.icons中的主题和图标符号链接重命名为与您当前使用的〜/ .themes〜/ .icons的名称完全相同的名称。 当我使用Delorean Dark主题和Faenza-Darkest图标时,我的命令中的命令将是:

 sudo mv /root/.themes/Ambiance '/root/.themes/Delorean Dark' sudo mv /root/.icons/ubuntu-mono-dark '/root/.icons/Faenza-Darkest' 

用您使用的主题名称替换Delorean DarkFaenza-Darkest

快捷命令:您可以在一步中执行步骤1和2

 sudo ln -s /usr/share/themes/Ambiance '/root/.themes/Delorean Dark' sudo ln -s /usr/share/icons/ubuntu-mono-dark '/root/.icons/Faenza-Darkest' 

方法2 :专用于Root Apps的主题和图标

如果您希望普通用户无法访问Root App主题和图标,请不要将它们放在/ usr / share / themes/ usr / share / icons中 。 相反,将它们放在/root/.themes/root/.icons中 。 然后将它们重命名为与当前主题和图标相同的名称,类似于方法1的 步骤2

感谢“ln -s -t …”提示 – 我已经忘记了这一点。 这肯定会是一个很大的节省空间。

在我的情况下,我一直是Shiki-Colors(以及任何基于它们的后续主题,包括我创建的一些主题)和GNOME-Colors的忠实粉丝。 作为LXDE / Openbox的用户,我一直认为PCManFM在视觉上做得不够,无法在用户使用sudo权限时充分提醒用户。 因此,在使用sudo权限时,我一直认为它和其他所有东西都应该使用红色(葡萄酒)GTK和图标主题。

有更简单的解决方案。

转到其中一个tty(例如,按Ctrl + Alt + F3或Ctrl + Alt + F4或Ctrl + Alt + F5)。 以“root”身份登录。 类型:

startx

现在您以root身份登录到图形模式,搜索’tweak’应用程序并检查暗模式,注销。 返回tty命令行后输入:

exit

要返回会话,请尝试单击(Ctrl + Alt + F1或Ctrl + Alt + F7)