arch-setup/tasks/pipewire.yml

49 lines
1.3 KiB
YAML

# Note that pulsaudio should be removed by installing pipewire-pulse manually
- name: remove previous configurations
file:
path: '{{ item }}'
state: absent
loop:
- '{{ xdg_config_dir }}/systemd/user/pipewire-pulse.service.d/'
- '{{ xdg_script_dir }}/pulse-script'
- name: create pipewire configuration dir
file:
state: directory
path: '{{ xdg_config_dir }}/pipewire'
- name: copy pipewire-pulse configuration
template:
src: 'templates/{{ platform }}/pipewire-pulse.j2'
dest: '{{ xdg_config_dir }}/pipewire/pipewire-pulse.conf'
- name: gather the package facts
package_facts:
manager: pacman
- name: replace pipewire-media-session
become: true
pacman:
name: wireplumber
state: present
extra_args: --noconfirm --ask=4
when: "'pipewire-media-session' in ansible_facts.packages or not 'wireplumber' in ansible_facts.packages"
- name: start pipewire socket
systemd:
name: pipewire.socket
state: started
enabled: true
scope: user
- name: restart pipewire-pulse
systemd:
name: '{{ item.name }}'
state: restarted
enabled: '{{ item.enabled }}'
scope: user
daemon-reload: true
loop:
- { name: 'pipewire-pulse.socket', enabled: true }
- { name: 'pipewire-pulse.service', enabled: false }