nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
Jan Tojnar 7f2a6f17fc xdg-desktop-portal-gtk: Enable all default portals unconditionally
In 80ea989ac9 we updated to x-d-p-gtk 1.10.0, in which some portals were extracted to x-d-p-gnome and were disabled by default in x-d-p-gtk. This was continued with x-d-p-gtk 1.15 bump in 6d646062c8, which default-enabled all portals because of port to Meson’s auto features.

But I do not think the conflict between portal implementations from x-d-p-gtk and x-d-p-gnome has ever been an issue at runtime – since `gnome` comes before `gtk` alphabetically, the `gnome` portal should have been always preferred when both were available.
And since x-d-p 1.17.0, the portal implementation conflicts are a complete non-issue, as desktop environments can configure which implementation to use for each portal.

Since the benefits of disabling the extra portals are minimal and can lead to conflicts when multiple DEs are enable, we have stopped DEs from doing that in parent commits. This makes the argument unused so let’s remove it.
2024-10-02 19:19:39 +02:00

50 lines
1 KiB
Nix

{ stdenv
, lib
, fetchFromGitHub
, meson
, ninja
, pkg-config
, xdg-desktop-portal
, gtk3
, gnome-settings-daemon
, gnome-desktop
, glib
, wrapGAppsHook3
, gsettings-desktop-schemas
}:
stdenv.mkDerivation (finalAttrs: {
pname = "xdg-desktop-portal-gtk";
version = "1.15.1";
src = fetchFromGitHub {
owner = "flatpak";
repo = "xdg-desktop-portal-gtk";
rev = finalAttrs.version;
sha256 = "sha256-uXVjKsqoIjqJilJq8ERRzEqGKbkzc+Zl6y+37CAcYro=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook3
];
buildInputs = [
glib
gtk3
xdg-desktop-portal
gsettings-desktop-schemas # settings exposed by settings portal
gnome-desktop
gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s, just mouse and xsettings)
];
meta = with lib; {
description = "Desktop integration portals for sandboxed apps";
maintainers = with maintainers; [ jtojnar ];
platforms = platforms.linux;
license = licenses.lgpl21Plus;
};
})