Pulseaudio broken after config change, how to fix?

Background

Audio has been working fine on my system, and I normally use pavucontrol to manage audio. But, Discord keeps switching to a non-working HDMI sink. Nothing else switches automatically, just Discord. I can disable the device in pavucontrol, or manually override the Discord settings, but neither of these is a persistent fix so I have to repeat the override every time. I finally decided to try to disable HDMI audio permanently, since I don’t use it.

How I broke it

Several people online suggested to edit /etc/pulse/default.pa and comment out load-module module-switch-on-connect. On my system that line does not exist in default.pa, but I did find load-module module-switch-on-port-available and commented it out. (Someone else said that worked for them so it wasn’t just a guess.)

Then I ran pulseaudio -k to restart pulseaudio, whereupon it failed to start. So I went back into the config and uncommented the line I commented out before, but now it still fails to start, even though the configuration file is exactly the same as when it was working before. I tried rebooting and that did not fix anything. I tried reinstalling pulseaudio and that did not fix anything. The file /etc/pulse/default.pa and the script /usr/bin/pulseaudio still exist, and the pulseaudio package is installed, but somehow broken. Apparently the change to the config file caused a permanent and breaking change elsewhere.

What I tried

  1. edited config file and restarted pulseaudio
  2. reverted config file and attempted to restart pulseaudio
  3. rebooted
  4. reinstalled pulseaudio and attempted to start systemd

Some symptoms in its current broken state:

Summary
$ pulseaudio --check

$ pulseaudio -v -D
E: [pulseaudio] main.c: Daemon startup failed.

$ journalctl -u pulseaudio
-- No entries --

$ systemctl start pulseaudio
Failed to start pulseaudio.service: Unit pulseaudio.service not found.

$ sudo pacman -Q | grep pulseaudio
pulseaudio 17.0+r98+gb096704c0-1
pulseaudio-alsa 1:1.2.12-6
pulseaudio-bluetooth 17.0+r98+gb096704c0-1
pulseaudio-ctl 1.70-1
pulseaudio-equalizer 17.0+r98+gb096704c0-1
pulseaudio-equalizer-ladspa 3.0.2-11
pulseaudio-jack 17.0+r98+gb096704c0-1
pulseaudio-lirc 17.0+r98+gb096704c0-1
pulseaudio-qt 1.8.1-1
pulseaudio-rtp 17.0+r98+gb096704c0-1
pulseaudio-zeroconf 17.0+r98+gb096704c0-1
xfce4-pulseaudio-plugin 0.5.1-1

$ grep switch /etc/pulse/default.pa
load-module module-switch-on-port-available

$ pavucontrol
<hangs, trying to connect>

$ pactl info
Connection failure: Connection refused

$ systemctl | grep pulse
<no output>

inxi -zv8

Summary
System:
  Kernel: 6.18.49-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 16.2.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.18-x86_64
    root=UUID=c5dd873d-0d4f-48aa-b0a3-5bbcae2e8314 rw quiet
  Desktop: Xfce v: 4.20.2 tk: Gtk v: 3.24.52 wm: xfwm4 v: 4.20.0
    with: xfce4-panel tools: xfce4-screensaver avail: light-locker vt: 1
    dm: LightDM v: 1.33.1 Distro: Manjaro base: Arch Linux
Machine:
  Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
  Mobo: ASUSTeK model: TUF GAMING Z790-PLUS WIFI v: Rev 1.xx
    serial: <superuser required> part-nu: SKU uuid: <superuser required>
    Firmware: UEFI vendor: American Megatrends v: 1805 date: 10/30/2024
Battery:
  Device-1: hidpp_battery_0 model: Logitech M720 Triathlon Multi-Device Mouse
    serial: <filter> charge: 10% (should be ignored) rechargeable: yes
    status: discharging
Memory:
  System RAM: total: 128 GiB available: 125.51 GiB used: 8.96 GiB (7.1%)
  Message: For most reliable report, use superuser + dmidecode.
  Array-1: capacity: 256 GiB slots: 4 modules: 4 EC: None
    max-module-size: 64 GiB note: est.
  Device-1: Controller0-DIMM0 type: DDR5 detail: synchronous size: 32 GiB
    speed: 4200 MT/s volts: note: check curr: 1 min: 1 max: 1 width (bits):
    data: 64 total: 64 manufacturer: G Skill Intl part-no: F5-6400J3239G32G
    serial: <filter>
  Device-2: Controller0-DIMM1 type: DDR5 detail: synchronous size: 32 GiB
    speed: 4200 MT/s volts: note: check curr: 1 min: 1 max: 1 width (bits):
    data: 64 total: 64 manufacturer: G Skill Intl part-no: F5-6400J3239G32G
    serial: <filter>
  Device-3: Controller1-DIMM0 type: DDR5 detail: synchronous size: 32 GiB
    speed: 4200 MT/s volts: note: check curr: 1 min: 1 max: 1 width (bits):
    data: 64 total: 64 manufacturer: G Skill Intl part-no: F5-6400J3239G32G
    serial: <filter>
  Device-4: Controller1-DIMM1 type: DDR5 detail: synchronous size: 32 GiB
    speed: 4200 MT/s volts: note: check curr: 1 min: 1 max: 1 width (bits):
    data: 64 total: 64 manufacturer: G Skill Intl part-no: F5-6400J3239G32G
    serial: <filter>
