<?xml version="1.0"?><!--*- mode: nxml; indent-tabs-mode: nil -*-->
<!DOCTYPE moduleset SYSTEM "moduleset.dtd">
<?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
<!-- vim:set ts=2 expandtab: -->
<moduleset>

<!-- git repos -->
  <repository type="git" name="gitlab.gnome.org"
      href="https://gitlab.gnome.org/"/>
  <repository type="git" name="gitlab.gnome.org/GNOME" default="yes"
      href="https://gitlab.gnome.org/GNOME/"/>
  <repository type="git" name="gitlab.freedesktop.org"
      href="https://gitlab.freedesktop.org/"/>
  <repository type="git" name="github.com"
      href="https://github.com/"/>

<!-- tarball repos -->
  <repository type="tarball" name="freedesktop.org"
      href="https://freedesktop.org/"/>
  <repository type="tarball" name="gnome.org"
      href="https://download.gnome.org/sources/"/>
  <repository type="tarball" name="kernel.org"
      href="https://www.kernel.org"/>

<include href="gnome-suites-core-deps-latest.modules"/>


<!-- Please try to keep organized alphabetically by section:

     1) Core User Shell (hosted on git.gnome.org)
     2) Core Utilities (anything that's an app)
     3) Core OS Services (non-GNOME, mostly freedesktop stuff)
     4) Metamodules

     All modules in this file should be in a metamodule.
  -->


