建立此角色的状态:
此角色自定义了GNOME桌面。它从软件包或zip文件中安装字体和GNOME扩展名,将桌面背景等文件复制到主机上,并修改用户设置。可以以DCONF或GSETTINGS格式提供设置。
requirements.yml 。使用
ansible-galaxy install -r requirements.yml此外, community.general.dconf模块需要Python psutil模块。该模块将自动安装。
特定于此角色的所有变量始于gnome_ 。可用变量如下:
GNOME_USER :将修改设置的用户。例子:
gnome_user: root
如果未指定gnome_user ,它将使用ansible_user_id变量(Ansible在该变量下连接到节点的用户)。
GNOME_PACKAGES :将安装的软件包列表。例子:
gnome_packages:
- fonts-roboto
GNOME_FONTS :将从远程源下载的字体列表,解压缩并安装到本地字体目录中。每个列表项都由一个url , name和(Glob)的ZIP文件中的字体列表组成( fonts )。例子:
gnome_fonts:
- url: https://github.com/adobe-fonts/source-code-pro/archive/2.030R-ro/1.050R-it.zip
name: SourceCodePro
fonts: "source-code-pro-2.030R-ro-1.050R-it/OTF/*.otf"
gnome_files :文件列表,指定源( src )和目标( dest ),将从主机复制到来宾。例子:
gnome_files:
- src: gtk.css
dest: /home/{{ gnome_user }}/.config/gtk-3.0/gtk.css
GNOME_EXTENSIONS :将安装的GNOME SHELL扩展名列表(从远程源下载并解压缩到用户的本地扩展名)。
存在id时,每个项目的属性url和/或name都会从Web动态加载。
gnome_extensions:
- id: 545
如果存在属性enable并将设置为真实值(例如yes ),则将在安装后自动启用扩展名。例子:
gnome_extensions:
- id: 1112
enable: yes
您还可以执行url和name键,而不是指定ID。例子:
gnome_extensions:
- url:
"https://extensions.gnome.org/download-extension/[email protected]?version_tag=6450"
name: "[email protected]"
请注意,指定id不会被预先定义的name和/或url值覆盖。
GNOME_GSETTINGS :使用gsettings将为gnome_user设置的GSettings条目列表。每个列表项都由一个schema , key和value输入组成。请注意,由于Ansible的引号为Shell命令的设置,应包含在单引号和双引号中。例子:
gnome_gsettings:
- schema: org.gnome.desktop.interface
key: monospace-font-name
value: '"Source Code Pro Medium 16"'
GNOME_DCONF :使用dconf为gnome_user设置的DCONF条目列表。每个列表项都由一个key和value输入组成。例子:
gnome_dconf:
- key: /org/gnome/desktop/background/show-desktop-icons
value: "false"
GTK_Version :GTK的版本字符串。如果还不存在,则用于创建GTK配置目录。例子:
gtk_version: "gtk-3.0"
没有任何。
- hosts: all
become: yes
become_method: sudo
roles:
- role: petermosmans.customize-gnome
vars:
gnome_dconf:
- key: /org/gnome/desktop/background/show-desktop-icons
value: "false"
gnome_extensions:
- url: https://extensions.gnome.org/download-extension/[email protected]?version_tag=6450
name: [email protected]
- id: 15
- id: 1160
url: https://example.com/gnome-extension/1160.zip
- id: 1236
name: CustomNamedExtension
- id: 1267
name: CustomNamedExtension2
url: https://example.com/gnome-extension/1267.zip
- id: 1112
enable: yes
gnome_files:
- src: gtk.css
dest: "/home/{{ gnome_user }}/.config/{{ gtk_version }}/gtk.css"
gnome_fonts:
- url: https://github.com/adobe-fonts/source-code-pro/archive/2.030R-ro/1.050R-it.zip
name: SourceCodePro
fonts: "source-code-pro-2.030R-ro-1.050R-it/OTF/*.otf"
gnome_gsettings:
- schema: org.gnome.desktop.interface
key: monospace-font-name
value: '"Source Code Pro Medium 16"'
- schema: org.gnome.shell.extensions.dash-to-panel
schemadir: ~/.local/share/gnome-shell/extensions/[email protected]/schemas
key: panel-position
value: TOP
gnome_packages:
- fonts-roboto
gnome_user: peter
gtk_version: 3.0
此示例将安装Global Fonts Roboto,源代码Pro,Gnome Shell Extension HideTopBar,并修改用户root的多个设置。
GPLV3
最初由彼得·莫斯曼斯(Peter Mosmans)创建。许多其他人的贡献:请参阅https://github.com/petermosmans/asible-role-customize-gnome/graphs/contributors