我希望能够将 lightdm 登录屏幕中的“密码错误”文本更改为其他颜色,但我不知道该怎么做。我使用的是 Ubuntu 16.04 LTS、Unity 7.4,并且安装了以下程序:
- 默认系统设置
- Unity 调整工具
- Ubuntu 调整
- 加拿大华人商会
- dconf 编辑器
我找不到任何地方可以更改文本颜色的选项,因此如果有人能帮助我,我将不胜感激:)
答案1
您需要重新编译unity-greeter
。操作方法如下。
下载源代码
从此处下载 Xenial 的 unity-greeter 软件包源代码(带扩展的版本.tar.xz
)https://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
)
答案2
除非重建 lightdm,否则您无法更改“密码错误”文本或其颜色,因为 lightdm 使用硬编码消息。运行
sudo -u lightdm dbus-launch gsettings list-keys com.canonical.unity-greeter
为您提供可更改的设置列表。GDM 和 MDM 具有可能支持更改警报颜色的主题。