Commit abd07af5 authored by Bobby Rong's avatar Bobby Rong Committed by Jan Tojnar
Browse files
parent 072bc21c
Loading
Loading
Loading
Loading
+15 −3
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
, buildPackages
, substituteAll
, fetchurl
, fetchpatch
, pkg-config
, gettext
, graphene
@@ -40,6 +41,7 @@
, libGL
# experimental and can cause crashes in inspector
, vulkanSupport ? false
, shaderc
, vulkan-loader
, vulkan-headers
, wayland
@@ -67,7 +69,7 @@ in

stdenv.mkDerivation rec {
  pname = "gtk4";
  version = "4.10.4";
  version = "4.12.0";

  outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
  outputBin = "dev";
@@ -79,12 +81,19 @@ stdenv.mkDerivation rec {

  src = fetchurl {
    url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
    sha256 = "dyVABILgaF4oJl4ibGKEf05zz8qem0FqxYOCB/U3eiQ=";
    sha256 = "ptEIKfQFsa/Atl4qlkLAQSah0bY40Rxtl0JtpPhPH28=";
  };

  patches = [
    # https://github.com/NixOS/nixpkgs/pull/218143#issuecomment-1501059486
    ./patches/4.0-fix-darwin-build.patch

    # Fixes "undefined symbol: gtk_printer_option_set"
    # https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6250
    (fetchpatch {
      url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/4d7277f72c8f4915f237e36982ffd7dfba524b15.patch";
      sha256 = "nLNvrfrgF/Ssr2XUQDV8Qbszw5OUA4CnkZ6okrSlzOc=";
    })
  ];

  depsBuildBuild = [
@@ -106,6 +115,8 @@ stdenv.mkDerivation rec {
    mesonEmulatorHook
  ] ++ lib.optionals waylandSupport [
    wayland-scanner
  ] ++ lib.optionals vulkanSupport [
    shaderc # for glslc
  ] ++ setupHooks;

  buildInputs = [
@@ -168,7 +179,7 @@ stdenv.mkDerivation rec {

  mesonFlags = [
    # ../docs/tools/shooter.c:4:10: fatal error: 'cairo-xlib.h' file not found
    "-Dgtk_doc=${lib.boolToString x11Support}"
    "-Ddocumentation=${lib.boolToString x11Support}"
    "-Dbuild-tests=false"
    "-Dtracker=${if trackerSupport then "enabled" else "disabled"}"
    "-Dbroadway-backend=${lib.boolToString broadwaySupport}"
@@ -201,6 +212,7 @@ stdenv.mkDerivation rec {

    files=(
      build-aux/meson/gen-demo-header.py
      build-aux/meson/gen-visibility-macros.py
      demos/gtk-demo/geninclude.py
      gdk/broadway/gen-c-array.py
      gdk/gen-gdk-gresources-xml.py