[gtk-osx] Reconcile modulesets and modulesets-unstable with modulesets-stable.



commit e21393129f20397e818461020c9b701da9d6e368
Author: John Ralls <jralls ceridwen us>
Date:   Mon Apr 12 13:20:32 2021 -0700

    Reconcile modulesets and modulesets-unstable with modulesets-stable.

 modulesets-stable/gtk-osx-bootstrap.modules   |   2 +-
 modulesets-stable/gtk-osx-python.modules      |   1 -
 modulesets-unstable/gtk-osx-bootstrap.modules | 123 ++++------
 modulesets-unstable/gtk-osx-gstreamer.modules |  71 +++---
 modulesets-unstable/gtk-osx-gtkmm.modules     |  91 ++++----
 modulesets-unstable/gtk-osx-network.modules   | 169 ++++++--------
 modulesets-unstable/gtk-osx-python.modules    |  75 +------
 modulesets-unstable/gtk-osx-random.modules    | 275 ++++++++---------------
 modulesets-unstable/gtk-osx.modules           |  80 +++----
 modulesets/gtk-osx-bootstrap.modules          | 105 ++++-----
 modulesets/gtk-osx-gstreamer.modules          |  86 +++----
 modulesets/gtk-osx-gtkmm.modules              | 127 +++++++----
 modulesets/gtk-osx-network.modules            | 196 +++++++---------
 modulesets/gtk-osx-python.modules             | 113 ++--------
 modulesets/gtk-osx-random.modules             | 309 ++++++++------------------
 modulesets/gtk-osx.modules                    |  99 ++++-----
 16 files changed, 732 insertions(+), 1190 deletions(-)
---
diff --git a/modulesets-stable/gtk-osx-bootstrap.modules b/modulesets-stable/gtk-osx-bootstrap.modules
index aaafbe8b..d879eb86 100644
--- a/modulesets-stable/gtk-osx-bootstrap.modules
+++ b/modulesets-stable/gtk-osx-bootstrap.modules
@@ -104,7 +104,7 @@
              makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'>
     <branch repo="github-tarball" version="68.2" checkoutdir="icu"
             module="unicode-org/icu/releases/download/release-68-2/icu4c-68_2-src.tgz"
-            />
+            hash="sha256:c79193dee3907a2199b8296a93b52c5cb74332c26f3d167269487680d479d625"/>
   </autotools>
 
   <metamodule id="meta-gtk-osx-bootstrap">
diff --git a/modulesets-stable/gtk-osx-python.modules b/modulesets-stable/gtk-osx-python.modules
index 9421602c..31a42458 100644
--- a/modulesets-stable/gtk-osx-python.modules
+++ b/modulesets-stable/gtk-osx-python.modules
@@ -128,7 +128,6 @@
       <dep package="pycairo"/>
     </dependencies>
     <after>
-      <dep package="python2"/>
       <dep package="python3"/>
     </after>
    </meson>
diff --git a/modulesets-unstable/gtk-osx-bootstrap.modules b/modulesets-unstable/gtk-osx-bootstrap.modules
index 60046f92..3615580b 100644
--- a/modulesets-unstable/gtk-osx-bootstrap.modules
+++ b/modulesets-unstable/gtk-osx-bootstrap.modules
@@ -3,70 +3,61 @@
 <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
 <moduleset>
 
-  <repository type="tarball" name="ftp.gnome.org" default="yes"
-              href="http://download.gnome.org/sources/"/>
+  <repository type="git" name="git.gnome.org"  default="yes"
+              href="https://gitlab.gnome.org/GNOME"/>
   <repository type="tarball" name="ftp.gnu.org" href="https://ftp.gnu.org/gnu/"/>
   <repository type="tarball" name="sourceforge"
-             href="http://downloads.sourceforge.net/sourceforge/"/>
-  <repository type="git" name="nongnu"
-             href="git://git.sv.nongnu.org/"/>
+              href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type="tarball" name="jpeg"
-             href="http://www.ijg.org/files/"/>
+              href="http://www.ijg.org/files/"/>
   <repository type="tarball" name="libtiff"
              href="http://download.osgeo.org/"/>
-  <repository type="git" name="freedesktop"
-             href="https://gitlab.freedesktop.org/"/>
   <repository type="tarball" name="icon-theme"
-              href="http://icon-theme.freedesktop.org/releases/"/>
+             href="http://icon-theme.freedesktop.org/releases/"/>
   <repository type="tarball" name="xmlsoft.org"
              href="ftp://xmlsoft.org/libxml2/"/>
-  <repository type="git" name="git.gnome.org"
-              href="https://gitlab.gnome.org/GNOME"/>
-  <repository type="tarball" name="itstool" href="http://files.itstool.org/"/>
-  <repository type="git" name="github" href="https://github.com/"/>
+ <repository type="tarball" name="itstool" href="http://files.itstool.org/"/>
   <repository type="tarball" name="github-tarball" href="https://github.com/"/>
-  <repository type="tarball" name="pypi"
-              href="https://pypi.python.org/packages/source/"/>
-  <repository type="tarball" name="ragel"
-              href="http://www.colm.net/files/ragel/"/>
-
-  <autotools id='readline' autogen-sh="configure">
-    <branch repo="ftp.gnu.org" module="readline/readline-7.0.tar.gz"
-           version="7.0">
-    </branch>
-  </autotools>
 
   <autotools id="libpng" autogenargs="--enable-shared" autogen-sh="configure">
-    <branch version="1.6.29" module="libpng/libpng-1.6.29.tar.xz"
+    <branch version="1.6.37" module="libpng/libpng-1.6.37.tar.xz"
+            hash="sha256:505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca"
             repo="sourceforge"/>
+    <dependencies>
+      <dep package="zlib"/>
+    </dependencies>
   </autotools>
 
-  <autotools id="libjpeg">
-    <branch module="jpegsrc.v9c.tar.gz" version="9b"
-            repo="jpeg"
-            checkoutdir="jpeg-9c">
+  <autotools id="libjpeg" autogen-sh="configure">
+    <branch module="jpegsrc.v9d.tar.gz" version="9d"
+            repo="jpeg" checkoutdir="jpeg-9d"
+            hash="sha256:99cb50e48a4556bc571dadd27931955ff458aae32f68c4d9c39d624693f69c32">
     </branch>
   </autotools>
 
   <autotools id="libtiff" autogen-sh="configure" autogenargs="--without-x">
-    <branch version="4.1.0" module="libtiff/tiff-4.1.0.tar.gz"
-           repo="libtiff"/>
+    <branch version="4.2.0" module="libtiff/tiff-4.2.0.tar.gz"
+            repo="libtiff"
+            hash="sha256:eb0484e568ead8fa23b513e9b0041df7e327f4ee2d22db5a533929dfc19633cb">
+       <patch file="https://raw.githubusercontent.com/totaam/gtk-osx-build/master/patches/tiff-nohtml.patch"; 
strip="1" />
+    </branch>
     <dependencies>
       <dep package="libjpeg"/>
     </dependencies>
   </autotools>
 
-<!-- The python package is in gtk-osx-python.modules. If you're
-     building "native" you can safely add python to the skip list, but
-     otherwise the links in the SDKs are messed up and libxml's python
-     module won't link. In case you're wondering, itstool
-     needs libxml2's python module. -->
-  <autotools id="libxml2" autogenargs='--libdir="$JHBUILD_LIBDIR" --with-python'>
+  <!-- The python package is in gtk-osx-python.modules. If you're
+       building "native" you can safely add python to the skip list, but
+       otherwise the links in the SDKs are messed up and libxml's python
+       module won't link. In case you're wondering, itstool
+       needs libxml2's python module. -->
+
+  <autotools id="libxml2"
+             autogenargs='--libdir="$JHBUILD_LIBDIR" --with-python'>
     <branch repo="git.gnome.org"/>
-    <after>
-      <dep package="python"/>
+    <dependencies>
       <dep package="python3"/>
-    </after>
+    </dependencies>
   </autotools>
 
   <autotools id="libxslt">
@@ -76,65 +67,41 @@
     </dependencies>
   </autotools>
 
-  <autotools id="itstool">
-    <branch module="itstool/itstool-2.0.6.tar.bz2" version="2.0.6"
-            repo="itstool">
+  <autotools id="itstool" autogen-sh="configure">
+    <branch module="itstool/itstool-2.0.6.tar.bz2" version="2.0.6n"
+            repo="itstool"
+            hash="sha256:6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9">
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/itstool-config-python.patch"; 
strip="1"/>
     </branch>
-    <!--branch repo="github" module="itstool/itstool"/-->
-    <dependencies>
-      <dep package="libxml2"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id="yelp-xsl">
-    <branch repo="git.gnome.org" revision="gnome-3-20"/>
     <dependencies>
       <dep package="libxml2"/>
-      <dep package="libxslt"/>
-      <dep package="itstool"/>
     </dependencies>
   </autotools>
 
-  <!-- Yelp tools is releasing from the master branch. -->
-  <autotools id="yelp-tools">
-    <branch repo="git.gnome.org"/>
+  <meson id="gtk-doc" mesonargs="-Dyelp_manual=false -Dtests=false">
+    <branch />
     <dependencies>
       <dep package="libxml2"/>
       <dep package="libxslt"/>
       <dep package="itstool"/>
-      <dep package="yelp-xsl"/>
     </dependencies>
-  </autotools>
+    <after>
+      <dep package="python3"/>
+    </after>
+  </meson>
 
   <autotools id="icu" autogen-sh="source/configure" autogenargs="--enable-rpath"
              makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'>
-    <branch repo="github-tarball" version="66.1" checkoutdir="icu"
-            module="unicode-org/icu/releases/download/release-66-1/icu4c-66_1-src.tgz"
-            hash="sha256:52a3f2209ab95559c1cf0a14f24338001f389615bf00e2585ef3dbc43ecf0a2e"/>
-  </autotools>
-
-
-  <autotools id="hicolor-icon-theme" autogen-sh="configure" supports-non-srcdir-builds="no">
-    <branch module="hicolor-icon-theme-0.13.tar.gz" repo="icon-theme"
-            version="0.13"/>
+    <branch repo="github-tarball" version="68.2" checkoutdir="icu"
+            module="unicode-org/icu/releases/download/release-68-2/icu4c-68_2-src.tgz"
+            hash="sha256:c79193dee3907a2199b8296a93b52c5cb74332c26f3d167269487680d479d625"/>
   </autotools>
 
-  <meson id="gtk-doc">
-    <branch repo="git.gnome.org"/>
-    <dependencies>
-      <dep package="libxml2"/>
-      <dep package="itstool"/>
-      <dep package="yelp-tools"/>
-      <dep package="glib"/>
-    </dependencies>
-  </meson>
-
-   <metamodule id="meta-gtk-osx-bootstrap">
+  <metamodule id="meta-gtk-osx-bootstrap">
     <dependencies>
       <dep package="libpng"/>
       <dep package="libjpeg"/>
       <dep package="libtiff"/>
-      <dep package="hicolor-icon-theme"/>
       <dep package="gtk-doc"/>
     </dependencies>
   </metamodule>
diff --git a/modulesets-unstable/gtk-osx-gstreamer.modules b/modulesets-unstable/gtk-osx-gstreamer.modules
index 78b3f977..0483dc4c 100644
--- a/modulesets-unstable/gtk-osx-gstreamer.modules
+++ b/modulesets-unstable/gtk-osx-gstreamer.modules
@@ -6,69 +6,79 @@
               href="git://gitlab.freedesktop.org/gstreamer/"/>
   <repository type="tarball" name="sourceforge"
               href="http://iweb.dl.sf.net/project/"/>
-  <repository type="tarball" name="liboil"
-              href="http://liboil.freedesktop.org/download/"/>
+  <repository type="tarball" name="ffmpeg"
+              href="https://ffmpeg.org/releases/"/>
+  <repository type="tarball" name="nasm"
+              href="https://www.nasm.us/pub/nasm/releasebuilds/"/>
 
   <!-- The GStreamer project maintains its own moduleset at
        git://anongit.freedesktop.org/gstreamer/jhbuild/. The modules
        are unversioned and haven't been tested for gtk-osx
        compatibility, but there are more of them. -->
 
-  <autotools id="liborc">
+  <meson id="liborc" mesonargs="-Dgtk_doc=disabled -Dbenchmarks=disabled -Dexamples=disabled 
-Dtests=disabled">
     <branch repo="gstreamer" module="orc"/>
-  </autotools>
+  </meson>
 
   <autotools id="faad2" autogen-sh="autoreconf"
              autogenargs="-without-bmp --without-xmms --without-drm --without-mpeg4ip">
-    <branch repo="sourceforge" version="2.7"
-            module="faac/faad2-src/faad2-2.7/faad2-2.7.tar.bz2">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/faad2-2.7-ac-config-headers.patch"; strip="1"/>
+    <branch repo="sourceforge" version="2.8.6"
+            module="faac/faad2-src/faad2-2.8.0/faad2-2.8.6.tar.gz"
+            hash="sha256:654977adbf62eb81f4fca00152aca58ce3b6dd157181b9edd7bed687a7c73f21">
     </branch>
   </autotools>
 
-  <autotools id="gstreamer" autogenargs="--disable-tests"
-             supports-non-srcdir-builds="no"
-    makeargs="ERROR_CFLAGS=" >
+  <autotools id="nasm" autogen-sh="configure">
+    <branch repo="nasm" version="2.15.05"
+            module="2.15.05/nasm-2.15.05.tar.xz"
+            hash="sha256:3caf6729c1073bf96629b57cee31eeb54f4f8129b01902c73428836550b30a3f"/>
+  </autotools>
+
+  <autotools id="ffmpeg" autogen-sh="configure"
+             autogenargs="--enable-gpl --enable-version3 --enable-shared --disable-static 
--disable-runtime-cpudetect --disable-programs --disable-ffplay --disable-ffprobe --disable-doc"
+             autogen-template="%(srcdir)s/%(autogen-sh)s --prefix=%(prefix)s %(autogenargs)s"
+>
+    <branch repo="ffmpeg" version="4.3.2"
+            module="ffmpeg-4.3.2.tar.xz"
+            hash="sha256:46e4e64f1dd0233cbc0934b9f1c0da676008cad34725113fb7f802cfa84ccddb"/>
+    <dependencies>
+      <dep package="nasm"/>
+    </dependencies>
+  </autotools>
+
+  <meson id="gstreamer" >
     <branch/>
     <after>
       <dep package="glib"/>
       <dep package="libxml2"/>
     </after>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-base" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-x --disable-xvideo"
-             makeargs="ERROR_CFLAGS=" >
+  <meson id="gst-plugins-base" mesonargs="-Dexamples=disabled -Ddoc=disabled">
     <branch />
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="liborc"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-good" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-x --disable-xvideo --disable-osx-video"
-             makeargs="ERROR_CFLAGS=" >
+  <meson id="gst-plugins-good">
     <branch />
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-ugly" autogenargs="--disable-tests"
-             supports-non-srcdir-builds="no"
-    makeargs="ERROR_CFLAGS=" >
+  <meson id="gst-plugins-ugly">
     <branch/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-bad" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-x --disable-xvid"
-    makeargs="ERROR_CFLAGS=" >
+  <meson id="gst-plugins-bad">
     <branch/>
     <dependencies>
       <dep package="gstreamer"/>
@@ -76,18 +86,15 @@
       <dep package="faad2"/>
       <dep package='openssl'/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <!-- disable-yasm: gst-libav's version of libav requires yasm 0.8.0 or nasm
-  2.0.3; OSX 10.9 has nasm 0.98.40 -->
-  <autotools id="gst-libav" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-mmx --with-libav-extra-configure='--disable-yasm'">
+  <meson id="gst-libav">
     <branch module="gst-libav"/>
     <dependencies>
       <dep package="gstreamer-1.0"/>
       <dep package="gst-plugins-base-1.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
   <metamodule id="meta-gstreamer">
     <dependencies>
