diff options
Diffstat (limited to 'pkgs/development')
53 files changed, 890 insertions, 285 deletions
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix index 72512a1202f2b..230f6ee19a20d 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -20,6 +20,8 @@ let "0.54" = ./disable-graphviz-0.46.1.patch; + "0.56" = ./disable-graphviz-0.46.1.patch; + }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala"); disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz; @@ -68,7 +70,10 @@ let passthru = { updateScript = gnome.updateScript { - attrPath = "${pname}_${lib.versions.major version}_${lib.versions.minor version}"; + attrPath = + let + roundUpToEven = num: num + lib.mod num 2; + in "${pname}_${lib.versions.major version}_${builtins.toString (roundUpToEven (lib.toInt (lib.versions.minor version)))}"; packageName = pname; freeze = true; }; @@ -90,8 +95,13 @@ in rec { }; vala_0_54 = generic { - version = "0.54.7"; - sha256 = "Ygecof8C5dF65yqppa3GGuav3P67DZ8GBjo2776soMc="; + version = "0.54.8"; + sha256 = "7fs+eUhqS/SM666pKR5X/HfakyK2lh6VSd9tlz0EvIA="; + }; + + vala_0_56 = generic { + version = "0.56.0"; + sha256 = "2SvRPFYwkF7rapg9y3AiBNqXMUYMKm5OOfhnmW83EEA="; }; vala = vala_0_54; diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix index 66b0c13646b52..675c930d9edda 100644 --- a/pkgs/development/libraries/at-spi2-core/default.nix +++ b/pkgs/development/libraries/at-spi2-core/default.nix @@ -1,48 +1,66 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl - , meson , ninja , pkg-config , gobject-introspection , gsettings-desktop-schemas , makeWrapper - , dbus , glib , dconf , libX11 -, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case +, libXtst , libXi , libXext - -, gnome # To pass updateScript +, gnome }: stdenv.mkDerivation rec { pname = "at-spi2-core"; - version = "2.42.0"; + version = "2.44.0"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "11p3lvmbm0hfck3p5xwxxycln8x0cf7l68jjz6an2g7sjh7a2pab"; + sha256 = "fu488oWwiQYP1rblGz6yys91LMo6CCx/TCxauEHlE1M="; }; - outputs = [ "out" "dev" ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + makeWrapper + ]; + + buildInputs = [ + libX11 + # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case + libXtst + libXi + # libXext is a transitive dependency of libXi + libXext + ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ]; - # libXext is a transitive dependency of libXi - buildInputs = [ libX11 libXtst libXi libXext ]; # In atspi-2.pc dbus-1 glib-2.0 - propagatedBuildInputs = [ dbus glib ]; + propagatedBuildInputs = [ + dbus + glib + ]; - doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + doCheck = false; - # Provide dbus-daemon fallback when it is not already running when - # at-spi2-bus-launcher is executed. This allows us to avoid - # including the entire dbus closure in libraries linked with - # the at-spi2-core libraries. - mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ]; + mesonFlags = [ + # Provide dbus-daemon fallback when it is not already running when + # at-spi2-bus-launcher is executed. This allows us to avoid + # including the entire dbus closure in libraries linked with + # the at-spi2-core libraries. + "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" + ]; passthru = { updateScript = gnome.updateScript { diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix index 965016e1c740e..f6161535df5dd 100644 --- a/pkgs/development/libraries/folks/default.nix +++ b/pkgs/development/libraries/folks/default.nix @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "folks"; - version = "0.15.4"; + version = "0.15.5"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "5xCZr8noj61OdXrhNLw/1j4SuQGtYrDtVTavt5Ekr18="; + sha256 = "D/+KiWMwzYKu5FmDJPflQciE0DN1NiEnI7S+s4x1kIY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index 3182a4b39988c..1e9c881ae8ce8 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -28,7 +28,7 @@ let in stdenv.mkDerivation rec { pname = "gdk-pixbuf"; - version = "2.42.6"; + version = "2.42.8"; outputs = [ "out" "dev" "man" ] ++ lib.optional withGtkDoc "devdoc" @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0zz7pmw2z46g7mr1yjxbsdldd5pd03xbjc58inj8rxfqgrdvg9n4"; + sha256 = "hKzqOsskEbKRNLMgFaWxqqYoRLGcSx74uJccawdZ9MY="; }; patches = [ @@ -111,10 +111,6 @@ stdenv.mkDerivation rec { '' + lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' # We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/ $dev/bin/gdk-pixbuf-query-loaders --update-cache - '' + lib.optionalString withGtkDoc '' - # So that devhelp can find this. - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc" "$devdoc/share/devhelp/books" ''; # The fixDarwinDylibNames hook doesn't patch binaries. @@ -124,6 +120,11 @@ stdenv.mkDerivation rec { done ''; + postFixup = lib.optionalString withGtkDoc '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB). inherit doCheck; diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix index 07c97ea6e0d67..42ba3bd46df8c 100644 --- a/pkgs/development/libraries/gjs/default.nix +++ b/pkgs/development/libraries/gjs/default.nix @@ -8,7 +8,7 @@ , gtk3 , atk , gobject-introspection -, spidermonkey_78 +, spidermonkey_91 , pango , cairo , readline @@ -30,13 +30,13 @@ let ]; in stdenv.mkDerivation rec { pname = "gjs"; - version = "1.70.1"; + version = "1.72.0"; outputs = [ "out" "dev" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-u9wO7HzyX7xTR2n2ofssehjhe4ce/bDKWOmr8IsoAD8="; + sha256 = "sha256-PvDK9xbjkg3WH3dI9tVuR2zA/Bg1GtBUjn3xoKub3K0="; }; patches = [ @@ -60,7 +60,7 @@ in stdenv.mkDerivation rec { gobject-introspection cairo readline - spidermonkey_78 + spidermonkey_91 dbus # for dbus-run-session ]; diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix index 1a693e0e04527..fce73f74660e1 100644 --- a/pkgs/development/libraries/glib-networking/default.nix +++ b/pkgs/development/libraries/glib-networking/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "glib-networking"; - version = "2.70.1"; + version = "2.72.0"; outputs = [ "out" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Kha/wtJxzNMmbj+0YryKQQPALoG7szmqktb7BgWS17w="; + sha256 = "EAquuzaShQQd5S2kIra3FnidXk11SaOnG6WHuTLggjs="; }; patches = [ diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index c98058768b2eb..ecae47b3d2dd7 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -45,16 +45,15 @@ in stdenv.mkDerivation rec { pname = "glib"; - version = "2.70.3"; + version = "2.72.0"; src = fetchurl { url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Iz+khBweGeOW23YH1Y9rdbozE8UL8Pzgey41MtXrfUY="; + sha256 = "177w1MTnpi4I77jl8lKgE1cAe5WIqH/ytGOjhXAR950="; }; patches = optionals stdenv.isDarwin [ ./darwin-compilation.patch - ./link-with-coreservices.patch ] ++ optionals stdenv.hostPlatform.isMusl [ ./quark_init_on_demand.patch ./gobject_init_on_demand.patch @@ -116,7 +115,10 @@ stdenv.mkDerivation rec { strictDeps = true; nativeBuildInputs = [ - meson ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 + (meson.override { + withDarwinFrameworksGtkDocPatch = stdenv.isDarwin; + }) + ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 ]; propagatedBuildInputs = [ zlib libffi gettext libiconv ]; @@ -142,8 +144,8 @@ stdenv.mkDerivation rec { chmod +x docs/reference/gio/concat-files-helper.py patchShebangs docs/reference/gio/concat-files-helper.py patchShebangs glib/gen-unicode-tables.pl - patchShebangs tests/gen-casefold-txt.py - patchShebangs tests/gen-casemap-txt.py + patchShebangs glib/tests/gen-casefold-txt.py + patchShebangs glib/tests/gen-casemap-txt.py '' + lib.optionalString stdenv.hostPlatform.isWindows '' substituteInPlace gio/win32/meson.build \ --replace "libintl, " "" diff --git a/pkgs/development/libraries/glib/link-with-coreservices.patch b/pkgs/development/libraries/glib/link-with-coreservices.patch deleted file mode 100644 index dcc0a8998cc3b..0000000000000 --- a/pkgs/development/libraries/glib/link-with-coreservices.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/meson.build.orig 2020-11-25 13:47:38.499149252 +0900 -+++ b/meson.build 2020-11-25 13:48:47.098444800 +0900 -@@ -742,7 +742,7 @@ - - if glib_have_carbon - glib_conf.set('HAVE_CARBON', true) -- osx_ldflags += '-Wl,-framework,Carbon' -+ osx_ldflags += ['-Wl,-framework,Carbon', '-Wl,-framework,CoreServices'] - glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h> - #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090 - #error Compiling for minimum OS X version before 10.9 diff --git a/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch new file mode 100644 index 0000000000000..c31e093f4b7e1 --- /dev/null +++ b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch @@ -0,0 +1,17 @@ +diff --git a/libgnome-desktop/gnome-desktop-thumbnail-script.c b/libgnome-desktop/gnome-desktop-thumbnail-script.c +index ddcc1511..546c2a36 100644 +--- a/libgnome-desktop/gnome-desktop-thumbnail-script.c ++++ b/libgnome-desktop/gnome-desktop-thumbnail-script.c +@@ -555,9 +555,9 @@ add_bwrap (GPtrArray *array, + g_return_val_if_fail (script->s_infile != NULL, FALSE); + + add_args (array, +- "bwrap", +- "--ro-bind", "/usr", "/usr", +- "--ro-bind-try", "/etc/ld.so.cache", "/etc/ld.so.cache", ++ "@bubblewrap_bin@", ++ "--ro-bind", "@storeDir@", "@storeDir@", ++ "--ro-bind-try", "/run/current-system", "/run/current-system", + NULL); + + /* These directories might be symlinks into /usr/... */ diff --git a/pkgs/development/libraries/gnome-desktop/default.nix b/pkgs/development/libraries/gnome-desktop/default.nix new file mode 100644 index 0000000000000..5d682e23b277c --- /dev/null +++ b/pkgs/development/libraries/gnome-desktop/default.nix @@ -0,0 +1,99 @@ +{ lib +, stdenv +, fetchurl +, substituteAll +, pkg-config +, libxslt +, ninja +, gnome +, gtk3 +, gtk4 +, glib +, gettext +, libxml2 +, xkeyboard_config +, libxkbcommon +, isocodes +, meson +, wayland +, libseccomp +, systemd +, bubblewrap +, gobject-introspection +, gtk-doc +, docbook-xsl-nons +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "gnome-desktop"; + version = "42.0"; + + outputs = [ "out" "dev" "devdoc" ]; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "sha256-88qik6Xob2zK0Y+BcnPbHGcGHmgNedg5qop1KOW7JtY="; + }; + + patches = [ + (substituteAll { + src = ./bubblewrap-paths.patch; + bubblewrap_bin = "${bubblewrap}/bin/bwrap"; + inherit (builtins) storeDir; + }) + ]; + + nativeBuildInputs = [ + pkg-config + meson + ninja + gettext + libxslt + libxml2 + gobject-introspection + gtk-doc + docbook-xsl-nons + glib + ]; + + buildInputs = [ + bubblewrap + xkeyboard_config + libxkbcommon # for xkbregistry + isocodes + wayland + gtk3 + gtk4 + glib + libseccomp + systemd + ]; + + propagatedBuildInputs = [ + gsettings-desktop-schemas + ]; + + mesonFlags = [ + "-Dgtk_doc=true" + "-Ddesktop_docs=false" + "-Ddate_in_gnome_version=false" + "-Dgnome_distributor=NixOS" + ]; + + separateDebugInfo = stdenv.isLinux; + + passthru = { + updateScript = gnome.updateScript { + packageName = "gnome-desktop"; + }; + }; + + meta = with lib; { + description = "Library with common API for various GNOME modules"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-desktop"; + license = with licenses; [ gpl2Plus lgpl2Plus ]; + platforms = platforms.linux; + maintainers = teams.gnome.members; + }; +} diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix index 9337a8e93d6de..f58e87b2f7e68 100644 --- a/pkgs/development/libraries/gnome-online-accounts/default.nix +++ b/pkgs/development/libraries/gnome-online-accounts/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { pname = "gnome-online-accounts"; - version = "3.40.1"; + version = "3.43.1"; # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87 src = fetchFromGitLab { @@ -38,7 +38,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "gnome-online-accounts"; rev = version; - sha256 = "sha256-q4bLGOOGoGH/Et3hu7/372tjNMouX9ePTanIo0c4Jbw="; + sha256 = "sha256-Dpq5bQwU0ZAxmEllpbLnS1Jz3F0rxtFMKZcIvAteObU="; }; outputs = [ "out" "man" "dev" "devdoc" ]; diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch index c02330adf6d1a..b6dc66fc66b1c 100644 --- a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch +++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch @@ -1,3 +1,5 @@ +diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py +index 64575557..1eb0a2b4 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py @@ -95,6 +95,39 @@ def get_windows_option_group(parser): @@ -41,16 +43,18 @@ parser = optparse.OptionParser('%prog [options] sources', version='%prog ' + giscanner.__version__) @@ -214,6 +247,10 @@ match the namespace prefix.""") - parser.add_option("", "--filelist", - action="store", dest="filelist", default=[], - help="file containing headers and sources to be scanned") + parser.add_option("", "--c-include", + action="append", dest="c_includes", default=[], + help="headers which should be included in C programs") + parser.add_option("", "--fallback-library-path", + action="store", dest="fallback_libpath", + default=_get_default_fallback_libpath(), + help="Path to prepend to unknown shared libraries") - - group = get_preprocessor_option_group(parser) - parser.add_option_group(group) + parser.add_option("", "--filelist", + action="store", dest="filelist", default=[], + help="file containing headers and sources to be scanned") +diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py +index 9f8ab5df..af325022 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py @@ -57,6 +57,12 @@ def _ldd_library_pattern(library_name): @@ -115,9 +119,11 @@ if m: del patterns[library] shlibs.append(m.group()) +diff --git a/giscanner/utils.py b/giscanner/utils.py +index 31c7ea48..630002a8 100644 --- a/giscanner/utils.py +++ b/giscanner/utils.py -@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file): +@@ -114,16 +114,11 @@ def extract_libtool_shlib(la_file): if dlname is None: return None @@ -139,6 +145,8 @@ # Returns arguments for invoking libtool, if applicable, otherwise None +diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py +index a8337c60..72789d76 100644 --- a/tests/scanner/test_shlibs.py +++ b/tests/scanner/test_shlibs.py @@ -7,6 +7,30 @@ from giscanner.shlibs import resolve_from_ldd_output, sanitize_shlib_path diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix index 667d50ca4d8b8..b457331983aac 100644 --- a/pkgs/development/libraries/gobject-introspection/default.nix +++ b/pkgs/development/libraries/gobject-introspection/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , glib , flex @@ -26,7 +27,7 @@ stdenv.mkDerivation rec { pname = "gobject-introspection"; - version = "1.70.0"; + version = "1.72.0"; # outputs TODO: share/gobject-introspection-1.0/tests is needed during build # by pygobject3 (and maybe others), but it's only searched in $out @@ -35,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0jpwraip7pwl9bf9s59am3r7074p34fasvfb5ym1fb8hwc34jawh"; + sha256 = "Av6OWQhh2I+DBg3TnNpcyqYLLaHSHQ+VSZMBsYa+qrw="; }; patches = [ @@ -46,15 +47,6 @@ stdenv.mkDerivation rec { src = ./absolute_shlib_path.patch; inherit nixStoreDir; }) - # Fix build with meson 0.61.0 - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch"; - sha256 = "sha256-imVWzU760FRsX+eXREQDQ6mDcmzZ5ASLT9rBf4oyBGQ="; - }) - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch"; - sha256 = "sha256-o7a0qDT5IYcYcz8toeZu+nPj3SwS52sNgmxgzsmlp4Q="; - }) ] ++ lib.optionals x11Support [ # Hardcode the cairo shared library path in the Cairo gir shipped with this package. # https://github.com/NixOS/nixpkgs/issues/34080 diff --git a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix index 483ee0b084963..085544a36120e 100644 --- a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix +++ b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "gsettings-desktop-schemas"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "dyiZcuWW0ERYPwwFYwbY8dvYrc+RKRClDaCmY+ZTMu0="; + sha256 = "ZoYzWp7WI/euInb++lCkENTnHUIxiAgkcUBwyzFzI9I="; }; strictDeps = true; diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index bb1451594475c..c736c5cc76171 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -2,7 +2,6 @@ , stdenv , substituteAll , fetchurl -, fetchpatch , pkg-config , gettext , docbook-xsl-nons @@ -60,7 +59,7 @@ in stdenv.mkDerivation rec { pname = "gtk+3"; - version = "3.24.31"; + version = "3.24.33"; outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc"; outputBin = "dev"; @@ -72,7 +71,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; - sha256 = "sha256-Qjw+f9tMRZ7oieNf1Ncf0mI1YlQcEEGxHAflrR/xC/k="; + sha256 = "sha256-WIsGUi4l0VeemJtvnYob2/L+E83gGgTpBP80aiJeeAE="; }; patches = [ @@ -84,12 +83,6 @@ stdenv.mkDerivation rec { # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33 # https://gitlab.gnome.org/GNOME/gtk/merge_requests/536 ./patches/3.0-darwin-x11.patch - - # 3.24.31 does not declare QuartzCore dependency properly and fails to link - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch"; - sha256 = "sha256-KaMeIdV/gfM4xzN9lIkY99E7bzAfTM6VETk5DEunB2w="; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index 6da3fc769ea67..db682d99dca0f 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -62,7 +62,7 @@ in stdenv.mkDerivation rec { pname = "gtk4"; - version = "4.6.1"; + version = "4.6.2"; outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ]; outputBin = "dev"; @@ -74,7 +74,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz"; - sha256 = "2FUI0hy7zWPVaKeGKvXs1juXjX1XmcvkBMkdI4nQ7F8="; + sha256 = "/yY69gmlDrdgVmU1ktkpRZrvSBmkRMQ29tUsb2PB+uw="; }; nativeBuildInputs = [ @@ -202,13 +202,6 @@ stdenv.mkDerivation rec { for f in $dev/bin/gtk4-encode-symbolic-svg; do wrapProgram $f --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" done - - '' + lib.optionalString x11Support '' - # So that DevHelp can find this. - # TODO: Remove this with DevHelp 41. - mkdir -p "$devdoc/share/devhelp/books" - mv "$out/share/doc/"* "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc" ''; # Wrap demos @@ -219,6 +212,9 @@ stdenv.mkDerivation rec { wrapProgram $dev/bin/$program \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/${pname}-${version}" done + '' + lib.optionalString x11Support '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/gtkmm/4.x.nix b/pkgs/development/libraries/gtkmm/4.x.nix index 1960a04e95f43..c91e7b54ff2e7 100644 --- a/pkgs/development/libraries/gtkmm/4.x.nix +++ b/pkgs/development/libraries/gtkmm/4.x.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation rec { pname = "gtkmm"; - version = "4.6.0"; + version = "4.6.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "E1OgkJPLVx71rAXZPSALrxMq1gS19JQHd2VuFQWBTB8="; + sha256 = "DV7+yp7GT91TC7gibGMQrJlUmz3ZYE1uNnY5eRrz0eA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtksourceview/4.x.nix b/pkgs/development/libraries/gtksourceview/4.x.nix index 0095b6ca9e08c..74acd6f743d61 100644 --- a/pkgs/development/libraries/gtksourceview/4.x.nix +++ b/pkgs/development/libraries/gtksourceview/4.x.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "4.8.2"; + version = "4.8.3"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1k1pava84ywgq62xl5bz8y3zm7z2kz6kkgp423c0y02jrgjyfbc4"; + sha256 = "wwAZUGMgyiR02DTM7R4iF+pTPgDrKj9Ot4eQB5QOxoI="; }; patches = [ diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix index e6ad0f1ae36b9..81c0abd61b6d3 100644 --- a/pkgs/development/libraries/gtksourceview/5.x.nix +++ b/pkgs/development/libraries/gtksourceview/5.x.nix @@ -10,6 +10,7 @@ , pango , fribidi , vala +, gi-docgen , libxml2 , perl , gettext @@ -22,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "5.2.0"; + version = "5.4.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "ybNPoCZU9WziL6CIJ9idtLqBYxsubX0x6mXRPHKUMOk="; + sha256 = "ADvCF+ZwqOyKo67OmUtw5wt9a4B0k4rdohcYVV2E5jc="; }; patches = [ @@ -46,6 +47,7 @@ stdenv.mkDerivation rec { perl gobject-introspection vala + gi-docgen ]; buildInputs = [ @@ -68,6 +70,10 @@ stdenv.mkDerivation rec { dbus ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + doCheck = stdenv.isLinux; checkPhase = '' @@ -81,6 +87,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = "gtksourceview"; diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix index c79f849d22f17..e02a0be4d28d5 100644 --- a/pkgs/development/libraries/gvfs/default.nix +++ b/pkgs/development/libraries/gvfs/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja @@ -17,6 +18,7 @@ , fuse3 , libcdio , libxml2 +, libsoup_3 , libxslt , docbook_xsl , docbook_xml_dtd_42 @@ -41,11 +43,11 @@ stdenv.mkDerivation rec { pname = "gvfs"; - version = "1.48.1"; + version = "1.50.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj"; + sha256 = "y8L1ZNLp8Ax2BnP0LWgDvOPggat/+0RW3v//upM5tN0="; }; postPatch = '' @@ -89,9 +91,8 @@ stdenv.mkDerivation rec { libnfs openssh gsettings-desktop-schemas - # TODO: a ligther version of libsoup to have FTP/HTTP support? + libsoup_3 ] ++ lib.optionals gnomeSupport [ - gnome.libsoup gcr glib-networking # TLS support gnome-online-accounts @@ -106,7 +107,6 @@ stdenv.mkDerivation rec { "-Dgcr=false" "-Dgoa=false" "-Dkeyring=false" - "-Dhttp=false" "-Dgoogle=false" ] ++ lib.optionals (avahi == null) [ "-Ddnssd=false" diff --git a/pkgs/development/libraries/jsonrpc-glib/default.nix b/pkgs/development/libraries/jsonrpc-glib/default.nix index 7618110e86c4d..fb828e5b57146 100644 --- a/pkgs/development/libraries/jsonrpc-glib/default.nix +++ b/pkgs/development/libraries/jsonrpc-glib/default.nix @@ -1,18 +1,42 @@ -{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, glib +, json-glib +, pkg-config +, gobject-introspection +, vala +, gi-docgen +, gnome +}: + stdenv.mkDerivation rec { pname = "jsonrpc-glib"; - version = "3.40.0"; + version = "3.42.0"; outputs = [ "out" "dev" "devdoc" ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection vala gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ glib json-glib ]; - src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "wuPRYlfHJmzTkBiE4iN1V1v2Go4fZ1lsiODYeucNDvQ="; + sha256 = "IhmJpXyoKhJGfcQngizXZRsMrQOBQMkxAnvxB0IIJ2s="; }; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + vala + gi-docgen + ]; + + buildInputs = [ + glib + json-glib + ]; + mesonFlags = [ "-Denable_gtk_doc=true" ]; @@ -21,6 +45,11 @@ stdenv.mkDerivation rec { # https://gitlab.gnome.org/GNOME/jsonrpc-glib/issues/2 doCheck = false; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 856ec30bccb29..447ad06e9b87d 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.0.2"; + version = "1.1.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - hash = "sha256-D7Qq8yAWkr/G5I4k8G1+viJkEJSrCBAg31Q+g3U9FcQ="; + hash = "sha256-+bgCD2jy3M0gEAtbB+nOptQGEXXkvk1idoggJz4UMy0="; }; nativeBuildInputs = [ @@ -91,6 +91,12 @@ stdenv.mkDerivation rec { mv $out/share/{doc,gtk-doc} ''; + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + }; + }; + meta = with lib; { description = "Library to help with developing UI for mobile devices using GTK/GNOME"; homepage = "https://gitlab.gnome.org/GNOME/libadwaita"; diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix index 426ffadf4c6eb..7f4c53071d0ca 100644 --- a/pkgs/development/libraries/libdazzle/default.nix +++ b/pkgs/development/libraries/libdazzle/default.nix @@ -1,20 +1,53 @@ -{ lib, stdenv, fetchurl, ninja, meson, pkg-config, vala, gobject-introspection, libxml2 -, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb-run, glib, gtk3, gnome }: +{ lib +, stdenv +, fetchurl +, ninja +, meson +, pkg-config +, vala +, gobject-introspection +, libxml2 +, gtk-doc +, docbook_xsl +, docbook_xml_dtd_43 +, dbus +, xvfb-run +, glib +, gtk3 +, gnome +}: stdenv.mkDerivation rec { pname = "libdazzle"; - version = "3.42.0"; + version = "3.44.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "dev"; src = fetchurl { url = "mirror://gnome/sources/libdazzle/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "09b9l56yiwad7xqr7g7ragmm4gmqxjnvc2pcx6741klw7lxpmrpa"; + sha256 = "PNPkXrbiaAywXVLh6A3Y+dWdR2UhLw4o945sF4PRjq4="; }; - nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb-run glib ]; - buildInputs = [ glib gtk3 ]; + nativeBuildInputs = [ + ninja + meson + pkg-config + vala + gobject-introspection + libxml2 + gtk-doc + docbook_xsl + docbook_xml_dtd_43 + dbus + xvfb-run + glib + ]; + + buildInputs = [ + glib + gtk3 + ]; mesonFlags = [ "-Denable_gtk_doc=true" diff --git a/pkgs/development/libraries/libgnome-games-support/2.0.nix b/pkgs/development/libraries/libgnome-games-support/2.0.nix new file mode 100644 index 0000000000000..a5f1c2576b9f4 --- /dev/null +++ b/pkgs/development/libraries/libgnome-games-support/2.0.nix @@ -0,0 +1,59 @@ +{ stdenv +, lib +, fetchurl +, pkg-config +, glib +, gtk4 +, libgee +, gettext +, vala +, gnome +, libintl +, meson +, ninja +}: + +stdenv.mkDerivation rec { + pname = "libgnome-games-support"; + version = "2.0.0"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "U4Ifb+Mu3cue7zMk9kaqrIPMbT3gk339XyZkcNRT0qQ="; + }; + + nativeBuildInputs = [ + gettext + meson + ninja + pkg-config + vala + ]; + + buildInputs = [ + libintl + ]; + + propagatedBuildInputs = [ + # Required by libgnome-games-support-2.pc + glib + gtk4 + libgee + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "${pname}_2_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Small library intended for internal use by GNOME Games, but it may be used by others"; + homepage = "https://wiki.gnome.org/Apps/Games"; + license = licenses.lgpl3Plus; + maintainers = teams.gnome.members; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/libgnome-games-support/default.nix b/pkgs/development/libraries/libgnome-games-support/default.nix index 80c76ea980f9c..e63d7f8fe656f 100644 --- a/pkgs/development/libraries/libgnome-games-support/default.nix +++ b/pkgs/development/libraries/libgnome-games-support/default.nix @@ -44,6 +44,7 @@ stdenv.mkDerivation rec { updateScript = gnome.updateScript { packageName = pname; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix index 1850da7e64686..8bc2dc76160fb 100644 --- a/pkgs/development/libraries/libgsf/default.nix +++ b/pkgs/development/libraries/libgsf/default.nix @@ -1,26 +1,59 @@ -{ fetchurl, lib, stdenv, pkg-config, intltool, gettext, glib, libxml2, zlib, bzip2 -, perl, gdk-pixbuf, libiconv, libintl, gnome }: +{ fetchurl +, lib +, stdenv +, pkg-config +, intltool +, gettext +, glib +, libxml2 +, zlib +, bzip2 +, perl +, gdk-pixbuf +, libiconv +, libintl +, gnome +}: stdenv.mkDerivation rec { pname = "libgsf"; - version = "1.14.48"; + version = "1.14.49"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/4bX8dRt0Ovvt72DCnSkHbZDYrmHv4hT//arTBEyuDc="; + sha256 = "6evjZojwEMnm5AyJA/NzKUjeuKygMleNB9B1G9gs+Fc="; }; - nativeBuildInputs = [ pkg-config intltool libintl ]; + nativeBuildInputs = [ + pkg-config + intltool + libintl + ]; - buildInputs = [ gettext bzip2 zlib ]; - checkInputs = [ perl ]; + buildInputs = [ + gettext + bzip2 + zlib + ]; - propagatedBuildInputs = [ libxml2 glib gdk-pixbuf libiconv ]; + checkInputs = [ + perl + ]; - outputs = [ "out" "dev" ]; + propagatedBuildInputs = [ + libxml2 + glib + gdk-pixbuf + libiconv + ]; doCheck = true; - preCheck = "patchShebangs ./tests/"; + + preCheck = '' + patchShebangs ./tests/ + ''; passthru = { updateScript = gnome.updateScript { @@ -31,10 +64,10 @@ stdenv.mkDerivation rec { meta = with lib; { description = "GNOME's Structured File Library"; - homepage = "https://www.gnome.org/projects/libgsf"; - license = licenses.lgpl2Plus; + homepage = "https://www.gnome.org/projects/libgsf"; + license = licenses.lgpl2Plus; maintainers = with maintainers; [ lovek323 ]; - platforms = lib.platforms.unix; + platforms = lib.platforms.unix; longDescription = '' Libgsf aims to provide an efficient extensible I/O abstraction for diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix index fbab67e086520..e4a527ba48578 100644 --- a/pkgs/development/libraries/libgweather/default.nix +++ b/pkgs/development/libraries/libgweather/default.nix @@ -6,12 +6,9 @@ , pkg-config , libxml2 , glib -, gtk3 , gettext , libsoup -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , gobject-introspection , python3 , tzdata @@ -22,24 +19,29 @@ stdenv.mkDerivation rec { pname = "libgweather"; - version = "40.0"; + version = "4.0.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna"; + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "RA1EgBtvcrSMZ25eN/kQnP7hOU/XTMknJeGxuk+ug0w="; }; + patches = [ + # Headers depend on glib but it is only listed in Requires.private, + # which does not influence Cflags on non-static builds in nixpkgs’s + # pkg-config. Let’s add it to Requires to ensure Cflags are set correctly. + ./fix-pkgconfig.patch + ]; + nativeBuildInputs = [ meson ninja pkg-config gettext vala - gtk-doc - docbook-xsl-nons - docbook_xml_dtd_43 + gi-docgen gobject-introspection python3 python3.pkgs.pygobject3 @@ -47,7 +49,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib - gtk3 libsoup libxml2 geocode-glib @@ -60,9 +61,13 @@ stdenv.mkDerivation rec { ]; postPatch = '' - chmod +x meson/meson_post_install.py - patchShebangs meson/meson_post_install.py - patchShebangs data/gen_locations_variant.py + patchShebangs build-aux/meson/meson_post_install.py + patchShebangs build-aux/meson/gen_locations_variant.py + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/libgweather/fix-pkgconfig.patch b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch new file mode 100644 index 0000000000000..b118a3bc9dd84 --- /dev/null +++ b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch @@ -0,0 +1,14 @@ +diff --git a/libgweather/meson.build b/libgweather/meson.build +index b5d0b4d4..10010d70 100644 +--- a/libgweather/meson.build ++++ b/libgweather/meson.build +@@ -269,6 +269,9 @@ pkgconfig.generate( + description: 'Gather weather information from online services', + version: meson.project_version(), + subdirs: libgweather_full_version, ++ requires: [ ++ 'glib-2.0', ++ ], + variables: [ + 'soupapiversion=' + libsoup_api_version, + ] diff --git a/pkgs/development/libraries/libhandy/0.x.nix b/pkgs/development/libraries/libhandy/0.x.nix index 7597aee697a8b..2c2b09b44923f 100644 --- a/pkgs/development/libraries/libhandy/0.x.nix +++ b/pkgs/development/libraries/libhandy/0.x.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, gobject-introspection, vala , gtk-doc, docbook_xsl, docbook_xml_dtd_43 -, gtk3, gnome +, gtk3, gnome-desktop , dbus, xvfb-run, libxml2 , hicolor-icon-theme }: @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meson ninja pkg-config gobject-introspection vala libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ gnome.gnome-desktop gtk3 libxml2 ]; + buildInputs = [ gnome-desktop gtk3 libxml2 ]; checkInputs = [ dbus xvfb-run hicolor-icon-theme ]; mesonFlags = [ diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix index 63c494999a93c..c1d81f8043c80 100644 --- a/pkgs/development/libraries/libhandy/default.nix +++ b/pkgs/development/libraries/libhandy/default.nix @@ -6,16 +6,13 @@ , pkg-config , gobject-introspection , vala -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , glib , gsettings-desktop-schemas , gtk3 , enableGlade ? false , glade , xvfb-run -, libxml2 , gdk-pixbuf , librsvg , hicolor-icon-theme @@ -28,7 +25,7 @@ stdenv.mkDerivation rec { pname = "libhandy"; - version = "1.5.0"; + version = "1.6.1"; outputs = [ "out" @@ -41,15 +38,12 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-RmueAmwfnrO2WWb1MNl3A6ghLar5EXSMFF6cuEPb1v4="; + sha256 = "sha256-bqsDhEBNVr0bH6BZ2aCBF3d49q4ID/whIPKGVsp0YqQ="; }; nativeBuildInputs = [ - docbook_xml_dtd_43 - docbook-xsl-nons gobject-introspection - gtk-doc - libxml2 + gi-docgen meson ninja pkg-config @@ -59,7 +53,6 @@ stdenv.mkDerivation rec { buildInputs = [ gdk-pixbuf gtk3 - libxml2 ] ++ lib.optionals enableGlade [ glade ]; @@ -106,6 +99,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix index f4a1959a512c7..77c595c9184a8 100644 --- a/pkgs/development/libraries/libical/default.nix +++ b/pkgs/development/libraries/libical/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { pname = "libical"; - version = "3.0.11"; + version = "3.0.14"; outputs = [ "out" "dev" ]; # "devdoc" ]; @@ -28,7 +28,7 @@ stdenv.mkDerivation rec { owner = "libical"; repo = "libical"; rev = "v${version}"; - sha256 = "sha256-9kMYqWITZ2LlBDebJUZFWyVclAjfIZtc3Dm7lii9ZMc="; + sha256 = "sha256-gZ6IBjG5pNKJ+hWcTzXMP7yxL4he4LTklZGoC9vXra8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/libpeas/default.nix b/pkgs/development/libraries/libpeas/default.nix index 55c884d215fdc..712592431abe0 100644 --- a/pkgs/development/libraries/libpeas/default.nix +++ b/pkgs/development/libraries/libpeas/default.nix @@ -1,25 +1,61 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome -, glib, gtk3, gobject-introspection, python3, ncurses +{ stdenv +, lib +, fetchurl +, meson +, ninja +, pkg-config +, gettext +, gi-docgen +, gnome +, glib +, gtk3 +, gobject-introspection +, python3 +, ncurses }: stdenv.mkDerivation rec { pname = "libpeas"; - version = "1.30.0"; + version = "1.32.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "18xrk1c1ixlhkmykcfiafrl2am470ws687xqvjlq40zwkcp5dx8b"; + sha256 = "1iVSD6AuiXcCmyRq5Dm8IYloll8egtYSIItxPx3MPQ4="; }; - nativeBuildInputs = [ pkg-config meson ninja gettext gobject-introspection ]; - buildInputs = [ glib gtk3 ncurses python3 python3.pkgs.pygobject3 ]; + nativeBuildInputs = [ + pkg-config + meson + ninja + gettext + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + gtk3 + ncurses + python3 + python3.pkgs.pygobject3 + ]; + propagatedBuildInputs = [ # Required by libpeas-1.0.pc gobject-introspection ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/librest/1.0.nix b/pkgs/development/libraries/librest/1.0.nix new file mode 100644 index 0000000000000..d51f9e31b178f --- /dev/null +++ b/pkgs/development/libraries/librest/1.0.nix @@ -0,0 +1,74 @@ +{ lib +, stdenv +, fetchurl +, meson +, ninja +, pkg-config +, gi-docgen +, glib +, json-glib +, libsoup +, gobject-introspection +, gnome +}: + +stdenv.mkDerivation rec { + pname = "rest"; + version = "0.9.0"; + + outputs = [ "out" "dev" "devdoc" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "hbK8k0ESgTlTm1PuU/BTMxC8ljkv1kWGOgQEELgevmY="; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + json-glib + libsoup + ]; + + mesonFlags = [ + "-Dexamples=false" + + # Remove when https://gitlab.gnome.org/GNOME/librest/merge_requests/2 is merged. + "-Dca_certificates=true" + "-Dca_certificates_path=/etc/ssl/certs/ca-certificates.crt" + ]; + + postPatch = '' + # https://gitlab.gnome.org/GNOME/librest/-/merge_requests/19 + substituteInPlace meson.build \ + --replace "con." "conf." + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "librest_1_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Helper library for RESTful services"; + homepage = "https://wiki.gnome.org/Projects/Librest"; + license = licenses.lgpl21Only; + platforms = platforms.unix; + maintainers = teams.gnome.members; + }; +} diff --git a/pkgs/development/libraries/librest/default.nix b/pkgs/development/libraries/librest/default.nix index ce2df9cc9a8a7..abe53ff3692fa 100644 --- a/pkgs/development/libraries/librest/default.nix +++ b/pkgs/development/libraries/librest/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation rec { packageName = pname; attrPath = "librest"; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index 81cad37351a59..b093544138417 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -16,6 +16,8 @@ , rustc , rust , cargo +, gi-docgen +, python3 , gnome , vala , withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform @@ -25,13 +27,15 @@ stdenv.mkDerivation rec { pname = "librsvg"; - version = "2.52.6"; + version = "2.54.0"; - outputs = [ "out" "dev" "installedTests" ]; + outputs = [ "out" "dev" "installedTests" ] ++ lib.optionals withIntrospection [ + "devdoc" + ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "o/k5oeajpgQIJEYy0DI/jDsg60t7AAU24uW9k7jv+q0="; + sha256 = "uvjrwUfxRrQmG7PQzQ+slEv427Sx8jR9IzQfl03MMIU="; }; cargoVendorDir = "vendor"; @@ -45,10 +49,12 @@ stdenv.mkDerivation rec { pkg-config rustc cargo + python3.pkgs.docutils vala rustPlatform.cargoSetupHook ] ++ lib.optionals withIntrospection [ gobject-introspection + gi-docgen ]; buildInputs = [ @@ -119,6 +125,11 @@ stdenv.mkDerivation rec { mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix index 18f00a0933c35..9e8be02aa63a3 100644 --- a/pkgs/development/libraries/libsecret/default.nix +++ b/pkgs/development/libraries/libsecret/default.nix @@ -1,42 +1,76 @@ -{ lib, stdenv, fetchurl, fetchpatch, glib, pkg-config, gettext, libxslt, python3 -, docbook_xsl, docbook_xml_dtd_42 , libgcrypt, gobject-introspection, vala -, gtk-doc, gnome, gjs, libintl, dbus, xvfb-run }: +{ stdenv +, lib +, fetchurl +, glib +, meson +, ninja +, pkg-config +, gettext +, libxslt +, python3 +, docbook-xsl-nons +, docbook_xml_dtd_42 +, libgcrypt +, gobject-introspection +, vala +, gi-docgen +, gnome +, gjs +, libintl +, dbus +, xvfb-run +}: stdenv.mkDerivation rec { pname = "libsecret"; - version = "0.20.4"; + version = "0.20.5"; + + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0a4xnfmraxchd9cq5ai66j12jv2vrgjmaaxz25kl031jvda4qnij"; + sha256 = "P7PONA/NfbVNh8iT5pv8Kx9uTUsnkGX/5m2snw/RK00="; }; - postPatch = '' - patchShebangs . - ''; - - outputs = [ "out" "dev" "devdoc" ]; - - propagatedBuildInputs = [ glib ]; nativeBuildInputs = [ - pkg-config gettext libxslt docbook_xsl docbook_xml_dtd_42 libintl - gobject-introspection vala gtk-doc glib + meson + ninja + pkg-config + gettext + libxslt # for xsltproc for building man pages + docbook-xsl-nons + docbook_xml_dtd_42 + libintl + gobject-introspection + vala + gi-docgen + glib ]; - buildInputs = [ libgcrypt ]; - # optional: build docs with gtk-doc? (probably needs a flag as well) - configureFlags = [ - "--with-libgcrypt-prefix=${libgcrypt.dev}" + buildInputs = [ + libgcrypt ]; - enableParallelBuilding = true; + propagatedBuildInputs = [ + glib + ]; installCheckInputs = [ - python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb-run dbus gjs + python3 + python3.pkgs.dbus-python + python3.pkgs.pygobject3 + xvfb-run + dbus + gjs ]; # needs to run after install because typelibs point to absolute paths doInstallCheck = false; # Failed to load shared library '/force/shared/libmock_service.so.0' referenced by the typelib + + postPatch = '' + patchShebangs . + ''; + installCheckPhase = '' export NO_AT_BRIDGE=1 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ @@ -44,6 +78,11 @@ stdenv.mkDerivation rec { make check ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix index 454a1cdf40a23..4791e49ae3fa8 100644 --- a/pkgs/development/libraries/libsoup/3.x.nix +++ b/pkgs/development/libraries/libsoup/3.x.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "libsoup"; - version = "3.0.4"; + version = "3.0.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-W9OLXgkfcH/X+j7Xw3qsyj+OFsZXh/HMF9w40dzeVns="; + sha256 = "sha256-9dFD22gws4Je3CocREnWOSc7C/oBeklwhxli2byiIUU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix index 3033b7df4e3d4..ee79d53705945 100644 --- a/pkgs/development/libraries/pango/default.nix +++ b/pkgs/development/libraries/pango/default.nix @@ -24,14 +24,14 @@ stdenv.mkDerivation rec { pname = "pango"; - version = "1.50.4"; + version = "1.50.6"; outputs = [ "bin" "out" "dev" ] ++ lib.optionals withDocs [ "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "9K1j6H3CsUUwBUKk+wBNB6n5GzQVL64N2+UOzdhRwWI="; + sha256 = "qZi882iBw6wgSV1AvOswT06qkXW9KWfIVlZDTL2v6Go="; }; strictDeps = !withIntrospection; @@ -84,12 +84,9 @@ stdenv.mkDerivation rec { doCheck = false; # test-font: FAIL - postInstall = lib.optionalString withDocs '' - # So that devhelp can find this. - # https://gitlab.gnome.org/GNOME/pango/merge_requests/293/diffs#note_1058448 - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc/pango/reference" "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc/pango" + postFixup = lib.optionalString withDocs '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 6fa07bcaf8060..5547e492a65be 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -18,6 +18,7 @@ , ninja , openjpeg , pkg-config +, python3 , scribusUnstable , texlive , zlib @@ -34,19 +35,20 @@ let in stdenv.mkDerivation rec { pname = "poppler-${suffix}"; - version = "22.01.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "22.03.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! outputs = [ "out" "dev" ]; src = fetchurl { url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz"; - sha256 = "sha256-fTSTBWtbhkE+XGk8LK4CxcBs2OYY0UwsMeLIS2eyMT4="; + sha256 = "sha256-cox4upTXWlX2tjVdT72qb0mTTZYWvljl5nmpz9CYDh4="; }; nativeBuildInputs = [ cmake ninja pkg-config + python3 ]; buildInputs = [ diff --git a/pkgs/development/libraries/template-glib/default.nix b/pkgs/development/libraries/template-glib/default.nix index c0ee2c1d3506d..375a7c3237a58 100644 --- a/pkgs/development/libraries/template-glib/default.nix +++ b/pkgs/development/libraries/template-glib/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }: let - version = "3.34.0"; + version = "3.34.1"; pname = "template-glib"; in stdenv.mkDerivation { @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1z9xkin5fyfh071ma9y045jcw83hgx33dfbjraw6cxk0qdmfysr1"; + sha256 = "nsm3HgTU9csU91XveQYxzQtFwGA+Ecg2/Hz9niaM0Ho="; }; buildInputs = [ meson ninja pkg-config gettext flex bison vala glib gtk-doc docbook_xsl docbook_xml_dtd_43 ]; diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/development/libraries/tracker-miners/default.nix index 4df448d08f464..7c3e495d54a34 100644 --- a/pkgs/development/libraries/tracker-miners/default.nix +++ b/pkgs/development/libraries/tracker-miners/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl -, substituteAll , asciidoc , docbook-xsl-nons , docbook_xml_dtd_45 @@ -47,11 +47,11 @@ stdenv.mkDerivation rec { pname = "tracker-miners"; - version = "3.2.2"; + version = "3.3.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/YTHHmIbwrgcrLX5CJMkNiRtG4pPw6Y1PiuNuuvAI2w="; + sha256 = "izh967d0BhwGrfsmeg4ODz0heZNxvwHQVklaubjdlBc="; }; nativeBuildInputs = [ @@ -113,13 +113,6 @@ stdenv.mkDerivation rec { "-Dminer_rss=false" ]; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - ]; - postInstall = '' glib-compile-schemas "$out/share/glib-2.0/schemas" ''; diff --git a/pkgs/development/libraries/tracker-miners/fix-paths.patch b/pkgs/development/libraries/tracker-miners/fix-paths.patch deleted file mode 100644 index 8661648eacdf8..0000000000000 --- a/pkgs/development/libraries/tracker-miners/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index 0b8a64863..a09db59f0 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -43,7 +43,7 @@ foreach m : daemon_manpages + cli_manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 68a29919f0aad..5cb3dc73daa8d 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -1,7 +1,6 @@ { stdenv , lib , fetchurl -, fetchpatch , gettext , meson , ninja @@ -26,34 +25,19 @@ , json-glib , systemd , dbus -, substituteAll }: stdenv.mkDerivation rec { pname = "tracker"; - version = "3.2.1"; + version = "3.3.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "GEfgiznm5h2EhzWqH5f32WwDggFlP6DXy56Bs365wDo="; + sha256 = "Bwb5b+f5XfQqzsgSwd57RZOg1kgyHKg1BqnXHiJBe9o="; }; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - - # Filter out hidden (wrapped) subcommands - # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/481 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/tracker/-/commit/8c28c24e447f13da8cf804cd7a00f9b909c5d3f9.patch"; - sha256 = "EYo1nOtEr4semaPC5wk6A7bliRXu8qsBHaltd0DEI6Y="; - }) - ]; - nativeBuildInputs = [ meson ninja @@ -119,7 +103,9 @@ stdenv.mkDerivation rec { dbus-run-session \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \ - meson test --print-errorlogs + meson test \ + --timeout-multiplier 2 \ + --print-errorlogs runHook postCheck ''; diff --git a/pkgs/development/libraries/tracker/fix-paths.patch b/pkgs/development/libraries/tracker/fix-paths.patch deleted file mode 100644 index 5e4d8657f7bce..0000000000000 --- a/pkgs/development/libraries/tracker/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index f90c757cf..40d9c939d 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -32,7 +32,7 @@ foreach m : manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix index aae30390ee418..9e94420829017 100644 --- a/pkgs/development/libraries/vte/default.nix +++ b/pkgs/development/libraries/vte/default.nix @@ -27,13 +27,13 @@ stdenv.mkDerivation rec { pname = "vte"; - version = "0.64.2"; + version = "0.67.90"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-KzyCC2WmZ8HYhZuiBHi+Ym0VGcwxWdrCX3AzMMbQfhg="; + sha256 = "sha256-RkCe1x/DqkfX3DkCSaU+i4E6xsCYvawVFuEL23wg2zg="; }; patches = [ diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix index ad68f13fe0f18..6764df634bbce 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix @@ -10,6 +10,7 @@ , gsettings-desktop-schemas , gtk4 , libadwaita +, gnome-desktop , xdg-desktop-portal , wayland , gnome @@ -17,11 +18,11 @@ stdenv.mkDerivation rec { pname = "xdg-desktop-portal-gnome"; - version = "41.1"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "u6FEGZ5+1LlJCyScGvZFqGnWKZMmXerDjyGb8EL//fI="; + sha256 = "3+i1JFDzKDj5+eiY6Vqo36JwXOEtQ4MFVXwSi5zg4uY="; }; nativeBuildInputs = [ @@ -37,6 +38,7 @@ stdenv.mkDerivation rec { gsettings-desktop-schemas # settings exposed by settings portal gtk4 libadwaita + gnome-desktop xdg-desktop-portal wayland # required by GTK 4 ]; diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix index c54cdeca6c35f..13a16f111ea88 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix @@ -7,6 +7,7 @@ , xdg-desktop-portal , gtk3 , gnome +, gnome-desktop , glib , wrapGAppsHook , gsettings-desktop-schemas @@ -36,7 +37,7 @@ stdenv.mkDerivation rec { glib gsettings-desktop-schemas # settings exposed by settings portal gtk3 - gnome.gnome-desktop + gnome-desktop gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s) ]; diff --git a/pkgs/development/misc/yelp-tools/default.nix b/pkgs/development/misc/yelp-tools/default.nix index d6864b80f9ed0..a58891bc333bb 100644 --- a/pkgs/development/misc/yelp-tools/default.nix +++ b/pkgs/development/misc/yelp-tools/default.nix @@ -13,13 +13,13 @@ python3.pkgs.buildPythonApplication rec { pname = "yelp-tools"; - version = "41.0"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "N/GswCvL5ooxuG4HwSmoOb0yduZW3Inrf8CpJ0bv8nI="; + sha256 = "LNQwY/+nJi3xXdjTeao+o5mdQmYfB1Y/SALaoRSfffQ="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index aeddf457f48d4..8744407fb96d8 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -5,6 +5,7 @@ , pkg-config , python3 , substituteAll +, withDarwinFrameworksGtkDocPatch ? false }: python3.pkgs.buildPythonApplication rec { @@ -61,6 +62,10 @@ python3.pkgs.buildPythonApplication rec { # Meson tries to update ld.so.cache which breaks when the target architecture # differs from the build host's. ./do-not-update-ldconfig-cache.patch + ] ++ lib.optionals withDarwinFrameworksGtkDocPatch [ + # Fix building gtkdoc for GLib + # https://github.com/mesonbuild/meson/pull/10186 + ./fix-gtkdoc-when-using-multiple-apple-frameworks.patch ]; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch new file mode 100644 index 0000000000000..eb6d9718bcb21 --- /dev/null +++ b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch @@ -0,0 +1,176 @@ +From 0a008a6c7ecee19f35c8b7ab17b1470d0d1a8a15 Mon Sep 17 00:00:00 2001 +From: Jan Tojnar <jtojnar@gmail.com> +Date: Sat, 26 Mar 2022 02:26:27 +0100 +Subject: [PATCH] gnome: Fix gtkdoc when using multiple Apple frameworks + +The `-framework Foundation -framework CoreFoundation` ended up +de-duplicated by OrderedSet into `-framework Foundation CoreFoundation`. + +Picked from https://github.com/mesonbuild/meson/pull/10186 + +Also pick https://github.com/mesonbuild/meson/commit/68e684d51f1e469e0d9f4b499ffda15146cad98a when resolving conflict. + +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index 7113f28d2..d3269b53f 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -384,13 +384,14 @@ class GnomeModule(ExtensionModule): + def _get_link_args(self, state, lib, depends, include_rpath=False, + use_gir_args=False): + link_command = [] ++ new_depends = list(depends) + # Construct link args + if isinstance(lib, build.SharedLibrary): + libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib)) + link_command.append('-L' + libdir) + if include_rpath: + link_command.append('-Wl,-rpath,' + libdir) +- depends.append(lib) ++ new_depends.append(lib) + # Needed for the following binutils bug: + # https://github.com/mesonbuild/meson/issues/1911 + # However, g-ir-scanner does not understand -Wl,-rpath +@@ -404,18 +405,24 @@ class GnomeModule(ExtensionModule): + link_command.append('--extra-library=' + lib.name) + else: + link_command.append('-l' + lib.name) +- return link_command +- +- def _get_dependencies_flags(self, deps, state, depends, include_rpath=False, +- use_gir_args=False, separate_nodedup=False): +- cflags = OrderedSet() +- internal_ldflags = OrderedSet() +- external_ldflags = OrderedSet() ++ return link_command, new_depends ++ ++ def _get_dependencies_flags_raw( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[str], ++ T.List]: ++ cflags: OrderedSet[str] = OrderedSet() + # External linker flags that can't be de-duped reliably because they +- # require two args in order, such as -framework AVFoundation +- external_ldflags_nodedup = [] +- gi_includes = OrderedSet() ++ # require two args in order, such as -framework AVFoundation will be stored as a tuple. ++ internal_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ external_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ gi_includes: OrderedSet[str] = OrderedSet() + deps = mesonlib.listify(deps) ++ depends = list(depends) + + for dep in deps: + if isinstance(dep, Dependency): +@@ -427,21 +434,20 @@ class GnomeModule(ExtensionModule): + cflags.update(state.get_include_args(dep.include_directories)) + for lib in dep.libraries: + if isinstance(lib, build.SharedLibrary): +- internal_ldflags.update(self._get_link_args(state, lib, depends, include_rpath)) +- libdepflags = self._get_dependencies_flags(lib.get_external_deps(), state, depends, include_rpath, +- use_gir_args, True) ++ _ld, depends = self._get_link_args(state, lib, depends, include_rpath) ++ internal_ldflags.update(_ld) ++ libdepflags = self._get_dependencies_flags_raw(lib.get_external_deps(), state, depends, include_rpath, ++ use_gir_args) + cflags.update(libdepflags[0]) + internal_ldflags.update(libdepflags[1]) + external_ldflags.update(libdepflags[2]) +- external_ldflags_nodedup += libdepflags[3] +- gi_includes.update(libdepflags[4]) +- extdepflags = self._get_dependencies_flags(dep.ext_deps, state, depends, include_rpath, +- use_gir_args, True) ++ gi_includes.update(libdepflags[3]) ++ extdepflags = self._get_dependencies_flags_raw(dep.ext_deps, state, depends, include_rpath, ++ use_gir_args) + cflags.update(extdepflags[0]) + internal_ldflags.update(extdepflags[1]) + external_ldflags.update(extdepflags[2]) +- external_ldflags_nodedup += extdepflags[3] +- gi_includes.update(extdepflags[4]) ++ gi_includes.update(extdepflags[3]) + for source in dep.sources: + if isinstance(source, GirTarget): + gi_includes.update([os.path.join(state.environment.get_build_dir(), +@@ -469,7 +475,7 @@ class GnomeModule(ExtensionModule): + # If it's a framework arg, slurp the framework name too + # to preserve the order of arguments + if lib == '-framework': +- external_ldflags_nodedup += [lib, next(ldflags)] ++ external_ldflags.update([(lib, next(ldflags))]) + else: + external_ldflags.update([lib]) + elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)): +@@ -480,21 +486,43 @@ class GnomeModule(ExtensionModule): + continue + + if use_gir_args and self._gir_has_option('--extra-library'): +- def fix_ldflags(ldflags): +- fixed_ldflags = OrderedSet() ++ def fix_ldflags(ldflags: T.Iterable[T.Union[str, T.Tuple[str, str]]]) -> OrderedSet[T.Union[str, T.Tuple[str, str]]]: ++ fixed_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() + for ldflag in ldflags: +- if ldflag.startswith("-l"): ++ if isinstance(ldflag, str) and ldflag.startswith("-l"): + ldflag = ldflag.replace('-l', '--extra-library=', 1) + fixed_ldflags.add(ldflag) + return fixed_ldflags + internal_ldflags = fix_ldflags(internal_ldflags) + external_ldflags = fix_ldflags(external_ldflags) +- if not separate_nodedup: +- external_ldflags.update(external_ldflags_nodedup) +- return cflags, internal_ldflags, external_ldflags, gi_includes +- else: +- return cflags, internal_ldflags, external_ldflags, external_ldflags_nodedup, gi_includes ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends ++ ++ def _get_dependencies_flags( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], T.List[str], T.List[str], OrderedSet[str], ++ T.List]: ++ ++ cflags, internal_ldflags_raw, external_ldflags_raw, gi_includes, depends = self._get_dependencies_flags_raw(deps, state, depends, include_rpath, use_gir_args) ++ internal_ldflags: T.List[str] = [] ++ external_ldflags: T.List[str] = [] ++ ++ # Extract non-deduplicable argument groups out of the tuples. ++ for ldflag in internal_ldflags_raw: ++ if isinstance(ldflag, str): ++ internal_ldflags.append(ldflag) ++ else: ++ internal_ldflags.extend(ldflag) ++ for ldflag in external_ldflags_raw: ++ if isinstance(ldflag, str): ++ external_ldflags.append(ldflag) ++ else: ++ external_ldflags.extend(ldflag) + ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends + def _unwrap_gir_target(self, girtarget, state): + if not isinstance(girtarget, (build.Executable, build.SharedLibrary, + build.StaticLibrary)): +@@ -875,7 +903,7 @@ class GnomeModule(ExtensionModule): + # ldflags will be misinterpreted by gir scanner (showing + # spurious dependencies) but building GStreamer fails if they + # are not used here. +- dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes = \ ++ dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, use_gir_args=True) + scan_cflags = [] + scan_cflags += list(self._get_scanner_cflags(cflags)) +@@ -1170,7 +1198,7 @@ class GnomeModule(ExtensionModule): + deps = extract_as_list(kwargs, 'dependencies') + cflags = [] + cflags.extend(mesonlib.stringlistify(kwargs.pop('c_args', []))) +- deps_cflags, internal_ldflags, external_ldflags, gi_includes = \ ++ deps_cflags, internal_ldflags, external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, include_rpath=True) + inc_dirs = mesonlib.extract_as_list(kwargs, 'include_directories') + for incd in inc_dirs: diff --git a/pkgs/development/tools/documentation/gi-docgen/default.nix b/pkgs/development/tools/documentation/gi-docgen/default.nix index 05b7aac82c17a..85836f435cba5 100644 --- a/pkgs/development/tools/documentation/gi-docgen/default.nix +++ b/pkgs/development/tools/documentation/gi-docgen/default.nix @@ -1,6 +1,5 @@ { lib , fetchFromGitLab -, fetchpatch , meson , ninja , python3 @@ -8,7 +7,7 @@ python3.pkgs.buildPythonApplication rec { pname = "gi-docgen"; - version = "2021.8"; + version = "2022.1"; format = "other"; @@ -17,18 +16,9 @@ python3.pkgs.buildPythonApplication rec { owner = "GNOME"; repo = pname; rev = version; - sha256 = "Y1IdCH6bytxbKIj48IAw/3XUQhoqwPshvdj/d1hRS3o="; + sha256 = "35pL/2TQRVgPfAcfOGCLlSP1LIh4r95mFC+UoXQEEHo="; }; - patches = [ - # Fix building docs of some packages (e.g. gnome-builder) - # https://gitlab.gnome.org/GNOME/gi-docgen/-/issues/111 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gi-docgen/-/commit/72f3c5dbe27aabb5f7a376afda23f3dfc3c2e212.patch"; - sha256 = "iVXc3idmcjmFVZQdE2QX2V53YZ79lqxZid9nWdxAZ/Q="; - }) - ]; - depsBuildBuild = [ python3 ]; diff --git a/pkgs/development/tools/profiling/sysprof/capture.nix b/pkgs/development/tools/profiling/sysprof/capture.nix index 2d33dedbdd25a..e6690fc0c68b6 100644 --- a/pkgs/development/tools/profiling/sysprof/capture.nix +++ b/pkgs/development/tools/profiling/sysprof/capture.nix @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { mesonFlags = [ "-Dwith_sysprofd=none" "-Dlibsysprof=false" + "-Dlibunwind=false" "-Dhelp=false" "-Denable_tools=false" "-Denable_tests=false" diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix index 319212da77050..e21e71907869b 100644 --- a/pkgs/development/tools/profiling/sysprof/default.nix +++ b/pkgs/development/tools/profiling/sysprof/default.nix @@ -8,8 +8,10 @@ , json-glib , itstool , libdazzle +, libunwind , libxml2 -, meson, ninja +, meson +, ninja , pango , pkg-config , polkit @@ -21,13 +23,13 @@ stdenv.mkDerivation rec { pname = "sysprof"; - version = "3.42.1"; + version = "3.44.0"; outputs = [ "out" "lib" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "F5a4FATudf0eus9URkrXr/6/YvKFHu9STZ+OrAxKIAE="; + sha256 = "q12fW3GXOzCI1Yob/fHcI8OaAvX85OXpxz4DSxeLAFs="; }; nativeBuildInputs = [ @@ -51,6 +53,7 @@ stdenv.mkDerivation rec { polkit systemd libdazzle + libunwind ]; mesonFlags = [ |