<!-- Core User Shell -->

  <meson id="adwaita-icon-theme">
    <branch/>
    <dependencies>
      <dep package="gtk4"/>
      <dep package="hicolor-icon-theme"/>
      <dep package="gnome-common"/>
      <dep package="librsvg"/>
    </dependencies>
  </meson>

  <meson id="at-spi2-core">
    <if condition-unset="x11">
      <mesonargs value="-Denable-x11=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="dbus"/>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
      <dep package="libxml2"/>
      <if condition-set="x11">
        <dep package="libXtst"/>
        <dep package="x11"/>
        <dep package="xi"/>
        <dep package="xkbcommon-x11"/>
      </if>
    </dependencies>
  </meson>

  <meson id="dconf">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="dbus"/>
      <dep package="vala"/>
      <dep package="bash-completion"/>
    </dependencies>
  </meson>

  <meson id="gdm" mesonargs="-Dsystemdsystemunitdir='' -Dlog-dir=${prefix}/var/log/gdm">
    <if condition-unset="linux">
      <mesonargs value="-Dplymouth=disabled"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="accountsservice"/>
      <dep package="dconf"/>
      <dep package="fontconfig"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libcanberra"/>
      <dep package="libgudev"/>
      <dep package="nss"/>
      <dep package="pam"/>
      <if condition-set="linux">
        <dep package="plymouth"/>
      </if>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
    <suggests>
      <dep package="yelp-tools"/>
    </suggests>
  </meson>

  <meson id="glib-networking" mesonargs="-Dinstalled_tests=true">
    <if condition-set="freebsd">
      <mesonargs value="-Dca_certificates_path=/usr/local/share/certs/ca-root-nss.crt"/>
    </if>
    <if condition-set="macos">
      <mesonargs value="-Dpkcs11_support=false -Dtls_support=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="libproxy"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gnutls"/>
      <if condition-unset="macos">
        <dep package="p11-kit"/>
      </if>
    </dependencies>
  </meson>

  <meson id="gnome-backgrounds">
    <branch/>
    <dependencies>
      <dep package="gettext"/>
      <dep package="glib"/>
    </dependencies>
  </meson>

  <meson id="gnome-bluetooth">
    <branch/>
    <dependencies>
      <dep package="gtk4"/>
      <dep package="gtk-doc"/>
      <dep package="glib"/>
      <dep package="gsound"/>
      <dep package="libadwaita"/>
      <dep package="libnotify"/>
      <dep package="libudev"/>
    </dependencies>
  </meson>

  <!-- Not an app, but a service for gnome-control-center -->
  <meson id="gnome-color-manager">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="colord-gtk"/>
      <dep package="exiv2"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="gtk+-3"/>
      <dep package="intltool"/>
      <dep package="lcms2"/>
      <dep package="libcanberra"/>
      <dep package="libexif"/>
      <dep package="libtiff"/>
      <dep package="vte"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <meson id="gnome-control-center">
    <branch/>
    <dependencies>
      <dep package="accountsservice"/>
      <dep package="blueprint-compiler"/>
      <dep package="clutter-gtk"/>
      <dep package="colord"/>
      <dep package="colord-gtk"/>
      <dep package="fontconfig"/>
      <dep package="gdk-pixbuf"/>
      <dep package="glib"/>
      <dep package="gtk4"/>
      <dep package="gnome-desktop"/>
      <dep package="gnome-online-accounts"/>
      <dep package="gnome-settings-daemon"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gsound"/>
      <dep package="ibus"/>
      <dep package="intltool"/>
      <dep package="iso-codes"/>
      <dep package="krb5"/>
      <dep package="libcanberra-gtk3"/>
      <dep package="libgtop"/>
      <dep package="libhandy"/>
      <dep package="libpwquality"/>
      <dep package="libxml2"/>
      <dep package="polkit-gobject"/>
      <dep package="pulseaudio"/>
      <dep package="smbclient"/>
      <dep package="sound-theme-freedesktop"/>
      <dep package="upower"/>
      <if condition-set="linux">
        <dep package="gnome-bluetooth"/>
        <dep package="libnma-gtk4"/>
        <dep package="libwacom"/>
      </if>
    </dependencies>
    <suggests>
      <dep package="cups"/>
      <dep package="cheese"/>
      <dep package="gnome-color-manager"/>
      <dep package="gstreamer"/>
      <dep package="ibus-libpinyin"/>
      <dep package="ibus-anthy"/>
      <dep package="ibus-hangul"/>
      <dep package="libgnomekbd"/>
      <if condition-set="linux">
        <dep package="ModemManager"/>
        <dep package="NetworkManager"/>
        <dep package="console-menu"/>
      </if>
    </suggests>
  </meson>

  <meson id="gnome-desktop">
    <if condition-unset="udev-hwdb">
      <mesonargs  value="-Dudev=disabled"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="libxkbfile"/>
      <dep package="libXrandr"/>
      <dep package="gdk-pixbuf"/>
      <dep package="glib"/>
      <dep package="gtk4"/>
      <dep package="gtk+-3"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="iso-codes"/>
      <dep package="yelp-tools"/> <!-- for the docs -->
      <dep package="xkeyboard-config"/>
      <if condition-set="udev-hwdb">
        <dep package="libudev"/>
      </if>
      <if condition-set="linux">
        <dep package="libseccomp"/>
      </if>
    </dependencies>
  </meson>

  <autotools id="gnome-getting-started-docs">
    <branch/>
    <dependencies>
      <dep package="yelp-tools"/>
    </dependencies>
  </autotools>

  <meson id="gnome-keyring">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="dbus"/>
      <dep package="gcr"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libgcrypt"/>
      <dep package="libtasn1"/>
      <dep package="p11-kit"/>
    </dependencies>
  </meson>

  <autotools id="gnome-menus">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="gnome-common"/>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
    </dependencies>
  </autotools>

  <meson id="gnome-session">
    <if condition-unset="systemd">
      <mesonargs value='-Dsystemd=false -Dsystemd_journal=false -Dsystemd_session=disable -Dconsolekit=true'/>
    </if>
    <branch/>
    <dependencies>
      <dep package="egl"/>
      <dep package="intltool"/>
      <dep package="gl"/>
      <dep package="gtk+-3"/>
      <dep package="gnome-desktop"/>
      <dep package="json-glib"/>
      <dep package="upower"/>
      <dep package="libXcomposite"/>
      <dep package="mesa-libGLES"/>
      <dep package="sm"/>
      <dep package="xtrans"/>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
  </meson>

  <meson id="gnome-settings-daemon">
    <if condition-unset="linux">
      <mesonargs value="-Dnetwork_manager=false -Drfkill=false -Dwwan=false"/>
    </if>
    <if condition-unset="systemd">
      <mesonargs value="-Dsystemd=false"/>
    </if>
    <if condition-unset="wayland">
      <mesonargs value="-Dwayland=false"/>
    </if>
    <if condition-unset="udev">
      <mesonargs value="-Dgudev=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="colord"/>
      <dep package="geoclue"/>
      <dep package="geocode-glib"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gtk+-3"/>
      <dep package="intltool"/>
      <dep package="libcanberra-gtk3"/>
      <dep package="libgweather"/>
      <dep package="libnotify"/>
      <dep package="PackageKit"/>
      <dep package="polkit-gobject"/>
      <dep package="pulseaudio"/>
      <dep package="upower"/>
      <dep package="ibus"/>
      <dep package="cups"/>
      <if condition-set="linux">
        <dep package="librsvg"/>
        <dep package="libwacom"/>
        <dep package="xorg-wacom"/>
        <dep package="NetworkManager"/>
      </if>
      <if condition-set="udev">
        <dep package="libgudev"/>
      </if>
    </dependencies>
    <suggests>
      <!-- <dep package="xkbfile"/> -->
    </suggests>
  </meson>

  <meson id="gnome-shell">
    <if condition-unset="linux">
      <mesonargs value="-Dnetworkmanager=false"/>
    </if>
    <if condition-unset="systemd">
      <mesonargs value="-Dsystemd=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="accountsservice"/>
      <dep package="asciidoc"/>
      <dep package="dconf"/>
      <dep package="evolution-data-server"/>
      <dep package="gdm"/> <!-- runtime dependency on Gdm-1.0.typelib-->
      <dep package="gjs"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="adwaita-icon-theme"/>
      <dep package="gnome-settings-daemon"/>
      <dep package="gobject-introspection"/>
      <dep package="gtk+-3"/>
      <dep package="gtk4"/>
      <dep package="intltool"/>
      <dep package="json-glib"/>
      <dep package="libcanberra"/>
      <dep package="libgweather"/>
      <dep package="libsoup"/>
      <dep package="mutter"/>
      <dep package="polkit-agent"/>
      <dep package="pulseaudio"/>
      <dep package="sassc"/>
      <dep package="startup-notification"/>
      <dep package="telepathy-glib"/>
      <dep package="telepathy-logger"/>
      <dep package="upower"/>
      <dep package="gcr"/>
      <dep package="gnome-autoar"/>
      <if condition-set="linux">
        <dep package="gnome-bluetooth"/>
        <dep package="libnma"/>
        <dep package="sysprof"/>
        <dep package="NetworkManager"/>
      </if>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
    <suggests>
      <dep package="gstreamer"/>
      <dep package="libgnomekbd"/>
    </suggests>
    <after>
      <dep package="librsvg"/>
    </after>
  </meson>

  <meson id="gnome-shell-extensions" mesonargs="-Dextension_set=classic">
    <branch/>
    <dependencies>
      <dep package="gnome-shell"/>
      <dep package="gnome-menus"/>
    </dependencies>
  </meson>

  <autotools id="gnome-themes-extra" autogenargs="--disable-gtk2-engine">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="cantarell-fonts"/>
      <dep package="librsvg"/>
      <dep package="gtk+-3"/>
    </dependencies>
  </autotools>

  <autotools id="gnome-user-docs">
    <branch/>
    <dependencies>
      <dep package="yelp-tools"/>
    </dependencies>
  </autotools>

  <meson id="gnome-user-share">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libsystemd"/>
      <dep package="nautilus"/>
    </dependencies>
  </meson>

  <meson id="gsettings-desktop-schemas">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
    </dependencies>
  </meson>

  <meson id="gvfs" mesonargs="-Dsystemduserunitdir=no -Dtmpfilesdir=no -Dinstalled_tests=true">
    <if condition-unset="linux">
      <mesonargs value="-Dadmin=false -Dudisks2=false"/>
    </if>
    <if condition-unset="systemd">
      <mesonargs value="-Dlogind=false"/>
    </if>
    <if condition-unset="udev">
      <mesonargs value="-Dgudev=false -Dcdda=false -Dgphoto2=false -Dmtp=false"/>
    </if>
    <!-- FreeBSD's libusb doesn't implement libusb_interrupt_event_handler
         https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224454 -->
    <if condition-set="freebsd">
      <mesonargs value="-Dlibusb=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="avahi"/>
      <dep package="dbus"/>
      <dep package="fuse"/>
      <dep package="glib"/>
      <dep package="gcr"/>
      <dep package="gnome-online-accounts"/>
      <dep package="libarchive"/>
      <dep package="libbluray"/>
      <dep package="libcap"/>
      <dep package="libgcrypt"/>
      <dep package="libgdata"/>
      <dep package="libimobiledevice"/>
      <dep package="libnfs"/>
      <dep package="libplist-2.0"/>
      <dep package="libsecret"/>
      <dep package="libsoup3"/>
      <dep package="libxml2"/>
      <dep package="polkit-gobject"/>
      <dep package="smbclient"/>
      <if condition-set="linux">
        <dep package="udisks"/>
      </if>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
      <if condition-set="udev">
        <dep package="libcdio-paranoia"/>
        <dep package="libgphoto2"/>
        <dep package="libgudev"/>
        <dep package="libmtp"/>
      </if>
      <if condition-unset="freebsd">
        <dep package="libusb1"/>
      </if>
    </dependencies>
  </meson>

  <autotools id="mousetweaks">
    <branch/>
    <dependencies>
      <dep package="gtk+-3"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="libXcursor"/>
      <dep package="libXfixes"/>
      <dep package="libXtst"/>
    </dependencies>
  </autotools>

  <meson id="mutter">
    <if condition-unset="linux">
      <mesonargs value="-Dprofiler=false -Dremote_desktop=false -Dudev=false"/>
    </if>
    <if condition-unset="systemd">
      <mesonargs value="-Dnative_backend=false"/>
    </if>
    <if condition-set="wayland">
      <if condition-set="freebsd">
        <mesonargs value="-Dxwayland_path=/usr/local/bin/Xwayland"/>
      </if>
    </if>
    <if condition-unset="wayland">
      <mesonargs value="-Dtests=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="cairo"/>
      <dep package="cvt"/>
      <dep package="egl"/>
      <dep package="gdk-pixbuf"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="gobject-introspection"/>
      <dep package="graphene"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gtk+-3"/>
      <dep package="gtk-doc"/>
      <dep package="json-glib"/>
      <dep package="libcanberra"/>
      <dep package="libei"/>
      <dep package="libX11"/>
      <dep package="libXcomposite"/>
      <dep package="libXcursor"/>
      <dep package="libXdamage"/>
      <dep package="libXext"/>
      <dep package="libXfixes"/>
      <dep package="libXi"/>
      <dep package="libXinerama"/>
      <dep package="libXrandr"/>
      <dep package="libXrender"/>
      <dep package="libxkbcommon"/>
      <dep package="libxkbfile"/>
      <dep package="mesa-libEGL"/> <!-- provides EGL/eglmesaext.h -->
      <dep package="mesa-libGLES"/>
      <dep package="pango"/>
      <dep package="sm"/>
      <dep package="startup-notification"/>
      <dep package="upower"/>
      <dep package="xcb-randr"/>
      <dep package="xcb-res"/>
      <dep package="xkeyboard-config"/>
      <dep package="xvfb-run"/>
      <dep package="zenity"/>
      <if condition-set="linux">
        <dep package="sysprof"/>
      </if>
      <if condition-set="wayland">
        <dep package="libgudev"/>
        <dep package="gbm"/>
        <dep package="libdrm"/>
        <dep package="xwayland"/>
        <if condition-set="linux">
          <dep package="libinput"/>
          <dep package="libsystemd"/>
          <dep package="pipewire"/>
          <dep package="wayland"/>
        </if>
        <if condition-set="systemd">
          <dep package="cvt"/>
        </if>
      </if>
    </dependencies>
  </meson>

  <autotools id="network-manager-applet"
             autogenargs="--enable-more-warnings=no --disable-migration --without-bluetooth --without-team --without-selinux">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="dbus-glib"/>
      <dep package="file"/>
      <dep package="gnome-bluetooth"/>
      <dep package="gobject-introspection"/>
      <dep package="gtk+-3"/>
      <dep package="libgudev"/>
      <dep package="iso-codes"/>
      <dep package="libsecret"/>
      <dep package="NetworkManager"/>
      <dep package="libnma"/>
      <dep package="libnotify"/>
    </dependencies>
    <suggests>
      <dep package="mobile-broadband-provider-info"/>
    </suggests>
  </autotools>

  <meson id="rygel">
    <branch/>
    <dependencies>
      <dep package="vala"/>
      <dep package="gupnp"/>
      <dep package="gupnp-av"/>
      <dep package="gupnp-dlna"/>
      <dep package="libgee"/>
      <dep package="tracker-2"/>
      <dep package="libmediaart"/>
    </dependencies>
  </meson>

  <!-- mc 5.16 doesn't build against upower 1.0 -->
  <autotools id="telepathy-mission-control"
             autogenargs="--disable-upower"
             supports-non-srcdir-builds="no">
    <branch repo="github.com"
            module="TelepathyIM/telepathy-mission-control.git"
            revision="telepathy-mission-control-5.16"
            checkoutdir="telepathy-mission-control"/>
    <dependencies>
      <dep package="dbus"/>
      <dep package="dbus-glib"/>
      <dep package="glib"/>
      <dep package="gtk-doc"/>
      <dep package="libxslt"/>
      <dep package="telepathy-glib"/>
      <if condition-set="linux">
        <dep package="NetworkManager"/>
      </if>
    </dependencies>
  </autotools>

  <autotools id="vino">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libsoup"/>
    </dependencies>
    <suggests>
      <dep package="avahi"/>
      <dep package="gnutls"/>
      <dep package="libgcrypt"/>
      <dep package="libnotify"/>
      <dep package="libsecret"/>
      <dep package="telepathy-glib"/>
      <if condition-set="linux">
        <dep package="NetworkManager"/>
      </if>
    </suggests>
  </autotools>


