dirty-asahi-headphones-fix 781 B

1234567891011121314151617181920212223242526
  1. #/bin/sh
  2. # Dirty script to run on Asahi Linux, when the headphones don't work correctly
  3. # on resume from sleep.
  4. # 1. Stop All Services that make use of the Kernel Modules
  5. systemctl --user stop pipewire.socket pipewire-pulse.socket wireplumber.service pipewire.service
  6. sudo systemctl stop speakersafetyd
  7. # 2. Remove Kernel Modules to reset the I2C-Bus
  8. sudo modprobe -r snd_soc_macaudio
  9. sudo modprobe -r snd_soc_cs42l83_i2c
  10. # 3. Generous amount of sleep
  11. sleep 0.5
  12. # 4. Insert the Kernel Modules again
  13. sudo modprobe snd_soc_macaudio
  14. sudo modprobe snd_soc_cs42l83_i2c
  15. # 5. Generous amount of sleep
  16. sleep 0.5
  17. # 6. Start the Audio Services again
  18. sudo systemctl start speakersafetyd
  19. systemctl --user start pipewire.socket pipewire-pulse.socket wireplumber.service pipewire.service