diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix index 0adeef13b04f..31c4fa4a8685 100644 --- a/pkgs/development/libraries/xdg-desktop-portal/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix @@ -1,6 +1,7 @@ { lib, fetchFromGitHub, + fetchFromGitLab, flatpak, fuse3, bubblewrap, @@ -32,9 +33,19 @@ enableSystemd ? true, }: +let + # Update this revision when updating this package, found in https://github.com/flatpak/xdg-desktop-portal/blob/master/subprojects/libglnx.wrap + libglnxSrc = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "libglnx"; + rev = "ccea836b799256420788c463a638ded0636b1632"; + hash = "sha256-H8Bg9QCSkt/aBOaHLyHYC2ei6OU7UpcLq8zLurkYOuA="; + }; +in stdenv.mkDerivation (finalAttrs: { pname = "xdg-desktop-portal"; - version = "1.20.3"; + version = "1.20.4"; outputs = [ "out" @@ -46,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "flatpak"; repo = "xdg-desktop-portal"; tag = finalAttrs.version; - hash = "sha256-ntTGEsk8GlXkp3i9RtF+T7jqnNdL2GVbu05d68WVTYc="; + hash = "sha256-wLQgJsVicOb8G7M5Qwd+t90UgNYTD04bZ5Ki85Alr1w="; }; patches = [ @@ -145,6 +156,9 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; postPatch = '' + mkdir -p subprojects/libglnx + cp -r ${libglnxSrc}/* subprojects/libglnx/ + # until/unless bubblewrap ships a pkg-config file, meson has no way to find it when cross-compiling. substituteInPlace meson.build \ --replace-fail "find_program('bwrap'" "find_program('${lib.getExe bubblewrap}'"