Package | Status | Package | Status |
---|---|---|---|
PipeWire | Maintained | WirePlumber | Maintained |
blueman | Maintained | libcamera | Maintained |
libfreeaptx | Maintained | openfec | Maintained |
roc-toolkit | Maintained | libfdk-aac2 | Maintained |
libldacbt-abr2 | Maintained | libldacbt-enc2 | Maintained |
Launchpad PPA [AMD64]
The master
branch ( DEPRECATED ) Can be viewed as a mirror of Launchpad PPA. I will keep sync this with the LP PPA. As this is deprecated
use Launchpad PPA section in case of adding PPA alternatively.
The development branch is for development purpose.
Find All(with old) Releases PipeWire, WirePlumber, Meson-Ninja, Testing
Where add-apt-repository
is available, Run below commands.
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
# For WirePlumber
sudo add-apt-repository ppa:pipewire-debian/wireplumber-upstream
sudo apt-get update
Other Methods to add PPA where add-apt-repository
is not available (Optional)
To Manually add The Launchpad PPA, Where add-apt-repository
is not available, Or, In case of any special case
Consider this is an example, Do the same for WirePlumber
key may or may not be changed here
# This PPA can be added to your system manually by running below commands, It creates
# a file under /etc/apt/sources.list.d/ containing list of mirrors
# To do this, First Download the gpg key from keyservers directly into the trusted set of keys,
# Run only two commands below.
gpg --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
gpg -a --export 25088A0359807596 | sudo apt-key add -
# Or,
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 25088A0359807596
# And then run below command to add the mirror list to your system.
echo "deb http://ppa.launchpad.net/pipewire-debian/pipewire-upstream/ubuntu $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/pipewire-upstream.list
# For Non ubuntu Debian based Users, Edit `/etc/apt/sources.list.d/pipewire-upstream.list` and change your `distro_code_name` equivalent to any one of ubuntu
# `distro_code_name`. (For example, MX Linux 19.4 based on Debian buster, And equivalent to `ubuntu 18.04`, so replace `buster` with `bionic` in the mentioned file.)
# The following command is usually not needed unless you want to install debug packages or create deb package from source.
echo "deb-src http://ppa.launchpad.net/pipewire-debian/pipewire-upstream/ubuntu $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/pipewire-upstream.list
After PPA Configuration, follow the installation instructions below. And Consult with the Troubleshooting page if there is any error occured.
For MX Linux or Debian buster see this for which packages are to be insalled or upgraded before installing.
# Install dependencies
sudo apt install libfdk-aac2 libldacbt-{abr,enc}2 libopenaptx0
# If `libfdk-aac2` not found install `libfdk-aac1`
# Install pipewire and additional packages
sudo apt install gstreamer1.0-pipewire libpipewire-0.3-{0,dev,modules} libspa-0.2-{bluetooth,dev,jack,modules} pipewire{,-{audio-client-libraries,pulse,bin,locales,tests}}
# Additionally, if you want to install `pipewire-doc`
sudo apt install pipewire-doc
# For WirePlumber (Recommended)
sudo apt-get install wireplumber{,-doc} gir1.2-wp-0.4 libwireplumber-0.4-{0,dev}
# For pipewire-media-session (install Wireplumber is recommended)
sudo apt-get install pipewire-media-session
Install blueman-git (Optional)
~~~~~~~~~~~ For blueman-git ~~~~~~~~~~~
# Before installing blueman-git, remove and purge any official version of blueman.
sudo apt-get remove --purge blueman && sudo rm -f /var/lib/blueman/network.state
# Then, to install issue below command.
sudo apt-get install blueman-git
You don't need to uninstall PulseAudio to enable PipeWire, Both can be installed side-by-side (there are no file collisions).
Just disable and mask PulseAudio related services to stop them
systemctl --user --now disable pulseaudio.{socket,service}
systemctl --user mask pulseaudio
Additional steps (If prev. subsection failed to stop PA) (Optional)
# You need to tell Pulseaudio not to respawn itself by issuing command:
sed -i 's/.*autospawn.*/autospawn = no/g' ~/.config/pulse/client.conf
# If `~/.config/pulse/client.conf` not found then issue,
sudo sed -i 's/.*autospawn.*/autospawn = no/g' /etc/pulse/client.conf
# Additonally if `/etc/pulse/client.conf.d/0{0,1}-enable-autospawn.conf` exist, do
sudo sed -i 's/.*autospawn.*/autospawn = no/g' /etc/pulse/client.conf.d/00-enable-autospawn.conf
# Or,
sudo sed -i 's/.*autospawn.*/autospawn = no/g' /etc/pulse/client.conf.d/01-enable-autospawn.conf
# Also If `/etc/xdg/autostart/pulseaudio.desktop` exist, Rename to something like below.
sudo mv -v /etc/xdg/autostart/pulseaudio.desktop{,.bak}
# And finally issue
pulseaudio --kill
Additional steps for init
systems (Optional)
# PulseAudio (>= 13.04-4) also have autospawn defined at /etc/init.d/pulseaudio-enable-autospawn
# Just disable the init script, and reenable it again if anyhow PA needed in future
sudo update-rc.d pulseaudio-enable-autospawn disable
# If PA still running, Once again kill PA
pulseaudio --kill
Since version
0.3.28
conf files are moved to/usr/share/
directory from/etc/
. You have to copy them to/etc/
directory manually. From Now/etc/pipewire/
can be used as system wide drop in for User edited conf files.conffile
overridden behaviour is$HOME/.config/pipewire > /etc/pipewire > /usr/share/pipewire
To copy conffiles from
/usr/share/
to/etc/
, issue below command. (Optional)sudo cp -vRa /usr/share/pipewire /etc/
Finally, Enable and start PipeWire related services (init
system users, Ignore this)
systemctl --user --now enable pipewire{,-pulse}.{socket,service}
For Mx Linux Or init
system (Anyone using systemd
ignore this subsection). (Optional)
# Mx Linux uses init system by default,
# Some users feel anoying to start `pipewire` services becasue of PW doesn't shift any scripts for non systemd,
# So Now how to start All `pipewire` services in init system?
# There is a solution on internet see this : Slackware Solution the idea is same for Mx Linux also
# For the above solution you have to install daemon program or do the below modifcation on those `.desktop` files.
substitue this `Exec=/usr/bin/pipewire` line with above `pipewire.desktop` file where you find lines starting with `Exec`.
substitue this `Exec=/usr/bin/pipewire-pulse` line with above `pipewire-pulse.desktop` file where you find lines starting with `Exec`.
substitue this `Exec=/usr/bin/pipewire-media-session` line with above `pipewire-media-session.desktop` file where you find lines starting with `Exec`.
For WirePlumber (Recommended)
systemctl --user --now enable wireplumber.service
For pipewire-media-session (Optional)
systemctl --user enable --now pipewire-media-session.service
Check which server is in use by running :
pactl info | grep '^Server Name'
Still doesn't have your system any sound ? , please reboot ( I highly discourage of any reboot,
Go through all instructions again if needed).
Enable blueman-git related Stuff (init
system users, Ignore this) (Optional)
Incase of blueman, just enable below service.
sudo systemctl enable --now blueman-mechanism.service
If PipeWire was installed by default on your system, There are no way to completely remove it, because other packages may have dependency on PipeWire, You only can downgrade PipeWire to the system default version in that case, for more consult with Troubleshooting page.
Normally, Uninstall pipewire is pretty straight forward like the Installation phase, So follow the installation
Section, you just need to reverse the whole thing in that section. For more search on the internet, how to remove a package?
.
Wiki & Articles (Click to open)
Wiki -
- This Repo Wiki
- Upstream-README
- Upstream-wiki
- Upstream-blueman-wiki
- Gentoo
- Arch-Linux
- Debian-wiki [ DEPRECATED for this PPA ]
Articles -
See in wiki page - Troubleshooting
If you have any issue regarding this PPA package, create a issue here.
For features, requests or bugs, create an issue on upstream For PipeWire, blueman, WiePlumber
Original PipeWire project maintainer: Wim Taymans - Source
Original maintainers (usually from Debian): Utopia Maintenance Team - Jeremy Bicha - Source
Original blueman project maintainer: Christopher Schramm - Source
test1