diff --git a/modulesets-unstable/gtk-osx-gtkmm.modules b/modulesets-unstable/gtk-osx-gtkmm.modules
index 85d56c65..7bcfffdf 100644
--- a/modulesets-unstable/gtk-osx-gtkmm.modules
+++ b/modulesets-unstable/gtk-osx-gtkmm.modules
@@ -4,73 +4,70 @@
 <moduleset>
   <repository type="git" name="git.gnome.org" default="yes" 
               href="https://gitlab.gnome.org/GNOME"/>
-  <repository type="svn" name="doxygen" 
-              href="http://doxygen.svn.sourceforge.net/svnroot/"/>
   <repository type="git" name="cairographics" 
-              href="git://anongit.freedesktop.org/git/"/>
-
-  <metamodule id="meta-gtk-osx-gtkmm2">
-    <dependencies>
-      <dep package="gtkmm2"/>
-    </dependencies>
-  </metamodule>
+              href="git://gitlab.freedesktop.org/cairo/"/>
+  <repository type="git" name="github"
+              href="git://github.com"/>
 
 <!-- mm-common is C++ glue code needed only to build from git. -->
-  <autotools id="mm-common">
+  <meson id="mm-common">
     <branch module="mm-common"/>
-  </autotools>
+  </meson>
 
-  <autotools id="cairomm3" >
+  <!-- Libsigc++ was rewritten to use C++17 variadic templates for version 3, and adopting that has created 
substantial API breaks for the whole "mm" stack. gtkmm2 and gtkmm3 use the older versions, gtkmm4 the new 
ones.
+       Note that C++17 is supported only on macOS-10.13 and later.
+  -->
+  <meson id="cairomm3" >
     <branch module="cairomm"  revision="cairomm-1-14"
             repo="cairographics" />
     <dependencies>
       <dep package="cairo"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="cairomm" >
+  <meson id="cairomm" >
     <branch module="cairomm"  
             repo="cairographics" />
     <dependencies>
       <dep package="cairo"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="glibmm3" >
-    <branch module="glibmm" revision="glibmm-2-50"/>
+  <meson id="glibmm3" >
+    <branch module="glibmm" revision="glibmm-2-60"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="libsigc++2"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="glibmm" >
+  <meson id="glibmm" >
     <branch />
     <dependencies>
       <dep package="glib"/>
       <dep package="libsigc++3"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="pangomm3" >
-     <branch module="pangomm" revision="pangomm-2-40"/>
+  <meson id="pangomm3" >
+     <branch module="pangomm" revision="pangomm-2-42"/>
     <dependencies>
       <dep package="glibmm3"/>
       <dep package="cairomm3"/>
       <dep package="pango"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="pangomm" >
+  <meson id="pangomm" >
      <branch />
     <dependencies>
       <dep package="glibmm"/>
       <dep package="cairomm"/>
       <dep package="pango"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="atkmm3">
+  <meson id="atkmm3">
     <branch module="atkmm" revision="atkmm-2-24"/>
     <dependencies>
       <dep package="glibmm3"/>
@@ -78,9 +75,9 @@
       <dep package="pangomm3"/>
       <dep package="atk"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="atkmm">
+  <meson id="atkmm">
     <branch/>
     <dependencies>
       <dep package="glibmm"/>
@@ -88,42 +85,32 @@
       <dep package="pangomm"/>
       <dep package="atk"/>
     </dependencies>
-  </autotools>
+  </meson>
   
 <!-- libsigc++ depends on doxygen for documentation, but doxygen
      doesn't build correctly under gtk-osx. It builds fine on its own,
      of course, and there are OSX binaries available on their
      website. If you want the docs, install it separately and renable
      documentation in your jhbuildrc-custom. -->
-  <autotools id="libsigc++2" autogen-args="--disable-documentation">
-     <branch module="libsigcplusplus" revision="libsigc++-2-10"/>
+  <meson id="libsigc++2" autogen-args="--disable-documentation">
+    <branch repo="github" module="libsigcplusplus/libsigcplusplus"
+            revision="libsigc++-2-10"/>
     <dependencies>
       <dep package="mm-common"/>
       <!-- dep package="doxygen"/ -->
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="libsigc++3" autogen-args="--disable-documentation">
-     <branch module="libsigcplusplus"/>
+  <meson id="libsigc++3">
+     <branch repo="github" module="libsigcplusplus/libsigcplusplus"/>
     <dependencies>
       <dep package="mm-common"/>
       <!-- dep package="doxygen"/ -->
     </dependencies>
-  </autotools>
-
-  <autotools id="gtkmm2" >
-    <branch revision="gtkmm-2-24"/>
-    <dependencies>
-      <dep package="glibmm3"/>
-      <dep package="cairomm3"/>
-      <dep package="pangomm3"/>
-      <dep package="atkmm"/>
-      <dep package="gtk+-2.0"/>
-    </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gtkmm3">
-    <branch module="gtkmm2" revision="gtkmm-3-22"/>
+  <meson id="gtkmm3">
+    <branch module="gtkmm" revision="gtkmm-3-24"/>
     <dependencies>
       <dep package="glibmm3"/>
       <dep package="cairomm3"/>
@@ -131,10 +118,10 @@
       <dep package="atkmm3"/>
       <dep package="gtk+-3.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gtkmm4" >
-    <branch module="gtkmm2"/>
+  <meson id="gtkmm4" >
+    <branch module="gtkmm"/>
     <dependencies>
       <dep package="glibmm"/>
       <dep package="cairomm"/>
@@ -142,6 +129,6 @@
       <dep package="atkmm"/>
       <dep package="gtk+-4.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
 </moduleset>
diff --git a/modulesets-unstable/gtk-osx-network.modules b/modulesets-unstable/gtk-osx-network.modules
index 311637d3..564324fc 100644
--- a/modulesets-unstable/gtk-osx-network.modules
+++ b/modulesets-unstable/gtk-osx-network.modules
@@ -8,10 +8,12 @@
               href="https://www.openssl.org/source/"/>
   <repository name="lysator" type="git"
               href="https://git.lysator.liu.se/"/>
-  <repository name="ftp.gnu.org" type="tarball" href="https://ftp.gnu.org/gnu/"/>
+  <repository name="ftp.gnu.org" type="tarball"
+              href="https://ftp.gnu.org/gnu/"/>
   <repository name="sourceforge" type="tarball"
               href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type='git' name='git.gnupg.org' href="git://git.gnupg.org/" />  
+  <repository name='gnupg.org' type='tarball' href="https://gnupg.org/ftp/"; />
   <repository name="chromium" type="git"
               href="https://chromium.googlesource.com/"/>
   <repository name="webkit.org" type="tarball"
@@ -21,14 +23,6 @@
   <repository type="tarball" name="github-tarball" href="https://github.com/"/>
   <repository type="git" name="github" href="https://github.com/"/>
 
-  <!-- Builds last version of WebKitGTK that supported GTK 2.x -->
-  <metamodule id="meta-gtk-osx-webkit">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
-      <dep package="WebKit"/>
-    </dependencies>
-  </metamodule>
-
   <!-- Builds latest stable version of WebKitGTK for GTK 3.x -->
   <metamodule id="meta-gtk-osx-webkit-gtk3">
     <dependencies>
@@ -42,8 +36,8 @@
   <autotools id="openssl" autogen-sh="Configure" autogenargs="shared "
              autogen-template="%(srcdir)s/%(autogen-sh)s --prefix=%(prefix)s --openssldir=%(prefix)s/etc/ssl 
%(autogenargs)s"
              makeinstallargs="install_sw" supports-non-srcdir-builds="no">
-    <branch module="openssl-1.1.1g.tar.gz" version="1.1.1g" repo="openssl"
-            hash="sha256:ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46"/>
+    <branch module="openssl-1.1.1k.tar.gz" version="1.1.1k" repo="openssl"
+            hash="sha256:892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5"/>
   </autotools>
 
   <!-- Rudely demands TeX to build documentation -->
@@ -59,31 +53,48 @@
 
   <autotools id="libtasn1" supports-non-srcdir-builds="no"
              autogen-sh="configure">
-    <branch repo="ftp.gnu.org" version="4.15.0"
-            module="libtasn1/libtasn1-4.15.0.tar.gz"
-            hash="sha256:dd77509fe8f5304deafbca654dc7f0ea57f5841f41ba530cff9a5bf71382739e" />
+    <branch repo="ftp.gnu.org" version="4.16.0"
+            module="libtasn1/libtasn1-4.16.0.tar.gz"
+             hash="sha256:0e0fb0903839117cb6e3b56e68222771bebf22ad7fc2295a0ed7d576e8d4329d"/>
   </autotools>
 
   <autotools id="zlib" autogen-sh="configure" skip-autogen="never"
              supports-non-srcdir-builds="no">
     <branch repo="sourceforge" version="1.2.11"
-            module="libpng/zlib-1.2.11.tar.xz"/>
+            module="libpng/zlib-1.2.11.tar.xz"
+            hash="sha256:4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066"/>
+  </autotools>
+
+  <autotools id="p11-kit" autogen-sh="configure"
+             autogenargs="--without-trust-paths">
+    <branch repo="github" module="p11-glue/p11-kit"/>
+    <dependencies>
+      <dep package="libtasn1"/>
+    </dependencies>
   </autotools>
 
   <!-- Building from git does not work because they have checked in a bunch of
   files (build-aux/, po/Makefile.in.in) that they're not supposed to.-->
-  <!-- Building with p11-kit support breaks g-ir-scanner for some weird reason. -->
+
   <autotools id="gnutls" autogen-sh="autoreconf"
-             autogenargs="--disable-gtk-doc-html --without-p11-kit">
-    <branch repo="git.gnupg.org"/>
+             autogenargs="--disable-gtk-doc-html --with-included-unistring">
+    <branch repo="gnupg.org" version="3.7.1"
+            module="gcrypt/gnutls/v3.7/gnutls-3.7.1.tar.xz"
+            hash="sha256:3777d7963eca5e06eb315686163b7b3f5045e2baac5e54e038ace9835e5cac6f">
+    </branch>
     <dependencies>
       <dep package="libunistring"/>
       <dep package="libnettle"/>
-      <dep package="libtasn1"/>
+      <dep package="libtasn1" />
       <dep package="zlib"/>
     </dependencies>
   </autotools>
 
+  <autotools id="libgpg-error" autogen-sh="autoreconf"
+             autogenargs="--disable-doc">
+    <branch repo="git.gnupg.org" module="libgpg-error"/>
+  </autotools>
+
   <autotools id="libgcrypt" autogen-sh="autoreconf"
              autogenargs="--disable-asm --disable-doc">
     <branch repo="git.gnupg.org" module="libgcrypt"/>
@@ -92,6 +103,41 @@
     </dependencies>
   </autotools>
 
+  <autotools id="gpg">
+    <branch repo="git.gnupg.org" module="gnupg"/>
+    <dependencies>
+      <dep package="libgpg-error"/>
+      <dep package="libgcrypt"/>
+    </dependencies>
+  </autotools>
+
+  <meson id="libsecret" mesonargs="-Dvapi=disabled -Dgtk_doc=disabled">
+    <branch module="libsecret" />
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="libgcrypt"/>
+    </dependencies>
+  </meson>
+
+  <meson id="gcr">
+    <branch module="gcr" />
+    <dependencies>
+      <dep package="p11-kit"/>
+      <dep package="gpg"/>
+      <dep package="libsecret"/>
+      <dep package="glib"/>
+    </dependencies>
+  </meson>
+  
+  <autotools id="gnome-keyring"
+             autogenargs="--disable-pam --without-root-certs">
+    <branch module="gnome-keyring"/>
+    <dependencies>
+      <dep package="libgcrypt"/>
+      <dep package="gcr"/>
+    </dependencies>
+  </autotools>
+
   <meson id="glib-networking" mesonargs="-Dopenssl=enabled">
     <branch/>
     <dependencies>
@@ -100,9 +146,7 @@
   </meson>
 
   <autotools id="libpsl" autogen-sh='configure'>
-    <branch repo="github-tarball" version="0.21.0"
-            hash="sha256:41bd1c75a375b85c337b59783f5deb93dbb443fb0a52d257f403df7bd653ee12"
-            module="rockdaboot/libpsl/releases/download/libpsl-0.21.0/libpsl-0.21.0.tar.gz"/>
+    <branch repo="github" module="rockdaboot/libpsl"/>
   </autotools>
 
   <meson id="libsoup" mesonargs="-Dvapi=disabled">
@@ -117,74 +161,11 @@
     </dependencies>
   </meson>
 
-  <autotools id="libwebp" autogen-sh="autoreconf">
+  <autotools id="libwebp" autogen-sh="autoreconf"
+             autogenargs="--enable-libwebpmux --enable-libwebpdecoder">
     <branch repo="chromium" module="webm/libwebp"/>
   </autotools>
 
-  <autotools id="icu55" autogen-sh="source/configure"
-             autogenargs="--enable-rpath"
-             makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'>
-    <branch repo="github-tarball" version="55.2" checkoutdir="icu"
-            module="unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz"
-            hash="sha256:eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759"/>
-  </autotools>
-
-  <!-- This is WebKitGTK 2.4.x, the last version that had the WebKit1 API.
-    disable-webkit2: Requires both GTK2 and 3. Currently not supported.
-    disable-credential-storage: Requires libsecret. No module for this yet.
-    disable-geolocation: Requires geoclue 1 or 2. No module for this yet.
-    disable-video, disable-web-audio: Requires gstreamer. If you want video and
-      audio, add this to your .jhbuildrc:
-      append_autogenargs('WebKit', '&#45;-enable-video')
-      append_autogenargs('WebKit', '&#45;-enable-web-audio')
-    -j1: Workaround for https://bugs.webkit.org/show_bug.cgi?id=140171
-
-   It has some issues with ICU 58 so we keep it on ICU55. Note that
-   you can't install both, so if you need to build this webkit add icu
-   to your skip-list.
-  -->
-  <autotools id="webkit" autogen-sh="autoreconf"
-             autogenargs="--enable-quartz-target --with-gtk=2.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-std=gnu++11'">
-    <branch repo="webkit.org" module="webkitgtk-2.4.9.tar.xz" version="2.4.9">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-140167-disable-netscape-api.patch"; 
strip="1"/>
-      <!-- This patch can be commented out for XCode >= 6.3, but does no harm if
-      it's left in -->
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-133293-cfi-clang-failure.patch"; 
strip="1"/>
-      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit-2.4.11-fixups.patch"; 
strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package="libwebp"/>
-      <dep package="enchant"/>
-      <dep package="icu55"/>
-      <dep package="libsoup"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-gtk"/>
-      <dep package="meta-gstreamer-1.0"/>
-    </after>
-  </autotools>
-
-  <!-- This is WebKitGTK 2.4.x as above, but for gtk3. -->
-  <autotools id="webkit1gtk3" autogen-sh="autoreconf"
-             autogenargs="--enable-quartz-target --with-gtk=3.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-std=gnu++11'">
-    <branch repo="webkit.org" module="webkitgtk-2.4.9.tar.xz" version="2.4.9">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-140167-disable-netscape-api.patch"; 
strip="1"/>
-      <!-- This patch can be commented out for XCode >= 6.3, but does no harm if
-      it's left in -->
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-133293-cfi-clang-failure.patch"; 
strip="1"/>
-      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit-2.4.11-fixups.patch"; 
strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package="libwebp"/>
-      <dep package="enchant"/>
-      <dep package="icu"/>
-      <dep package="libsoup"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="meta-gstreamer-1.0"/>
-    </after>
-  </autotools>
 
   <!-- This is the stable release of WebKitGTK, for GTK 3.x. Use it if you need
       the WebKit2 API.
@@ -205,12 +186,11 @@
     USE_WOFF2: Requires Woff2. No module for this
     USE_WPE_RENDERER: For embedded systems, not Macs.  -->
   <cmake id="webkit2gtk3"
