10.6. 自定义桌面背景

您可以通过使用 “dconf” 实用程序设置默认背景、添加额外背景,或者添加多个背景。
如果不允许系统用户更改这些默认的设置,那么系统管理员需要使用锁目录来锁定设置。否则每一个用户都将能够自定义设置来符合他们的喜好。更多信息请参见〈第 9.5.1 节 “锁定特定设置”〉。

10.6.1. 自定义默认桌面背景

您可以通过在 org.gnome.desktop.background 架构中设置相关的 GSettings 键值文件,来设置默认桌面背景。
更多有关 GSettings 的信息,请参见〈第 9 章 用 GSettings 和 dconf 来配置桌面〉。

过程 10.12. 设置默认背景

  1. /etc/dconf/db/local.d/filename 中创建一个用于计算机范围设置的 local 数据库:
    # Specify the dconf path
    [org/gnome/desktop/background]
    
    # Specify the path to the desktop background image file
    picture-uri='file:///usr/local/share/backgrounds/wallpaper.jpg'
    # Specify one of the rendering options for the background image:
    # 'none', 'wallpaper', 'centered', 'scaled', 'stretched', 'zoom', 'spanned'
    picture-options='scaled'
    # Specify the left or top color when drawing gradients or the solid color
    primary-color='000000'
    # Specify the right or bottom color when drawing gradients
    secondary-color='FFFFFF'
  2. 覆盖用户设置,以避免用户在 /etc/dconf/db/local.d/locks/background 中对此修改:
    # List the keys used to configure the desktop background
    /org/gnome/desktop/background/picture-uri
    /org/gnome/desktop/background/picture-options
    /org/gnome/desktop/background/primary-color
    /org/gnome/desktop/background/secondary-color
  3. 更新系统数据库:
    # dconf update
/etc/dconf/db/local.d/filename 文件中配置的桌面为您新的默认桌面。

10.6.2. 添加额外背景

您可以为系统上的用户增加额外背景。
  1. org.gnome.desktop.background schemas 创建一个 filename.xml 文件来指定您的额外背景的外观。这是最常用模式的列表:

    表 10.1. org.gnome.desktop.background schemas GSettings 键值

    键值名称可能值描述
    picture-options“none”,“wallpaper”,“centered”,“scaled”,“stretched”,“zoom”,“spanned”决定由 wallpaper_filename 设置的图片如何渲染。
    color-shading-type“horizontal”、 “vertical” 和 “solid”如何为背景颜色添加底纹。
    primary-color默认:#023c88当绘制渐变色或者单色时,左侧或者右侧的颜色。
    secondary-color默认:#5789ca当绘制渐变色时的右侧或者底部色彩,不适用于单色。
    所有的图片选项可以在“dconf-editor”GUI 或者在“gsettings”命令行实用工具中找到。更多信息,请参见〈第 9.3 节 “浏览桌面应用的 GSettings 值”〉。
  2. filename.xml 文件储存在 /usr/share/gnome-background-properties/ 目录中。
当用户在右上角点击他们的名字时,选择 “设置”,然后在 “个人” 小节中选择 “背景”,用户就可以使用新的背景。
请看实例并了解实际上是如何对 org.gnome.desktop.background GSettings 键值文件进行操作的:

例 10.4. 额外背景文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
  <wallpaper deleted="false">
    <name>Company Background</name>
    <name xml:lang="de">Firmenhintergrund</name>
    <filename>/usr/local/share/backgrounds/company-wallpaper.jpg</filename>
    <options>zoom</options>
    <shade_type>solid</shade_type>
    <pcolor>#ffffff</pcolor>
    <scolor>#000000</scolor>
  </wallpaper>
</wallpapers>
在一个配置文件中,您可以指定多个 <wallpaper> 元素来添加更多的背景。
请看以下拥有两个 <wallpaper> 元素的 .xml 文件实例,添加两个不同的背景:

例 10.5. 拥有两个墙纸元素的额外背景文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
  <wallpaper deleted="false">
    <name>Company Background</name>
    <name xml:lang="de">Firmenhintergrund</name>
    <filename>/usr/local/share/backgrounds/company-wallpaper.jpg</filename>
    <options>zoom</options>
    <shade_type>solid</shade_type>
    <pcolor>#ffffff</pcolor>
    <scolor>#000000</scolor>
  </wallpaper>
  <wallpaper deleted="false">
    <name>Company Background 2</name>
    <name xml:lang="de">Firmenhintergrund 2</name>
    <filename>/usr/local/share/backgrounds/company-wallpaper-2.jpg</filename>
    <options>zoom</options>
    <shade_type>solid</shade_type>
    <pcolor>#ff0000</pcolor>
    <scolor>#00ffff</scolor>
  </wallpaper>
</wallpapers>

10.6.3. 设置帘栅屏蔽

帘栅屏蔽(Screen Shield)是系统暂停时迅速滑下的屏幕。它由 org.gnome.desktop.background.picture-uri GSettings 键值所控制。由于“GDM”使用它自己的“dconf”配置文件,所以您可以通过更改此配置文件的设置,来设置默认背景。
更多有关 GSettings 和“dconf”的信息,请参见〈第 9 章 用 GSettings 和 dconf 来配置桌面〉。

过程 10.13. 为帘栅屏幕添加徽标

  1. /etc/dconf/db/gdm.d/01-corp-login 中,以计算机范围设置创建一个 gdm 数据库:
    [org/gnome/desktop/background]
    picture-uri='file:///opt/corp/background.jpg'
    用您想用作帘栅屏幕的图像文件途径去代替 /opt/corp/background.jpg
    支持的格式为 PNG、JPG、JPEG,和 TGA。必要时图像将被缩放以适应屏幕。
  2. 更新系统数据库:
    # dconf update
您下次登录时,新的帘栅屏幕将出现在背景中。时间、日期和周几这些信息会显示在前景中。

10.6.3.1. 如果帘栅屏幕没有更新怎么办?

请确定您已经以 root 身份运行 dconf update 命令更新数据库。
如背景未更新,请尝试重启“GDM”。更多信息请参见〈第 14.1.1 节 “重启 GDM”〉。