<!-- Core Utilities -->

  <meson id="baobab">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="glib"/>
      <dep package="gtk4"/>
      <dep package="libadwaita"/>
      <dep package="librsvg"/>
      <dep package="vala"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <meson id="cheese">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="intltool"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="gstreamer"/>
      <dep package="clutter-gst"/>
      <dep package="clutter-gtk"/>
      <dep package="libcanberra"/>
      <dep package="vala"/>
      <dep package="gnome-video-effects"/>
      <dep package="librsvg"/>
      <dep package="gnome-desktop"/>
      <if condition-set="udev">
        <dep package="libgudev"/>
      </if>
    </dependencies>
  </meson>

  <meson id="eog">
    <branch/>
    <dependencies>
      <dep package="gettext"/>
      <dep package="glib"/>
      <dep package="gdk-pixbuf"/>
      <dep package="gtk+-3"/>
      <dep package="gnome-desktop"/>
      <dep package="gobject-introspection"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="libjpeg"/>
      <dep package="libpeas-1"/>
      <dep package="libxml2"/>
      <dep package="shared-mime-info"/>
      <dep package="yelp-tools"/>
    </dependencies>
    <suggests>
      <dep package="exempi"/>
      <dep package="libexif"/>
      <dep package="lcms2"/>
      <dep package="librsvg"/>
    </suggests>
  </meson>

  <meson id="epiphany">
    <branch/>
    <dependencies>
      <dep package="WebKit"/>
      <dep package="appstream-glib"/>
      <dep package="cairo"/>
      <dep package="gcr"/>
      <dep package="gdk-pixbuf"/>
      <dep package="gettext"/>
      <dep package="glib"/>
      <dep package="glib-networking"/>
      <dep package="gtk+-3"/>
      <dep package="hogweed"/>
      <dep package="iso-codes"/>
      <dep package="json-glib"/>
      <dep package="libdazzle"/>
      <dep package="libhandy-1"/>
      <dep package="libnotify"/>
      <dep package="libportal"/>
      <dep package="libsecret"/>
      <dep package="libsoup"/>
      <dep package="libxml2"/>
      <dep package="libxslt"/>
      <dep package="nettle"/>
      <dep package="sqlite3"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <meson id="papers" mesonargs="-Dnautilus=false -Dprofile=devel -Dintrospection=disabled -Ddocumentation=false
                                -Duser_doc=false -Dthumbnailer=false -Dtests=false -Dfile_tests=false">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="glib"/>
      <dep package="gtk4"/>
      <dep package="libadwaita"/>
      <dep package="zlib"/>
      <dep package="exempi"/>
      <dep package="poppler"/>
      <dep package="cargo"/>
      <dep package="gobject-introspection"/>
    </dependencies>
  </meson>

  <meson id="file-roller">
    <branch/>
    <dependencies>
      <dep package="file"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="intltool"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <meson id="gedit">
    <branch/>
    <dependencies>
      <dep package="libpeas-1"/>
      <dep package="yelp-tools"/>
      <dep package="gspell"/>
      <dep package="gtksourceview-4"/>
      <dep package="tepl"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="python3-devel"/>
      <if condition-set="macos">
        <dep package="gtk-mac-integration"/>
      </if>
    </dependencies>
  </meson>

  <meson id="gnome-boxes">
    <branch/>
    <dependencies>
      <dep package="WebKit"/>
      <dep package="glib"/>
      <dep package="libxml2"/>
      <dep package="gtk-vnc"/>
      <dep package="json-glib"/>
      <dep package="libgovirt"/>
      <dep package="libosinfo"/>
      <dep package="libsecret"/>
      <dep package="libusb1-1.0.9"/>
      <dep package="libvirt-glib"/>
      <dep package="gtk+-3"/>
      <dep package="spice-gtk"/>
      <dep package="vala"/>
      <dep package="tracker-2"/>
      <dep package="tracker-miners-2"/>
      <if condition-set="udev">
        <dep package="libgudev"/>
      </if>
    </dependencies>
  </meson>

  <meson id="gnome-calculator">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="gtksourceview-4"/>
      <dep package="libhandy-1"/>
      <dep package="libsoup"/>
      <dep package="libxml2"/>
      <dep package="mpc"/>
      <dep package="mpfr"/>
      <dep package="vala"/>
      <dep package="yelp-tools"/>
      <dep package="libgee"/>
    </dependencies>
  </meson>

  <meson id="gnome-calendar">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="gnome-online-accounts"/>
      <dep package="evolution-data-server"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libdazzle"/>
    </dependencies>
  </meson>

  <meson id="gnome-characters">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="gjs"/>
      <dep package="gtk+-3"/>
      <dep package="libunistring"/>
    </dependencies>
  </meson>

  <meson id="gnome-clocks">
    <branch/>
    <dependencies>
      <dep package="vala"/>
      <dep package="gtk+-3"/>
      <dep package="gsound"/>
      <dep package="gnome-desktop"/>
      <dep package="libgweather-3"/>
      <dep package="libhandy-1"/>
      <dep package="geoclue"/>
      <dep package="geocode-glib"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <meson id="gnome-contacts">
    <branch/>
    <dependencies>
      <dep package="folks"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="gnome-online-accounts"/>
      <dep package="gtk+-3"/>
      <dep package="libgee"/>
      <dep package="libhandy-1"/>
      <dep package="telepathy-glib"/>
      <dep package="vala"/>
      <dep package="libchamplain"/>
    </dependencies>
    <suggests>
      <dep package="cheese"/>
      <dep package="gstreamer"/>
    </suggests>
  </meson>

  <meson id="gnome-disk-utility">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="glib"/>
      <dep package="gnome-settings-daemon"/>
      <dep package="gtk+-3"/>
      <dep package="libnotify"/>
      <dep package="libpwquality"/>
      <dep package="libsecret"/>
      <dep package="udisks"/>
      <dep package="dvdread"/>
    </dependencies>
  </meson>

  <meson id="gnome-font-viewer">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="gtk+-3"/>
    </dependencies>
  </meson>

  <meson id="gnome-initial-setup">
    <branch/>
    <dependencies>
      <dep package="accountsservice"/>
      <dep package="geoclue"/>
      <dep package="gdm"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="gnome-desktop"/>
      <dep package="gnome-keyring"/>
      <dep package="gnome-online-accounts"/>
      <dep package="gstreamer"/>
      <dep package="libgweather-3"/>
      <dep package="libpwquality"/>
      <dep package="WebKit"/>
      <if condition-set="linux">
        <dep package="libnma"/>
        <dep package="NetworkManager"/>
      </if>
    </dependencies>
    <suggests>
      <dep package="upower"/>
      <dep package="gnome-getting-started-docs"/>
    </suggests>
  </meson>

  <meson id="gnome-logs">
    <branch/>
    <dependencies>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gtk4"/>
      <dep package="itstool"/>
      <dep package="libadwaita"/>
      <dep package="libsystemd"/>
    </dependencies>
  </meson>

  <meson id="gnome-maps">
    <branch/>
    <dependencies>
      <dep package="clutter-gtk"/>
      <dep package="gjs"/>
      <dep package="glib"/>
      <dep package="glib-networking"/>
      <dep package="gobject-introspection"/>
      <dep package="gtk+-3"/>
      <dep package="gnome-desktop"/>
      <dep package="libchamplain"/>
      <dep package="geocode-glib"/>
      <dep package="geoclue"/>
      <dep package="gnome-online-accounts"/>
      <dep package="libgfbgraph"/>
      <dep package="folks"/>
      <dep package="libgee"/>
      <dep package="librsvg"/>
    </dependencies>
  </meson>

  <meson id="gnome-music">
    <branch/>
    <dependencies>
      <dep package="gobject-introspection"/>
      <dep package="gnome-online-accounts"/>
      <dep package="grilo"/>
      <dep package="grilo-plugins"/>
      <dep package="gtk+-3"/>
      <dep package="gvfs"/>
      <dep package="libdazzle"/>
      <dep package="libmediaart"/>
      <dep package="pygobject"/>
      <dep package="tracker-2"/>
      <dep package="tracker-miners-2"/>
    </dependencies>
  </meson>

  <meson id="gnome-photos">
    <branch/>
    <dependencies>
      <dep package="babl"/>
      <dep package="gegl"/>
      <dep package="cairo"/>
      <dep package="gdk-pixbuf"/>
      <dep package="geocode-glib"/>
      <dep package="gexiv2"/>
      <dep package="glib"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gnome-online-accounts"/>
      <dep package="gnome-online-miners"/>
      <dep package="grilo"/>
      <dep package="grilo-plugins"/>
      <dep package="gtk+-3"/>
      <dep package="libdazzle"/>
      <dep package="libgdata"/>
      <dep package="libgfbgraph"/>
      <dep package="libjpeg"/>
      <dep package="libpng"/>
      <dep package="tracker-2"/>
      <dep package="tracker-miners-2"/>
    </dependencies>
  </meson>

  <meson id="gnome-screenshot">
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
    </dependencies>
  </meson>

  <meson id="gnome-software">
    <if condition-unset="linux">
      <mesonargs value="-Dflatpak=false -Dfwupd=false"/>
    </if>
    <if condition-unset="udev">
      <mesonargs value="-Dgudev=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="appstream"/>
      <dep package="glib"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gspell"/>
      <dep package="gtk+-3"/>
      <dep package="libsoup"/>
      <dep package="libxmlb"/>
      <dep package="malcontent"/>
      <dep package="PackageKit"/>
      <dep package="valgrind"/>
      <if condition-set="linux">
        <dep package="fwupd"/>
      </if>
    </dependencies>
  </meson>

  <meson id="gnome-system-monitor">
    <if condition-unset="systemd">
      <mesonargs value="-Dsystemd=false"/>
    </if>
    <branch/>
    <dependencies>
      <dep package="glib"/>
      <dep package="libgtop"/>
      <dep package="gtk+-3"/>
      <dep package="gtkmm-3"/>
      <dep package="libxml2"/>
      <dep package="librsvg"/>
    </dependencies>
  </meson>

  <meson id="gnome-terminal">
    <branch/>
    <dependencies>
      <dep package="dconf"/>
      <dep package="intltool"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="libuuid"/>
      <dep package="vte"/>
      <dep package="yelp-tools"/>
      <dep package="nautilus"/>
      <dep package="appstream-glib"/>
    </dependencies>
    <suggests>
      <dep package="gnome-shell"/>
    </suggests>
  </meson>

  <meson id="gnome-todo">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="gnome-online-accounts"/>
      <dep package="evolution-data-server"/>
      <dep package="glib"/>
      <dep package="gtk4"/>
      <dep package="libpeas-1"/>
    </dependencies>
  </meson>

  <meson id="gnome-weather">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="gdk-pixbuf"/>
      <dep package="geoclue"/>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
      <dep package="gtk+-3"/>
      <dep package="intltool"/>
      <dep package="libgweather-3"/>
      <dep package="gjs"/>
    </dependencies>
  </meson>

  <meson id="nautilus" mesonargs="-Dselinux=false">
    <branch/>
    <dependencies>
      <dep package="gettext"/>
      <dep package="gexiv2"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="gnome-autoar"/>
      <dep package="pango"/>
      <dep package="libhandy-1"/>
      <dep package="libxml2"/>
      <dep package="gnome-desktop"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="tinysparql"/>
      <dep package="localsearch"/>
      <dep package="exempi"/>
      <dep package="libexif"/>
      <dep package="gstreamer"/>
      <dep package="gobject-introspection"/>
    </dependencies>
  </meson>

  <autotools id="orca">
    <branch/>
    <dependencies>
      <dep package="gtk+-3"/>
      <dep package="at-spi2-core"/>
      <dep package="gobject-introspection"/>
      <dep package="intltool"/>
      <dep package="pyatspi2"/>
      <dep package="pygobject"/>
      <dep package="yelp-tools"/>
    </dependencies>
    <suggests>
      <dep package="speech-dispatcher"/>
    </suggests>
  </autotools>

  <meson id="simple-scan">
    <branch/>
    <dependencies>
      <dep package="cairo"/>
      <dep package="gdk-pixbuf"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="itstool"/>
      <dep package="libgusb"/>
      <dep package="sane"/>
      <dep package="vala"/>
      <dep package="zlib"/>
    </dependencies>
    <suggests>
      <dep package="PackageKit"/>
      <dep package="colord-gtk"/>
    </suggests>
  </meson>

  <meson id="sushi">
    <branch/>
    <dependencies>
      <dep package="intltool"/>
      <dep package="gobject-introspection"/>
      <dep package="gjs"/>
      <dep package="libmusicbrainz"/>
      <dep package="evince"/>
      <dep package="clutter"/>
      <dep package="clutter-gtk"/>
      <dep package="clutter-gst"/>
      <dep package="gtksourceview-4"/>
      <dep package="WebKit"/>
      <dep package="gstreamer"/>
      <dep package="gtk+-3"/>
    </dependencies>
  </meson>

  <meson id="totem">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="cairo"/>
      <dep package="gdk-pixbuf"/>
      <dep package="glib"/>
      <dep package="gnome-desktop"/>
      <dep package="grilo"/>
      <dep package="grilo-plugins"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gstreamer"/>
      <dep package="gtk+-3"/>
      <dep package="intltool"/>
      <dep package="iso-codes"/>
      <dep package="libhandy"/>
      <dep package="libpeas"/>
      <dep package="totem-pl-parser"/>
      <dep package="yelp-tools"/>
    </dependencies>
  </meson>

  <autotools id="yelp">
    <branch/>
    <dependencies>
      <dep package="appstream-glib"/>
      <dep package="intltool"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="libxml2"/>
      <dep package="libxslt"/>
      <dep package="m4-common"/>
      <dep package="WebKit"/>
      <dep package="yelp-xsl"/>
    </dependencies>
  </autotools>