PCI Slots:
  Permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: 13th Gen Intel Core i7-13700K bits: 64 type: MST AMCP
    arch: Raptor Lake gen: core 13 level: v3 note: check built: 2022+
    process: Intel 7 (10nm) family: 6 model-id: 0xB7 (183) stepping: 1
    microcode: 0x137
  Topology: cpus: 1x dies: 1 clusters: 10 cores: 16 threads: 24 mt: 8 tpc: 2
    st: 8 smt: enabled cache: L1: 1.4 MiB desc: d-8x32 KiB, 8x48 KiB; i-8x32
    KiB, 8x64 KiB L2: 24 MiB desc: 8x2 MiB, 2x4 MiB L3: 30 MiB desc: 1x30 MiB
  Speed (MHz): avg: 904 min/max: 800/5300:5400:4200 scaling:
    driver: intel_pstate governor: powersave cores: 1: 904 2: 904 3: 904 4: 904
    5: 904 6: 904 7: 904 8: 904 9: 904 10: 904 11: 904 12: 904 13: 904 14: 904
    15: 904 16: 904 17: 904 18: 904 19: 904 20: 904 21: 904 22: 904 23: 904
    24: 904 bogomips: 164044
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_lbr arch_perfmon art avx avx2 avx_vnni bmi1 bmi2
    bts clflush clflushopt clwb cmov constant_tsc cpuid cpuid_fault cx16 cx8
    de ds_cpl dtes64 dtherm dts epb ept ept_ad erms est f16c flexpriority
    flush_l1d fma fpu fsgsbase fsrm fxsr gfni hfi ht hwp hwp_act_window
    hwp_epp hwp_notify hwp_pkg_req ibpb ibrs ibrs_enhanced ibt ida intel_pt
    invpcid lahf_lm lm mca mce md_clear mmx monitor movbe movdir64b movdiri
    msr mtrr nonstop_tsc nopl nx ospke pae pat pbe pcid pclmulqdq pconfig
    pdcm pdpe1gb pebs pge pku pln pni popcnt pse pse36 pts rdpid rdrand
    rdseed rdtscp rep_good sdbg sep serialize sha_ni smap smep smx
    split_lock_detect ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tm
    tm2 tpr_shadow tsc tsc_adjust tsc_deadline_timer tsc_known_freq umip
    user_shstk vaes vme vmx vnmi vpclmulqdq vpid waitpkg x2apic xgetbv1 xsave
    xsavec xsaveopt xsaves xtopology xtpr
  Vulnerabilities:
  Type: gather_data_sampling status: Not affected
  Type: ghostwrite status: Not affected
  Type: indirect_target_selection status: Not affected
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: old_microcode status: Not affected
  Type: reg_file_data_sampling mitigation: Clear Register File
  Type: retbleed status: Not affected
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB:
    conditional; PBRSB-eIBRS: SW sequence; BHI: BHI_DIS_S
  Type: srbds status: Not affected
  Type: tsa status: Not affected
  Type: tsx_async_abort status: Not affected
  Type: vmscape mitigation: IBPB before exit to userspace
