pulse-client.conf(5)
π pulse-client.conf β the PulseAudio client config, bestie edition π
okay so this is pulse-client.conf(5), a File Formats Manual page, and it's literally the glow-up guide for how your PulseAudio client library behaves. pull up a chair, we're doing this together π«Ά
β¨ SYNOPSIS β¨
like, here's where the files live:
~/.config/pulse/client.conf
~/.config/pulse/client.conf.d/*.conf
/etc/pulse/client.conf
/etc/pulse/client.conf.d/*.conf
πΈ DESCRIPTION πΈ
so when the PulseAudio client library starts up, it reads configuration directives from a config file. no cap. here's the tea β:
if the per-user file ~/.config/pulse/client.conf exists, it's the one that gets used. if it doesn't exist, then the system configuration file /etc/pulse/client.conf gets used instead. slay.
but wait, there's more π
β on top of those main files, you can also drop configuration directives into files under the directories ~/.config/pulse/client.conf.d/ and /etc/pulse/client.conf.d/. those files have to have the .conf file name extension, but other than that you can name them literally whatever you want, go off. the files under client.conf.d are processed in alphabetical order. and if the same option gets set in multiple files? the last file to set an option overrides the earlier files. the main client.conf file is processed first, so anything you set in files under client.conf.d overrides the main file. periodt.
the configuration file itself is just a simple collection of variable declarations. if the config parser runs into either ; or #, it ignores the rest of the line until the end of that line. so comment away, bestie π
for the settings that take a boolean argument: the values true, yes, on and 1 are all equivalent, and respectively false, no, off, 0 are the other side of that vibe check.
π DIRECTIVES π
okay this is the main character section, let's go one by one π₯
default-sink=β the default sink to connect to. if you specify it, it overwrites the setting in the daemon. the environment variable$PULSE_SINKhowever takes precedence. iykyk.default-source=β the default source to connect to. if you specify it, it overwrites the setting in the daemon. the environment variable$PULSE_SOURCEhowever takes precedence.default-server=β the default server to connect to. the environment variable$PULSE_SERVERtakes precedence.autospawn=β autospawn a PulseAudio daemon when needed. takes a boolean value, defaults toyes. β οΈ 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. if you use systemd to start PulseAudio, usesystemctl --user stop pulseaudio.service pulseaudio.socketto stop the daemon temporarily, orsystemctl --user mask pulseaudio.service pulseaudio.socketto permanently disable the units (the"disable"command of systemctl probably won't work, because thepulseaudio.socketunit is often installed to/usr/lib/systemd/user/sockets.target.wants/, which makes it impossible to disable the unit with the"disable"command). π systemd really said "no β€οΈ"daemon-binary=β path to the PulseAudio daemon to run when autospawning. defaults to a path configured at compile time.extra-arguments=β extra arguments to pass to the PulseAudio daemon when autospawning. defaults to--log-target=syslog.cookie-file=β specify the path to the PulseAudio authentication cookie. defaults to~/.config/pulse/cookie. πͺenable-shm=β enable data transfer via POSIX or memfd shared memory. takes a boolean argument, defaults toyes. if you set it tono, communication with the server will be exclusively done through data-copy over sockets.enable-memfd=β enable data transfer via memfd shared memory. takes a boolean argument, defaults toyes.shm-size-bytes=β sets the shared memory segment size for clients, in bytes. if left unspecified or set to0, it'll default to some system-specific default, usually 64 MiB. please note that usually there is no need to change this value, unless you're running an OS kernel that does not do memory overcommit. lowkey leave it alone bestie πauto-connect-localhost=β automatically try to connect to localhost via IP. π¨ enabling this is a potential security hole, since connections are only authenticated one-way and a rogue server might hence fool a client into sending it its private (e.g. VoIP call) data. this was enabled by default on PulseAudio version 0.9.21 and older. defaults tono. do not.auto-connect-display=β automatically try to connect to the host X11's$DISPLAYvariable is set to. the same security issues apply as toauto-connect-localhost=. defaults tono. yeah same energy, be careful π
π AUTHORS π
The PulseAudio Developers <pulseaudio-discuss (at) lists (dot) freedesktop (dot) org>; PulseAudio is available from http://pulseaudio.org/ π
π¦ SEE ALSO π¦
and that's the whole page, bestie, you ate it π this was the pulse-client.conf(5) page from the File Formats Manual, brought to you by the Manuals / User crowd, and yeah, that's the version and date vibe right there β go configure something iconic, ily, bye πβ¨
π¦ where this page comes from
- alpine 3.24: pulseaudio-doc 17.0-r7 Β· LGPL-2.1-or-later
- arch rolling: libpulse 17.0+r134+g77d25a1e6-1 Β· LGPL-2.1-or-later
- centos-stream 10: pulseaudio-utils 17.0-6.el10 Β· LGPL-2.1-or-later
- debian bookworm: pulseaudio 16.1+dfsg1-2+b1 Β· LGPL-2.1-or-later
- debian trixie: pulseaudio 17.0+dfsg1-2+b1 Β· LGPL-2.1-or-later
- fedora 43: pulseaudio-utils 17.0-7.fc43 Β· LGPL-2.1-or-later
- fedora 43: pulseaudio-utils 17.0-9.fc43 Β· LGPL-2.1-or-later
- fedora 44: pulseaudio-utils 17.0-9.fc44 Β· LGPL-2.1-or-later
- nixos 26.05: pulseaudio 17.0
- nixpkgs unstable: pulseaudio 17.0
- ubuntu jammy: pulseaudio 1:15.99.1+dfsg1-1ubuntu1 Β· LGPL-2.1-or-later
- ubuntu jammy: pulseaudio 1:15.99.1+dfsg1-1ubuntu2.2 Β· LGPL-2.1-or-later
- ubuntu noble: pulseaudio 1:16.1+dfsg1-2ubuntu10 Β· LGPL-2.1-or-later
- ubuntu noble: pulseaudio 1:16.1+dfsg1-2ubuntu10.1 Β· LGPL-2.1-or-later
- ubuntu questing: pulseaudio 1:17.0+dfsg1-2ubuntu3
- ubuntu resolute: pulseaudio 1:17.0+dfsg1-2ubuntu4 Β· LGPL-2.1-or-later
- ubuntu stonking: pulseaudio 1:17.0+dfsg1-2ubuntu6 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms