Construir status para esta função:
Essa função personaliza a área de trabalho do Gnome. Ele instala fontes e extensões GNOME a partir de pacotes ou arquivos zip, copia arquivos como fundo de área de trabalho e ajustes de shell gnome em um host e modifica as configurações do usuário. As configurações podem ser fornecidas no formato DConf ou GSettings.
A coleção da comunidade.General, conforme especificado em requirements.yml . Instale os requisitos usando
ansible-galaxy install -r requirements.yml Além disso, o módulo community.general.dconf requer o módulo Python psutil . Este módulo será instalado automaticamente.
Todas as variáveis específicas para esta função começam com gnome_ . As variáveis disponíveis estão listadas abaixo:
gnome_user : o usuário cujas configurações serão modificadas. Exemplo:
gnome_user: root
Se nenhum gnome_user for especificado, ele usará a variável ansible_user_id (o usuário sob o qual Ansible se conecta ao nó).
GNOME_PACKAGES : Uma lista de pacotes que serão instalados. Exemplo:
gnome_packages:
- fonts-roboto
GNOME_FONTS : Uma lista de fontes que serão baixadas de uma fonte remota, descompactada e instalada no diretório das fontes locais. Cada item da lista consiste em uma lista de url , name e (Glob) de fontes nesse arquivo zip para instalar ( fonts ). Exemplo:
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 : Uma lista de arquivos, especificando a fonte ( src ) e o destino ( dest ) que serão copiados do host para o hóspede. Exemplo:
gnome_files:
- src: gtk.css
dest: /home/{{ gnome_user }}/.config/gtk-3.0/gtk.css
GNOME_EXTENSIONS : Uma lista de extensões de shell GNOME que serão instaladas (baixadas de uma fonte remota e descompactadas para as extensões locais dos usuários).
O url das propriedades e/ou name de cada item são carregados dinamicamente na Web quando id está presente.
gnome_extensions:
- id: 545
Se a propriedade enable estiver presente e definida como um valor verdadeiro (por exemplo, yes ), a extensão será ativada automaticamente após a instalação. Exemplo:
gnome_extensions:
- id: 1112
enable: yes
Em vez de especificar o ID, você também pode aplicar as teclas url e name . Exemplo:
gnome_extensions:
- url:
"https://extensions.gnome.org/download-extension/[email protected]?version_tag=6450"
name: "[email protected]"
Observe que um name predefinido e/ou valor url não serão substituídos especificando o id .
GNOME_GSETTINGS : Uma lista de entradas GSettings que serão definidas para o gnome_user , usando gsettings . Cada item da lista consiste em uma entrada de schema , key e value . Observe que os valores devem estar contidos em cotações únicas e cotações duplas, devido às configurações de cotação da Ansible para comandos do shell. Exemplo:
gnome_gsettings:
- schema: org.gnome.desktop.interface
key: monospace-font-name
value: '"Source Code Pro Medium 16"'
GNOME_DCONF : Uma lista de entradas DConf que serão definidas para o gnome_user , usando dconf . Cada item da lista consiste em uma entrada key e value . Exemplo:
gnome_dconf:
- key: /org/gnome/desktop/background/show-desktop-icons
value: "false"
GTK_VERSION : A string de versão do GTK. Isso é usado para criar um diretório de configuração do GTK, se ainda não existir. Exemplo:
gtk_version: "gtk-3.0"
Nenhum.
- 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 exemplo instalará o Global Fonts Roboto, o código -fonte Pro, o Gnome Shell Extension HidetopBar e modifica várias configurações para a root do usuário.
GPLV3
Inicialmente criado por Peter Mosmans. Contribuições de muitos outros: consulte https://github.com/Petermosmans/ansible-role-customize-gnome/graphs/contributores