-         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_MINIBROWSER=ON 
-DENABLE_INTROSPECTION=OFF  -DUSE_SYSTEMD=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF 
-DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF -DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF 
-DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF -DUSE_WPE_RENDERER=OFF 
-DENABLE_GRAPHICS_CONTEXT_GL=OFF -DCMAKE_CXX_FLAGS="-stdlib=libc++" -DCMAKE_MACOSX_RPATH=OFF'>
-    <branch repo="webkit.org" module="webkitgtk-2.30.3.tar.xz" version="2.30.3">
-      <patch 
file="file:///Users/john/Development/GTK-OSX/gtk-osx-build/patches/WebKit2Gtk3-2.30.0-cumulative.patch" 
strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Force-FindICU-instead-of-inserting-heade.patch";
 strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Extend-UNIX_DOMAIN_SOCKETS-precedence-over-Mac-and-Win.patch";
 strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Disable-AUDIT_TOKEN-for-Gtk-builds.patch";
 strip="1"/>
+         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_MINIBROWSER=ON 
-DENABLE_INTROSPECTION=OFF  -DUSE_SYSTEMD=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF 
-DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF -DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF 
-DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF -DUSE_WPE_RENDERER=OFF 
-DENABLE_GRAPHICS_CONTEXT_GL=OFF -DENABLE_GAMEPAD=OFF -DUSE_APPLE_ICU=NO -DCMAKE_CXX_FLAGS="-stdlib=libc++" 
-DCMAKE_MACOSX_RPATH=OFF'>
+    <branch repo="webkit.org" module="webkitgtk-2.32.0.tar.xz" version="2.32.0"
+            hash="sha256:9d7df4dae9ada2394257565acc2a68ace9308c4c61c3fcc00111dc1f11076bf0">
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.32.0-cumulative.patch"; 
strip="1"/>
+     <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Disable-AUDIT_TOKEN-for-Gtk-builds.patch";
 strip="1"/>
     </branch>
     <dependencies>
       <dep package="libwebp"/>
@@ -221,7 +201,6 @@
     </dependencies>
     <after>
       <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="meta-gtk-osx-gtk3.14"/>
       <dep package="meta-gstreamer"/>
     </after>
   </cmake>
@@ -231,7 +210,7 @@
        then start playing whack-a-mole until it builds and works.
   -->
   <cmake id="webkit2gtk3-git"
-         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_INTROSPECTION=OFF  
-DENABLE_OPENGL=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF -DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF 
-DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF -DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF 
-DUSE_WPE_RENDERER=OFF -DENABLE_GRAPHICS_CONTEXT_GL=OFF -DCMAKE_CXX_FLAGS="-stdlib=libc++" 
-DCMAKE_MACOSX_RPATH=OFF'>
+         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_MINIBROWSER=ON 
-DENABLE_INTROSPECTION=ON  -DUSE_SYSTEMD=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF 
-DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF -DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF 
-DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF -DUSE_WPE_RENDERER=OFF 
-DENABLE_GRAPHICS_CONTEXT_GL=OFF -DENABLE_GAMEPAD=OFF -DUSE_APPLE_ICU=NO -DCMAKE_CXX_FLAGS="-stdlib=libc++" 
-DCMAKE_MACOSX_RPATH=OFF'>
     <branch repo="webkit-git" module= "WebKit.git" />
     <dependencies>
       <dep package="libwebp"/>
diff --git a/modulesets-unstable/gtk-osx-python.modules b/modulesets-unstable/gtk-osx-python.modules
index 10694fe1..71b37d8a 100644
--- a/modulesets-unstable/gtk-osx-python.modules
+++ b/modulesets-unstable/gtk-osx-python.modules
@@ -12,25 +12,6 @@
   <repository type="tarball" name="pymodules"
              href="http://pypi.python.org/packages/"/>
 
-  <metamodule id="meta-gtk-osx-python2-gtk2">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
-      <dep package="pycairo"/>
-      <dep package="pygobject"/>
-      <dep package="pygtk"/>
-      <dep package="gtk-mac-integration-python"/>
-   </dependencies>
-  </metamodule>
-
-  <metamodule id="meta-gtk-osx-python-gtk3">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="pycairo"/>
-      <dep package="pygobject3"/>
-      <dep package="gtk-mac-integration-python"/>
-    </dependencies>
-  </metamodule>
-
   <metamodule id="meta-gtk-osx-python3-gtk3">
     <dependencies>
       <dep package="meta-gtk-osx-gtk3"/>
@@ -40,24 +21,9 @@
     </dependencies>
   </metamodule>
 
-  <autotools id="python" autogenargs="--enable-shared" supports-non-srcdir-builds="no"
-             autogen-sh="autoreconf">
-    <branch repo="python"
-            module="2.7.17/Python-2.7.17.tgz" version="2.7.17"
-            hash="sha256:f22059d09cdf9625e0a7284d24a13062044f5bf59d93a7f3382190dfa94cecde">
-        <!-- related to https://bugs.python.org/issue11445 -->
-        <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/python-ldflags.patch"; 
strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package='readline'/>
-      <dep package="openssl" /> <!-- For hashlib -->
-    </dependencies>
-  </autotools>
-
   <autotools id="python3" autogenargs="--enable-shared" autogen-sh="autoreconf">
-    <branch repo="python" module="3.8.5/Python-3.8.5.tar.xz" version="3.8.5"
-            hash="md5:35b5a3d0254c1c59be9736373d429db7"
-            />
+    <branch repo="python" module="3.9.2/Python-3.9.2.tar.xz" version="3.9.2"
+            hash="sha256:3c2034c54f811448f516668dce09d24008a0716c3a794dd8639b5388cbde247d"/>
     <dependencies>
       <dep package='readline'/>
       <dep package="openssl" /> <!-- For hashlib -->
@@ -77,15 +43,6 @@
     </after>
  </meson>
 
-  <autotools id="pygobject" autogenargs="--disable-introspection"
-            supports-non-srcdir-builds="no">
-    <branch revision="pygobject-2-28"/>
-    <dependencies>
-      <dep package="python"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-   </dependencies>
-  </autotools>
-
   <meson id="pygobject3" >
     <branch module="pygobject" checkoutdir="pygobject3"/>
     <dependencies>
@@ -94,38 +51,14 @@
    </dependencies>
    <after>
      <dep package="python3"/>
-      <dep package="python"/>
    </after>
   </meson>
 
-  <autotools id="pygtk" autogenargs="--disable-introspection">
-    <branch />
-    <dependencies>
-      <dep package="pygobject"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-      <dep package="pycairo"/>
-    </dependencies>
-    <after>
-      <dep package="libglade"/>
-    </after>
-  </autotools>
-
-  <autotools id="pygoocanvas">
-    <branch/>
-    <dependencies>
-      <dep package="goocanvas"/>
-    </dependencies>
-  </autotools>
-
   <autotools id="gtk-mac-integration-python">
     <branch module="gtk-mac-integration"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="gtk+-2.0"/>
-      <dep package="gtk+-3.0"/>
-      <dep package="pygobject"/>
+    <dependencies>
       <dep package="pygobject3"/>
-    </after>
+    </dependencies>
   </autotools>
 
 </moduleset>
diff --git a/modulesets-unstable/gtk-osx-random.modules b/modulesets-unstable/gtk-osx-random.modules
index 028afc17..3635b4fe 100644
--- a/modulesets-unstable/gtk-osx-random.modules
+++ b/modulesets-unstable/gtk-osx-random.modules
@@ -7,60 +7,44 @@
   <repository type="git" name="github" href="git://github.com/"/>
   <repository type="tarball" name="ftp.gnome.org" 
               href="http://download.gnome.org/sources/"/>
-  <repository type="tarball" name="ftp.gnu.org"
-             href="https://ftp.gnu.org/gnu/"/>
-  <repository type="git" name="git.freedesktop.org"
-              href="git://anongit.freedesktop.org/"/>
-  <repository type="tarball" name="dbus.freedesktop.org"
-             href="http://dbus.freedesktop.org/releases/"/>
-  <repository type="cvs" name="mime.freedesktop.org"
-              cvsroot=":pserver:anoncvs anoncvs freedesktop org:/cvs/mime"
-              password=""/>
+  <repository type="tarball" name="ftp.gnu.org" href="https://ftp.gnu.org/gnu/"/>
+  <repository type="tarball" name="shared-mime-info"
+              href="https://gitlab.freedesktop.org/xdg/shared-mime-info/uploads/"/>
+  <repository type="tarball" name="iso-codes"
+              href="https://salsa.debian.org/iso-codes-team/iso-codes/uploads/"/>
   <repository type="tarball" name="sourceforge"
               href="http://downloads.sourceforge.net/sourceforge/"/>
-  <repository type="tarball" name="sqlite" href="http://www.sqlite.org/"/>
-  <repository type="cvs" name="gtkspell"
-             cvsroot=":pserver:anonymous gtkspell cvs sourceforge net:/cvsroot/gtkspell"
-             password=""/>
-  <repository type="git" name="savannah" href="git://git.sv.gnu.org/"/>
-  <repository type="tarball" name="boehm"
-             href="http://www.hboem.info/"/>
-  <repository type="svn" name="exiv2.org"
-             href="svn://dev.exiv2.org/"/>
+  <repository type="tarball" name="graphviz"
+              href="https://gitlab.com/graphviz/graphviz/-/archive/"/>
 
-  <metamodule id="meta-gtk-osx-random">
+  <repository type="tarball" name="sqlite" href="http://www.sqlite.org/"/>
+  <repository type="tarball" name="frodo"
+              href="http://frodo.looijaard.name/system/files/software/"/>
+  <repository type="tarball" name="paguire" href="https://releases.pagure.org/"/> 
+  <repository type="tarball" name="pcre" href="https://ftp.pcre.org/pub/"/>
+
+  <autotools id="graphviz" supports-non-srcdir-builds="no"
+             autogen-template="pushd %(srcdir)s &amp;&amp; ./autogen.sh &amp;&amp; popd &amp;&amp; 
%(srcdir)s/configure --prefix %(prefix)s %(autogenargs)s"
+             autogenargs="--disable-sharp --disable-guile --disable-java --disable-lua --disable-ocaml 
--disable-perl --disable-php --disable-r --disable-ruby --disable-tcl --with-pangocairo">
+    <branch module="2.47.0/graphviz-2.47.0.tar.bz2" version="2.47.0"
+            repo="graphviz" 
+            hash="sha256:dade5b374ce483bf28f2e535baef02280ba8ab86fbe6e93252ab0de48396b714"/>
     <dependencies>
-      <dep package="poppler"/>
-      <dep package="gimp"/>
-      <dep package="devhelp"/>
-      <dep package="shared-mime-info"/>
-      <dep package="gossip"/>
-      <dep package="vala"/>
-      <dep package="glade3"/>
+      <dep package="pango"/>
+      <dep package="librsvg"/>
     </dependencies>
-  </metamodule>
-
-  <!-- Libglade's functions are now part of Gtk+ with different names and
-     Libglade itself is deprecated.-->
-  <autotools id="libglade">
-    <branch />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
   </autotools>
 
-  <!-- Vala-bootstrap is the current stable vala precompiled to C. -->
-  <!--<autotools id="vala" autogen-sh="configure">
-    <branch module="vala-bootstrap"/>
-  </autotools>-->
-  <!-- vala-bootstrap is stuck at 0.16, so use a tarball for the time being.-->
   <autotools id="vala" autogen-sh="configure">
-    <branch repo="ftp.gnome.org" version="0.36.1"
-            module="vala/0.36/vala-0.36.1.tar.xz"
-            hash="sha256:13f4a3f99d983bf76e8d9dd736021ecc95f53ec1f9582423aa4b4be87455aa07"/>
+    <branch repo="ftp.gnome.org" version="0.52.0"
+            module="vala/0.52/vala-0.52.0.tar.xz"
+            hash="sha256:1de26310db465aca525679d3b5a3c1d8db2e067c4cbc0e5ddd015cd938bac68b"/>
+    <dependencies>
+      <dep package="graphviz"/>
+    </dependencies>
     <after>
       <dep package="meta-gtk-osx-bootstrap"/>
+      <dep package="meta-gtk-osx-gtk3"/>
       <dep package="meta-gtk-osx-gtk2"/>
     </after>
   </autotools>
@@ -68,135 +52,100 @@
 <!-- Vala is written in vala, so you need vala to build it. If you
      want to work on vala itself or need the bleeding edge for some
      reason, then you need vala-git. Otherwise, stick with vala. -->
-  <autotools id="vala-git">
+  <meson id="vala-git">
     <branch/>
     <dependencies>
       <dep package="vala"/>
     </dependencies>
+  </meson>
+
+  <autotools id="expat" autogen-sh="configure">
+    <branch module="expat/expat-2.3.0.tar.bz2" version="2.3.0"
+            repo="sourceforge"
+            hash="sha256:f122a20eada303f904d5e0513326c5b821248f2d4d2afbf5c6f1339e511c0586"/>
   </autotools>
 
-  <autotools id="devhelp">
-    <branch />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
+  <!-- The patches to amtk and devhelp won't be applied, jhbuild doesn't work like that on git modules, so 
you'll have to stop and apply them by hand.
+  -->
+  <meson id="amtk" >
+    <branch>
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/amtk-build-on-macOS.patch"; 
strip="1"/>
+    </branch>
+    <dependencies>
+      <dep package="gtk+-3.0"/>
+    </dependencies>
+  </meson>
+
+  <meson id="devhelp-gtk3">
+    <branch>
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/devhelp-3-build-on-macOS.patch"; 
strip="1"/>
+    </branch>      
     <dependencies>
       <dep package="webkit2gtk3"/>
+      <dep package="amtk"/>
       <dep package="gsettings-desktop-schemas"/>
       <!-- Without shared-mime-info, HTML documents display as plain text -->
       <dep package="shared-mime-info"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-<!-- Glade 3.8 is the last stable series for Gtk+-2 -->
-  <autotools id="glade3" autogenargs="--disable-scrollkeeper">
-    <branch module="glade" tag="glade-3-8"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
-  <autotools id="glade" autogenargs="--disable-scrollkeeper">
+  <meson id="glade" mesonargs="-Dmac_bundle=true -Dman=false" >
     <branch />
     <dependencies>
       <dep package="itstool"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
       <dep package="meta-gtk-osx-gtk3"/>
-    </after>
-  </autotools>
-
-  <autotools id="gtksourceview">
-    <branch />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
-  <!-- These folks don't make their repository available.-->
-  <autotools id="lcms" autogen-sh="configure">
-    <branch module="lcms/lcms-1.18a.tar.gz" version="1.18" repo="sourceforge"
-            checkoutdir="lcms-1.18"/>
-  </autotools>
-
-  <autotools id="shared-mime-info"
-             autogenargs="--disable-default-make-check  ac_cv_func_fdatasync=no"
-             supports-non-srcdir-builds="no" >
-    <branch module="xdg/shared-mime-info" 
-            repo="git.freedesktop.org"/>
-    <dependencies>
-      <dep package="glib"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gsettings-desktop-schemas" autogenargs="--enable-introspection=yes">
-    <branch/>
+  <meson id="gtksourceview3">
+    <branch revision="gtksourceview-4-8" />
     <dependencies>
-      <dep package="gobject-introspection"/>
+      <dep package="gtk+-3.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gimp" 
-             autogenargs="--disable-python --disable-print --without-x
-                          --without-dbus --without-gnomevfs --without-wmf"
-             makeargs='LDFLAGS="-framework Carbon"'>
+   <autotools id="libpcre2" autogen-sh="configure">
+    <branch repo="pcre" version="20.36"
+            module="pcre/pcre2-10.36.tar.bz2"
+            hash="sha256:a9ef39278113542968c7c73a31cfcb81aca1faa64690f400b907e8ab6b4a665c"/>
+  </autotools>
+  
+ <meson id="gtksourceview4">
     <branch />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
     <dependencies>
-      <dep package="lcms"/>
-      <dep package="fontconfig"/>
-      <dep package="gegl"/>
-      <dep package="gexiv2"/>
+      <dep package="gtk-4"/>
+      <dep package="libpcre2"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="json-glib">
+<!-- shared-mime-info goes here after we figure out what to do with it. -->
+  <meson id="gsettings-desktop-schemas">
     <branch/>