Graphics:
  Device-1: Advanced Micro Devices [AMD/ATI] Navi 48 [Radeon AI PRO R9700]
    vendor: ASRock driver: amdgpu v: kernel arch: RDNA-4 code: Navi-4x
    process: TSMC n4 (4nm) built: 2025+ pcie: gen: 5 speed: 32 GT/s lanes: 16
    ports: active: DP-2,DP-3,DP-4 empty: DP-1,Writeback-1 bus-ID: 03:00.0
    chip-ID: 1002:7551 class-ID: 0300
  Device-2: Logitech CrystalCam driver: snd-usb-audio,uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6.1:6
    chip-ID: 046d:0894 class-ID: 0102 serial: <filter>
  Display: unspecified server: X.Org v: 21.1.24 with: Xwayland v: 24.1.13
    compositor: xfwm4 v: 4.20.0 driver: X: loaded: amdgpu dri: radeonsi
    gpu: amdgpu display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 8560x1460 s-dpi: 96 s-size: 2265x387mm (89.17x15.24")
    s-diag: 2298mm (90.47")
  Monitor-1: DP-2 mapped: DisplayPort-1 pos: primary,bottom-c
    model: AOC U34G2G4R3 serial: <filter> built: 2020 res: mode: 3440x1440
    hz: 60 scale: 100% (1) dpi: 110 gamma: 1.2 chroma: red: x: 0.678 y: 0.310
    green: x: 0.278 y: 0.639 blue: x: 0.149 y: 0.071 white: x: 0.314 y: 0.329
    size: 797x334mm (31.38x13.15") diag: 864mm (34") modes: 3440x1440,
    2560x1080, 1720x1440, 1920x1080, 1680x1050, 1280x1024, 1440x900,
    1280x720, 1024x768, 832x624, 800x600, 720x576, 720x480, 640x480, 720x400
  EDID-Warnings: 1: parse_edid: unhandled CEA mode 89 2: parse_edid:
    unhandled CEA mode 90 3: parse_edid: unhandled CEA mode 92 4: parse_edid:
    unknown tag 112
  Monitor-2: DP-3 mapped: DisplayPort-2 pos: bottom-r model: Acer XV272U
    serial: <filter> built: 2020 res: 3440x1440 dpi: 109 gamma: 1.2 chroma: red:
    x: 0.678 y: 0.310 green: x: 0.267 y: 0.663 blue: x: 0.149 y: 0.051 white:
    x: 0.314 y: 0.329 size: 597x336mm (23.5x13.23") diag: 685mm (27")
    ratio: 16:9 modes: 2560x1440, 1920x1080, 1680x1050, 1280x1024, 1440x900,
    1280x960, 1280x800, 1152x864, 1280x720, 1024x768, 832x624, 800x600,
    720x576, 720x480, 640x480, 720x400
  Monitor-3: DP-4 mapped: DisplayPort-3 pos: top-left model: Acer XV272U
    serial: <filter> built: 2020 res: mode: 2560x1440 hz: 144 scale: 100% (1)
    dpi: 109 gamma: 1.2 chroma: red: x: 0.678 y: 0.310 green: x: 0.267
    y: 0.663 blue: x: 0.149 y: 0.051 white: x: 0.314 y: 0.329
    size: 597x336mm (23.5x13.23") diag: 685mm (27") ratio: 16:9
    modes: 2560x1440, 1920x1080, 1680x1050, 1280x1024, 1440x900, 1280x960,
    1280x800, 1152x864, 1280x720, 1024x768, 832x624, 800x600, 720x576,
    720x480, 640x480, 720x400
  API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
    device: 1 drv: swrast gbm: drv: radeonsi surfaceless: drv: radeonsi x11:
    drv: radeonsi inactive: wayland
  API: OpenGL v: 4.6 vendor: amd mesa v: 26.2.2-arch1.1 glx-v: 1.4
    direct-render: yes renderer: AMD Radeon AI PRO R9700 (radeonsi gfx1201 ACO
    DRM 3.64 6.18.49-1-MANJARO) device-ID: 1002:7551 memory: 31.25 GiB
    unified: no
  API: Vulkan v: 1.4.357 layers: 6 device: 0 type: discrete-gpu name: AMD
    Radeon AI PRO R9700 (RADV GFX1201) driver: mesa radv v: 26.2.2-arch1.1
    device-ID: 1002:7551 surfaces: N/A
  Info: Tools: api: eglinfo, glxinfo, vulkaninfo de: xfce4-display-settings
    x11: xdpyinfo, xprop, xrandr
Audio:
  Device-1: Intel 700 Series Family HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel alternate: snd_soc_avs,snd_sof_pci_intel_tgl
    bus-ID: 00:1f.3 chip-ID: 8086:7a50 class-ID: 0403
  Device-2: Advanced Micro Devices [AMD/ATI] Navi 48 HDMI/DP Audio
    driver: snd_hda_intel v: kernel pcie: gen: 5 speed: 32 GT/s lanes: 16
    bus-ID: 03:00.1 chip-ID: 1002:ab40 class-ID: 0403
  Device-3: Kingston HyperX SoloCast
    driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 1.1 speed: 12 Mb/s
    lanes: 1 mode: 1.1 bus-ID: 1-4:3 chip-ID: 0951:170f class-ID: 0300
  Device-4: Logitech CrystalCam driver: snd-usb-audio,uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6.1:6
    chip-ID: 046d:0894 class-ID: 0102 serial: <filter>
  API: ALSA v: k6.18.49-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: sndiod v: N/A status: off tools: aucat,midicat,sndioctl
  Server-2: JACK v: 1.9.22 status: off tools: N/A
  Server-3: PipeWire v: 1.6.8 status: off with: pipewire-media-session
    status: active tools: pw-cat,pw-cli
  Server-4: PulseAudio v: 17.0-98-gb096 status: off with: 1: pulseaudio-alsa
    type: plugin 2: pulseaudio-jack type: module tools: pacat,pactl,pavucontrol
Network:
  Device-1: Intel 700 Series Family CNVi Wi-Fi driver: iwlwifi v: kernel
    modules: wl bus-ID: 00:14.3 chip-ID: 8086:7a70 class-ID: 0280
  IF: wlan0 state: down mac: <filter>
  Device-2: Intel Ethernet I226-V vendor: ASUSTeK driver: igc v: kernel
    pcie: gen: 2 speed: 5 GT/s lanes: 1 port: N/A bus-ID: 07:00.0
    chip-ID: 8086:125c class-ID: 0200
  IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  Info: services: NetworkManager, sshd, systemd-timesyncd
  WAN IP: <filter>
Bluetooth:
  Device-1: Intel AX211 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-14:8 chip-ID: 8087:0033
    class-ID: e001
  Report: btmgmt ID: hci0 rfk-id: 1 state: up address: <filter> bt-v: 5.4
    lmp-v: 13 status: discoverable: no pairing: no class-ID: 100104
Logical:
  Message: No logical block device data found.
RAID:
  Hardware-1: Intel RST Volume Management Device Controller driver: vmd v: 0.6
    port: N/A bus-ID: 00:0e.0 chip-ID: 8086:a77f rev: class-ID: 0104
Drives:
  Local Storage: total: 7.5 TiB used: 2.57 TiB (34.2%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: SanDisk model: Ultra 3D NVMe
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 tech: SSD serial: <filter> fw-rev: 211070WD temp: 35.9 C
    scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: Crucial model: CT250BX100SSD1
    size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: MU02 temp: 25 C scheme: MBR
  ID-3: /dev/sdb maj-min: 8:16 vendor: Toshiba model: DT01ACA300
    size: 2.73 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    tech: HDD rpm: 7200 serial: <filter> fw-rev: ABB0 temp: 33 C scheme: GPT
  ID-4: /dev/sdc maj-min: 8:32 vendor: Seagate model: ST4000DM004-2CV104
    size: 3.64 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    tech: HDD rpm: 5425 serial: <filter> fw-rev: 0001 temp: 31 C scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 55.46 GiB size: 54.42 GiB (98.11%) used: 50.03 GiB (91.9%)
    fs: ext4 block-size: 4096 B dev: /dev/sda5 maj-min: 8:5 label: N/A
    uuid: c5dd873d-0d4f-48aa-b0a3-5bbcae2e8314
  ID-2: /boot/efi raw-size: 1000 MiB size: 998 MiB (99.80%)
    used: 264 KiB (0.0%) fs: vfat block-size: 512 B dev: /dev/sda4 maj-min: 8:4
    label: N/A uuid: 9E71-08AE
  ID-3: /mnt/sda2 raw-size: 56.44 GiB size: 55.38 GiB (98.12%)
    used: 17.82 GiB (32.2%) fs: ext4 block-size: 4096 B dev: /dev/sda2
    maj-min: 8:2 label: N/A uuid: a187c819-a966-463d-81f1-58023627ebcd
  ID-4: /mnt/sdb2 raw-size: 976.56 GiB size: 961.04 GiB (98.41%)
    used: 884.42 GiB (92.0%) fs: ext4 block-size: 4096 B dev: /dev/sdb2
    maj-min: 8:18 label: N/A uuid: b476ea8f-eafd-4a24-a9e8-39f9d15b07ce
  ID-5: /mnt/sdb3 raw-size: 761.96 GiB size: 748.93 GiB (98.29%)
    used: 654.34 GiB (87.4%) fs: ext4 block-size: 4096 B dev: /dev/sdb3
    maj-min: 8:19 label: N/A uuid: b8257fea-292f-4d08-a905-528c4441f16e
  ID-6: /mnt/sdc1 raw-size: 1.82 TiB size: 1.79 TiB (98.37%)
    used: 61.04 GiB (3.3%) fs: ext4 block-size: 4096 B dev: /dev/sdc1
    maj-min: 8:33 label: N/A uuid: 40f4b154-f9e7-460b-a548-006e80f345ab
  ID-7: /mnt/sdc2 raw-size: 1.82 TiB size: 1.79 TiB (98.37%)
    used: 962.52 GiB (52.5%) fs: ext4 block-size: 4096 B dev: /dev/sdc2
    maj-min: 8:34 label: N/A uuid: 846b3b52-7fa6-4337-8a30-824e7c22cf5c
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 32 GiB used: 0 KiB (0.0%) priority: -2
    dev: /dev/sdb4 maj-min: 8:20 label: N/A
    uuid: d4f08876-1325-4f71-ab21-db5c97157041
Unmounted:
  ID-1: /dev/nvme0n1p1 maj-min: 259:1 size: 465.76 GiB fs: ext4 label: N/A
    uuid: 070694cc-a700-4e1c-b563-18df080bf756
  ID-2: /dev/sda1 maj-min: 8:1 size: 120 GiB fs: ntfs label: N/A
    uuid: 6B2B6E0944771B0A
  ID-3: /dev/sda3 maj-min: 8:3 size: 1 KiB fs: <superuser required>
    label: N/A uuid: N/A
  ID-4: /dev/sdb1 maj-min: 8:17 size: 1024 GiB fs: ntfs label: windata
    uuid: 62F69220227EE2E0
USB:
  Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 16 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 1-2:2 info: ASUSTek AURA LED Controller type: HID
    driver: hid-generic,usbhid interfaces: 2 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 16mA chip-ID: 0b05:19af class-ID: 0300
    serial: <filter>
  Device-2: 1-4:3 info: Kingston HyperX SoloCast type: audio,HID
    driver: hid-generic,snd-usb-audio,usbhid interfaces: 3 rev: 1.1
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 100mA
    chip-ID: 0951:170f class-ID: 0300
  Hub-2: 1-6:4 info: ASMedia ASM1074 High-Speed hub ports: 4 rev: 2.1
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 100mA
    chip-ID: 174c:2074 class-ID: 0900
  Device-1: 1-6.1:6 info: Logitech CrystalCam type: video,audio
    driver: snd-usb-audio,uvcvideo interfaces: 4 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 500mA
    chip-ID: 046d:0894 class-ID: 0102 serial: <filter>
  Device-2: 1-6.2:7 info: Logitech Litra Glow type: HID
    driver: hid-generic,usbhid interfaces: 1 rev: 1.1 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 500mA chip-ID: 046d:c900 class-ID: 0300
    serial: <filter>
  Device-3: 1-6.4:9 info: Microdia Backlit Gaming Keyboard
    type: keyboard,mouse driver: hid-generic,usbhid interfaces: 2 rev: 2.0
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 400mA
    chip-ID: 0c45:652f class-ID: 0301
  Device-4: 1-13:5 info: Logitech Unifying Receiver type: keyboard,mouse,HID
    driver: logitech-djreceiver,usbhid interfaces: 3 rev: 2.0
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 98mA
    chip-ID: 046d:c52b class-ID: 0300
  Device-5: 1-14:8 info: Intel AX211 Bluetooth type: bluetooth driver: btusb
    interfaces: 2 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1
    power: 100mA chip-ID: 8087:0033 class-ID: e001
  Hub-3: 2-0:1 info: super-speed hub ports: 9 rev: 3.1
    speed: 20 Gb/s (2.33 GiB/s) lanes: 2 mode: 3.2 gen-2x2 chip-ID: 1d6b:0003
    class-ID: 0900
  Hub-4: 2-9:2 info: ASMedia ASM1074 SuperSpeed hub ports: 4 rev: 3.0
    speed: 5 Gb/s (596.0 MiB/s) lanes: 1 mode: 3.2 gen-1x1 power: 8mA
    chip-ID: 174c:3074 class-ID: 0900
Sensors:
  System Temperatures: cpu: 34.5 C mobo: N/A gpu: amdgpu temp: 50.0 C
    mem: 49.0 C
  Fan Speeds (rpm): N/A gpu: amdgpu fan: 1067
Repos:
  Packages: 2704 pm: dpkg pkgs: 0 pm: pacman pkgs: 2691 libs: 598
    tools: pamac,trizen pm: flatpak pkgs: 13
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://ziply.mm.fcix.net/manjaro/stable/$repo/$arch
    2: https://opencolo.mm.fcix.net/manjaro/stable/$repo/$arch
    3: https://irltoolkit.mm.fcix.net/manjaro/stable/$repo/$arch
    4: https://nocix.mm.fcix.net/manjaro/stable/$repo/$arch
    5: https://repo.ialab.dsu.edu/manjaro/stable/$repo/$arch
    6: https://nnenix.mm.fcix.net/manjaro/stable/$repo/$arch
    7: https://mirror.math.princeton.edu/pub/manjaro/stable/$repo/$arch
    8: https://ask4.mm.fcix.net/manjaro/stable/$repo/$arch
Processes:
  CPU top: 5 of 512
  1: cpu: 52.8% command: firefox pid: 6266 mem: 1420.9 MiB (1.1%)
  2: cpu: 46.7% command: Discord pid: 4755 mem: 141.0 MiB (0.1%)
  3: cpu: 34.6% command: Discord pid: 4985 mem: 528.4 MiB (0.4%)
  4: cpu: 12.1% command: Xorg pid: 2058 mem: 148.8 MiB (0.1%)
  5: cpu: 9.0% command: firefox pid: 9161 mem: 331.6 MiB (0.2%)
  Memory top: 5 of 512
  1: mem: 1420.9 MiB (1.1%) command: firefox pid: 6266 cpu: 52.8%
  2: mem: 618.0 MiB (0.4%) command: firefox pid: 6739 cpu: 1.0%
  3: mem: 574.4 MiB (0.4%) command: firefox pid: 6816 cpu: 0.4%
  4: mem: 528.4 MiB (0.4%) command: Discord pid: 4985 cpu: 34.6%
  5: mem: 474.9 MiB (0.3%) command: firefox pid: 6786 cpu: 2.4%
Info:
  Processes: 512 Power: uptime: 24m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 50.12 GiB
    services: upowerd,xfce4-power-manager Init: systemd v: 261
    default: graphical tool: systemctl
  Compilers: clang: 22.1.8 gcc: 16.2.1 alt: 12 Shell: Bash v: 5.3.15
    running-in: xfce4-terminal inxi: 3.3.41

System Logs

System log from two boots ago, when it was working:

Summary
Sep 12 18:31:49 hostname dbus-broker-launch[1205]: Invalid user-name in /usr/share/dbus-1/system.d/pulseaudio-system.conf +27: user="pulse"
Sep 12 18:32:13 hostname pulseaudio[2202]: WARNING: radv is not a conformant Vulkan implementation, testing use only.
Sep 12 18:32:57 hostname pulseaudio[2142]: ALSA woke us up to write new data to the device, but there was actually nothing to write.
Sep 12 18:32:57 hostname pulseaudio[2142]: Most likely this is a bug in the ALSA driver 'snd_hda_intel'. Please report this issue to the ALSA developers.
Sep 12 18:32:57 hostname pulseaudio[2142]: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Sep 12 21:15:02 hostname pulseaudio[2142]: ALSA woke us up to read new data from the device, but there was actually nothing to read.
Sep 12 21:15:02 hostname pulseaudio[2142]: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
Sep 12 21:15:02 hostname pulseaudio[2142]: We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Sep 16 15:30:41 hostname pulseaudio[2142]: ICE I/O error handler called
Sep 16 15:30:41 hostname pulseaudio[2142]: X11 I/O error handler called
Sep 16 15:30:41 hostname pulseaudio[2142]: X11 I/O error exit handler called, preparing to tear down X11 modules
Sep 16 15:30:41 hostname pulseaudio[2142]: org.bluez.BatteryProviderManager1.UnregisterBatteryProvider() Failed: org.freedesktop.DBus.Error.NoReply:Remote peer disconnected
Sep 16 15:30:43 hostname systemd[1955]: pulseaudio.service: Consumed 46min 56.729s CPU time over 3d 20h 58min 31.377s wall clock time, 64.4M memory peak.

System log from one boot ago, when I broke it. During this boot it worked at the beginning, but then I updated the config file around Sep 23 15:28:31 and nothing worked after that:

Summary
Sep 16 15:31:53 hostname pulseaudio[2241]: WARNING: radv is not a conformant Vulkan implementation, testing use only.
Sep 16 15:32:19 hostname pulseaudio[2199]: ALSA woke us up to write new data to the device, but there was actually nothing to write.
Sep 16 15:32:19 hostname pulseaudio[2199]: Most likely this is a bug in the ALSA driver 'snd_hda_intel'. Please report this issue to the ALSA developers.
Sep 16 15:32:19 hostname pulseaudio[2199]: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Sep 16 21:08:58 hostname pulseaudio[2199]: ALSA woke us up to read new data from the device, but there was actually nothing to read.
Sep 16 21:08:58 hostname pulseaudio[2199]: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
Sep 16 21:08:58 hostname pulseaudio[2199]: We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Sep 22 08:58:01 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 09:19:03 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 10:38:22 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 13:25:47 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 15:32:59 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 17:13:54 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 18:47:32 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 19:57:29 hostname pulseaudio[2199]: protocol error, kicking client
Sep 22 22:51:42 hostname pulseaudio[2199]: protocol error, kicking client
Sep 23 04:09:09 hostname pulseaudio[2199]: protocol error, kicking client
Sep 23 09:31:57 hostname pulseaudio[2199]: protocol error, kicking client
Sep 23 11:38:06 hostname pulseaudio[2199]: protocol error, kicking client
Sep 23 12:41:15 hostname pulseaudio[2199]: protocol error, kicking client
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Consumed 2h 4.654s CPU time over 6d 23h 56min 38.641s wall clock time, 78.4M memory peak.
Sep 23 15:28:31 hostname pulseaudio[2473973]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:28:31 hostname pulseaudio[2473973]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Scheduled restart job, restart counter is at 1.
Sep 23 15:28:31 hostname pulseaudio[2474154]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:28:31 hostname pulseaudio[2474154]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Scheduled restart job, restart counter is at 2.
Sep 23 15:28:31 hostname pulseaudio[2474159]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:28:31 hostname pulseaudio[2474159]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
Sep 23 15:28:31 hostname pulseaudio[2474162]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:28:31 hostname pulseaudio[2474162]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:28:31 hostname systemd[2012]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Scheduled restart job, restart counter is at 4.
Sep 23 15:28:32 hostname pulseaudio[2474165]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:28:32 hostname pulseaudio[2474165]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Start request repeated too quickly.
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.service: Failed with result 'start-limit-hit'.
Sep 23 15:28:32 hostname systemd[2012]: pulseaudio.socket: Failed with result 'service-start-limit-hit'.

System log from current boot, when I rebooted and it was still broken:

Summary
Sep 23 15:31:10 hostname dbus-broker-launch[1202]: Invalid user-name in /usr/share/dbus-1/system.d/pulseaudio-system.conf +27: user="pulse"
Sep 23 15:31:30 hostname pulseaudio[2177]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:31:30 hostname pulseaudio[2177]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Scheduled restart job, restart counter is at 1.
Sep 23 15:31:30 hostname pulseaudio[2193]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:31:30 hostname pulseaudio[2193]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:31:30 hostname systemd[1990]: pulseaudio.service: Scheduled restart job, restart counter is at 2.
Sep 23 15:31:31 hostname pulseaudio[2215]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:31:31 hostname pulseaudio[2215]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
Sep 23 15:31:31 hostname pulseaudio[2237]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:31:31 hostname pulseaudio[2237]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Scheduled restart job, restart counter is at 4.
Sep 23 15:31:31 hostname pulseaudio[2249]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:31:31 hostname pulseaudio[2249]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Start request repeated too quickly.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.service: Failed with result 'start-limit-hit'.
Sep 23 15:31:31 hostname systemd[1990]: pulseaudio.socket: Failed with result 'service-start-limit-hit'.
Sep 23 15:34:38 hostname pulseaudio[8825]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:34:38 hostname pulseaudio[8825]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:35:03 hostname pulseaudio[8991]: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
Sep 23 15:35:03 hostname pulseaudio[8991]: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted
Sep 23 15:35:03 hostname pulseaudio[8991]: Successfully gained nice level -11.
Sep 23 15:35:03 hostname pulseaudio[8991]: This is PulseAudio 17.0-98-gb096
Sep 23 15:35:03 hostname pulseaudio[8991]: Page size is 4096 bytes
Sep 23 15:35:03 hostname pulseaudio[8991]: Machine ID is 03f9b9e80bc94721bf8bd1f4fa916743.
Sep 23 15:35:03 hostname pulseaudio[8991]: Session ID is 1.
Sep 23 15:35:03 hostname pulseaudio[8991]: Using runtime directory /run/user/1000/pulse.
Sep 23 15:35:03 hostname pulseaudio[8991]: Using state directory /home/username/.config/pulse.
Sep 23 15:35:03 hostname pulseaudio[8991]: Using modules directory /usr/lib/pulseaudio/modules.
Sep 23 15:35:03 hostname pulseaudio[8991]: Running in system mode: no
Sep 23 15:35:03 hostname pulseaudio[8991]: System supports high resolution timers
Sep 23 15:35:03 hostname pulseaudio[8991]: CPU flags: CMOV MMX SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising MMX optimized volume functions.
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising MMX optimized remappers.
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising SSE2 optimized volume functions.
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising SSE2 optimized remappers.
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising SSE2 optimized conversions.
Sep 23 15:35:03 hostname pulseaudio[8991]: Initialising ORC optimized volume functions.
Sep 23 15:35:03 hostname pulseaudio[8991]: Unknown command: !/usr/bin/pulseaudio -nF
Sep 23 15:35:03 hostname pulseaudio[8991]: Failed to initialize daemon due to errors while executing startup commands. Source of commands: /etc/pulse/default.pa
Sep 23 15:35:03 hostname pulseaudio[8991]: Daemon terminated.
Sep 23 15:36:58 hostname sudo[9854]:  username : TTY=pts/1 ; PWD=/mnt/sdb3/home/username ; USER=root ; COMMAND=/usr/bin/pacman -S pulseaudio
Sep 23 15:37:00 hostname dbus-broker-launch[1202]: Invalid user-name in /usr/share/dbus-1/system.d/pulseaudio-system.conf +27: user="pulse"
Sep 23 15:37:02 hostname dbus-broker-launch[1202]: Invalid user-name in /usr/share/dbus-1/system.d/pulseaudio-system.conf +27: user="pulse"

Request

I would like to fix my system so I have working audio again.

I could try to remove all audio stuff and reinstall it from scratch, but if I could just get back to how it was this morning that would be sufficient. I’d guess it’s something simple since a 1-character config file change caused this weird persistent side effect.

Thanks for any help you can provide.

Where did you install discord from? Be advised that Snaps and FlatPaks are containerized applications, which is a very different thing to how repository packages behave.

From the extra repo
sudo pacman -S discord

module-switch-on-connect is not loaded by default, beacuse it’s a bit too aggressive. If the user sets the default sink or source manually, that choice gets forgotten when plugging in a new sound card, which can be undesirable.

It is usually more effective to restart the systemd service rather than killing the pulseaudio daemon and hoping that it can respawn

systemctl --user restart pulseaudio

and check the systemd units if PulseAudio fails to restart:

systemctl --user -l --no-pager status pulseaudio.socket pulseaudio.service

Reinstalling pulseaudio would get default module configuration /etc/pulse/default.pa back

@nikgnomic Here is the output of the commands you suggested:

$ systemctl --user restart pulseaudio
Job for pulseaudio.service failed because the control process exited with error code.
See "systemctl --user status pulseaudio.service" and "journalctl --user -xeu pulseaudio.service" for details.

$ systemctl --user -l --no-pager status pulseaudio.socket pulseaudio.service
× pulseaudio.socket - Sound System
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.socket; enabled; preset: enabled)
     Active: failed (Result: service-start-limit-hit) since Wed 2026-09-23 17:30:16 PDT; 8s ago
   Duration: 1.227s
 Invocation: 8317dcf999eb47db9ab9193b7a6ca21d
   Triggers: ● pulseaudio.service
     Listen: /run/user/1000/pulse/native (Stream)

Sep 23 17:30:15 maximus systemd[2028]: Listening on Sound System.
Sep 23 17:30:16 maximus systemd[2028]: pulseaudio.socket: Failed with result 'service-start-limit-hit'.

× pulseaudio.service - Sound Service
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; disabled; preset: enabled)
     Active: failed (Result: start-limit-hit) since Wed 2026-09-23 17:30:16 PDT; 8s ago
 Invocation: 3429ae149aef43b49c9072a5ba4095b3
TriggeredBy: × pulseaudio.socket
    Process: 12259 ExecStart=/usr/bin/pulseaudio --daemonize=no --log-target=journal (code=exited, status=1/FAILURE)
   Main PID: 12259 (code=exited, status=1/FAILURE)
   Mem peak: 3.2M
        CPU: 34ms

Sep 23 17:30:16 hostname systemd[2028]: Failed to start Sound Service.
Sep 23 17:30:16 hostname systemd[2028]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Sep 23 17:30:16 hostname systemd[2028]: pulseaudio.service: Start request repeated too quickly.
Sep 23 17:30:16 hostname systemd[2028]: pulseaudio.service: Failed with result 'start-limit-hit'.
Sep 23 17:30:16 hostname systemd[2028]: Failed to start Sound Service.

Looking up the start-limit-hit error suggested setting autospawn = yes in etc/pulse/client.conf, but that didn’t allow it to start. Tried rebooting and that didn’t help. This page says that start-limit-hit means it’s in a crash loop and exited after a number of retries; journalctl shows this is 5 attempts, while executing /etc/pulse/default.pa

Uninstalled pulseaudio, updated pacman, reinstalled pulseaudio, rebooted. Immediately following reboot, status shows I am still hitting the same start-limit-hit error:

$ systemctl --user status pulseaudio
× pulseaudio.service - Sound Service
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; enabled; preset: enabled)
     Active: failed (Result: start-limit-hit) since Wed 2026-09-23 18:12:12 PDT; 1min 49s ago
 Invocation: e55d93cab97a4d94b7cac818d232d83b
