如何更改“密码错误”文本的颜色

如何更改“密码错误”文本的颜色

我希望能够将 lightdm 登录屏幕中的“密码错误”文本更改为其他颜色,但我不知道该怎么做。我使用的是 Ubuntu 16.04 LTS、Unity 7.4,并且安装了以下程序:

  • 默认系统设置
  • Unity 调整工具
  • Ubuntu 调整
  • 加拿大华人商会
  • dconf 编辑器

我找不到任何地方可以更改文本颜色的选项,因此如果有人能帮助我,我将不胜感激:)

答案1

您需要重新编译unity-greeter。操作方法如下。

下载源代码

从此处下载 Xenial 的 unity-greeter 软件包源代码(带扩展的版本.tar.xzhttps://launchpad.net/ubuntu/xenial/+source/unity-greeter并将其解压到您的主目录中。

更改源

现在打开文件src/prompt-box.vala并转到行号。438源的相关区域将如下所示

...
        Gdk.RGBA color = { 1.0f, 1.0f, 1.0f, 1.0f };
        if (is_error)
            color.parse ("#df382c");
        label.override_color (Gtk.StateFlags.NORMAL, color);
...

现在将颜色的十六进制值更改为所需的值。我曾经#33A0FF测试过它。

重新编译

现在你需要重新编译它。你可能需要开发包才能这样做。我需要这些包来安装libindicator-dev libido3-0.1-dev liblightdm-gobject-1-dev libindicator3-dev libunity-settings-daemon-dev unity-settings-daemon-dev

通过安装这些包可以满足所有依赖要求

sudo apt install autoconf-archive gir1.2-gdesktopenums-3.0 gir1.2-gnomedesktop-3.0 gir1.2-gtk-2.0 gir1.2-ido3-0.1 gir1.2-xkl-1.0 gnome-common gnome-desktop3-data gsettings-desktop-schemas-dev libcanberra-dev libcanberra0 libdbus-glib-1-dev libgnome-desktop-3-12 libgnome-desktop-3-dev libgtk2.0-dev libido3-0.1-dev libindicator-dev libindicator3-dev libindicator7 liblightdm-gobject-1-dev libtdb1 libunity-gtk3-parser0 libvorbisfile3 libxkbfile-dev libxklavier-dev sound-theme-freedesktop unity-gtk-module-common unity-gtk3-module unity-settings-daemon-dev xvfb

现在,转到解压文件夹的根目录并按顺序使用这些命令来构建

./autogen.sh
make

如果第一个命令提示缺少某些包或头文件,则需要研究哪个包可能包含该头文件。通常,包名称会以前缀开头lib,以后缀结尾-dev,并包含缺少的文件的名称。

成功构建后,使用

sudo make install

现在只需登录即可查看效果!

这是我修改文本颜色后的屏幕截图(使用 拍摄dm-tool

lightdm unitygreeter 错误颜色变化

答案2

除非重建 lightdm,否则您无法更改“密码错误”文本或其颜色,因为 lightdm 使用硬编码消息。运行

sudo -u lightdm dbus-launch gsettings list-keys com.canonical.unity-greeter

为您提供可更改的设置列表。GDM 和 MDM 具有可能支持更改警报颜色的主题。

相关内容