Construir estado para este rol:
Este rol personaliza el escritorio GNOME. Instala extensiones de fuentes y gnomo desde paquetes o archivos zip, copia archivos como fondos de escritorio y ajustes de shell Gnome a un host, y modifica la configuración del usuario. La configuración se puede suministrar en formato DCONF o GSETTINGS.
La comunidad. COLECCIÓN GENERAL, como se especifica en requirements.yml . Instale los requisitos utilizando
ansible-galaxy install -r requirements.yml Además, el módulo community.general.dconf requiere el módulo Python psutil . Este módulo se instalará automáticamente.
Todas las variables específicas para este rol comienzan con gnome_ . Las variables disponibles se enumeran a continuación:
GNOME_USER : el usuario cuya configuración se modificará. Ejemplo:
gnome_user: root
Si no se especifica gnome_user , usará la variable ansible_user_id (el usuario bajo el cual Ansible se conecta al nodo).
gnome_packages : una lista de paquetes que se instalarán. Ejemplo:
gnome_packages:
- fonts-roboto
GNOME_FONTS : una lista de fuentes que se descargarán desde una fuente remota, desabrochadas e instaladas en el directorio de fuentes locales. Cada elemento de la lista consiste en una url , name y una lista (global) de fuentes en ese archivo zip para instalar ( fonts ). Ejemplo:
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 : una lista de archivos, que especifica la fuente ( src ) y el destino ( dest ) que se copiará del host al invitado. Ejemplo:
gnome_files:
- src: gtk.css
dest: /home/{{ gnome_user }}/.config/gtk-3.0/gtk.css
GNOME_EXTENSIONS : una lista de extensiones de shell de Gnome que se instalarán (descargarse desde una fuente remota y desbloquear a las extensiones locales de los usuarios).
La url de propiedades y/o name de cada elemento se cargan dinámicamente desde la web cuando id está presente.
gnome_extensions:
- id: 545
Si la enable de propiedad está presente y se establece en un valor verdadero (por ejemplo, yes ), la extensión se habilitará automáticamente después de la instalación. Ejemplo:
gnome_extensions:
- id: 1112
enable: yes
En lugar de especificar la ID, también puede hacer cumplir la url y las teclas name . Ejemplo:
gnome_extensions:
- url:
"https://extensions.gnome.org/download-extension/[email protected]?version_tag=6450"
name: "[email protected]"
Tenga en cuenta que un name predefinido y/o valor url no se anulará especificando la id .
gnome_gsettings : una lista de entradas de gsettings que se establecerán para el gnome_user , usando gsettings . Cada elemento de la lista consiste en una entrada de schema , key y value . Tenga en cuenta que los valores deben estar contenidos dentro de cotizaciones individuales y cotizaciones dobles, debido a la configuración de citas de Ansible para los comandos de shell. Ejemplo:
gnome_gsettings:
- schema: org.gnome.desktop.interface
key: monospace-font-name
value: '"Source Code Pro Medium 16"'
GNOME_DCONF : una lista de entradas DCONF que se establecerán para el gnome_user , usando dconf . Cada elemento de la lista consiste en una key y una entrada value . Ejemplo:
gnome_dconf:
- key: /org/gnome/desktop/background/show-desktop-icons
value: "false"
gtk_version : la cadena de versión de GTK. Esto se usa para crear un directorio de configuración GTK, si aún no existe. Ejemplo:
gtk_version: "gtk-3.0"
Ninguno.
- 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
Este ejemplo instalará el Roboto de Fonts Global, el código fuente PRO, la extensión de shell Gnome Hidetopbar, y modifica varias configuraciones para la root del usuario.
GPLV3
Inicialmente creado por Peter Mosmans. Contribuciones de muchos otros: ver https://github.com/petermosmans/ansible-role-customize-gnome/graphs/contributors