diff options
-rw-r--r-- | chaos-at-home/ch-equinox-t450s.yml | 1 | ||||
-rw-r--r-- | roles/ws/base/tasks/main.yml | 1 | ||||
-rw-r--r-- | roles/ws/pipewire/tasks/main.yml | 51 |
3 files changed, 53 insertions, 0 deletions
diff --git a/chaos-at-home/ch-equinox-t450s.yml b/chaos-at-home/ch-equinox-t450s.yml index 6f370e5f..c25e6c44 100644 --- a/chaos-at-home/ch-equinox-t450s.yml +++ b/chaos-at-home/ch-equinox-t450s.yml @@ -27,6 +27,7 @@ - role: core/admin-users - role: network/wireguard/base - role: ws/minet + - role: ws/pipewire post_tasks: - name: disable caps-lock lineinfile: diff --git a/roles/ws/base/tasks/main.yml b/roles/ws/base/tasks/main.yml index 5b179887..e1a81103 100644 --- a/roles/ws/base/tasks/main.yml +++ b/roles/ws/base/tasks/main.yml @@ -73,6 +73,7 @@ - mpv - ffmpeg - pavumeter + - pulsemixer - lame - gstreamer1.0-pulseaudio state: present diff --git a/roles/ws/pipewire/tasks/main.yml b/roles/ws/pipewire/tasks/main.yml new file mode 100644 index 00000000..2454bd05 --- /dev/null +++ b/roles/ws/pipewire/tasks/main.yml @@ -0,0 +1,51 @@ +--- +- name: install pipewire and deps + apt: + name: + - libldacbt-abr2 + - libldacbt-enc2 + - libspa-0.2-bluetooth + - pipewire-audio-client-libraries + - wireplumber + - pipewire-pulse + - gstreamer1.0-pipewire + state: present + +- name: remove default pipewire session manager + apt: + name: + - pipewire-media-session + - pulseaudio-module-bluetooth + state: absent + purge: yes + +- name: enable wireplumber + systemd: + daemon_reload: yes + scope: global + name: wireplumber.service + enabled: yes + +- name: disable pulseaudio + loop: + - socket + - service + systemd: + daemon_reload: yes + scope: global + name: "pulseaudio.{{ item }}" + enabled: false + +- name: switch to pipewire for alsa defult device + copy: + remote_src: yes + src: /usr/share/doc/pipewire/examples/alsa.conf.d/99-pipewire-default.conf + dest: /etc/alsa/conf.d/99-pipewire-default.conf + +- name: remove pulseadio for als default device + loop: + - 99-pulseaudio-default.conf.example + - 99-pulse.conf + file: + path: "/etc/alsa/conf.d/{{ item }}" + state: absent |