<!-- Core OS Services -->

  <meson id="accountsservice">
    <branch repo="gitlab.freedesktop.org"
            module="accountsservice/accountsservice.git"
            checkoutdir="accountsservice"/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
      <dep package="polkit-gobject"/>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
  </meson>

  <meson id="NetworkManager"
         mesonargs="-Dlibaudit=no -Dovs=false -Dnmtui=false -Dqt=false -Dcrypto=gnutls -Diwd=true">
    <branch repo="gitlab.freedesktop.org"
            module="NetworkManager/NetworkManager.git"
            checkoutdir="NetworkManager"/>
    <dependencies>
      <dep package="libndp"/>
      <dep package="libnl"/>
      <dep package="libnl-genl"/>
      <dep package="libnl-route"/>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
      <dep package="pygobject"/>
      <dep package="iptables"/>
      <dep package="dbus-glib"/>
      <dep package="libgcrypt"/>
      <dep package="libuuid"/>
      <dep package="gtk-doc"/>
      <dep package="polkit-agent"/>
      <dep package="libgudev"/>
      <dep package="gnutls"/>
      <dep package="readline"/>
      <dep package="ppp"/>
      <dep package="vala"/>
      <dep package="mobile-broadband-provider-info"/>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
  </meson>

  <!-- Vala disabled for https://github.com/hughsie/PackageKit/issues/212 -->
  <meson id="PackageKit" mesonargs="-Dbash_completion=false -Dsystemdsystemunitdir=no">
    <if condition-unset="linux">
      <mesonargs value="-Dsystemd=false -Doffline_update=false"/>
    </if>

    <branch repo="github.com" module="hughsie/PackageKit.git"/>
    <dependencies>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="dbus"/>
      <dep package="dbus-glib"/>
      <if condition-set="systemd">
        <dep package="libsystemd"/>
      </if>
    </dependencies>
    <suggests>
      <dep package="polkit-gobject"/>
      <if condition-set="linux">
        <dep package="NetworkManager"/>
      </if>
      <if condition-set="udev">
        <dep package="libgudev"/>
      </if>
    </suggests>
  </meson>

  <meson id="pipewire"
          mesonargs="-Dpipewire-jack=disabled -Djack=disabled -Dvulkan=disabled -Dsession-managers=">
    <branch repo="gitlab.freedesktop.org" module="pipewire/pipewire"/>
    <dependencies>
      <dep package="alsa"/>
      <dep package="bluez"/>
      <dep package="sbc"/>
      <dep package="dbus"/>
      <dep package="libv4l"/>
      <dep package="gstreamer"/>
      <dep package="pulseaudio"/>
    </dependencies>
  </meson>

  <meson id="wireplumber">
    <branch repo="gitlab.freedesktop.org" module="pipewire/wireplumber"/>
    <dependencies>
      <dep package="pipewire"/>
      <dep package="glib"/>
    </dependencies>
  </meson>

  <meson id="upower"
         mesonargs="-Dsystemdsystemunitdir=no">
    <branch repo="gitlab.freedesktop.org" module="upower/upower.git" />
    <dependencies>
      <dep package="glib"/>
      <dep package="gobject-introspection"/>
    </dependencies>
    <suggests>
      <if condition-set="udev">
        <dep package="libgudev"/>
      </if>
    </suggests>
  </meson>


