WIREPLUMBER(1)

NAME
wireplumber - PipeWire Session Manager

SYNOPSIS

wireplumber [-c|--config-file=FILE] [-p|--profile=PROFILE] [-v|--version]

DESCRIPTION

wireplumber is the WirePlumber daemon, a modular session and policy manager for PipeWire. By itself it does nothing except load the components listed in the selected profile; all the actual management logic — bringing up devices, linking streams, granting permissions to clients — is implemented in those components.

It is normally started as a systemd user service rather than by hand:

    $ systemctl --user status wireplumber

OPTIONS

-c, --config-file=FILE
    Use FILE as the main configuration file instead of wireplumber.conf. The corresponding FILE.d/ fragment directory is loaded as well.

-p, --profile=PROFILE
    Load PROFILE instead of the default main profile. This is how a second instance is started with only part of the functionality; see Running multiple instances <#daemon-multi-instance>.

-v, --version
    Print the version and exit.

ENVIRONMENT

WIREPLUMBER_DEBUG
    Sets the log level and per-topic log levels. See Debug Logging <#daemon-logging>.

WIREPLUMBER_CONFIG_DIR
    Overrides the directory that is searched first for configuration files.

WIREPLUMBER_DATA_DIR
    Overrides the directory that is searched first for data files, such as scripts.

WIREPLUMBER_MODULE_DIR
    Overrides the directory that is searched first for modules.

    See Locations of WirePlumber's files <#daemon-file-locations> for the full search order of each of these.

FILES

Configuration files are looked up in the following directories, listed here from the highest to the lowest priority:

$XDG_CONFIG_HOME/wireplumber/
    User configuration; ~/.config/wireplumber/ unless $XDG_CONFIG_HOME is set.

$XDG_CONFIG_DIRS/wireplumber/
    Host-specific configuration; /etc/xdg/wireplumber/ unless $XDG_CONFIG_DIRS is set.

/etc/wireplumber/
    Host-specific configuration, in the compile-time $sysconfdir.

$XDG_DATA_DIRS/wireplumber/
    Distribution-provided configuration; /usr/local/share/wireplumber/ and /usr/share/wireplumber/ unless $XDG_DATA_DIRS is set.

/usr/share/wireplumber/
    Configuration that ships with WirePlumber, in the compile-time $datadir.

    In each of these directories, wireplumber.conf is the main configuration file and wireplumber.conf.d/*.conf are fragments that are merged into it. Only the first wireplumber.conf that is found is loaded, but fragments are loaded from all the directories, in reverse order of priority, so that a fragment in a higher priority directory overrides the ones below it.

    Scripts and other data files are looked up in a scripts subdirectory of the following directories, again from the highest to the lowest priority:

$XDG_DATA_HOME/wireplumber/
    User-provided scripts; ~/.local/share/wireplumber/ unless $XDG_DATA_HOME is set.

$XDG_DATA_DIRS/wireplumber/
    Host-specific scripts; /usr/local/share/wireplumber/ and /usr/share/wireplumber/ unless $XDG_DATA_DIRS is set.

/usr/share/wireplumber/
    The scripts that ship with WirePlumber, in the compile-time $datadir.

    The remaining locations are not searched in any order:

/usr/lib/wireplumber-0.5/
    WirePlumber modules, in the compile-time $libdir. On multiarch systems this is /usr/lib/<arch-triplet>/wireplumber-0.5/. PipeWire and SPA modules are loaded from PipeWire's own module directories instead.

$XDG_STATE_HOME/wireplumber/
    Saved state: default nodes, device profiles and routes, stream properties and settings that were changed at runtime. This is ~/.local/state/wireplumber/ unless $XDG_STATE_HOME is set.

EXIT STATUS

Exit codes follow the conventions of sysexits.h(3head):

0 (EX_OK)
    Success.

64 (EX_USAGE)
    Command line usage error.

69 (EX_UNAVAILABLE)
    A required service was unavailable; typically WirePlumber could not connect to PipeWire.

70 (EX_SOFTWARE)
    Internal software error.

78 (EX_CONFIG)
    Configuration error.

SEE ALSO

wpctl(1), wpexec(1), pipewire(1), pw-cli(1), pw-dump(1), sysexits.h(3head)

WirePlumber Documentation: <https://pipewire.pages.freedesktop.org/wireplumber/>

Author
The WirePlumber Developers

Copyright
2020-2025, Collabora & contributors