TriggeredBy: × pulseaudio.socket
    Process: 2091 ExecStart=/usr/bin/pulseaudio --daemonize=no --log-target=journal (code=exited, status=1/FAILURE)
   Main PID: 2091 (code=exited, status=1/FAILURE)
   Mem peak: 3M
        CPU: 41ms

Sep 23 18:12:12 maximus systemd[2036]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 23 18:12:12 maximus systemd[2036]: pulseaudio.service: Failed with result 'exit-code'.
Sep 23 18:12:12 maximus systemd[2036]: Failed to start Sound Service.
Sep 23 18:12:12 maximus systemd[2036]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Sep 23 18:12:12 maximus systemd[2036]: pulseaudio.service: Start request repeated too quickly.
Sep 23 18:12:12 maximus systemd[2036]: pulseaudio.service: Failed with result 'start-limit-hit'.
Sep 23 18:12:12 maximus systemd[2036]: Failed to start Sound Service.

Attempting to start the service fails.

I checked and audio does work (probably just raw alsa), but the pulseaudio service is not working.

You may have your reasons for wanting to stick with pure pulseaudio, but have you considered switching to pipewire instead?

(Hint: It’s the default in newer Manjaro installations.)

pulse-client.conf(5) — Arch manual pages

autospawn= Autospawn a PulseAudio daemon when needed. Takes a boolean value, defaults to yes. Note that setting this to “no” doesn’t disable the systemd service. The autospawn option is only meant to be used on systems without systemd.