-  </autotools>
- 
-  <autotools id="babl">
-    <branch />
-  </autotools>
-
-  <autotools id="gegl" autogen-args="--disable-docs">
-    <branch />
     <dependencies>
-      <dep package="babl"/>
-      <dep package="json-glib"/>
+      <dep package="gobject-introspection"/>
     </dependencies>
-  </autotools>
-
- <autotools id="poppler"
-           autogenargs="--disable-qt --disable-qt4 --without-x --disable-gtk-test --enable-xpdf-headers">
-    <branch repo="git.freedesktop.org" module="poppler/poppler" />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
+  </meson>
 
   <!-- SQLite3 is provided by MacOSX in /usr/lib/libsqlite.3.dylib -->
   <autotools id="sqlite" autogenargs="--disable-tcl --enable-threadsafe" >
     <!-- Another package with a non-standard repository structure. Tarballs
     are easier.-->
-    <branch module="2017/sqlite-autoconf-3180000.tar.gz" version='3.18.0'
-            repo="sqlite"/>
+    <branch module="2021/sqlite-autoconf-3350400.tar.gz" version='3.35.4'
+            repo="sqlite"
+            hash="sha256:7771525dff0185bfe9638ccce23faa0e1451757ddbda5a6c853bb80b923a512d"/>
   </autotools>
 
-  <autotools id="goocanvas">
-    <branch/>
+  <autotools id="goocanvas2">
+    <branch revision="goocanvas-2.0" module="goocanvas"/>
     <dependencies>
-      <dep package="gtk+-2.0"/>
+      <dep package="gtk+-3.0"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="goocanvas3">
+    <branch module="goocanvas"/>
+    <dependencies>
+      <dep package="gtk-4"/>
     </dependencies>
   </autotools>
 
@@ -207,27 +156,21 @@
   <autotools id="enchant"
              autogen-sh="bootstrap" autogenargs="--enable-relocatable"
              autogen-template="pushd %(srcdir)s &amp;&amp; ./%(autogen-sh)s &amp;&amp; popd &amp;&amp; 
%(srcdir)s/configure --prefix=%(prefix)s %(autogenargs)s">
-    <!-- No version. Doesn't seem to have been touched in a while. -->
     <branch repo="github" module="AbiWord/enchant"/>
     <dependencies>
       <dep package="glib"/>
     </dependencies>
   </autotools>
 
-  <!-- GtkSpell has switched to Mercurial for VCS, so we'll use the
-       tarballs to avoid the dependency. -->
-  <autotools id="gtkspell" autogen-sh="configure">
-    <branch module="gtkspell/gtkspell-2.0.16.tar.gz" repo="sourceforge"
-           version="2.0.16"/>
-    <dependencies>
-      <dep package="enchant"/>
-    </dependencies>
-  </autotools>
-
+  <!-- GtkSpell has switched to Mercurial for VCS and besides seems to
+       no longer be maintained, so we'll use the tarballs to avoid the
+       dependency. -->
   <autotools id="gtkspell3" autogen-sh="configure">
-    <branch module="gtkspell/gtkspell3-3.0.9.tar.xz" repo="sourceforge"
-           version="3.0.9">
+    <branch module="gtkspell/gtkspell3-3.0.10.tar.xz" repo="sourceforge"
+            version="3.0.10"
+            hash="sha256:b040f63836b347eb344f5542443dc254621805072f7141d49c067ecb5a375732">
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0001-Enable-use-of-XDG_DATA_DIRS-for-locating-iso-code-fi.patch";
 strip="1"/>
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gtkspell-3-install.sh-wrong-sh-path.patch"; 
strip="1"/>
     </branch>
     <dependencies>
       <dep package="enchant"/>
@@ -242,40 +185,10 @@
   <!-- gmp uses Mercurial, so we stick with the tarball to avoid
        having to install yet another vcs tool. -->
   <autotools id="gmp">
-    <branch repo="ftp.gnu.org" module="gmp/gmp-6.1.2.tar.bz2" version="6.1.2">
-    </branch>
-  </autotools>
-
-<!-- libunistring's autogen.sh is borked so use the tarball. -->
-  <autotools id="libunistring" autogen-sh="configure">
-    <branch repo="ftp.gnu.org" module="libunistring/libunistring-0.9.7.tar.gz"
-           version="0.9.7">
+    <branch repo="ftp.gnu.org" module="gmp/gmp-6.2.1.tar.bz2" version="6.2.1"
+            hash="sha256:eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c">
     </branch>
   </autotools>
 
-  <autotools id="libatomic-ops" autogen-sh="autoreconf">
-    <branch repo="github" module="ivmai/libatomic_ops" />
-  </autotools>
-
-  <autotools id="bdw-gc" autogen-template="pushd %(srcdir)s &amp;&amp; ./autogen.sh &amp;&amp; automake -ac 
&amp;&amp; popd &amp;&amp; %(srcdir)s/configure --prefix %(prefix)s  %(autogenargs)s">
-    <branch repo="github" module="ivmai/bdwgc" />
-  </autotools>
-
-  <autotools id="guile" autogenargs="--disable-error-on-warning">
-    <branch repo="savannah" module="guile.git" revision="branch_release-1-8"/>
-    <dependencies>
-      <dep package="gmp"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id="guile2" autogen-sh="configure">
-    <branch repo="savannah" module="guile.git" revision="stable-2.0"/>
-    <dependencies>
-      <dep package="libunistring"/>
-      <dep package="gmp"/>
-      <dep package="libffi"/>
-      <dep package="bdw-gc"/>
-    </dependencies>
-  </autotools>
 
 </moduleset>
diff --git a/modulesets-unstable/gtk-osx.modules b/modulesets-unstable/gtk-osx.modules
index 053491ed..337c3cd3 100644
--- a/modulesets-unstable/gtk-osx.modules
+++ b/modulesets-unstable/gtk-osx.modules
@@ -7,8 +7,6 @@
   <repository type="git" name="github" href="git://github.com/"/>
   <repository type="git" name="freedesktop"
               href="https://gitlab.freedesktop.org/"/>
-  <repository type="git" name="freedesktop-jralls"
-              href="https://gitlab.freedesktop.org/jralls/"/>
   <repository type="git" name="nongnu"
              href="git://git.sv.nongnu.org/"/>
   <repository type="system" name="system"/>
@@ -24,28 +22,21 @@
          make it easy to rebuild the whole core stack without redoing
          the bootstrap parts. They have a soft, "after", depencency.
 
-       The remaining modules are mostly for testing and might not work
-       all the time:
-
-       - gtk-osx-python.modules: self explaining.
-       - gtk-osx-gtkmm.modules: self explaining.
-       - gtk-osx-javascript.modules: GJS, associated tools, and the Mozilla JS
-         library it depends on.
-       - gtk-osx-gstreamer.modules: self explaining.
-       - gtk-osx-themes.modules: self explaining.
-       - gtk-osx-network.modules: The network/crypto stack and various
-         configurations of WebKit.
-
+       - gtk-osx-python.modules: Python bindings for Gtk.
+       - gtk-osx-gtkmm.modules: C++ wrappers for Gtk.
+       - gtk-osx-javascript.modules: GJS and its Mozilla JS (aka
+         spidermonkey) dependency.
+       - gtk-osx-gstreamer.modules: GStreamer library and modules.
+       - gtk-osx-network.modules: The network/crypto stack and WebKit.
        - gtk-osx-random.modules: "random stuff", has apps for testing GTK+.
   -->
 
   <include href="gtk-osx-bootstrap.modules"/>
-  <include href="gtk-osx-javascript.modules"/>
-  <include href="gtk-osx-python.modules"/>
   <include href="gtk-osx-gstreamer.modules"/>
   <include href="gtk-osx-gtkmm.modules"/>
+  <include href="gtk-osx-javascript.modules"/>
   <include href="gtk-osx-network.modules"/>
-  <include href="gtk-osx-themes.modules"/>
+  <include href="gtk-osx-python.modules"/>
   <include href="gtk-osx-random.modules"/>
 
   <!-- Dummy meson module to shut up a jhbuild warning. -->
@@ -53,16 +44,6 @@
     <branch repo="system"/>
   </systemmodule>
   
-  <metamodule id="meta-gtk-osx-gtk2">
-    <dependencies>
-      <dep package="gtk+-2.0"/>
-      <dep package="gtk-mac-integration"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-    </after>
-  </metamodule>
-
   <metamodule id="meta-gtk-osx-gtk3">
     <dependencies>
       <dep package="gtk+-3.0"/>
@@ -137,7 +118,7 @@
        they are both built into cairo. -->
   <autotools id="cairo"
              autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
-    <branch repo="freedesktop-jralls" module="cairo" />
+    <branch repo="freedesktop" module="cairo" />
     <dependencies>
       <dep package="pixman"/>
       <dep package="meta-gtk-osx-bootstrap"/>
@@ -229,22 +210,6 @@
     </dependencies>
   </meson>
  
-  <autotools id="gtk+-2.0"
-            autogenargs="--with-gdktarget=quartz --enable-introspection=no --enable-quartz-relocation 
--disable-visibility">
-    <branch module="gtk" revision="gtk-2-24" checkoutdir="gtk+-2.0"/>
-    <dependencies>
-      <dep package="glib"/>
-      <dep package="pango"/>
-      <dep package="atk"/>
-      <dep package="gdk-pixbuf"/>
-      <dep package="gobject-introspection"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-    </after>
-  </autotools>
-  
-
   <meson id="gtk+-3.0"
         mesonargs="-Dquartz-backend=true -Dx11-backend=false -Dmedia=none">
     <branch module="gtk" checkoutdir="gtk+-3.0" revision="gtk-3-24"/>
@@ -260,17 +225,30 @@
       <dep package="meta-gtk-osx-bootstrap"/>
     </after>
   </meson>
+  
+  <meson id="graphene" mesonargs="-Dtests=false -Dbenchmarks=false">
+    <branch repo="github" revision="1.10.4" module="ebassi/graphene"/>
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="gobject-introspection"/>
+    </dependencies>
+  </meson>
+
+  <autotools id="libsass" autogen-sh="autoreconf"
+             autogenargs="--disable-tests --disable-static">
+    <branch repo="github" revision="3.6.4" module="sass/libsass"/>
+  </autotools>
 
   <meson id="gtk+-4.0"
              mesonargs="-Dquartz-backend=true -Dx11-backend=false -Dmedia=none">
-    <branch module="gtk" checkoutdir="gtk+-4.0"/>
+    <branch module="gtk" checkoutdir="gtk-4.0"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="pango"/>
-      <dep package="gdk-pixbuf"/>
       <dep package="atk"/>
-      <dep package="gobject-introspection"/>
       <dep package="graphene"/>
+      <dep package="libsass"/>
+      <dep package="libepoxy"/>
     </dependencies>
     <after>
       <dep package="meta-gtk-osx-bootstrap"/>
@@ -280,7 +258,6 @@
   <autotools id="gtk-mac-integration" autogenargs="--disable-python">
     <branch/>
     <after>
-      <dep package="gtk+-2.0"/>
       <dep package="gtk+-3.0"/>
     </after>
   </autotools>
@@ -289,18 +266,15 @@
     <branch/>
   </autotools>
 
-  <!-- librsvg is converting to the Rust language. This requires
-       substantial infrastructure that's resistant to installing with
-       jhbuild, so we'll freeze at the 2.40 branch. -->
   <autotools id="librsvg" autogenargs="--disable-Bsymbolic">
-    <branch module="librsvg" tag="librsvg-2-40"/>
+    <branch module="librsvg"/>
     <dependencies>
       <dep package="libcroco"/>
       <dep package="freetype"/>
     </dependencies>
     <after>
-      <dep package="gtk+-2.0"/>
       <dep package="gtk+-3.0"/>
+      <dep package="gtk-4"/>
     </after>
   </autotools>
 
diff --git a/modulesets/gtk-osx-bootstrap.modules b/modulesets/gtk-osx-bootstrap.modules
index a013d708..97e472e8 100644
--- a/modulesets/gtk-osx-bootstrap.modules
+++ b/modulesets/gtk-osx-bootstrap.modules
@@ -3,51 +3,44 @@
 <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
 <moduleset>
 
-  <repository type="tarball" name="ftp.gnome.org" default="yes"
-             href="http://download.gnome.org/sources/"/>
+  <repository type="git" name="git.gnome.org" default="yes"
+              href="https://gitlab.gnome.org/GNOME"/>
   <repository type="tarball" name="ftp.gnu.org" href="https://ftp.gnu.org/gnu/"/>
   <repository type="tarball" name="sourceforge"
-             href="http://downloads.sourceforge.net/sourceforge/"/>
-  <repository type="git" name="nongnu"
-             href="git://git.sv.nongnu.org/"/>
+              href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type="tarball" name="jpeg"
-             href="http://www.ijg.org/files/"/>
+              href="http://www.ijg.org/files/"/>
   <repository type="tarball" name="libtiff"
              href="http://download.osgeo.org/"/>
-  <repository type="git" name="freedesktop"
-             href="git://anongit.freedesktop.org/"/>
   <repository type="tarball" name="icon-theme"
              href="http://icon-theme.freedesktop.org/releases/"/>
   <repository type="tarball" name="xmlsoft.org"
              href="ftp://xmlsoft.org/libxml2/"/>
-  <repository type="git" name="git.gnome.org"
-              href="https://gitlab.gnome.org/GNOME"/>
-  <repository type="git" name="github" href="https://github.com/"/>
+  <repository type="tarball" name="itstool" href="http://files.itstool.org/"/>
   <repository type="tarball" name="github-tarball" href="https://github.com/"/>
-  <repository type="tarball" name="ragel"
-              href="http://www.colm.net/files/ragel/"/>
-
-  <autotools id='readline' autogen-sh="configure">
-    <branch repo="ftp.gnu.org" module="readline/readline-7.0.tar.gz"
-           version="7.0">
-    </branch>
-  </autotools>
 
-<autotools id="libpng" autogenargs="--enable-shared" autogen-sh="configure">
-    <branch version="1.6.34" module="libpng/libpng-1.6.34.tar.xz"
+  <autotools id="libpng" autogenargs="--enable-shared" autogen-sh="configure">
+    <branch version="1.6.37" module="libpng/libpng-1.6.37.tar.xz"
+            hash="sha256:505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca"
             repo="sourceforge"/>
+    <dependencies>
+      <dep package="zlib"/>
+    </dependencies>
   </autotools>
 
   <autotools id="libjpeg" autogen-sh="configure">
-    <branch module="jpegsrc.v9c.tar.gz" version="9b"
-            repo="jpeg"
-            checkoutdir="jpeg-9c">
+    <branch module="jpegsrc.v9d.tar.gz" version="9d"
+            repo="jpeg" checkoutdir="jpeg-9d"
+            hash="sha256:99cb50e48a4556bc571dadd27931955ff458aae32f68c4d9c39d624693f69c32">
     </branch>
   </autotools>
 
   <autotools id="libtiff" autogen-sh="configure" autogenargs="--without-x">
-    <branch version="4.1.0" module="libtiff/tiff-4.1.0.tar.gz"
-           repo="libtiff"/>
+    <branch version="4.2.0" module="libtiff/tiff-4.2.0.tar.gz"
+            repo="libtiff"
+            hash="sha256:eb0484e568ead8fa23b513e9b0041df7e327f4ee2d22db5a533929dfc19633cb">
+       <patch file="https://raw.githubusercontent.com/totaam/gtk-osx-build/master/patches/tiff-nohtml.patch"; 
strip="1" />
+    </branch>
     <dependencies>
       <dep package="libjpeg"/>
     </dependencies>
@@ -61,69 +54,54 @@
 
   <autotools id="libxml2" autogen-sh="configure"
              autogenargs='--libdir="$JHBUILD_LIBDIR" --with-python'>
