--- - name: Deploy wayvnc for KDE Wayland kiosk (bull) hosts: all become: true vars: kiosk_user: bull vnc_port: 5900 tasks: - name: Install wayvnc and dependencies ansible.builtin.apt: name: - wayvnc - pipewire - wireplumber state: present update_cache: yes - name: Create wayvnc config directory ansible.builtin.file: path: /home/{{ kiosk_user }}/.config/wayvnc state: directory owner: "{{ kiosk_user }}" group: "{{ kiosk_user }}" mode: "0700" - name: Create wayvnc config ansible.builtin.copy: dest: /home/{{ kiosk_user }}/.config/wayvnc/config owner: "{{ kiosk_user }}" group: "{{ kiosk_user }}" mode: "0600" content: | address=127.0.0.1 port={{ vnc_port }} enable_auth=true username=admin password=kiosk-support enable_pointer=true enable_keyboard=true - name: Create systemd user service for wayvnc ansible.builtin.copy: dest: /etc/systemd/user/wayvnc.service mode: "0644" content: | [Unit] Description=Wayland VNC Server (Kiosk Support) After=graphical-session.target [Service] ExecStart=/usr/bin/wayvnc Restart=on-failure [Install] WantedBy=default.target - name: Enable wayvnc user service ansible.builtin.systemd: name: wayvnc scope: user enabled: yes state: started become_user: "{{ kiosk_user }}"