pipewire VS xdg-desktop-portal

Compare pipewire vs xdg-desktop-portal and see what are their differences.

pipewire

Mirror of the PipeWire repository (see https://gitlab.freedesktop.org/pipewire/pipewire/) (by PipeWire)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
pipewire xdg-desktop-portal
93 154
1,740 524
0.9% 3.8%
9.9 9.4
7 days ago 6 days ago
C C
GNU General Public License v3.0 or later GNU Lesser General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

pipewire

Posts with mentions or reviews of pipewire. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-16.

xdg-desktop-portal

Posts with mentions or reviews of xdg-desktop-portal. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-29.
  • Flathub: One million active users and growing
    2 projects | news.ycombinator.com | 29 Jan 2024
  • Changes to xdg.portals?
    2 projects | /r/NixOS | 28 Nov 2023
  • PCSX2 Disables Wayland Support
    7 projects | news.ycombinator.com | 26 Nov 2023
    >Not losing all the work every time your windows manager crashes

    https://news.ycombinator.com/item?id=37509703

    >remapping keys

    >Use xinput to change parameters of their input devices (libinput dropped most configuration options present with evdev)

    Up to the compositor.

    >Global shortcuts

    Also up to the compositor. Was added to xdp in https://github.com/flatpak/xdg-desktop-portal/blob/main/data... so it's up to the compositor's xdp impl to provide it. It was created by a KDE dev so I assume KDE implements it at least.

    >tunnelling over ssh

    https://gitlab.freedesktop.org/mstoeckl/waypipe

  • Gnome developer proposes removing the X11 session
    3 projects | news.ycombinator.com | 14 Oct 2023
    > - O proper screen recording support

    Works just fine. I use OBS.

    > - broken screen sharing

    Never had any trouble with it.

    > - No proper global keyboard shortcut

    > - No push to talk support

    On its way: https://github.com/flatpak/xdg-desktop-portal/pull/711 / https://flatpak.github.io/xdg-desktop-portal/#gdbus-org.free...

    > - Several problems with multiple screens

    Haven't had any more than on X11, but then again I do use Nvidia hardware on Linux.

  • The Guy Preserving the New History of PC Games, One Linux Port at a Time
    1 project | news.ycombinator.com | 10 Sep 2023
    It might help, but at this point Linux containers can't really stabilize the whole environment, especially for games. Particular pain points include accelerated graphics (which theoretically can have a stable kernel interface, but in practice is so complex and performance-sensitive that it's not stable enough to be a "reference platform", so to speak) and modern game controllers (which present a whole mess of concerns typically "addressed" in Flatpak by granting the device=all permission and hoping for the best [1]).

    I also know a guy who ran into issues with a kernel update breaking a custom allocator, although I don't know the fine details. That wasn't for a game, but games also use custom allocators for various reasons.

    [1] https://github.com/flatpak/xdg-desktop-portal/issues/536

  • Unpacking Elixir: Syntax
    4 projects | news.ycombinator.com | 8 Sep 2023
    I don't use Wayland, but it seems xdg-desktop-portal since 1.16.0 has a 'Global Shortcuts portal'. Perhaps check it out.

    https://github.com/flatpak/xdg-desktop-portal

  • UX Hurdles in Open Source #1: Flatpak Permissions
    1 project | /r/linux | 27 Jun 2023
    It's being discussed: https://github.com/flatpak/xdg-desktop-portal/issues/611
  • Advice: TW or Aeon
    2 projects | /r/openSUSE | 26 Jun 2023
    The first bug report was filed in early 2022 but unfortunately no progress yet on the matter, even after numerous similar reports ever since.
  • Native messaging for Firefox
    1 project | /r/flatpak | 23 Jun 2023
  • Xdg portal hyprland and launching gui apps
    2 projects | /r/NixOS | 21 Jun 2023
    Yeah been having the same issue since I changed to using the unstable branch, supposedly noticed and fixed upstream for a few variants of the problem (different people with different configurations of DE and xdg-* deps installed report the same issue due to timeouts of the other portals)

What are some alternatives?

When comparing pipewire and xdg-desktop-portal you can also consider the following projects:

noise-suppression-for-voice - Noise suppression plugin based on Xiph's RNNoise

gamescope - SteamOS session compositing window manager [Moved to: https://github.com/ValveSoftware/gamescope]

pulseaudio-modules-bt - [Deprecated, see https://github.com/EHfive/pulseaudio-modules-bt/issues/154] Adds Sony LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support to PulseAudio on Linux

wayfire - A modular and extensible wayland compositor

pipewire-debian - Upstream Version of pipewire, wireplumber, roc-toolkit & blueman for debian/ubuntu

gtk-layer-shell - A library to create panels and other desktop components for Wayland using the Layer Shell protocol

obs-ndi - NewTek NDI integration for OBS Studio

flatpaks

easyeffects - Limiter, compressor, convolver, equalizer and auto volume and many other plugins for PipeWire applications

us.zoom.Zoom

piper - GTK application to configure gaming devices

WebKit - Home of the WebKit project, the browser engine used by Safari, Mail, App Store and many other applications on macOS, iOS and Linux.