- name: Install void wayland environment hosts: target_system become: true tags: wayland tasks: - name: Install intel wayland drivers community.general.xbps: name: - mesa-dri state: present - name: Install wayland packages community.general.xbps: name: - dbus - seatd - turnstile state: present # notify: installed-wayland -> TODO: Use handler? Currently using task below - name: Activate wayland services ansible.builtin.file: force: "yes" src: "/etc/sv/{{ item }}" dest: "/etc/runit/runsvdir/default/{{ item }}" state: link with_items: [dbus, turnstiled, seatd] - name: Set user service directory to $HOME/.local/state/service ansible.builtin.copy: src: runit.conf dest: /etc/turnstile/backend/runit.conf mode: 0644 - name: Install wlr desktop portals community.general.xbps: name: - xdg-desktop-portal - xdg-desktop-portal-wlr state: present - name: Install audio for wayland hosts: target_system become: true tags: audio tasks: - name: Put user in audio group ansible.builtin.user: name: "{{ user_name }}" groups: [audio, video] append: true - name: Install pipewire community.general.xbps: name: - pipewire state: present notify: installed-pipewire - name: Install pipewire community.general.xbps: name: - libspa-bluetooth state: present tags: bluetooth handlers: - name: Set up wireplumber to auto start ansible.builtin.file: dest: "/etc/pipewire/pipewire.conf.d" state: directory listen: installed-pipewire # FIXME: Does not work automatically for some reason? - name: Set up wireplumber to auto start ansible.builtin.file: force: "yes" src: "/usr/share/examples/wireplumber/10-wireplumber.conf" dest: "/etc/pipewire/pipewire.conf.d/10-wireplumber.conf" state: link listen: installed-pipewire - name: Enable pipewire-pulse interface ansible.builtin.file: force: "yes" src: "/usr/share/examples/pipewire/20-pipewire-pulse.conf" dest: "/etc/pipewire/pipewire.conf.d/20-pipewire-pulse.conf" state: link listen: installed-pipewire ## TODO: Enable its start in river init script # # TODO: Find way to install and enable pipewire-roc-sink module (and enable ~/.config/pipewire/pipewire.conf.d/roc-sink.conf)