From 0c100b7dd2b30e75b799d806df4ef899fd98e1ea Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 16 Apr 2022 13:07:24 +0100 Subject: gentoo resync : 16.04.2022 --- gnome-base/Manifest.gz | Bin 5207 -> 5200 bytes gnome-base/gnome-control-center/Manifest | 3 +- ...2.0-online-accounts-Fix-goa-helper-on-X11.patch | 32 ++++ .../gnome-control-center-42.0-r1.ebuild | 176 ++++++++++++++++++ .../gnome-control-center-42.0.ebuild | 174 ------------------ gnome-base/gnome-extra-apps/Manifest | 2 +- .../gnome-extra-apps/gnome-extra-apps-40.0.ebuild | 76 -------- .../gnome-extra-apps/gnome-extra-apps-41.0.ebuild | 75 ++++++++ gnome-base/gnome-flashback/Manifest | 2 +- .../gnome-flashback-3.44.0-r1.ebuild | 86 +++++++++ .../gnome-flashback/gnome-flashback-3.44.0.ebuild | 86 --------- gnome-base/gnome-mime-data/Manifest | 2 +- .../gnome-mime-data-2.18.0-r1.ebuild | 24 +++ .../gnome-mime-data/gnome-mime-data-2.18.0.ebuild | 27 --- gnome-base/gnome-shell/Manifest | 2 +- gnome-base/gnome-shell/gnome-shell-42.0-r1.ebuild | 202 +++++++++++++++++++++ gnome-base/gnome-shell/gnome-shell-42.0.ebuild | 202 --------------------- 17 files changed, 601 insertions(+), 570 deletions(-) create mode 100644 gnome-base/gnome-control-center/files/42.0-online-accounts-Fix-goa-helper-on-X11.patch create mode 100644 gnome-base/gnome-control-center/gnome-control-center-42.0-r1.ebuild delete mode 100644 gnome-base/gnome-control-center/gnome-control-center-42.0.ebuild delete mode 100644 gnome-base/gnome-extra-apps/gnome-extra-apps-40.0.ebuild create mode 100644 gnome-base/gnome-extra-apps/gnome-extra-apps-41.0.ebuild create mode 100644 gnome-base/gnome-flashback/gnome-flashback-3.44.0-r1.ebuild delete mode 100644 gnome-base/gnome-flashback/gnome-flashback-3.44.0.ebuild create mode 100644 gnome-base/gnome-mime-data/gnome-mime-data-2.18.0-r1.ebuild delete mode 100644 gnome-base/gnome-mime-data/gnome-mime-data-2.18.0.ebuild create mode 100644 gnome-base/gnome-shell/gnome-shell-42.0-r1.ebuild delete mode 100644 gnome-base/gnome-shell/gnome-shell-42.0.ebuild (limited to 'gnome-base') diff --git a/gnome-base/Manifest.gz b/gnome-base/Manifest.gz index 52718774a31d..dd4074bbe43c 100644 Binary files a/gnome-base/Manifest.gz and b/gnome-base/Manifest.gz differ diff --git a/gnome-base/gnome-control-center/Manifest b/gnome-base/gnome-control-center/Manifest index 8b021f9af6df..a9d5bb29750c 100644 --- a/gnome-base/gnome-control-center/Manifest +++ b/gnome-base/gnome-control-center/Manifest @@ -1,7 +1,8 @@ +AUX 42.0-online-accounts-Fix-goa-helper-on-X11.patch 1283 BLAKE2B 86d8ebd6cafceb4d075395900ecc2845394a06edb2e539ef1d81315ef4e2e26364269b6083f1901fc6e4bf49626ee65b532e14cd6a5c38322bef9c729e7f5986 SHA512 e301d0a97970a2d9df92d3639777dc989895a4993ce0f81cee8df362a908fc81fa0259c6d0f1c4128460493773f969deec837be5266d7be97308111b3b4fc664 DIST gnome-control-center-41.2-patchset.tar.xz 6380 BLAKE2B de9eacf549686e43870df486994c5cd319f996edb2b09a7d3b5e9021c50b74c067e8c3cbabbc0ca68741fb3b4c5a2d65cc1ea72e20057ec59dab952fa886d527 SHA512 292737b34316ceff5eb43c598b0a8d2a7895e2891215137ba59defb935c6184e78f19e2485963a8642621a409ee87e0e2a1582403fd90ee3c83b2bc1f3334e27 DIST gnome-control-center-41.4.tar.xz 6616908 BLAKE2B 7c1a2692667c0447590d81c17ae990bff4b3bb7b85007ec70f8623d284cc0743ca79380dc60f1a9f97c01f897260c74acae0d730b197e8d4314e8002c7eec826 SHA512 63fa20041a06f5075d172b543176b4f037fcd623d9fa5ca5f785e047a9b95ccd002c423d29de673dcb28b7d99a83157b39d7bd65ef77fe70065e9a03b5ae38a4 DIST gnome-control-center-42.0-patchset.tar.xz 5932 BLAKE2B 1c9311481be6a07dc2ff61fc9e65f190bc1668026fba2a1e4a8edf9a033e6b2b9019542d89aac4480323ee4802e00b765654008f5252e87040f013a990cb8048 SHA512 b76c1facd3566edcadfe33f81027966da35bb03909bfbae6faad72005b92447e291fa424611196bfae6e1dc5bf5982917f3ae14c36d87206f6bfb4af502bf1a4 DIST gnome-control-center-42.0.tar.xz 6238096 BLAKE2B 63540c94d64d312ff9ce523cc3ef0023b35b93bbd0593cc6a3f5d671cc70980969617b2436b0c9994b8d225fac972d639b935affac36bc32bf621c4593d490bd SHA512 d8097240444ab45174e89db0f543d6523051829b124933cdbb84b1bc5d2d6809ee810f6d2c09702da51c991fe11496635b3164b490ed1e2ac523481d5466cf3e EBUILD gnome-control-center-41.4-r1.ebuild 6117 BLAKE2B 91a6d1c145971c45330865eb6017546cc4df1d99b87c441ba21edaef1ca3fa2eef9a8ce4396ad741a27557a3fa8e87e11ee54b35fb4d42321e129b5fe55bb742 SHA512 f7db79a7888306f9291c3e90eae254ffb85c7db5deb747b6af9d103a9cc9ea430e4a01642ec1017899fd452f24545031cde765c87c86168744f0973f0b58c588 -EBUILD gnome-control-center-42.0.ebuild 6040 BLAKE2B 9dd706bdc8940653a3a9fd8475828bc97d592a11f455a1b5b9ee903b5182b96b31a049cdda867dd5e9440c6d9fac40f6ba3e8df2b66561d99934a66cde136e16 SHA512 4df4832e107a1d691ab15d456d1cc75cc2ae3b0cac159e8ca6c8ea92a5ffe6aa6484890860b023c9a6eea51655b49a52bf2c2cadc42195634b67523130a38727 +EBUILD gnome-control-center-42.0-r1.ebuild 6106 BLAKE2B 8430e30b14c0f569c6aa38b392c7c3333c8bc1f186162acce72b20b78b5c9aa06f519b17711e8dda2d34ef9a203782eb6e01a3bd6c17cd0b67f7f24204755932 SHA512 7f2e5b02831f912ba5ea0dd38aa8e8a9c39972f31538a9f8c7425fbcb7aa2d209324d14d5d885a6d685684c434dc028505fa8ee48e5c0cfdd99229b28396efdb MISC metadata.xml 497 BLAKE2B 27aa6d9d725a3ce90d351442da83bdb5680f9931d78e5d6a653a1d2d392df118406e3eab36c77bbaeefc581be3a62c5df13fdfb611b2db27fc9c7440ba4ceae3 SHA512 c44903fa5a9462871c065bc776450c25bcca1dfe2f52d6bf676568f587bc308a0465bd5cb6e095fb0ecaefd0b8471df90df3b96164c7e7de76a86fbbe416a82b diff --git a/gnome-base/gnome-control-center/files/42.0-online-accounts-Fix-goa-helper-on-X11.patch b/gnome-base/gnome-control-center/files/42.0-online-accounts-Fix-goa-helper-on-X11.patch new file mode 100644 index 000000000000..dfa56eab9e61 --- /dev/null +++ b/gnome-base/gnome-control-center/files/42.0-online-accounts-Fix-goa-helper-on-X11.patch @@ -0,0 +1,32 @@ +From 7fe322b9cedae313cd9af6f403eab9bfc6027674 Mon Sep 17 00:00:00 2001 +From: Jan Tojnar +Date: Mon, 28 Mar 2022 21:02:23 +0200 +Subject: [PATCH] online-accounts: Fix goa-helper on X11 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The handle_str contains the “x11:” prefix so strtol would return 0. +We need to pass it the numeric substring. + +Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1651 +--- + panels/online-accounts/gnome-control-center-goa-helper.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/panels/online-accounts/gnome-control-center-goa-helper.c b/panels/online-accounts/gnome-control-center-goa-helper.c +index 56513147e..533609cbc 100644 +--- a/panels/online-accounts/gnome-control-center-goa-helper.c ++++ b/panels/online-accounts/gnome-control-center-goa-helper.c +@@ -129,7 +129,7 @@ set_external_parent_from_handle (GtkApplication *application, + int xid; + + errno = 0; +- xid = strtol (handle_str, NULL, 16); ++ xid = strtol (handle_str + strlen (x11_prefix), NULL, 16); + if (errno != 0) + { + g_warning ("Failed to reference external X11 window, invalid XID %s", handle_str); +-- +2.35.1 + diff --git a/gnome-base/gnome-control-center/gnome-control-center-42.0-r1.ebuild b/gnome-base/gnome-control-center/gnome-control-center-42.0-r1.ebuild new file mode 100644 index 000000000000..70008f3ef6ff --- /dev/null +++ b/gnome-base/gnome-control-center/gnome-control-center-42.0-r1.ebuild @@ -0,0 +1,176 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{8..10} ) + +inherit gnome.org gnome2-utils meson python-any-r1 xdg + +DESCRIPTION="GNOME's main interface to configure various aspects of the desktop" +HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-control-center" +SRC_URI+=" https://dev.gentoo.org/~mattst88/distfiles/${PN}-42.0-patchset.tar.xz" + +LICENSE="GPL-2+" +SLOT="2" +IUSE="+bluetooth +cups debug elogind +gnome-online-accounts +ibus input_devices_wacom kerberos networkmanager systemd test wayland" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + ^^ ( elogind systemd ) +" # Theoretically "?? ( elogind systemd )" is fine too, lacking some functionality at runtime, but needs testing if handled gracefully enough +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +# meson.build depends on python unconditionally +BDEPEND="${PYTHON_DEPS}" + +# kerberos unfortunately means mit-krb5; build fails with heimdal +# display panel requires colord and gnome-settings-daemon[colord] +# wacom panel requires gsd-enums.h from gsd at build time, probably also runtime support +# printer panel requires cups and smbclient (the latter is not patched yet to be separately optional) +# First block is toplevel meson.build deps in order of occurrence (plus deeper deps if in same conditional). Second block is dependency() from subdir meson.builds, sorted by directory name occurrence order +DEPEND=" + gnome-online-accounts? ( >=net-libs/gnome-online-accounts-3.25.3:= ) + >=media-sound/pulseaudio-2.0[glib] + >=gui-libs/libadwaita-1.1:1= + >=sys-apps/accountsservice-0.6.39 + >=x11-misc/colord-0.1.34:0= + >=x11-libs/gdk-pixbuf-2.23.0:2 + >=dev-libs/glib-2.56.0:2 + gnome-base/gnome-desktop:4= + >=gnome-base/gnome-settings-daemon-41.0[colord,input_devices_wacom?] + >=gnome-base/gsettings-desktop-schemas-42_alpha + dev-libs/libxml2:2 + >=sys-power/upower-0.99.8:= + >=dev-libs/libgudev-232 + x11-libs/libX11 + >=x11-libs/libXi-1.2 + media-libs/libepoxy + app-crypt/gcr:= + >=dev-libs/libpwquality-1.2.2 + >=gui-libs/gtk-4.4:4[X,wayland=] + >=sys-auth/polkit-0.114 + cups? ( + >=net-print/cups-1.7[dbus] + >=net-fs/samba-4.0.0[client] + ) + ibus? ( >=app-i18n/ibus-1.5.2 ) + networkmanager? ( + >=net-libs/libnma-1.8.36 + >=net-misc/networkmanager-1.24.0:=[modemmanager] + >=net-misc/modemmanager-0.7.990 ) + bluetooth? ( net-wireless/gnome-bluetooth:3= ) + input_devices_wacom? ( >=dev-libs/libwacom-0.27 ) + kerberos? ( app-crypt/mit-krb5 ) + + x11-libs/cairo[glib] + >=x11-libs/colord-gtk-0.3.0 + media-libs/fontconfig + gnome-base/libgtop:2= + >=sys-fs/udisks-2.1.8:2 + app-crypt/libsecret + net-libs/gnutls:= + media-libs/gsound +" +# systemd/elogind USE flagged because package manager will potentially try to satisfy a +# "|| ( systemd ( elogind openrc-settingsd)" via systemd if openrc-settingsd isn't already installed. +# libgnomekbd needed only for gkbd-keyboard-display tool +# gnome-color-manager needed for gcm-calibrate and gcm-viewer calls from color panel +# +# FIXME: +# * gstreamer/pipewire support is currently automagic +DEPEND=" + >=gnome-extra/evolution-data-server-3.33.1:= + >=app-crypt/gcr-3.7.5[introspection] + >=dev-libs/glib-2.68:2 + >=dev-libs/gobject-introspection-1.49.1:= + >=dev-libs/gjs-1.71.1 + >=x11-libs/gtk+-3.15.0:3[introspection] + >=x11-wm/mutter-42.0:0/10[introspection,test?] + >=sys-auth/polkit-0.100[introspection] + >=gnome-base/gsettings-desktop-schemas-42_beta[introspection] + >=x11-libs/startup-notification-0.11 + >=app-i18n/ibus-1.5.19 + >=gnome-base/gnome-desktop-3.35.90:3=[introspection] + bluetooth? ( net-wireless/gnome-bluetooth:3=[introspection] ) + >=media-libs/gstreamer-0.11.92:1.0 + media-libs/gst-plugins-base:1.0 + >=media-video/pipewire-0.3.0:= + networkmanager? ( + >=net-misc/networkmanager-1.10.4:=[introspection] + net-libs/libnma[introspection] + >=app-crypt/libsecret-0.18 + dev-libs/dbus-glib ) + systemd? ( >=sys-apps/systemd-242 + >=gnome-base/gnome-desktop-3.34.2:3=[systemd] ) + elogind? ( >=sys-auth/elogind-237 ) + + app-arch/gnome-autoar + dev-libs/json-glib + + >=app-accessibility/at-spi2-atk-2.5.3 + x11-libs/gdk-pixbuf:2[introspection] + dev-libs/libxml2:2 + x11-libs/libX11 + + >=media-sound/pulseaudio-2[glib] + >=dev-libs/atk-2[introspection] + dev-libs/libical:= + >=x11-libs/libXfixes-5.0 + + gui-libs/gtk:4[introspection] + + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/pygobject:3[${PYTHON_USEDEP}] + ') + media-libs/mesa[X(+)] +" +# Runtime-only deps are probably incomplete and approximate. +# Introspection deps generated from inspection of the output of: +# for i in `rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- |sort -u`; do echo $i ;done |cut -d, -f1 |sort -u +# or +# rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- | sed -e 's:[{}]::g' | awk '{$1=$1; print}' | awk -F',' '{$1=$1;print}' | tr ' ' '\n' | sort -u | sed -e 's/://g' +# These will give a lot of unnecessary things due to greedy matching (TODO), and `(?s).*?` doesn't seem to work as desired. +# Compare with `grep -rhI 'imports.gi.versions' |sort -u` for any SLOT requirements +# Each block: +# 1. Introspection stuff needed via imports.gi (those that build time check may be listed above already) +# 2. gnome-session needed for shutdown/reboot/inhibitors/etc +# 3. Control shell settings +# 4. xdg-utils needed for xdg-open, used by extension tool +# 5. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+) +# 6. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c # TODO: Review +# 7. IBus is needed for nls integration +# 8. Optional telepathy chat integration +# 9. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too) +# 10. xdg-desktop-portal-gtk for various integration, e.g. #764632 +# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper +RDEPEND="${DEPEND} + >=sys-apps/accountsservice-0.6.14[introspection] + app-accessibility/at-spi2-core:2[introspection] + app-misc/geoclue[introspection] + media-libs/graphene[introspection] + >=dev-libs/libgweather-4.0.0:4[introspection] + x11-libs/pango[introspection] + net-libs/libsoup:2.4[introspection] + >=sys-power/upower-0.99:=[introspection] + gnome-base/librsvg:2[introspection] + + >=gnome-base/gnome-session-2.91.91 + >=gnome-base/gnome-settings-daemon-3.8.3 + + x11-misc/xdg-utils + + >=x11-themes/adwaita-icon-theme-3.26 + + networkmanager? ( + net-misc/mobile-broadband-provider-info + sys-libs/timezone-data ) + ibus? ( >=app-i18n/ibus-1.5.26[gtk3,gtk4,introspection] ) + telepathy? ( + >=net-im/telepathy-logger-0.2.4[introspection] + >=net-libs/telepathy-glib-0.19[introspection] ) + media-fonts/cantarell + + sys-apps/xdg-desktop-portal-gtk +" +# avoid circular dependency, see bug #546134 +PDEPEND=" + >=gnome-base/gdm-3.5[introspection(+)] + >=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?] + browser-extension? ( gnome-extra/chrome-gnome-shell ) +" +BDEPEND=" + dev-libs/libxslt + >=dev-util/gdbus-codegen-2.45.3 + dev-util/glib-utils + gtk-doc? ( >=dev-util/gtk-doc-1.17 + app-text/docbook-xml-dtd:4.5 ) + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig +" +# These are not needed from tarballs, unless stylesheets or manpage get patched with patchset: +# dev-lang/sassc +# app-text/asciidoc + +PATCHES=( + # Fix automagic gnome-bluetooth dep, bug #398145 + "${FILESDIR}"/42.0-optional-bluetooth.patch + # Change favorites defaults, bug #479918 + "${FILESDIR}"/40.0-defaults.patch +) + +src_prepare() { + xdg_src_prepare + # Hack in correct python shebang + sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die +} + +src_configure() { + local emesonargs=( + $(meson_use bluetooth) + -Dextensions_tool=true + -Dextensions_app=true + $(meson_use gtk-doc gtk_doc) + -Dman=true + $(meson_use test tests) + $(meson_use networkmanager) + $(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4 + # (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session) + # suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary + -Dsoup2=true # libslot SLOT needs to match with what libgweather is using + ) + meson_src_configure +} + +src_test() { + gnome2_environment_reset # Avoid dconf that looks at XDG_DATA_DIRS, which can sandbox fail if flatpak is installed + virtx meson_src_test +} + +pkg_postinst() { + xdg_pkg_postinst + gnome2_schemas_update + + if ! has_version 'media-libs/gst-plugins-good:1.0' || \ + ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then + ewarn "To make use of GNOME Shell's built-in screen recording utility," + ewarn "you need to either install media-libs/gst-plugins-good:1.0" + ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change" + ewarn "apps.gnome-shell.recorder/pipeline to what you want to use." + fi + + if ! has_version "media-libs/mesa[llvm]"; then + elog "llvmpipe is used as fallback when no 3D acceleration" + elog "is available. You will need to enable llvm USE for" + elog "media-libs/mesa if you do not have hardware 3D setup." + fi + + # https://bugs.gentoo.org/show_bug.cgi?id=563084 + # TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)? + if has_version "x11-drivers/nvidia-drivers[-kms]"; then + ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers," + ewarn "otherwise Gnome will fail to start" + fi +} + +pkg_postrm() { + xdg_pkg_postrm + gnome2_schemas_update +} diff --git a/gnome-base/gnome-shell/gnome-shell-42.0.ebuild b/gnome-base/gnome-shell/gnome-shell-42.0.ebuild deleted file mode 100644 index db9135e544bf..000000000000 --- a/gnome-base/gnome-shell/gnome-shell-42.0.ebuild +++ /dev/null @@ -1,202 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{8..10} ) - -inherit gnome.org gnome2-utils meson python-single-r1 virtualx xdg - -DESCRIPTION="Provides core UI functions for the GNOME desktop" -HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell" - -LICENSE="GPL-2+ LGPL-2+" -SLOT="0" -IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager systemd telepathy test" -REQUIRED_USE="${PYTHON_REQUIRED_USE} - ?? ( elogind systemd )" -RESTRICT="!test? ( test )" - -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" - -# libXfixes-5.0 needed for pointer barriers and #include -# FIXME: -# * gstreamer/pipewire support is currently automagic -DEPEND=" - >=gnome-extra/evolution-data-server-3.33.1:= - >=app-crypt/gcr-3.7.5[introspection] - >=dev-libs/glib-2.68:2 - >=dev-libs/gobject-introspection-1.49.1:= - >=dev-libs/gjs-1.71.1 - >=x11-libs/gtk+-3.15.0:3[introspection] - >=x11-wm/mutter-42.0:0/10[introspection,test?] - >=sys-auth/polkit-0.100[introspection] - >=gnome-base/gsettings-desktop-schemas-42_beta[introspection] - >=x11-libs/startup-notification-0.11 - >=app-i18n/ibus-1.5.19 - >=gnome-base/gnome-desktop-3.35.90:3=[introspection] - bluetooth? ( net-wireless/gnome-bluetooth:3=[introspection] ) - >=media-libs/gstreamer-0.11.92:1.0 - media-libs/gst-plugins-base:1.0 - >=media-video/pipewire-0.3.0:= - networkmanager? ( - >=net-misc/networkmanager-1.10.4:=[introspection] - net-libs/libnma[introspection] - >=app-crypt/libsecret-0.18 - dev-libs/dbus-glib ) - systemd? ( >=sys-apps/systemd-242 - >=gnome-base/gnome-desktop-3.34.2:3=[systemd] ) - elogind? ( >=sys-auth/elogind-237 ) - - app-arch/gnome-autoar - dev-libs/json-glib - - >=app-accessibility/at-spi2-atk-2.5.3 - x11-libs/gdk-pixbuf:2[introspection] - dev-libs/libxml2:2 - x11-libs/libX11 - - >=media-sound/pulseaudio-2[glib] - >=dev-libs/atk-2[introspection] - dev-libs/libical:= - >=x11-libs/libXfixes-5.0 - - gui-libs/gtk:4[introspection] - - ${PYTHON_DEPS} - $(python_gen_cond_dep ' - dev-python/pygobject:3[${PYTHON_USEDEP}] - ') - media-libs/mesa[X(+)] -" -# Runtime-only deps are probably incomplete and approximate. -# Introspection deps generated from inspection of the output of: -# for i in `rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- |sort -u`; do echo $i ;done |cut -d, -f1 |sort -u -# or -# rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- | sed -e 's:[{}]::g' | awk '{$1=$1; print}' | awk -F',' '{$1=$1;print}' | tr ' ' '\n' | sort -u | sed -e 's/://g' -# These will give a lot of unnecessary things due to greedy matching (TODO), and `(?s).*?` doesn't seem to work as desired. -# Compare with `grep -rhI 'imports.gi.versions' |sort -u` for any SLOT requirements -# Each block: -# 1. Introspection stuff needed via imports.gi (those that build time check may be listed above already) -# 2. gnome-session needed for shutdown/reboot/inhibitors/etc -# 3. Control shell settings -# 4. xdg-utils needed for xdg-open, used by extension tool -# 5. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+) -# 6. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c # TODO: Review -# 7. IBus is needed for nls integration -# 8. Optional telepathy chat integration -# 9. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too) -# 10. xdg-desktop-portal-gtk for various integration, e.g. #764632 -# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper -RDEPEND="${DEPEND} - >=sys-apps/accountsservice-0.6.14[introspection] - app-accessibility/at-spi2-core:2[introspection] - app-misc/geoclue[introspection] - media-libs/graphene[introspection] - >=dev-libs/libgweather-4.0.0:4[introspection] - x11-libs/pango[introspection] - net-libs/libsoup:2.4[introspection] - >=sys-power/upower-0.99:=[introspection] - gnome-base/librsvg:2[introspection] - - >=gnome-base/gnome-session-2.91.91 - >=gnome-base/gnome-settings-daemon-3.8.3 - - x11-misc/xdg-utils - - >=x11-themes/adwaita-icon-theme-3.26 - - networkmanager? ( - net-misc/mobile-broadband-provider-info - sys-libs/timezone-data ) - ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] ) - telepathy? ( - >=net-im/telepathy-logger-0.2.4[introspection] - >=net-libs/telepathy-glib-0.19[introspection] ) - media-fonts/cantarell - - sys-apps/xdg-desktop-portal-gtk -" -# avoid circular dependency, see bug #546134 -PDEPEND=" - >=gnome-base/gdm-3.5[introspection(+)] - >=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?] - browser-extension? ( gnome-extra/chrome-gnome-shell ) -" -BDEPEND=" - dev-libs/libxslt - >=dev-util/gdbus-codegen-2.45.3 - dev-util/glib-utils - gtk-doc? ( >=dev-util/gtk-doc-1.17 - app-text/docbook-xml-dtd:4.5 ) - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig -" -# These are not needed from tarballs, unless stylesheets or manpage get patched with patchset: -# dev-lang/sassc -# app-text/asciidoc - -PATCHES=( - # Fix automagic gnome-bluetooth dep, bug #398145 - "${FILESDIR}"/42.0-optional-bluetooth.patch - # Change favorites defaults, bug #479918 - "${FILESDIR}"/40.0-defaults.patch -) - -src_prepare() { - xdg_src_prepare - # Hack in correct python shebang - sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die -} - -src_configure() { - local emesonargs=( - $(meson_use bluetooth) - -Dextensions_tool=true - -Dextensions_app=true - $(meson_use gtk-doc gtk_doc) - -Dman=true - $(meson_use test tests) - $(meson_use networkmanager) - $(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4 - # (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session) - # suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary - -Dsoup2=true # libslot SLOT needs to match with what libgweather is using - ) - meson_src_configure -} - -src_test() { - gnome2_environment_reset # Avoid dconf that looks at XDG_DATA_DIRS, which can sandbox fail if flatpak is installed - virtx meson_src_test -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_schemas_update - - if ! has_version 'media-libs/gst-plugins-good:1.0' || \ - ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then - ewarn "To make use of GNOME Shell's built-in screen recording utility," - ewarn "you need to either install media-libs/gst-plugins-good:1.0" - ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change" - ewarn "apps.gnome-shell.recorder/pipeline to what you want to use." - fi - - if ! has_version "media-libs/mesa[llvm]"; then - elog "llvmpipe is used as fallback when no 3D acceleration" - elog "is available. You will need to enable llvm USE for" - elog "media-libs/mesa if you do not have hardware 3D setup." - fi - - # https://bugs.gentoo.org/show_bug.cgi?id=563084 - # TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)? - if has_version "x11-drivers/nvidia-drivers[-kms]"; then - ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers," - ewarn "otherwise Gnome will fail to start" - fi -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_schemas_update -} -- cgit v1.2.3