Try clearing user configuration in home folder:

rm ~/.config/pulse/*

and reboot system


inxi system information shows PipeWire is not running but pipewire-media-session is active
and might be causing problem with PulseAudio

To disable the session manager service:

systemctl --user disable --now pipewire-media-session.service

@nikgnomic Tried what you suggested: cleared ~/.config/pulse and rebooted. Still hitting `pulseaudio.service: Failed with result ‘start-limit-hit’ following the reboot.

Also verified that autospawn = no in the client.conf.

@Aragorn I don’t need to stick to pulseaudio, and did update another machine to pipewire. This system was setup around 7 years ago and should probably just be reinstalled, I could use a larger root partition anyway. Maybe this is the kick in the pants to finally do that.

That, and a little shot in the dark - did you check the permissions of the .pa file? Probably not that if clean install don’t fix it but don’t hurt to check.

Journal data in original post suggests that the first line of /etc/pulse/default.pa was uncommented ( “#” deleted)

/etc/pulse/default.pa
#!/usr/bin/pulseaudio -nF
#
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.

# This startup script is used only if PulseAudio is started per-user
# (i.e. not in system mode)

.fail

### Automatically restore the volume of streams and devices
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore

### Automatically augment property information from .desktop files
### stored in /usr/share/application
load-module module-augment-properties

### Should be after module-*-restore but before module-*-detect
load-module module-switch-on-port-available

### Load audio drivers statically
### (it's probably better to not load these drivers manually, but instead
### use module-udev-detect ignore_dB=1-- see below -- for doing this automatically)
#load-module module-alsa-sink
#load-module module-alsa-source device=hw:1,0
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink

### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif

### Automatically connect sink and source if JACK server is present
.ifexists module-jackdbus-detect.so
.nofail
load-module module-jackdbus-detect channels=2
.fail
.endif

### Automatically load driver modules for Bluetooth hardware
.ifexists module-bluetooth-policy.so
load-module module bluetooth-policy auto_switch=0
.endif

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif

### Load several protocols
load-module module-dbus-protocol
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix

### Network access (may be configured with paprefs, so leave this commented
### here if you plan to use paprefs)
#load-module module-esound-protocol-tcp
#load-module module-native-protocol-tcp
#load-module module-zeroconf-publish

### Load the RTP receiver module (also configured via paprefs, see above)
#load-module module-rtp-recv

### Load the RTP sender module (also configured via paprefs, see above)
#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
#load-module module-rtp-send source=rtp.monitor

### Load additional modules from GSettings. This can be configured with the paprefs tool.
### Please keep in mind that the modules configured by paprefs might conflict with manually
### loaded modules.
.ifexists module-gsettings.so
.nofail
load-module module-gsettings
.fail
.endif

### Automatically restore the default sink/source when changed by the user
### during runtime
### NOTE: This should be loaded as early as possible so that subsequent modules
### that look up the default sink/source get the right value
load-module module-default-device-restore

### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink

### Honour intended role device property
load-module module-intended-roles

### Automatically suspend sinks/sources that become idle for too long
#load-module module-suspend-on-idle

### If autoexit on idle is enabled we want to make sure we only quit
### when no local session needs us anymore.
.ifexists module-console-kit.so
load-module module-console-kit
.endif
.ifexists module-systemd-login.so
load-module module-systemd-login
.endif

### Enable positioned event sounds
load-module module-position-event-sounds

### Cork music/video streams when a phone stream is active
load-module module-role-cork

### Modules to allow autoloading of filters (such as echo cancellation)
### on demand. module-filter-heuristics tries to determine what filters
### make sense, and module-filter-apply does the heavy-lifting of
### loading modules and rerouting streams.
load-module module-filter-heuristics
load-module module-filter-apply

### Make some devices default
#set-default-sink output
#set-default-source input

### Allow including a default.pa.d directory, which if present, can be used
### for additional configuration snippets.
### Note that those snippet files must have a .pa file extension, not .conf
.nofail
.include /etc/pulse/default.pa.d

Journal data should show more information about why pulseaudio units are unable to start

To check file permissions and if any .pacnew files were created in /etc/pulse/ when pulseaudio was reinstalled.

ls -l /etc/pulse/

Wow, good eye! Yes the first line was uncommented. Must’ve fat-fingered vim. Commented the first line and it started right up.

Thanks so much.

(I don’t know why uninstall/reinstall did not replace the files, unless it saw they were modified and refused to delete/overwrite. There is a default.pa.pacnew, that must be the correct updated version.)