From e69ace568e16728dd82336c260ee48dd9e1035a4 Mon Sep 17 00:00:00 2001 From: qubitnano <146656568+qubitnano@users.noreply.github.com> Date: Fri, 3 May 2024 20:27:35 -0400 Subject: [PATCH 1/2] gdk-pixbuf: enable other loaders 2.42.11 disables several loaders by default. The meson option "others" reenables these for packages that still depend on them. --- pkgs/development/libraries/gdk-pixbuf/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index a90a2c5c9f78..ea9ff1d91808 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -21,6 +21,7 @@ , buildPackages , withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages , gobject-introspection +, fetchpatch }: stdenv.mkDerivation (finalAttrs: { @@ -41,6 +42,12 @@ stdenv.mkDerivation (finalAttrs: { patches = [ # Move installed tests to a separate output ./installed-tests-path.patch + # Remove post 2.42.11 + (fetchpatch { + name = "fix-meson.build-typo.patch"; + url = "https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/commit/238893d8cd6f9c2616a05ab521a29651a17a38c2.patch"; + hash = "sha256-6IhdNH6hhygSXD7EJo/hoBLFeb2lJlBIHNBPTkA3Do0="; + }) ]; # gdk-pixbuf-thumbnailer is not wrapped therefore strictDeps will work @@ -79,6 +86,7 @@ stdenv.mkDerivation (finalAttrs: { "-Dgio_sniffing=false" (lib.mesonBool "gtk_doc" withIntrospection) (lib.mesonEnable "introspection" withIntrospection) + (lib.mesonEnable "others" true) ]; postPatch = '' From 9b10f90188dd7954b082026f7419b4ce024fe15c Mon Sep 17 00:00:00 2001 From: qubitnano <146656568+qubitnano@users.noreply.github.com> Date: Fri, 3 May 2024 23:50:06 -0400 Subject: [PATCH 2/2] gdk-pixbuf: disable ani loader The "others" option includes ani which is currently affected by CVE-2022-48622. Disable this by removing it from the build while allowing the other loaders to build. --- pkgs/development/libraries/gdk-pixbuf/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index ea9ff1d91808..f9fd75f1a6af 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -101,6 +101,9 @@ stdenv.mkDerivation (finalAttrs: { substituteInPlace docs/meson.build \ --replace "dependency('gi-docgen'," "dependency('gi-docgen', native:true," \ --replace "'gi-docgen', req" "'gi-docgen', native:true, req" + + # Remove 'ani' loader until proper fix for CVE-2022-48622 + substituteInPlace meson.build --replace-fail "'ani'," "" ''; postInstall =