From 9f6139b74d4bb611cf00752de653de81abbd8354 Mon Sep 17 00:00:00 2001 From: winston Date: Fri, 14 Nov 2025 20:32:10 +0100 Subject: [PATCH] gpaste: fix GIRepository `prepend_search_path` call, enable for GNOME 49 --- pkgs/by-name/gp/gpaste/package.nix | 18 +++++++++++------- pkgs/by-name/gp/gpaste/wrapper.js | 2 +- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/gp/gpaste/package.nix b/pkgs/by-name/gp/gpaste/package.nix index 97c4cefacaac..f71819236b18 100644 --- a/pkgs/by-name/gp/gpaste/package.nix +++ b/pkgs/by-name/gp/gpaste/package.nix @@ -36,6 +36,10 @@ stdenv.mkDerivation (finalAttrs: { postPatch = '' substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \ --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${finalAttrs.pname}-${finalAttrs.version}"} + + substituteInPlace src/gnome-shell/metadata.json.in --replace-fail \ + '"shell-version": [ "45", "46", "47", "48" ],' \ + '"shell-version": [ "45", "46", "47", "48", "49" ],' ''; nativeBuildInputs = [ @@ -59,9 +63,9 @@ stdenv.mkDerivation (finalAttrs: { ]; mesonFlags = [ - "-Dcontrol-center-keybindings-dir=${placeholder "out"}/share/gnome-control-center/keybindings" - "-Ddbus-services-dir=${placeholder "out"}/share/dbus-1/services" - "-Dsystemd-user-unit-dir=${placeholder "out"}/etc/systemd/user" + (lib.mesonOption "control-center-keybindings-dir" "${placeholder "out"}/share/gnome-control-center/keybindings") + (lib.mesonOption "dbus-services-dir" "${placeholder "out"}/share/dbus-1/services") + (lib.mesonOption "systemd-user-unit-dir" "${placeholder "out"}/etc/systemd/user") ]; postInstall = '' @@ -78,13 +82,13 @@ stdenv.mkDerivation (finalAttrs: { --subst-var-by typelibDir "${placeholder "out"}/lib/girepository-1.0" ''; - meta = with lib; { + meta = { homepage = "https://github.com/Keruspe/GPaste"; changelog = "https://github.com/Keruspe/GPaste/blob/v${finalAttrs.version}/NEWS"; description = "Clipboard management system with GNOME integration"; mainProgram = "gpaste-client"; - license = licenses.bsd2; - platforms = platforms.linux; - teams = [ teams.gnome ]; + license = lib.licenses.bsd2; + platforms = lib.platforms.linux; + teams = [ lib.teams.gnome ]; }; }) diff --git a/pkgs/by-name/gp/gpaste/wrapper.js b/pkgs/by-name/gp/gpaste/wrapper.js index ea6a9cba6f6f..eeaa6956973c 100644 --- a/pkgs/by-name/gp/gpaste/wrapper.js +++ b/pkgs/by-name/gp/gpaste/wrapper.js @@ -1,5 +1,5 @@ import GIRepository from 'gi://GIRepository'; -GIRepository.Repository.prepend_search_path('@typelibDir@'); +GIRepository.Repository.dup_default().prepend_search_path('@typelibDir@'); export default (await import('./.@originalName@-wrapped.js')).default;