-    <branch version="2.9.8" module="libxml2-2.9.8.tar.gz"
-           repo="xmlsoft.org"/>
+    <branch version="2.9.10" module="libxml2-2.9.10.tar.gz"
+            repo="xmlsoft.org"
+            hash="sha256:aafee193ffb8fe0c82d4afef6ef91972cbaf5feea100edc2f262750611b4be1f">
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/libxml2.9.10-conditional-parentheses.patch"; 
strip="1"/>
+    </branch>
     <after>
-      <dep package="python"/>
+      <dep package="python2"/>
       <dep package="python3"/>
     </after>
   </autotools>
 
   <autotools id="libxslt" autogen-sh="configure">
-    <branch version="1.1.32" module="libxslt-1.1.32.tar.gz"
+    <branch version="1.1.34" module="libxslt-1.1.34.tar.gz"
+            hash="sha256:98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f"
            repo="xmlsoft.org"/>
     <dependencies>
       <dep package="libxml2"/>
     </dependencies>
   </autotools>
 
-  <autotools id="itstool">
-    <branch repo="github" module="itstool/itstool" tag="2.0.6"/>
-    <dependencies>
-      <dep package="libxml2"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id="yelp-xsl">
-    <branch repo="git.gnome.org" revision="gnome-3-20"/>
+  <autotools id="itstool" autogen-sh="configure">
+    <branch module="itstool/itstool-2.0.6.tar.bz2" version="2.0.6n"
+            repo="itstool"
+            hash="sha256:6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9">
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/itstool-config-python.patch"; 
strip="1"/>
+    </branch>
     <dependencies>
       <dep package="libxml2"/>
-      <dep package="libxslt"/>
-      <dep package="itstool"/>
     </dependencies>
   </autotools>
 
-  <!-- Yelp tools is releasing from the master branch. -->
-  <autotools id="yelp-tools">
-    <branch repo="git.gnome.org"/>
+  <meson id="gtk-doc" mesonargs="-Dyelp_manual=false -Dtests=false">
+    <branch revision="1.33.2"/>
     <dependencies>
       <dep package="libxml2"/>
       <dep package="libxslt"/>
       <dep package="itstool"/>
-      <dep package="yelp-xsl"/>
     </dependencies>
-  </autotools>
-
-  <autotools id="gtk-doc">
-    <branch repo="git.gnome.org" version="1.30" tag="GTK_DOC_1_30"/>
-    <dependencies>
-      <dep package="libxml2"/>
-      <dep package="itstool"/>
+    <after>
       <dep package="python3"/>
-    </dependencies>
-  </autotools>
+    </after>
+  </meson>
 
   <autotools id="icu" autogen-sh="source/configure" autogenargs="--enable-rpath"
              makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'>
-    <branch repo="github-tarball" version="66.1" checkoutdir="icu"
-            module="unicode-org/icu/releases/download/release-66-1/icu4c-66_1-src.tgz"
-            hash="sha256:52a3f2209ab95559c1cf0a14f24338001f389615bf00e2585ef3dbc43ecf0a2e"/>
-  </autotools>
-
-  <autotools id="hicolor-icon-theme" autogen-sh="configure"
-            supports-non-srcdir-builds="no">
-    <branch module="hicolor-icon-theme-0.15.tar.xz" repo="icon-theme"
-            version="0.15"/>
+    <branch repo="github-tarball" version="68.2" checkoutdir="icu"
+            module="unicode-org/icu/releases/download/release-68-2/icu4c-68_2-src.tgz"
+            hash="sha256:c79193dee3907a2199b8296a93b52c5cb74332c26f3d167269487680d479d625"/>
   </autotools>
 
   <metamodule id="meta-gtk-osx-bootstrap">
@@ -131,7 +109,6 @@
       <dep package="libpng"/>
       <dep package="libjpeg"/>
       <dep package="libtiff"/>
-      <dep package="hicolor-icon-theme"/>
       <dep package="gtk-doc"/>
     </dependencies>
   </metamodule>
diff --git a/modulesets/gtk-osx-gstreamer.modules b/modulesets/gtk-osx-gstreamer.modules
index d4de3487..82931787 100644
--- a/modulesets/gtk-osx-gstreamer.modules
+++ b/modulesets/gtk-osx-gstreamer.modules
@@ -6,85 +6,91 @@
               href="git://gitlab.freedesktop.org/gstreamer/"/>
   <repository type="tarball" name="sourceforge"
               href="http://iweb.dl.sf.net/project/"/>
-  <repository type="tarball" name="liboil"
-              href="http://liboil.freedesktop.org/download/"/>
+  <repository type="tarball" name="ffmpeg"
+              href="https://ffmpeg.org/releases/"/>
+  <repository type="tarball" name="nasm"
+              href="https://www.nasm.us/pub/nasm/releasebuilds/"/>
 
-  <autotools id="liborc">
-    <branch repo="gstreamer" module="orc" tag="orc-0.4.28"/>
-  </autotools>
+  <meson id="liborc" mesonargs="-Dgtk_doc=disabled -Dbenchmarks=disabled -Dexamples=disabled 
-Dtests=disabled">
+    <branch repo="gstreamer" module="orc" tag="orc-0.4.32"/>
+  </meson>
 
   <autotools id="faad2" autogen-sh="autoreconf"
              autogenargs="-without-bmp --without-xmms --without-drm --without-mpeg4ip">
-    <branch repo="sourceforge" version="2.7"
-            module="faac/faad2-src/faad2-2.7/faad2-2.7.tar.bz2">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/faad2-2.7-ac-config-headers.patch"; strip="1"/>
+    <branch repo="sourceforge" version="2.8.6"
+            module="faac/faad2-src/faad2-2.8.0/faad2-2.8.6.tar.gz"
+            hash="sha256:654977adbf62eb81f4fca00152aca58ce3b6dd157181b9edd7bed687a7c73f21">
     </branch>
   </autotools>
 
-  <autotools id="gstreamer" autogenargs="--disable-tests"
-             supports-non-srcdir-builds="no"
-            makeargs="ERROR_CFLAGS=" >
-    <branch>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gstreamer-fix-includes-in-gstdatetime.patch"; 
strip="1"/>
-    </branch>
+  <autotools id="nasm" autogen-sh="configure">
+    <branch repo="nasm" version="2.15.05"
+            module="2.15.05/nasm-2.15.05.tar.xz"
+            hash="sha256:3caf6729c1073bf96629b57cee31eeb54f4f8129b01902c73428836550b30a3f"/>
+  </autotools>
+
+  <autotools id="ffmpeg" autogen-sh="configure"
+             autogenargs="--enable-gpl --enable-version3 --enable-shared --disable-static 
--disable-runtime-cpudetect --disable-programs --disable-ffplay --disable-ffprobe --disable-doc"
+             autogen-template="%(srcdir)s/%(autogen-sh)s --prefix=%(prefix)s %(autogenargs)s"
+>
+    <branch repo="ffmpeg" version="4.3.2"
+            module="ffmpeg-4.3.2.tar.xz"
+            hash="sha256:46e4e64f1dd0233cbc0934b9f1c0da676008cad34725113fb7f802cfa84ccddb"/>
+    <dependencies>
+      <dep package="nasm"/>
+    </dependencies>
+  </autotools>
+
+  <meson id="gstreamer">
+    <branch revision="1.18.4"/>
     <after>
       <dep package="glib"/>
       <dep package="libxml2"/>
     </after>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-base" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-x --disable-xvideo"
-             makeargs="ERROR_CFLAGS=" >
-    <branch revision="1.12"/>
+  <meson id="gst-plugins-base" mesonargs="-Dexamples=disabled -Ddoc=disabled">
+    <branch revision="1.18.4"/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="liboil"/>
     </dependencies>
     <after>
     </after>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-good" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-x --disable-xvideo --disable-osx-video"
-             makeargs="ERROR_CFLAGS=" >
-    <branch revision="1.12"/>
+  <meson id="gst-plugins-good">
+    <branch revision="1.18.4"/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-ugly" autogenargs="--disable-tests"
-            supports-non-srcdir-builds="no" makeargs="ERROR_CFLAGS=" >
-    <branch revision="1.12"/>
+  <meson id="gst-plugins-ugly">
+    <branch revision="1.18.4"/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gst-plugins-bad" autogenargs="--disable-tests --disable-x --disable-xvid"
-            supports-non-srcdir-builds="no" makeargs="ERROR_CFLAGS=" >
-    <branch revision="1.12"/>
+  <meson id="gst-plugins-bad">
+    <branch revision="1.18.4"/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
       <dep package="faad2"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <!-- disable-yasm: gst-libav's version of libav (10.5) on the 1.4 branch
-  requires yasm 0.8.0 or nasm 2.0.3; OSX 10.9 has nasm 0.98.40. (Oddly, the
-  version of libav on master (10.3) does not.) -->
-  <autotools id="gst-libav" supports-non-srcdir-builds="no"
-             autogenargs="--disable-tests --disable-mmx --with-libav-extra-configure='--disable-yasm'">
-    <branch module="gst-libav" revision="1.12"/>
+  <meson id="gst-libav">
+    <branch module="gst-libav" revision="1.18.4"/>
     <dependencies>
       <dep package="gstreamer"/>
       <dep package="gst-plugins-base"/>
     </dependencies>
-  </autotools>
+  </meson>
 
   <metamodule id="meta-gstreamer">
     <dependencies>
diff --git a/modulesets/gtk-osx-gtkmm.modules b/modulesets/gtk-osx-gtkmm.modules
index 0f46b754..36106dd6 100644
--- a/modulesets/gtk-osx-gtkmm.modules
+++ b/modulesets/gtk-osx-gtkmm.modules
@@ -4,47 +4,66 @@
 <moduleset>
   <repository type="git" name="git.gnome.org" default="yes"
               href="https://gitlab.gnome.org/GNOME"/>
-<!-- As of January 2020 cairographics was still on anongit. -->
   <repository type="git" name="cairographics"
-              href="git://anongit.freedesktop.org/git/"/>
+              href="git://gitlab.freedesktop.org/cairo/"/>
+  <repository type="git" name="github"
+              href="git://github.com"/>
 
-  <metamodule id="meta-gtk-osx-gtkmm2">
-    <dependencies>
-      <dep package="gtkmm2"/>
-    </dependencies>
-  </metamodule>
+ <!-- mm-common is C++ glue code needed only to build from git. -->
+  <meson id="mm-common">
+    <branch module="mm-common" tag="1.0.2"/>
+  </meson>
 
-  <metamodule id="meta-gtk-osx-gtkmm3">
+   <!-- Libsigc++ was rewritten to use C++17 variadic templates for version 3, and adopting that has created 
substantial API breaks for the whole "mm" stack. gtkmm2 and gtkmm3 use the older versions, gtkmm4 the new 
ones.
+       Note that C++17 is supported only on macOS-10.13 and later.
+  -->
+  <meson id="cairomm3" >
+    <branch module="cairomm"  revision="cairomm-1-14"
+            repo="cairographics" />
     <dependencies>
-      <dep package="gtkmm3"/>
+      <dep package="cairo"/>
+      <dep package="libsigc++2"/>
     </dependencies>
-  </metamodule>
-
-<!-- mm-common is C++ glue code needed only to build from git. -->
-  <autotools id="mm-common">
-    <branch module="mm-common" tag="0.9.12"/>
-  </autotools>
+  </meson>
 
-  <autotools id="cairomm" >
-    <branch module="cairomm" revision="v1.15.5"
+ <meson id="cairomm" >
+    <branch module="cairomm" revision="1.16.0"
             repo="cairographics" />
     <dependencies>
       <dep package="cairo"/>
+      <dep package="libsigc++3"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="glibmm" >
-    <branch revision="glibmm-2-60"/>
+  <meson id="glibmm3" >
+    <branch module="glibmm" revision="glibmm-2-60"/>
     <dependencies>
+      <dep package="glib"/>
       <dep package="libsigc++2"/>
     </dependencies>
+  </meson>
+
+  <meson id="glibmm" >
+    <branch revision="glibmm-2-66"/>
+    <dependencies>
+      <dep package="libsigc++3"/>
+    </dependencies>
     <after>
       <dep package="glib"/>
     </after>
-  </autotools>
+  </meson>
+
+  <meson id="pangomm3" >
+     <branch module="pangomm" revision="pangomm-2-42"/>
+    <dependencies>
+      <dep package="glibmm3"/>
+      <dep package="cairomm3"/>
+      <dep package="pango"/>
+    </dependencies>
+  </meson>
 
-  <autotools id="pangomm" >
-     <branch revision="pangomm-2-42"/>
+  <meson id="pangomm" >
+     <branch revision="pangomm-2-48"/>
     <dependencies>
        <dep package="cairomm"/>
     </dependencies>
@@ -53,51 +72,65 @@
       <dep package="glibmm"/>
       <dep package="pango"/>
     </after>
-  </autotools>
+  </meson>
 
-  <autotools id="atkmm">
+  <meson id="atkmm3">
     <branch module="atkmm" revision="atkmm-2-28"/>
+    <dependencies>
+      <dep package="glibmm3"/>
+      <dep package="cairomm3"/>
+      <dep package="pangomm3"/>
+      <dep package="atk"/>
+    </dependencies>
+  </meson>
+
+  <meson id="atkmm">
+    <branch module="atkmm" revision="2.36.0"/>
     <dependencies>
       <dep package="glibmm"/>
       <dep package="cairomm"/>
       <dep package="pangomm"/>
       <dep package="atk"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-<!-- libsigc++ depends on doxygen for documentation, but doxygen
-     doesn't build correctly under gtk-osx. It builds fine on its own,
-     of course, and there are OSX binaries available on their
-     website. If you want the docs, install it separately and renable
-     documentation in your jhbuildrc-custom. -->
-<!-- libsigc++2 releaseed 2.4.0 from master -->
-  <autotools id="libsigc++2"  autogen-args="--disable-documentation">
-    <branch module="libsigcplusplus" revision="libsigc++-2-10"/>
+  <meson id="libsigc++2"  autogen-args="--disable-documentation">
+    <branch repo="github" module="libsigcplusplus/libsigcplusplus"
+            revision="libsigc++-2-10" />
     <dependencies>
       <dep package="mm-common"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gtkmm2" >
-    <branch revision="gtkmm-2-24"/>
+  <meson id="libsigc++3" autogen-args="--disable-documentation">
+    <branch repo="github" module="libsigcplusplus/libsigcplusplus"
+            revision="3.0.6"/>
     <dependencies>
-      <dep package="glibmm"/>
-      <dep package="cairomm"/>
-      <dep package="pangomm"/>
-      <dep package="atkmm"/>
-      <dep package="gtk+-2.0"/>
+      <dep package="mm-common"/>
+      <!-- dep package="doxygen"/ -->
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gtkmm3" >
-    <branch module="gtkmm2" revision="gtkmm-3-24"/>
+  <meson id="gtkmm3" >
+    <branch module="gtkmm" revision="gtkmm-3-24"/>
+    <dependencies>
+      <dep package="glibmm3"/>
+      <dep package="cairomm3"/>
+      <dep package="pangomm3"/>
+      <dep package="atkmm3"/>
+      <dep package="gtk+-3.0"/>
+    </dependencies>
+  </meson>
+
+ <meson id="gtkmm4" >
+    <branch module="gtkmm" revision="4.0.1"/>
     <dependencies>
       <dep package="glibmm"/>
       <dep package="cairomm"/>
       <dep package="pangomm"/>
       <dep package="atkmm"/>
-      <dep package="gtk+-3.0"/>
+      <dep package="gtk-4.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
 </moduleset>
diff --git a/modulesets/gtk-osx-network.modules b/modulesets/gtk-osx-network.modules
index e8ff809d..92152ada 100644
--- a/modulesets/gtk-osx-network.modules
+++ b/modulesets/gtk-osx-network.modules
@@ -6,14 +6,14 @@
               href="https://gitlab.gnome.org/GNOME"/>
   <repository name="openssl" type="tarball"
               href="https://www.openssl.org/source/"/>
