/
/
/
1---
2- name: Detect GPU via lspci
3 ansible.builtin.command: bash -lc "lspci -nnk | grep -iE 'vga|3d|display' || true"
4 register: _lspci_gpu
5 changed_when: false
6 failed_when: false
7
8- name: Infer vendor
9 ansible.builtin.set_fact:
10 _gpu_inferred: >-
11 {% if 'NVIDIA' in _lspci_gpu.stdout %}nvidia
12 {% elif 'AMD' in _lspci_gpu.stdout or 'ATI' in _lspci_gpu.stdout %}amd
13 {% elif 'Intel' in _lspci_gpu.stdout %}intel
14 {% else %}unknown{% endif %}
15
16- name: Choose effective vendor
17 ansible.builtin.set_fact:
18 _gpu_vendor_effective: "{{ (gui_gnome_gpu_vendor != 'auto') | ternary(gui_gnome_gpu_vendor, _gpu_inferred) }}"
19
20- name: Install NVIDIA driver
21 ansible.builtin.apt:
22 name: "{{ gui_gnome_nvidia_driver_pkg }}"
23 state: present
24 update_cache: true
25 when: _gpu_vendor_effective == 'nvidia'
26 become: true
27
28- name: Install AMD packages
29 ansible.builtin.apt:
30 name: "{{ gui_gnome_amd_packages }}"
31 state: present
32 update_cache: true
33 when: _gpu_vendor_effective == 'amd'
34 become: true
35
36- name: Install Intel packages
37 ansible.builtin.apt:
38 name: "{{ gui_gnome_intel_packages }}"
39 state: present
40 update_cache: true
41 when: _gpu_vendor_effective == 'intel'
42 become: true
43
44