สร้างสถานะสำหรับบทบาทนี้:
บทบาทนี้ปรับแต่งเดสก์ท็อป GNOME มันติดตั้งตัวอักษรและส่วนขยาย GNOME จากแพ็คเกจหรือไฟล์ซิปไฟล์สำเนาเช่นพื้นหลังเดสก์ท็อปและการปรับแต่งเชลล์ 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 ที่จะติดตั้ง (ดาวน์โหลดจากแหล่งไกลจากระยะไกลและคลายซิปไปยังส่วนขยายท้องถิ่นของผู้ใช้)
url คุณสมบัติและ/หรือ name ของแต่ละรายการจะถูกโหลดแบบไดนามิกจากเว็บเมื่อมี id อยู่
gnome_extensions:
- id: 545
หาก enable คุณสมบัติมีอยู่และตั้งค่าเป็นค่าความจริง (เช่น yes ) ส่วนขยายจะถูกเปิดใช้งานโดยอัตโนมัติหลังจากการติดตั้ง ตัวอย่าง:
gnome_extensions:
- id: 1112
enable: yes
แทนที่จะระบุ ID คุณสามารถบังคับใช้ปุ่ม url และ name ตัวอย่าง:
gnome_extensions:
- url:
"https://extensions.gnome.org/download-extension/[email protected]?version_tag=6450"
name: "[email protected]"
โปรดทราบว่า name และ/หรือ url ที่กำหนดไว้ล่วงหน้าจะไม่ถูกแทนที่ด้วยการระบุ id
GNOME_GSETTINGS : รายการรายการ GSETTINGS ที่จะถูกตั้งค่าสำหรับ gnome_user โดยใช้ gsettings รายการแต่ละรายการประกอบด้วย schema key และรายการ value โปรดทราบว่าควรมีค่าอยู่ในใบเสนอราคาเดียวและคำพูดสองเท่าเนื่องจากการตั้งค่าการเสนอราคาของ Ansible สำหรับคำสั่งเชลล์ ตัวอย่าง:
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
ตัวอย่างนี้จะติดตั้ง Roboto แบบอักษรทั่วโลก, ซอร์สโค้ดโปร, hidetopbar ส่วนขยายของเชลล์ GNOME และปรับเปลี่ยนการตั้งค่าหลายอย่างสำหรับ root ผู้ใช้
GPLV3
เริ่มแรกสร้างโดย Peter Mosmans ผลงานของคนอื่น ๆ : ดู https://github.com/petermosmans/ansible-role-customize-gnome/graphs/contributors