-  <repository name="lysator" type="git" href="https://git.lysator.liu.se/"/>
-  <!--repository name="git.gnu.org" type="git"
-              href="git://git.savannah.gnu.org/"/-->
-  <repository name="ftp.gnu.org" type="tarball" href="https://ftp.gnu.org/gnu/"/>
+  <repository name="lysator" type="git"
+              href="https://git.lysator.liu.se/"/>
+  <repository name="ftp.gnu.org" type="tarball"
+              href="https://ftp.gnu.org/gnu/"/>
   <repository name="sourceforge" type="tarball"
               href="http://downloads.sourceforge.net/sourceforge/"/>
-  <!--repository name="gitlab" type="git" href="https://gitlab.com/"/-->
-  <repository name="gnutls" type="tarball" href="ftp://ftp.gnutls.org/"/>
+  <repository type='git' name='git.gnupg.org' href="git://git.gnupg.org/" />  
+  <repository name='gnupg.org' type='tarball' href="https://gnupg.org/ftp/"; />
   <repository name="chromium" type="git"
               href="https://chromium.googlesource.com/"/>
   <repository name="webkit.org" type="tarball"
@@ -21,14 +21,6 @@
   <repository type="tarball" name="github-tarball" href="https://github.com/"/>
   <repository type="git" name="github" href="https://github.com/"/>
 
-  <!-- Builds last version of WebKitGTK that supported GTK 2.x -->
-  <metamodule id="meta-gtk-osx-webkit">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
-      <dep package="WebKit"/>
-    </dependencies>
-  </metamodule>
-
   <!-- Builds latest stable version of WebKitGTK for GTK 3.x -->
   <metamodule id="meta-gtk-osx-webkit-gtk3">
     <dependencies>
@@ -42,8 +34,8 @@
   <autotools id="openssl" autogen-sh="Configure" autogenargs="shared "
              autogen-template="%(srcdir)s/%(autogen-sh)s --prefix=%(prefix)s --openssldir=%(prefix)s/etc/ssl 
%(autogenargs)s"
              makeinstallargs="install_sw" supports-non-srcdir-builds="no">
-    <branch module="openssl-1.1.1g.tar.gz" version="1.1.1g" repo="openssl"
-            hash="sha256:ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46"/>
+    <branch module="openssl-1.1.1k.tar.gz" version="1.1.1k" repo="openssl"
+            hash="sha256:892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5"/>
   </autotools>
 
   <!-- Rudely demands TeX to build documentation -->
@@ -52,7 +44,7 @@
              autogenargs="--disable-documentation --disable-assembler"
              autogen-template="autoreconf -fis &amp;&amp; %(srcdir)s/configure --prefix %(prefix)s  
%(autogenargs)s">
     <branch repo="lysator" module="nettle/nettle.git"
-            tag="nettle_3.3_release_20161001"/>
+            tag="nettle_3.7.2_release_20210321"/>
     <dependencies>
       <dep package="gmp"/>
       <dep package="openssl"/>
@@ -62,48 +54,95 @@
   <autotools id="libtasn1" supports-non-srcdir-builds="no" autogen-sh="configure">
     <!-- Git repository is missing files required to build libtasn1
     <branch repo="git.gnu.org" tag="libtasn1_4_4"  module="libtasn1"/> -->
-    <branch repo="ftp.gnu.org" version="4.15.0"
-            module="libtasn1/libtasn1-4.15.0.tar.gz"
-            hash="sha256:dd77509fe8f5304deafbca654dc7f0ea57f5841f41ba530cff9a5bf71382739e" />
+    <branch repo="ftp.gnu.org" version="4.16.0"
+            module="libtasn1/libtasn1-4.16.0.tar.gz"
+             hash="sha256:0e0fb0903839117cb6e3b56e68222771bebf22ad7fc2295a0ed7d576e8d4329d"/>
   </autotools>
 
   <autotools id="zlib" autogen-sh="configure" skip-autogen="never"
              supports-non-srcdir-builds="no">
     <branch repo="sourceforge" version="1.2.11"
-            module="libpng/zlib-1.2.11.tar.gz"/>
+            module="libpng/zlib-1.2.11.tar.gz"
+            hash="sha256:4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066"/>
+  </autotools>
+
+  <autotools id="p11-kit" autogen-sh="configure"
+             autogenargs="--without-trust-paths">
+    <branch repo="github" module="pll-glue/pll-kit" revision="0.23.22"/>
+    <dependencies>
+      <dep package="libtasn1"/>
+    </dependencies>
   </autotools>
 
   <!-- Building from git does not work because they have checked in a bunch of
   files (build-aux/, po/Makefile.in.in) that they're not supposed to.-->
-  <!-- Building with p11-kit support breaks g-ir-scanner, for some weird reason. -->
+
   <autotools id="gnutls" autogen-sh="autoreconf"
-             autogenargs="--disable-gtk-doc-html --without-p11-kit">
-    <!--branch repo="gitlab" module="gnutls/gnutls"/-->
-    <branch repo="gnutls" version="3.6.14"
-            hash="sha256:5630751adec7025b8ef955af4d141d00d252a985769f51b4059e5affa3d39d63"
-            module="gcrypt/gnutls/v3.6/gnutls-3.6.14.tar.xz">
+             autogenargs="--disable-gtk-doc-html --with-included-unistring">
+    <branch repo="gnupg.org" version="3.7.1"
+            module="gcrypt/gnutls/v3.7/gnutls-3.7.1.tar.xz"
+            hash="sha256:3777d7963eca5e06eb315686163b7b3f5045e2baac5e54e038ace9835e5cac6f">
     </branch>
     <dependencies>
       <dep package="libunistring"/>
       <dep package="libnettle"/>
-      <dep package="libtasn1" />
+      <dep package="libtasn1"/>
       <dep package="zlib"/>
+      <dep package="p11-kit"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="libgpg-error" autogen-sh="autoreconf"
+             autogenargs="--disable-doc">
+    <branch repo="git.gnupg.org" module="libgpg-error"
+            revision="libgpg-error-1.42"/>
+  </autotools>
+
+  <autotools id="libgcrypt" autogen-sh="autoreconf"
+             autogenargs="--disable-asm --disable-doc">
+    <branch repo="git.gnupg.org" module="libgcrypt" revision="libgcrypt-1.9.2"/>
+    <dependencies>
+      <dep package="libgpg-error" />
     </dependencies>
   </autotools>
 
-  <autotools id="libgcrypt" autogen-sh="configure">
-    <branch repo="gnutls" version="1.8.7"
-            hash="sha256:03b70f028299561b7034b8966d7dd77ef16ed139c43440925fe8782561974748"
-            module="gcrypt/libgcrypt/libgcrypt-1.8.7.tar.bz2"/>
+  <autotools id="gpg">
+    <branch repo="git.gnupg.org" module="gnupg" revision="gnupg-2.2.27"/>
     <dependencies>
       <dep package="libgpg-error"/>
+      <dep package="libgcrypt"/>
+    </dependencies>
+  </autotools>
+
+  <meson id="libsecret" mesonargs="-Dvapi=disabled -Dgtk_doc=disabled">
+    <branch module="libsecret" revision="0.20.4" />
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="libgcrypt"/>
+    </dependencies>
+  </meson>
+
+  <meson id="gcr">
+    <branch module="gcr" branch="gnome-3-38"/>
+    <dependencies>
+      <dep package="p11-kit"/>
+      <dep package="gpg"/>
+      <dep package="libsecret"/>
+      <dep package="glib"/>
+    </dependencies>
+  </meson>
+
+  <autotools id="gnome-keyring"
+             autogenargs="--disable-pam --without-root-certs">
+    <branch module="gnome-keyring" branch="gnome-40"/>
+    <dependencies>
+      <dep package="libgcrypt"/>
+      <dep package="gcr"/>
     </dependencies>
   </autotools>
 
   <meson id="glib-networking" mesonargs="-Dopenssl=enabled">
-         <branch module="glib-networking/2.65/glib-networking-2.65.1.tar.xz"
-            hash="sha256:45a4a22651f0268b45c26ab4a16282f06f2995fdaf5aa8d221e535099cdd7783"
-            version="2.65.1"/>
+         <branch module="glib-networking" revision="2.68.0"/>
     <dependencies>
       <dep package="gnutls"/>
       <dep package="glib"/>
@@ -111,13 +150,11 @@
   </meson>
 
   <autotools id="libpsl" autogen-sh='configure'>
-    <branch repo="github-tarball" version="0.21.0"
-            hash="sha256:41bd1c75a375b85c337b59783f5deb93dbb443fb0a52d257f403df7bd653ee12"
-            module="rockdaboot/libpsl/releases/download/libpsl-0.21.0/libpsl-0.21.0.tar.gz"/>
+    <branch  repo="github" module="rockdaboot/libpsl" revision="libpsl-0.21.0"/>
   </autotools>
 
   <meson id="libsoup" mesonargs="-Dvapi=disabled">
-    <branch revision="gnome-3-34"/>
+    <branch revision="gnome-3-38"/>
     <dependencies>
       <dep package="libpsl"/>
       <dep package="python3"/>
@@ -128,73 +165,9 @@
     </dependencies>
   </meson>
 
-  <autotools id="libwebp" autogen-sh="autoreconf">
-    <branch repo="chromium" module="webm/libwebp" revision="0.6.0"/>
-  </autotools>
-
-  <autotools id="icu55" autogen-sh="source/configure"
-             autogenargs="--enable-rpath"
-             makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'>
-    <branch repo="github-tarball" version="55.2" checkoutdir="icu"
-            module="unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz"
-            hash="sha256:eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759"/>
-  </autotools>
-
-  <!-- This is WebKitGTK 2.4.x, the last version that had the WebKit1 API.
-    disable-webkit2: Requires both GTK2 and 3. Currently not supported.
-    disable-credential-storage: Requires libsecret. No module for this yet.
-    disable-geolocation: Requires geoclue 1 or 2. No module for this yet.
-    disable-video, disable-web-audio: Requires gstreamer. If you want video and
-      audio, add this to your .jhbuildrc:
-      append_autogenargs('WebKit', '&#45;-enable-video')
-      append_autogenargs('WebKit', '&#45;-enable-web-audio')
-    -j1: Workaround for https://bugs.webkit.org/show_bug.cgi?id=140171
-
-   It has some issues with ICU 58 so we keep it on ICU55. Note that
-   you can't install both, so if you need to build this webkit add icu
-   to your skip-list.
-  -->
-  <autotools id="webkit" autogen-sh="autoreconf"
-             autogenargs="--enable-quartz-target --with-gtk=2.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-stdlib=libc++'">
-    <branch repo="webkit.org" module="webkitgtk-2.4.11.tar.xz" version="2.4.11">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-140167-disable-netscape-api.patch"; 
strip="1"/>
-      <!-- This patch can be commented out for XCode >= 6.3, but does no harm if
-      it's left in -->
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-133293-cfi-clang-failure.patch"; 
strip="1"/>
-      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit-2.4.11-fixups.patch"; 
strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package="libwebp"/>
-      <dep package="enchant"/>
-      <dep package="icu"/>
-      <dep package="libsoup"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-gtk"/>
-      <dep package="meta-gstreamer-1.0"/>
-    </after>
-  </autotools>
-
-  <!-- This is WebKitGTK 2.4.x as above, but for gtk3.  -->
-  <autotools id="webkit1gtk3" autogen-sh="autoreconf"
-             autogenargs="--enable-quartz-target --with-gtk=3.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-stdllib=libc++'">
-    <branch repo="webkit.org" module="webkitgtk-2.4.9.tar.xz" version="2.4.9">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-140167-disable-netscape-api.patch"; 
strip="1"/>
-      <!-- This patch can be commented out for XCode >= 6.3, but does no harm if
-      it's left in -->
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-133293-cfi-clang-failure.patch"; 
strip="1"/>
-      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit-2.4.11-fixups.patch"; 
strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package="libwebp"/>
-      <dep package="enchant"/>
-      <dep package="icu55"/>
-      <dep package="libsoup"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="meta-gstreamer-1.0"/>
-    </after>
+  <autotools id="libwebp" autogen-sh="autoreconf"
+             autogenargs="--enable-libwebpmux --enable-libwebpdecoder">
+    <branch repo="chromium" module="webm/libwebp" revision="1.2.0"/>
   </autotools>
 
   <!-- This is the stable release of WebKitGTK, for GTK 3.x. Use it if you need
@@ -216,12 +189,11 @@
     USE_WOFF2: Requires Woff2. No module for this
     USE_WPE_RENDERER: For embedded systems, not Macs.  -->
   <cmake id="webkit2gtk3"
-         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_MINIBROWSER=ON 
-DENABLE_INTROSPECTION=OFF  -DUSE_SYSTEMD=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF 
-DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF -DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF 
-DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF -DUSE_WPE_RENDERER=OFF 
-DENABLE_GRAPHICS_CONTEXT_GL=OFF -DCMAKE_CXX_FLAGS="-stdlib=libc++" -DCMAKE_MACOSX_RPATH=OFF'>
-    <branch repo="webkit.org" module="webkitgtk-2.30.3.tar.xz" version="2.30.3">
-      <patch 
file="file:///Users/john/Development/GTK-OSX/gtk-osx-build/patches/WebKit2Gtk3-2.30.0-cumulative.patch" 
strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Force-FindICU-instead-of-inserting-heade.patch";
 strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Extend-UNIX_DOMAIN_SOCKETS-precedence-over-Mac-and-Win.patch";
 strip="1"/>
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Disable-AUDIT_TOKEN-for-Gtk-builds.patch";
 strip="1"/>
+         cmakeargs='-DPORT=GTK -DENABLE_X11_TARGET=OFF -DENABLE_QUARTZ_TARGET=ON -DENABLE_MINIBROWSER=ON 
-DENABLE_INTROSPECTION=OFF  -DUSE_SYSTEMD=OFF -DENABLE_VIDEO=OFF -DENABLE_WEB_AUDIO=OFF 
-DENABLE_GEOLOCATION=OFF -DUSE_LIBNOTIFY=OFF -DUSE_LIBHYPHEN=OFF -DUSE_LIBSECRET=OFF 
-DENABLE_TOUCH_EVENTS=OFF  -DUSE_OPENJPEG=OFF -DUSE_WOFF2=OFF -DUSE_WPE_RENDERER=OFF 
-DENABLE_GRAPHICS_CONTEXT_GL=OFF -DENABLE_GAMEPAD=OFF -DUSE_APPLE_ICU=NO -DCMAKE_CXX_FLAGS="-stdlib=libc++" 
-DCMAKE_MACOSX_RPATH=OFF'>
+    <branch repo="webkit.org" module="webkitgtk-2.32.0.tar.xz" version="2.32.0"
+            hash="sha256:9d7df4dae9ada2394257565acc2a68ace9308c4c61c3fcc00111dc1f11076bf0">
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.32.0-cumulative.patch"; 
strip="1"/>
+     <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/WebKit2Gtk3-2.30.1-Disable-AUDIT_TOKEN-for-Gtk-builds.patch";
 strip="1"/>
     </branch>
     <dependencies>
       <dep package="libwebp"/>
diff --git a/modulesets/gtk-osx-python.modules b/modulesets/gtk-osx-python.modules
index ef67e0b2..35bdf6fc 100644
--- a/modulesets/gtk-osx-python.modules
+++ b/modulesets/gtk-osx-python.modules
@@ -5,35 +5,12 @@
 
   <repository type="git" name="git.gnome.org" default="yes"
               href="https://gitlab.gnome.org/GNOME"/>
-  <repository type="tarball" name="cairographics"
-              href="http://cairographics.org/releases/"/>
-<!--  <repository type="git" name="cairographics"
-              href="git://anongit.freedesktop.org/git/"/> -->
   <repository type="tarball" name="python"
              href="https://www.python.org/ftp/python/"/>
   <repository type="tarball" name="pymodules"
              href="http://pypi.python.org/packages/"/>
   <repository type="git" name="github" href="git://github.com/"/>
 
