--- - name: Deploy XFCE desktop + optional XRDP (Optional) hosts: all become: true gather_facts: true module_defaults: ansible.builtin.apt: lock_timeout: "{{ ai_workspace_apt_lock_timeout | default(900) | int }}" vars: xworkspace_console_enable_xrdp: false tasks: # XFCE/XRDP is a Linux remote-desktop stack (apt-based, systemd) and is not # applicable to macOS, which already has a native GUI. Skip the whole stack # on Darwin so the apt-driven tasks never run there. - name: Include XFCE desktop runtime role ansible.builtin.include_role: name: roles/vhosts/xfce_desktop_minimal_runtime when: ansible_os_family != 'Darwin' - name: Include XRDP server role when enabled ansible.builtin.include_role: name: roles/vhosts/remote_desktop_xrdp_server vars: xfce_manage_user: true xfce_user: "{{ xworkspace_console_user | default('ai-workspace') }}" xfce_user_password_plaintext: "{{ xworkspace_console_auth_token | default('admin') }}" xfce_user_groups: - sudo - docker when: - ansible_os_family != 'Darwin' - xworkspace_console_enable_xrdp | bool