mirror of
https://github.com/hyprwm/xdg-desktop-portal-hyprland.git
synced 2025-12-19 23:50:02 +01:00
A read-only mirror of https://github.com/hyprwm/xdg-desktop-portal-hyprland
| .builds | ||
| .github/workflows | ||
| contrib | ||
| hyprland-share-picker | ||
| nix | ||
| protocols | ||
| src | ||
| subprojects | ||
| .clang-format | ||
| .editorconfig | ||
| .gitignore | ||
| .gitmodules | ||
| CMakeLists.txt | ||
| CONTRIBUTING.md | ||
| flake.lock | ||
| flake.nix | ||
| hyprland.portal | ||
| LICENSE | ||
| meson.build | ||
| meson_options.txt | ||
| org.freedesktop.impl.portal.desktop.hyprland.service.in | ||
| README.md | ||
| VERSION | ||
xdg-desktop-portal-hyprland
An XDG Desktop Portal backend for Hyprland.
Installing
First, make sure to install the required dependencies:
gbm
hyprland-protocols
hyprlang
libdrm
libpipewire-0.3
libspa-0.2
sdbus-cpp
wayland-client
wayland-protocols
Then run the build and install command:
git clone --recursive https://github.com/hyprwm/xdg-desktop-portal-hyprland
cd xdg-desktop-portal-hyprland/
cmake -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib -DCMAKE_INSTALL_PREFIX=/usr -B build
cmake --build build
sudo cmake --install build
Nix
Caution
XDPH should not be used from this flake directly!
Instead, use it from the Hyprland flake.
There are two reasons for the above:
- Hyprland depends on XDPH, but XDPH also depends on Hyprland. This results in a cyclic dependency, which is a nightmare. To counter this, we use the Nixpkgs Hyprland package in this flake, so that it can be later consumed by the Hyprland flake while overriding the Hyprland package.
- Even if you manually do all the overriding, you may still get it wrong and lose out on the Cachix cache (which has XDPH as exposed by the Hyprland flake).