-  <metamodule id="meta-gtk-osx-python2-gtk2">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
-      <dep package="pycairo"/>
-      <dep package="pygobject"/>
-      <dep package="pygtk"/>
-      <dep package="gtk-mac-integration-python"/>
-    </dependencies>
-  </metamodule>
-
-  <metamodule id="meta-gtk-osx-python-gtk3">
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="pycairo"/>
-      <dep package="pygobject3"/>
-      <dep package="gtk-mac-integration-python"/>
-    </dependencies>
-  </metamodule>
-
   <metamodule id="meta-gtk-osx-python3-gtk3">
     <dependencies>
       <dep package="meta-gtk-osx-gtk3"/>
@@ -43,115 +20,59 @@
     </dependencies>
   </metamodule>
 
-
-  <autotools id="python" autogenargs="--enable-shared"
-            supports-non-srcdir-builds="no" autogen-sh="autoreconf">
-       <branch repo="python"
-               module="2.7.17/Python-2.7.17.tgz" version="2.7.17"
-               hash="sha256:f22059d09cdf9625e0a7284d24a13062044f5bf59d93a7f3382190dfa94cecde">
-  <!-- related to https://bugs.python.org/issue11445 -->
-  <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/python-ldflags.patch"; strip="1"/>
-    </branch>
-    <dependencies>
-      <dep package='readline'/>
-      <dep package="openssl"/> <!-- For hashlib -->
-    </dependencies>
-  </autotools>
-
   <autotools id="python3" autogenargs="--enable-shared" autogen-sh="configure">
-    <branch repo="python" module="3.8.5/Python-3.8.5.tar.xz" version="3.8.5"
-            hash="md5:35b5a3d0254c1c59be9736373d429db7"
-            />
+    <branch repo="python" module="3.9.2/Python-3.9.2.tar.xz" version="3.9.2"
+            hash="sha256:3c2034c54f811448f516668dce09d24008a0716c3a794dd8639b5388cbde247d"/>
     <dependencies>
       <dep package='readline'/>
       <dep package="openssl" /> <!-- For hashlib -->
     </dependencies>
   </autotools>
 
-  <distutils id="pylxml">
-    <branch module="20/b3/9f245de14b7696e2d2a386c0b09032a2ff6625270761d6543827e667d8de/lxml-3.8.0.tar.gz"
-           hash="md5:e54e2fae44d684d6b9c636fe189e93ff" repo="pymodules"
-           version="3.8.0" />
-    <dependencies>
-      <dep package="python3"/>
-      <dep package="libxml2"/>
-      <dep package="libxslt"/>
-    </dependencies>
-  </distutils>
-
-  <distutils id="pysix">
-    <branch module="b3/b2/238e2590826bfdd113244a40d9d3eb26918bd798fc187e2360a8367068db/six-1.10.0.tar.gz"
-           hash="md5:34eed507548117b2ab523ab14b2f8b55" repo="pymodules"
-           version="1.1.0"/>
-    <dependencies>
-      <dep package="python3"/>
-    </dependencies>
-  </distutils>
-
   <meson id="pycairo">
-    <branch module="pygobject/pycairo" repo="github"/>
+    <branch module="pygobject/pycairo" repo="github" revision="1.20.0"/>
     <dependencies>
       <dep package="cairo"/>
     </dependencies>
     <after>
       <dep package="python3"/>
-      <dep package="python"/>
       <dep package="meta-gtk-osx-gtk3"/>
-      <dep package="meta-gtk-osx"/>
     </after>
   </meson>
 
-  <autotools id="pygobject" autogenargs="--disable-introspection">
-    <branch tag="pygobject-2-28"/>
-    <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </dependencies>
-    <after>
-      <dep package="python"/>
-    </after>
-  </autotools>
+  <!-- PyGObject 3.36 is the last version of PyGObject that supports
+       Python2. It's provided here for those laggards who haven't yet
+       migrated their projects to Python3. Don't expect it to stay
+       forever, migrate now! -->
 
-  <meson id="pygobject3">
-    <branch tag="pygobject-3-32" module="pygobject" checkoutdir="pygobject3"/>
+   <meson id="pygobject3-2" >
+    <branch version="3.36.1" module="pygobject/3.36/pygobject-3.36.1.tar.xz"
+           hash="sha256:d1bf42802d1cec113b5adaa0e7bf7f3745b44521dc2163588d276d5cd61d718f"/>
     <dependencies>
-      <dep package="meta-gtk-osx-gtk3"/>
+      <dep package="pycairo"/>
     </dependencies>
     <after>
-      <dep package="python"/>
+      <dep package="python2"/>
       <dep package="python3"/>
     </after>
-  </meson>
+   </meson>
 
-<!-- PyGtk is discontinued. -->
-  <autotools id="pygtk" autogenargs="--disable-introspection">
-    <branch tag="master"/>
+  <meson id="pygobject3">
+    <branch tag="pygobject-3-40" module="pygobject" checkoutdir="pygobject3"/>
     <dependencies>
-      <dep package="pygobject"/>
-      <dep package="meta-gtk-osx-gtk2"/>
       <dep package="pycairo"/>
     </dependencies>
     <after>
-      <dep package="libglade"/>
+      <dep package="python3"/>
     </after>
-  </autotools>
+  </meson>
 
   <autotools id="gtk-mac-integration-python">
     <!--gtk-mac-integration releases from master"-->
     <branch module="gtk-mac-integration"
            checkoutdir="gtk-mac-integration"/>
     <dependencies>
-     </dependencies>
-    <after>
-      <dep package="pygtk"/>
       <dep package="pygobject3"/>
-    </after>
-  </autotools>
-
-  <autotools id="pygtk-extras">
-    <branch module="gnome-python-extras" revision="gnome-2-26"/>
-    <dependencies>
-      <dep package="pygtk"/>
-      <dep package="gtkspell"/>
     </dependencies>
   </autotools>
 
diff --git a/modulesets/gtk-osx-random.modules b/modulesets/gtk-osx-random.modules
index 78e0b833..c9e6bde9 100644
--- a/modulesets/gtk-osx-random.modules
+++ b/modulesets/gtk-osx-random.modules
@@ -5,81 +5,68 @@
   <repository type="git" name="git.gnome.org" default="yes"
               href="https://gitlab.gnome.org/GNOME"/>
   <repository type="git" name="github" href="git://github.com/"/>
-  <repository type="tarball" name="ftp.gnome.org"
-             href="http://download.gnome.org/sources/"/>
-  <repository type="tarball" name="ftp.gnu.org"
-             href="https://ftp.gnu.org/gnu/"/>
-  <repository type="git" name="git.freedesktop.org"
-              href="git://anongit.freedesktop.org/"/>
-  <repository type="tarball" name="dbus.freedesktop.org"
-             href="http://dbus.freedesktop.org/releases/"/>
+  <repository type="tarball" name="ftp.gnome.org" 
+              href="http://download.gnome.org/sources/"/>
+  <repository type="tarball" name="ftp.gnu.org" href="https://ftp.gnu.org/gnu/"/>
+  <repository type="tarball" name="shared-mime-info"
+              href="https://gitlab.freedesktop.org/xdg/shared-mime-info/uploads/"/>
+  <repository type="tarball" name="iso-codes"
+              href="https://salsa.debian.org/iso-codes-team/iso-codes/uploads/"/>
   <repository type="tarball" name="sourceforge"
               href="http://downloads.sourceforge.net/sourceforge/"/>
+  <repository type="tarball" name="graphviz"
+              href="https://gitlab.com/graphviz/graphviz/-/archive/"/>
   <repository type="tarball" name="sqlite" href="http://www.sqlite.org/"/>
-  <repository type="git" name="savannah" href="git://git.sv.gnu/org/"/>
-  <repository type="tarball" name="boehm"
-             href="http://www.hboem.info/"/>
-  <repository type="svn" name="abisource/enchant"
-              href="http://svn.abisource.com/"/>
-
-  <metamodule id="meta-gtk-osx-random">
+  <repository type="tarball" name="frodo"
+              href="http://frodo.looijaard.name/system/files/software/"/>
+  <repository type="tarball" name="paguire" href="https://releases.pagure.org/"/> 
+  <repository type="tarball" name="pcre" href="https://ftp.pcre.org/pub/"/>
+
+   <autotools id="graphviz" supports-non-srcdir-builds="no"
+             autogen-template="pushd %(srcdir)s &amp;&amp; ./autogen.sh &amp;&amp; popd &amp;&amp; 
%(srcdir)s/configure --prefix %(prefix)s %(autogenargs)s"
+             autogenargs="--disable-sharp --disable-guile --disable-java --disable-lua --disable-ocaml 
--disable-perl --disable-php --disable-r --disable-ruby --disable-tcl --with-pangocairo">
+    <branch module="2.47.0/graphviz-2.47.0.tar.bz2" version="2.47.0"
+            repo="graphviz" 
+            hash="sha256:dade5b374ce483bf28f2e535baef02280ba8ab86fbe6e93252ab0de48396b714"/>
     <dependencies>
-      <dep package="poppler"/>
-      <dep package="gimp"/>
-      <dep package="devhelp"/>
-      <dep package="shared-mime-info"/>
-      <dep package="gossip"/>
-      <dep package="vala"/>
-      <dep package="glade3"/>
+      <dep package="pango"/>
+      <dep package="librsvg"/>
     </dependencies>
-  </metamodule>
+  </autotools>
 
-<!-- Libglade's functions have been rolled into Gtk+, and Libglade is
-     deprecated. This is the last release. -->
-  <autotools id="libglade">
-    <branch tag="LIBGLADE_2_6_4"/>
+  <autotools id="vala" autogen-sh="configure">
+    <branch repo="ftp.gnome.org" version="0.52.0"
+            module="vala/0.52/vala-0.52.0.tar.xz"
+            hash="sha256:1de26310db465aca525679d3b5a3c1d8db2e067c4cbc0e5ddd015cd938bac68b"/>
+    <dependencies>
+      <dep package="graphviz"/>
+    </dependencies>
     <after>
       <dep package="meta-gtk-osx-bootstrap"/>
+      <dep package="meta-gtk-osx-gtk3"/>
       <dep package="meta-gtk-osx-gtk2"/>
     </after>
   </autotools>
 
-<!-- Vala-bootstrap is the current stable vala precompiled to C. -->
-  <!--<autotools id="vala" autogen-sh="configure">
-    <branch module="vala-bootstrap"/>
-  </autotools>-->
-  <!-- vala-bootstrap is stuck at 0.16, so use a tarball for the time being.-->
-  <autotools id="vala" autogen-sh="configure">
-    <branch repo="ftp.gnome.org" version="0.36.0"
-            module="vala/0.36/vala-0.36.0.tar.xz"
-            hash="sha256:13f4a3f99d983bf76e8d9dd736021ecc95f53ec1f9582423aa4b4be87455aa07"/>
-  </autotools>
-
-  <!-- unique is obsolete, retained only for the gtk2 version of devhelp.-->
-  <autotools id="unique">
-    <branch />
+  <autotools id="expat" autogen-sh="configure">
+    <branch module="expat/expat-2.3.0.tar.bz2" version="2.3.0"
+            repo="sourceforge"
+            hash="sha256:f122a20eada303f904d5e0513326c5b821248f2d4d2afbf5c6f1339e511c0586"/>
   </autotools>
 
-  <autotools id="devhelp">
-    <branch revision="gnome-2-32"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
+  <!-- The patches to amtk and devhelp won't be applied, jhbuild doesn't work like that on git modules, so 
you'll have to stop and apply them by hand.
+  -->
+  <meson id="amtk" >
+    <branch revision="5.3.1">
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/amtk-build-on-macOS.patch"; 
strip="1"/>
+    </branch>
     <dependencies>
-      <dep package="WebKit"/>
-      <dep package="unique"/>
+      <dep package="gtk+-3.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
   <autotools id="devhelp-gtk3">
-    <branch module="devhelp" revision="gnome-3-24"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk3"/>
-    </after>
+    <branch module="devhelp" revision="gnome-3-38"/>
     <dependencies>
       <dep package="webkit2gtk3"/>
       <dep package="gsettings-desktop-schemas"/>
@@ -88,214 +75,108 @@
     </dependencies>
   </autotools>
 
-  <!-- Glade 3.8 is the last stable series for Gtk+-2 -->
-  <autotools id="glade3" autogenargs="--disable-scrollkeeper">
-    <branch revision="glade-3-8" module="glade"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
-  <autotools id="glade" autogenargs="--disable-scrollkeeper">
-    <branch revision="glade-3-22"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-themes"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
-  <autotools id="gtksourceview">
-    <branch revision="gnome-2-30"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
-  <autotools id="gtksourceview-gtk3">
-    <branch revision="gnome-3-24" module="gtksourceview"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk3"/>
-    </after>
-  </autotools>
-
-
-  <!-- These folks don't make their repository available.-->
-  <autotools id="lcms" autogen-sh="configure">
-    <branch module="lcms/lcms2-2.9.tar.gz" version="2.9" repo="sourceforge"/>
-  </autotools>
-
-  <autotools id="shared-mime-info"
-             autogenargs="--disable-default-make-check  ac_cv_func_fdatasync=no"
-             supports-non-srcdir-builds="no" >
-    <branch module="xdg/shared-mime-info" tag="Release-1-7"
-            repo="git.freedesktop.org"/>
+  <meson id="glade" mesonargs="-Dmac_bundle=true -Dman=false">
+    <branch revision="glade-3-38"/>
     <dependencies>
-      <dep package="glib"/>
+      <dep package="itstool"/>
+      <dep package="meta-gtk-osx-gtk3"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gsettings-desktop-schemas" autogenargs="--enable-introspection=yes">
-    <branch revision="gnome-3-22"/>
+  <meson id="gtksourceview3">
+    <branch revision="gtksourceview-4-8" />
     <dependencies>
-      <dep package="gobject-introspection"/>
+      <dep package="gtk+-3.0"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="gimp"
-             autogenargs="--disable-python --disable-print --without-x
-                          --without-dbus --without-gnomevfs4echo  --without-wmf"
-             makeargs='LDFLAGS="-framework Carbon"'>
-    <branch revision="gimp-2-8"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
+   <autotools id="libpcre2" autogen-sh="configure">
+    <branch repo="pcre" version="20.36"
+            module="pcre/pcre2-10.36.tar.bz2"
+            hash="sha256:a9ef39278113542968c7c73a31cfcb81aca1faa64690f400b907e8ab6b4a665c"/>
+  </autotools>
+  
+ <meson id="gtksourceview4">
+    <branch revision="5.0.0"/>
     <dependencies>
-      <dep package="lcms"/>
-      <dep package="fontconfig"/>
-      <dep package="gegl"/>
+      <dep package="gtk-4"/>
+      <dep package="libpcre2"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <autotools id="json-glib">
-    <branch revision="json-glib-1-2"/>
-  </autotools>
 
-   <autotools id="babl">
-     <branch tag="BABL_0_1_24"/>
-  </autotools>
+  <!-- shared-mime-info goes here after we figure out what to do with it. -->
+  
 
-  <autotools id="gegl">
-    <branch tag="GEGL_0_3_14"/>
+  <meson id="gsettings-desktop-schemas">
+    <branch revision="gnome-40"/>
     <dependencies>
-      <dep package="babl"/>
-      <dep package="json-glib"/>
+      <dep package="gobject-introspection"/>
     </dependencies>
-  </autotools>
+  </meson>
 
-  <!-- Poppler is releasing from master -->
-  <autotools id="poppler"
-           autogenargs="--disable-qt --disable-qt4 --without-x --disable-gtk-test --enable-xpdf-headers">
-    <branch repo="git.freedesktop.org" module="poppler/poppler" />
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
 
 <!-- SQLite3 is provided by MacOSX in /usr/lib/libsqlite.3.dylib -->
   <autotools id="sqlite" autogenargs="--disable-tcl --enable-threadsafe" >
     <!-- Another package with a non-standard repository structure. Tarballs
     are easier.-->