<!-- Meta Modules -->

  <!-- The Core GNOME Utilities: Only unbranded, GNOME integrated
       basic functionality utilities allowed.

       Before modifying this list, mail release-team@ and CC Allan.
  -->
  <metamodule id="meta-gnome-core-utilities">
    <dependencies>
      <dep package="baobab"/>
      <dep package="cheese"/>
      <dep package="eog"/>
      <dep package="epiphany"/>
      <dep package="papers"/>
      <dep package="file-roller"/>
      <dep package="gedit"/>
      <dep package="gnome-calculator"/>
      <dep package="gnome-calendar"/>
      <dep package="gnome-characters"/>
      <dep package="gnome-clocks"/>
      <dep package="gnome-contacts"/>
      <dep package="gnome-font-viewer"/>
      <dep package="gnome-maps"/>
      <dep package="gnome-music"/>
      <dep package="gnome-photos"/>
      <dep package="gnome-screenshot"/>
      <dep package="gnome-software"/>
      <dep package="gnome-system-monitor"/>
      <dep package="gnome-terminal"/>
      <dep package="gnome-todo"/>
      <dep package="gnome-weather"/>
      <dep package="nautilus"/>
      <dep package="sushi"/>
      <dep package="totem"/>
      <dep package="yelp"/>
      <if condition-set="linux">
        <!-- libgusb dependency -->
        <dep package="simple-scan"/>
        <!-- udisks dependency -->
        <dep package="gnome-disk-utility"/>
        <!-- udev dependency -->
        <dep package="gnome-boxes"/>
      </if>
      <if condition-set="systemd">
        <!-- systemd journal dependency -->
        <dep package="gnome-logs"/>
      </if>
    </dependencies>
  </metamodule>

  <!-- The Core GNOME UX Shell: Only integrated session services,
       data, and core UI allowed.
  -->
  <metamodule id="meta-gnome-core-shell">
    <dependencies>
      <dep package="adwaita-icon-theme"/>
      <dep package="dconf"/>
      <dep package="gdm"/>
      <dep package="gnome-backgrounds"/>
      <!-- Not in utilities because the desktop file is hidden -->
      <dep package="gnome-color-manager"/>
      <dep package="gnome-control-center"/>
      <dep package="gnome-getting-started-docs"/>
      <dep package="gnome-keyring"/>
      <dep package="gnome-session"/>
      <dep package="gnome-settings-daemon"/>
      <dep package="gnome-shell"/>
      <dep package="gnome-shell-extensions"/>
      <dep package="gnome-themes-extra"/>
      <dep package="gnome-user-docs"/>
      <dep package="gsettings-desktop-schemas"/>
      <dep package="gvfs"/>
      <dep package="glib-networking"/>
      <dep package="mousetweaks"/>
      <dep package="mutter"/>
      <dep package="orca"/>
      <dep package="pulseaudio"/>
      <dep package="rygel"/>
      <dep package="telepathy-mission-control"/>
      <dep package="vino"/>
      <if condition-set="linux">
        <!-- NetworkManager dependency -->
        <dep package="gnome-initial-setup"/>
      </if>
      <if condition-set="systemd">
        <dep package="gnome-user-share"/>
      </if>
    </dependencies>
  </metamodule>

  <!-- The Core GNOME OS Services: Only OS System services required to
       provide the Core GNOME UX
  -->
  <metamodule id="meta-gnome-core-os-services">
    <dependencies>
      <dep package="accountsservice"/>
      <dep package="avahi"/>
      <dep package="bluez"/>
      <dep package="cups"/>
      <dep package="dbus"/>
      <dep package="PackageKit"/>
      <dep package="upower"/>
      <!-- <dep package="systemd"/> -->
      <!-- <dep package="xorg-x11-server"/> -->
      <!-- <dep package="plymouth"/> -->
      <if condition-set="linux">
        <dep package="NetworkManager"/>
        <dep package="udisks"/>
      </if>
    </dependencies>
  </metamodule>

  <!-- The entirety of the Core GNOME UX, including extras and utilities
  -->
  <metamodule id="meta-gnome-core">
    <dependencies>
      <dep package="meta-gnome-core-shell"/>
      <dep package="meta-gnome-core-utilities"/>

      <!-- Additional libraries that should be in the release,
           but are not depended on by utilities or core apps yet.
      -->
      <dep package="gtk4"/>
      <dep package="gtksourceview-4"/>
      <dep package="atkmm"/>
      <dep package="gtkmm"/>
      <dep package="cairomm"/>
      <dep package="pangomm"/>
      <dep package="gupnp-igd"/>
      <dep package="libsigcplusplus"/>
    </dependencies>
  </metamodule>

  <!-- Platform metamodule -->
  <metamodule id="meta-gnome-devel-platform">
    <dependencies>
      <dep package="at-spi2-core"/>
      <dep package="glib"/>
      <dep package="gtk+-3"/>
      <dep package="pango"/>
      <if condition-set="macos">
        <dep package="adwaita-icon-theme"/>
      </if>
    </dependencies>
  </metamodule>

  <!-- Extended platform metamodule -->
  <metamodule id="meta-gnome-extended-devel-platform">
    <dependencies>
      <!-- the platform -->
      <dep package="meta-gnome-devel-platform"/>
      <!-- and more modules -->
      <dep package="evolution-data-server"/>
      <dep package="gstreamer"/>
      <dep package="libnotify"/>
      <dep package="libpeas-1"/>
      <dep package="telepathy-glib"/>
      <dep package="WebKit"/>
      <!-- and bindings -->
      <dep package="pygobject"/>
      <dep package="gjs"/>
      <dep package="gtkmm-3"/>
      <if condition-set="linux">
        <dep package="NetworkManager"/>
      </if>
      <if condition-unset="macos">
        <dep package="PackageKit"/>
        <dep package="upower"/>
      </if>
    </dependencies>
  </metamodule>

</moduleset>