-    <branch module="2017/sqlite-autoconf-3180000.tar.gz" version='3.18.0'
-           repo="sqlite"/>
+    <branch module="2021/sqlite-autoconf-3350400.tar.gz" version='3.35.4'
+            repo="sqlite"
+            hash="sha256:7771525dff0185bfe9638ccce23faa0e1451757ddbda5a6c853bb80b923a512d"/>
   </autotools>
 
-<!-- Goocanvas 1.0 is for Gtk+-2, and has a branch. -->
-  <autotools id="goocanvas">
-    <branch revision="goocanvas-1.0"/>
+!-- Goocanvas2 is for Gtk+-3 -->
+  <autotools id="goocanvas2">
+    <branch revision="goocanvas-2.0" module="goocanvas"/>
     <dependencies>
-      <dep package="meta-gtk-osx-gtk2"/>
+      <dep package="gtk+-3.0"/>
     </dependencies>
   </autotools>
 
-<!-- Goocanvas2 is for Gtk+-3, and uses the master branch. -->
+!-- Goocanvas3 is for Gtk-4 -->
   <autotools id="goocanvas2">
-    <!-- No tags, so this is release 2.0.1 -->
-    <branch revision="goocanvas-2.0" module="goocanvas"/>
+    <branch revision="goocanvas-3.0" module="goocanvas"/>
     <dependencies>
-      <dep package="meta-gtk-osx-core-gtk3"/>
+      <dep package="gtk-4"/>
     </dependencies>
   </autotools>
 
-<!-- Libart_lgpl is deprecated. -->
-  <autotools id="libart_lgpl">
-    <branch/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-gtk2"/>
-    </after>
-  </autotools>
-
   <autotools id="hunspell" >
-    <branch module="hunspell" tag="v1.6.1" repo="github"/>
+    <branch module="hunspell" tag="v1.7.0" repo="github"/>
   </autotools>
 
-  <autotools id="enchant">
-    <branch repo="abisource/enchant" module="enchant" tag="enchant-1-6-0"/>
+  <autotools id="enchant" autogenargs="--enable-relocatable"
+             autogen-template="pushd %(srcdir)s &amp;&amp; ./%(autogen-sh)s &amp;&amp; popd &amp;&amp; 
%(srcdir)s/configure --prefix=%(prefix)s %(autogenargs)s">
+    
+    <branch repo="github" module="AbiWord/enchant" tag="enchant-2-2-15"/>
     <dependencies>
       <dep package="glib"/>
     </dependencies>
   </autotools>
 
-  <!-- GtkSpell has switched to Mercurial for VCS, so we'll use the
-       tarballs to avoid the dependency. -->
-
-  <autotools id="gtkspell" autogen-sh="configure">
-    <branch module="gtkspell/gtkspell-2.0.16.tar.gz" repo="sourceforge"
-           version="2.0.16"/>
-    <dependencies>
-      <dep package="enchant"/>
-    </dependencies>
-  </autotools>
+  <!-- GtkSpell has switched to Mercurial for VCS and besides seems to
+       no longer be maintained, so we'll use the tarballs to avoid the
+       dependency. -->
 
   <autotools id="gtkspell3" autogen-sh="configure">
-    <branch module="gtkspell/gtkspell3-3.0.9.tar.xz" repo="sourceforge"
-            version="3.0.9">
+    <branch module="gtkspell/gtkspell3-3.0.10.tar.xz" repo="sourceforge"
+            version="3.0.10"
+            hash="sha256:b040f63836b347eb344f5542443dc254621805072f7141d49c067ecb5a375732">
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0001-Enable-use-of-XDG_DATA_DIRS-for-locating-iso-code-fi.patch";
 strip="1"/>
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gtkspell-3-install.sh-wrong-sh-path.patch"; 
strip="1"/>
     </branch>
     <dependencies>
       <dep package="enchant"/>
       <dep package="iso-codes"/>
     </dependencies>
   </autotools>
-
-<!-- LibGSF develops in master -->
-  <autotools id="libgsf" autogenargs="--without-python">
-    <branch tag="LIBGSF_1_14_41"/>
-  </autotools>
-
   <!-- gmp uses Mercurial, so we stick with the tarball to avoid
        having to install yet another vcs tool. -->
   <autotools id="gmp">
-    <branch repo="ftp.gnu.org" module="gmp/gmp-6.1.2.tar.bz2" version="6.1.2">
+     <branch repo="ftp.gnu.org" module="gmp/gmp-6.2.1.tar.bz2" version="6.2.1"
+             hash="sha256:eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c">
     </branch>
   </autotools>
 
-  <autotools id="libunistring" autogen-sh="configure">
-    <branch repo="savannah" module="libunistring.git" tag="v0.9.7"/>
-  </autotools>
-
-  <autotools id="libatomic-ops"
-             autogen-template="%(autogen-sh)s &amp;&amp; ./configure --prefix=%(prefix)s> %(autogen-args)s">
-    <branch repo="github" module="ivmai/libatomic_ops"
-           revision="libatomic_ops-7_4_4"/>
-  </autotools>
-
-  <autotools id="bdw-gc" autogen-template="pushd %(srcdir)s &amp;&amp; ./autogen.sh &amp;&amp; automake -ac 
&amp;&amp; popd &amp;&amp; %(srcdir)s/configure --prefix %(prefix)s  %(autogenargs)s">
-    <branch repo="github" module="ivmai/bdwgc" revision="release-7_6_0"/>
-  </autotools>
-
-  <autotools id="guile" autogenargs="--disable-error-on-warning">
-    <branch repo="savannah" module="guile.git" tag="release_1_8_8"/>
-    <dependencies>
-      <dep package="gmp"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id="guile2" autogen-sh="configure">
-    <branch repo="savannah" module="guile.git" revision="stable-2.0"/>
-    <dependencies>
-      <dep package="libunistring"/>
-      <dep package="gmp"/>
-      <dep package="libffi"/>
-      <dep package="bdw-gc"/>
-    </dependencies>
-  </autotools>
-
+ 
 </moduleset>
diff --git a/modulesets/gtk-osx.modules b/modulesets/gtk-osx.modules
index 850b5178..82231e7c 100644
--- a/modulesets/gtk-osx.modules
+++ b/modulesets/gtk-osx.modules
@@ -7,6 +7,8 @@
   <repository type="git" name="github" href="git://github.com/"/>
   <repository type="git" name="freedesktop"
               href="git://gitlab.freedesktop.org/"/>
+  <repository type="git" name="freedesktop-jralls"
+              href="https://gitlab.freedesktop.org/jralls/"/>
   <repository type="git" name="nongnu"
              href="git://git.sv.nongnu.org/"/>
   <repository type="system" name="system"/>
@@ -22,28 +24,21 @@
          make it easy to rebuild the whole core stack without redoing
          the bootstrap parts. They have a soft, "after", depencency.
 
-       The remaining modules are mostly for testing and might not work
-       all the time:
-
-       - gtk-osx-python.modules: self explaining.
-       - gtk-osx-gtkmm.modules: self explaining.
-       - gtk-osx-javascript.modules: GJS, associated tools, and the Mozilla JS
-         library it depends on.
-       - gtk-osx-gstreamer.modules: self explaining.
-       - gtk-osx-themes.modules: self explaining.
-       - gtk-osx-network.modules: The network/crypto stack and various
-         configurations of WebKit.
-
+       - gtk-osx-python.modules: Python bindings for Gtk.
+       - gtk-osx-gtkmm.modules: C++ wrappers for Gtk.
+       - gtk-osx-javascript.modules: GJS and its Mozilla JS (aka
+         spidermonkey) dependency.
+       - gtk-osx-gstreamer.modules: Gstreamer Library and modules.
+       - gtk-osx-network.modules: The network/crypto stack and WebKit.
        - gtk-osx-random.modules: "random stuff", has apps for testing GTK+.
   -->
 
   <include href="gtk-osx-bootstrap.modules"/>
-  <include href="gtk-osx-python.modules"/>
   <include href="gtk-osx-gstreamer.modules"/>
   <include href="gtk-osx-gtkmm.modules"/>
   <include href="gtk-osx-javascript.modules"/>
   <include href="gtk-osx-network.modules"/>
-  <include href="gtk-osx-themes.modules"/>
+  <include href="gtk-osx-python.modules"/>
   <include href="gtk-osx-random.modules"/>
 
   <!-- Dummy meson module to shut up a jhbuild warning. -->
@@ -51,16 +46,6 @@
     <branch repo="system"/>
   </systemmodule>
 
-  <metamodule id="meta-gtk-osx-gtk2">
-    <dependencies>
-      <dep package="gtk+-2.0"/>
-      <dep package="gtk-mac-integration"/>
-    </dependencies>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-    </after>
-  </metamodule>
-
   <metamodule id="meta-gtk-osx-gtk3">
     <dependencies>
       <dep package="gtk+-3.0"/>
@@ -78,7 +63,7 @@
   </autotools>
 
   <meson id="glib" mesonargs="-Dinternal_pcre=true -Dlibmount=disabled">
-    <branch tag="glib-2-66"/>
+    <branch tag="glib-2-68"/>
     <dependencies>
       <dep package="libffi"/>
     </dependencies>
@@ -89,14 +74,14 @@
        then build harfbuzz without cairo because cairo requires
        harfbuzz. -->
   <cmake id="freetype-no-harfbuzz" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE 
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release">
-    <branch module="freetype/freetype2" repo="nongnu"/>
+    <branch module="freetype/freetype2" repo="nongnu" revision="VER-2-10-4"/>
     <dependencies>
       <dep package="zlib"/>
     </dependencies>
   </cmake>
 
   <meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Ddocs=disabled -Dbenchmark=disabled">
-    <branch repo="github" module="harfbuzz/harfbuzz" tag="2.7.1"/>
+    <branch repo="github" module="harfbuzz/harfbuzz" tag="2.8.0"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="freetype-no-harfbuzz"/>
@@ -108,7 +93,7 @@
   </meson>
 
   <cmake id="freetype" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D 
CMAKE_BUILD_TYPE=Release">
-    <branch module="freetype/freetype2" repo="nongnu"/>
+    <branch module="freetype/freetype2" repo="nongnu" revision="VER-2-10-4"/>
     <dependencies>
       <dep package="harfbuzz-no-cairo"/>
       <dep package="zlib"/>
@@ -124,7 +109,7 @@
   </autotools>
 
   <autotools id="pixman" autogenargs="--disable-gtk --disable-mmx">
-    <branch repo="freedesktop" module="pixman" revision="0.38"/>
+    <branch repo="freedesktop" module="pixman" revision="0.40.0"/>
     <after>
       <dep package="meta-gtk-osx-bootstrap"/>
     </after>
@@ -135,7 +120,7 @@
        they are both built into cairo. -->
   <autotools id="cairo"
              autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
-    <branch repo="freedesktop" module="cairo" revision="1.16"/>
+    <branch repo="freedesktop-jralls" module="cairo" branch="1.16"/>
     <dependencies>
       <dep package="pixman"/>
       <dep package="meta-gtk-osx-bootstrap"/>
@@ -146,7 +131,7 @@
   </autotools>
 
   <meson id="gobject-introspection">
-    <branch tag="gnome-3-36" module="gobject-introspection"/>
+    <branch tag="1.68.0" module="gobject-introspection"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="cairo"/>
@@ -160,7 +145,7 @@
        to use introspection it requires harfbuzz to have
        introspection, and gobject-introspection needs cairo. -->
   <meson id="harfbuzz" mesonargs="-Dcoretext=enabled -Ddocs=disabled -Dbenchmark=disabled">
-    <branch repo="github" module="harfbuzz/harfbuzz" tag="2.7.1"/>
+    <branch repo="github" module="harfbuzz/harfbuzz" tag="2.8.0"/>
     <dependencies>
       <dep package="gobject-introspection"/>
       <dep package="cairo"/>
@@ -169,14 +154,14 @@
   </meson>
 
   <meson id="fribidi" mesonargs="-Ddocs=false">
-    <branch module="fribidi/fribidi" repo="github" tag="v1.0.9"/>
+    <branch module="fribidi/fribidi" repo="github" tag="v1.0.10"/>
     <dependencies>
       <!--dep package="c2man"/ -->
     </dependencies>
   </meson>
 
   <meson id="pango">
-    <branch tag="pango-1-46"/>
+    <branch tag="1.48.4"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="cairo"/>
@@ -202,7 +187,7 @@
 
   <meson id="gdk-pixbuf" mesonargs="-Dx11=false -Dman=false">
     <!--gdk-pixbuf is releasing from master-->
-    <branch/>
+    <branch tag="2.42.4"/>
     <dependencies>
       <dep package="pango"/>
       <dep package="gobject-introspection"/>
@@ -221,29 +206,44 @@
     </dependencies>
   </autotools>
 
-  <autotools id="gtk+-2.0" autogenargs="--with-gdktarget=quartz --enable-introspection=no 
--enable-quartz-relocation --disable-visibility">
-    <branch module="gtk" revision="gtk-2-24"/>
+  <autotools id="gtk+-3.0"
+         autogenargs="--enable-quartz-backend --enable-quartz-relocation --disable-colord">
+    <branch module="gtk" checkoutdir="gtk+-3.0" revision="gtk-3-24"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="pango"/>
       <dep package="atk"/>
       <dep package="gdk-pixbuf"/>
       <dep package="gobject-introspection"/>
+      <dep package="libepoxy"/>
     </dependencies>
     <after>
       <dep package="meta-gtk-osx-bootstrap"/>
     </after>
   </autotools>
 
-  <autotools id="gtk+-3.0"
+  <meson id="graphene" mesonargs="-Dtests=false -Dbenchmarks=false">
+    <branch repo="github" revision="1.10.4" module="ebassi/graphene"/>
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="gobject-introspection"/>
+    </dependencies>
+  </meson>
+
+  <autotools id="libsass" autogen-sh="autoreconf"
+             autogenargs="--disable-tests --disable-static">
+    <branch repo="github" revision="3.6.4" module="sass/libsass"/>
+  </autotools>
+     
+  <autotools id="gtk-4"
          autogenargs="--enable-quartz-backend --enable-quartz-relocation --disable-colord">
-    <branch module="gtk" checkoutdir="gtk+-3.0" revision="gtk-3-24"/>
+    <branch module="gtk" checkoutdir="gtk-4.0" revision="gtk-4.0"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="pango"/>
       <dep package="atk"/>
-      <dep package="gdk-pixbuf"/>
-      <dep package="gobject-introspection"/>
+      <dep package="graphene"/>
+      <dep package="libsass"/>
       <dep package="libepoxy"/>
     </dependencies>
     <after>
@@ -255,34 +255,27 @@
 <!--gtk-mac-integration releases from master"-->
     <branch />
     <dependencies>
-    </dependencies>
-    <after>
-      <dep package="gtk+-2.0"/>
       <dep package="gtk+-3.0"/>
-      <dep package="meta-gtk-osx-bootstrap"/>
-    </after>
+    </dependencies>
   </autotools>
 
   <autotools id="adwaita-icon-theme">
-    <branch revision="gnome-3-30"/>
+    <branch revision="3.38.0"/>
     <dependencies>
       <dep package="librsvg"/>
     </dependencies>
   </autotools>
 
-  <!-- librsvg is converting to the Rust language. This requires
-       substantial infrastructure that's resistant to installing with
-       jhbuild, so we'll freeze at the 2.40 branch. -->
   <autotools id="librsvg" autogenargs="--disable-Bsymbolic">
-    <branch module="librsvg" tag="librsvg-2-40"/>
+    <branch module="librsvg" branch="librsvg-2.50"/>
     <dependencies>
       <dep package="libcroco"/>
       <dep package="freetype"/>
     </dependencies>
     <after>
-<!-- Circular dependency if we depend on meta-gtk-osx or meta-gtk-osx-gtk3 -->
-      <dep package="gtk+-2.0"/>
+<!-- Circular dependency if we depend on meta-gtk-osx-gtk3 -->
       <dep package="gtk+-3.0"/>
+      <dep package="gtk-4"/>
     </after>
   </autotools>
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]