summaryrefslogtreecommitdiff
path: root/gnome-base/gnome-control-center
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base/gnome-control-center')
-rw-r--r--gnome-base/gnome-control-center/Manifest8
-rw-r--r--gnome-base/gnome-control-center/files/3.26.2-gnome-desktop-3-28-compat.patch78
-rw-r--r--gnome-base/gnome-control-center/files/3.26.2-goa-lifecycle.patch95
-rw-r--r--gnome-base/gnome-control-center/files/3.26.2-without-wayland-fix.patch46
-rw-r--r--gnome-base/gnome-control-center/gnome-control-center-3.24.4.ebuild4
-rw-r--r--gnome-base/gnome-control-center/gnome-control-center-3.26.2-r28.ebuild160
-rw-r--r--gnome-base/gnome-control-center/gnome-control-center-3.26.2-r3.ebuild (renamed from gnome-base/gnome-control-center/gnome-control-center-3.26.2-r1.ebuild)8
7 files changed, 394 insertions, 5 deletions
diff --git a/gnome-base/gnome-control-center/Manifest b/gnome-base/gnome-control-center/Manifest
index 64a9f6afb013..96aead137b51 100644
--- a/gnome-base/gnome-control-center/Manifest
+++ b/gnome-base/gnome-control-center/Manifest
@@ -1,7 +1,11 @@
+AUX 3.26.2-gnome-desktop-3-28-compat.patch 2726 BLAKE2B 033eda60333bc08ff6c9a766d00f49f881ff86a0e19f8a33e75b9ee2c75cd8ef49ae6cf466d42dc9f9d8852f63da68992b1c78d0a5a36b809ee75c04bc257bc5 SHA512 d49d634ce59a10512cb91f96da494a5c4d732622acdb3b1c0e89b6428fe3269f0404bd60f6fc2456c08b6e7e6fb34180d8bd8ae4a5687bd9f6fffd2ff933c2fc
+AUX 3.26.2-goa-lifecycle.patch 3691 BLAKE2B dd41ac81c11bbe41c2b68017b5dfde12718c1c198e2e57357a5c4614ab65618599908dbc2fd0eef5cee8b3b1448c2da4b44b2b8321697cb70479d5752de8137c SHA512 6d8234687ca4dedbeda83f4e5b77195287b4f5fb6d94aa0ac52516cc9ed71b20f6e24ac5cd0ee6a6b3fcddb3584013b693e1688d7b58f762787cde11d9fe975c
+AUX 3.26.2-without-wayland-fix.patch 1546 BLAKE2B a675dbf8c7b8a5e5a6fdcd8204d673018a09836022d8ccd3e582b3c991a1fc9a796fcb23cd5e6779c5c8cb11b88153819c1bb6f28d5d9495ecf3bcf1e47a23bf SHA512 d7dd7f1cb4db63a771c8116288ebdc4c0bf8dd515ea9f94c6f4f8f76c2dc5fe4cb21e178e76e351b8a50f7acfbf818be9f3864e3c8df5b0604b8b285d49d7978
DIST gnome-control-center-3.24.4-patchset.tar.xz 8076 BLAKE2B e70086987957b4c33fff6d3b5038ffc260fc47520de4606fa96a0993cee4eea699bb57e8c0a6406e7d5c99adde702351d6462bf0594398f48f6ba4c9bc217417 SHA512 6228bffb71b61a100248f2f3ffc659532e9a067579d0dcf869e58ba9fb5d0b3e745a3bda2a92caa5bc86f8809885268b543f6863262dc6fef52b61e74eaef927
DIST gnome-control-center-3.24.4.tar.xz 7320232 BLAKE2B 29a5860b8cc27f161451ae8c053db1d28e8c5f8714cbccac7674c00689569ac4e51f7deb0a341e0868b1467a095f87d685ea0ec733f69274f02ecaf5badfef6e SHA512 34a59d4d89971054b1f54e7a7e3cbc3c306a3fbe3cc94adf1241ad37076a6179c93f04a95e51e57982eda57187e578005060d711a5d955734d5a138e61b3598a
DIST gnome-control-center-3.26.2-patchset.tar.xz 159088 BLAKE2B 521af115f7d4372ecf645b915e9081607a6699528b2914e73f11856fc9a8ae80406c210ad97b5d84b616d324d0c1539e2155c5e6db4920cbd8355b85f21a8e3b SHA512 90bf9e19b98dcc39fe5af6604876e5d9fe31358a4da602fe518589d9b3a9261fee3b3785f40a889295e3e7b38370173d03350f475be576830efa2ad74718c19e
DIST gnome-control-center-3.26.2.tar.xz 7386516 BLAKE2B 156c24bc2ab60943ade1e255976e29478c9b0e9dbad12921a835ec55f09ad62c71886750a50fa74f2a0afb660cac073c9ff54cef4b72c790b6dd91c7cac8aaa9 SHA512 d3ad9067c7e66a3a6bf5b6c058f3862f6e4b59c0254fd47f0b4a9093f3b7e2d7f1900b510aba8bbdac7c1212a0f6cdd4974c3d04003af63edb72ed3e56f7dbca
-EBUILD gnome-control-center-3.24.4.ebuild 4846 BLAKE2B 55a347117e272330e5190abe5b1e2a3f2a034a22ed0a746a848f7c1b14c06d1b9b8961b8281916d1775df957514971409b713bfc1743f2f59da7e749bf14d1f8 SHA512 aa8a3f470892b80b4ba03d8b0009b7f81a345e9156fcc718fcfecd0fec823aed61d96d93c85979a52b3b87412ce465bbc9210f363a693093e727c49711f26e77
-EBUILD gnome-control-center-3.26.2-r1.ebuild 4925 BLAKE2B e167a86fae60b6020d3baceddf1f1681099cd81af3ee3261c22fa5dd424fad1686fa1950c8cb9d86fca965b39b1ff54cbc1286efdfc47595e2de58fd0b0ca058 SHA512 c6102eb3ed92f8d3b4e64b0a4d7b7396727f3ee1c130991c8b43c5342832fa9814ab68f99953d06e794a2102aefc5140ed2107ca882216cc66be1ac23eb39008
+EBUILD gnome-control-center-3.24.4.ebuild 4964 BLAKE2B 6888715dafc3e6c56690687a41ad1dc7bbc41083e224023349c677d322378f830084038ee18b6628249bddc4422a834577c951fab757b32249a041f4211192de SHA512 d2510b19b0600459a86a56c6f5d0ed8fcfe35b00e9b767782ebd8ae9336c2a1be9f8345d841acfc05f28d38e226df500823f96cf3c5d6e3fa396106aba305f85
+EBUILD gnome-control-center-3.26.2-r28.ebuild 5310 BLAKE2B 2f1c9591fd74f25a78fb2ae3bcbcce6c5075852f5880f648e659e80bb75400aa2c5231056e942bf355246920af69170e042f8dd3948333bb5e486456cc957ee5 SHA512 350030f5b682f914147c5b58a258bbf2a75c003d2f2861a4da7a60fd090d7d5a1908d227e8499a5864c437f391e7d775ea61c557babbf2c4242aff89997fb548
+EBUILD gnome-control-center-3.26.2-r3.ebuild 5322 BLAKE2B f51934179a425e3ad83a09d8542d8049ae62f68a7d224969f1522957ef58fb9c04da3cb35577c507b09af02685528598dd6e413b614e37995860fcd8234794b9 SHA512 389d2c46c13d4b6295296d69d1d384531085931012f0018112a3e2376bd7129bbe982901d2da9454aa46d28ed83ca8918860375dd256e97baa887d8390822eb1
MISC metadata.xml 592 BLAKE2B b868af571d6fb58f3a7baaa586261025de5be5a928f963f6fde8db3b6549b6dd30c0d73752e296f9ba3b128c96f3a942ed6cecc8acb98d745502483822c9866b SHA512 af75d12dbd91e798b6f81933f5e6cbb73aa0a81858ec711e88e79c2a4a239dbefa9da0375bf01f2614b5098af6a883b5baf27f2f74fc166838ab00e00108b104
diff --git a/gnome-base/gnome-control-center/files/3.26.2-gnome-desktop-3-28-compat.patch b/gnome-base/gnome-control-center/files/3.26.2-gnome-desktop-3-28-compat.patch
new file mode 100644
index 000000000000..f90e0514dd7c
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/3.26.2-gnome-desktop-3-28-compat.patch
@@ -0,0 +1,78 @@
+From 6c98cbb514b2a455dd27f3a32a48e43a65cd29a2 Mon Sep 17 00:00:00 2001
+From: Robert Ancell <robert.ancell@canonical.com>
+Date: Tue, 26 Sep 2017 14:12:13 -0400
+Subject: [PATCH 2/2] background: Remove GdkColor deprecation warnings
+
+https://bugzilla.gnome.org/show_bug.cgi?id=788205
+(cherry picked from commit ed03e9c49faafba132ab4077daeaf213b541aed7)
+---
+ configure.ac | 2 +-
+ panels/background/cc-background-item.c | 19 ++++++++++---------
+ 2 files changed, 11 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 90579ac9f..f810bfb1f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -97,7 +97,7 @@ NETWORK_MANAGER_REQUIRED_VERSION=1.2.0
+ NETWORK_MANAGER_APPLET_REQUIRED_VERSION=1.2.0
+ MODEM_MANAGER_REQUIRED_VERSION=0.7
+ LIBNOTIFY_REQUIRED_VERSION=0.7.3
+-GNOME_DESKTOP_REQUIRED_VERSION=3.21.2
++GNOME_DESKTOP_REQUIRED_VERSION=3.27.3
+ SCHEMAS_REQUIRED_VERSION=3.21.4
+ LIBWACOM_REQUIRED_VERSION=0.7
+ CLUTTER_REQUIRED_VERSION=1.11.3
+diff --git a/panels/background/cc-background-item.c b/panels/background/cc-background-item.c
+index 92220f823..8f8759bd0 100644
+--- a/panels/background/cc-background-item.c
++++ b/panels/background/cc-background-item.c
+@@ -150,8 +150,9 @@ get_emblemed_pixbuf (CcBackgroundItem *item, GdkPixbuf *pixbuf, gint scale_facto
+ static void
+ set_bg_properties (CcBackgroundItem *item)
+ {
+- GdkColor pcolor = { 0, 0, 0, 0 };
+- GdkColor scolor = { 0, 0, 0, 0 };
++ GdkRGBA pcolor = { 0, 0, 0, 0 };
++ GdkRGBA scolor = { 0, 0, 0, 0 };
++ GdkColor p, s;
+
+ if (item->priv->uri) {
+ GFile *file;
+@@ -166,13 +167,13 @@ set_bg_properties (CcBackgroundItem *item)
+ }
+
+ if (item->priv->primary_color != NULL) {
+- gdk_color_parse (item->priv->primary_color, &pcolor);
++ gdk_rgba_parse (&pcolor, item->priv->primary_color);
+ }
+ if (item->priv->secondary_color != NULL) {
+- gdk_color_parse (item->priv->secondary_color, &scolor);
++ gdk_rgba_parse (&scolor, item->priv->secondary_color);
+ }
+
+- gnome_bg_set_color (item->priv->bg, item->priv->shading, &pcolor, &scolor);
++ gnome_bg_set_rgba (item->priv->bg, item->priv->shading, &pcolor, &scolor);
+ gnome_bg_set_placement (item->priv->bg, item->priv->placement);
+ }
+
+@@ -996,12 +997,12 @@ static gboolean
+ colors_equal (const char *a,
+ const char *b)
+ {
+- GdkColor color1, color2;
++ GdkRGBA color1, color2;
+
+- gdk_color_parse (a, &color1);
+- gdk_color_parse (b, &color2);
++ gdk_rgba_parse (&color1, a);
++ gdk_rgba_parse (&color2, b);
+
+- return gdk_color_equal (&color1, &color2);
++ return gdk_rgba_equal (&color1, &color2);
+ }
+
+ gboolean
+--
+2.17.0
+
diff --git a/gnome-base/gnome-control-center/files/3.26.2-goa-lifecycle.patch b/gnome-base/gnome-control-center/files/3.26.2-goa-lifecycle.patch
new file mode 100644
index 000000000000..bbc8befdf280
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/3.26.2-goa-lifecycle.patch
@@ -0,0 +1,95 @@
+From a1bc1ae54d2330e32eac7b4df7c07393df87e7da Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir@gnome.org>
+Date: Thu, 4 Oct 2018 11:28:15 +0200
+Subject: [PATCH 1/2] online-accounts: Track the lifecycle of CcGoaPanel across
+ async calls
+
+Due to an API bug in GNOME Online Accounts, the asynchronous
+goa_provider_get_all method doesn't accept a GCancellable argument.
+This makes it difficult to cancel an ongoing call when the CcGoaPanel
+gets destroyed.
+
+Prior to commit c26f8ae018900a55, this was hacked around by taking a
+reference on the panel for the duration of the call. Instead of
+cancelling a pending call on destruction, it would keep the panel alive
+until the call was over. However, that was lost during commit
+c26f8ae018900a55.
+
+One thing to bear in mind is that GtkWidgets, CcGoaPanel is one, can
+be destroyed by a gtk_widget_destroy call, which is subtly different
+than a simple sequence of g_object_unref calls. When gtk_widget_destroy
+is used, it invokes the GObject::dispose virtual method of the widget.
+It is expected this will cause anything holding a reference to this
+widget to drop their references, leading to GObject::finalize being
+called. However, there is no guarantee that this will happen in the
+same iteration of the GMainLoop. Therefore, it is possible that when
+the goa_provider_get_all call finishes, the CcGoaPanel might be in a
+disposed, but not yet finalized state.
+
+When a GObject is in a disposed-but-not-finalized state, only a very
+limited number of operations can be performed on it. Its reference
+count can be altered, the memory used by the instance struct can be
+accessed, but none of the member GObjects can be assumed to be valid.
+eg., it's definitely illegal to add new rows to the member GtkListBox.
+Hence a boolean flag is used to mark the destroyed state of the panel.
+
+This second part is a small improvement over the earlier hack.
+
+https://gitlab.gnome.org/GNOME/gnome-control-center/issues/208
+(cherry picked from commit 83558429b3f98a4bf4ada17b64f09f073a6b8c38)
+---
+ panels/online-accounts/cc-online-accounts-panel.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/panels/online-accounts/cc-online-accounts-panel.c b/panels/online-accounts/cc-online-accounts-panel.c
+index edd140e4b..1640c74c4 100644
+--- a/panels/online-accounts/cc-online-accounts-panel.c
++++ b/panels/online-accounts/cc-online-accounts-panel.c
+@@ -56,6 +56,7 @@ struct _CcGoaPanel
+ GtkWidget *stack;
+ GtkWidget *accounts_vbox;
+
++ gboolean destroyed;
+ guint remove_account_timeout_id;
+ };
+
+@@ -401,6 +402,8 @@ cc_goa_panel_dispose (GObject *object)
+ /* Must be destroyed in dispose, not finalize. */
+ g_clear_pointer (&panel->edit_account_dialog, gtk_widget_destroy);
+
++ panel->destroyed = TRUE;
++
+ G_OBJECT_CLASS (cc_goa_panel_parent_class)->dispose (object);
+ }
+
+@@ -480,7 +483,7 @@ cc_goa_panel_init (CcGoaPanel *panel)
+ panel);
+
+ fill_accounts_listbox (panel);
+- goa_provider_get_all (get_all_providers_cb, panel);
++ goa_provider_get_all (get_all_providers_cb, g_object_ref_sink (panel));
+
+ gtk_widget_show (GTK_WIDGET (panel));
+ }
+@@ -843,7 +846,7 @@ get_all_providers_cb (GObject *source,
+ GAsyncResult *res,
+ gpointer user_data)
+ {
+- CcGoaPanel *self = user_data;
++ g_autoptr (CcGoaPanel) self = user_data;
+ GList *providers;
+ GList *l;
+
+@@ -851,6 +854,9 @@ get_all_providers_cb (GObject *source,
+ if (!goa_provider_get_all_finish (&providers, res, NULL))
+ return;
+
++ if (self->destroyed)
++ return;
++
+ for (l = providers; l != NULL; l = l->next)
+ {
+ GoaProvider *provider;
+--
+2.17.0
+
diff --git a/gnome-base/gnome-control-center/files/3.26.2-without-wayland-fix.patch b/gnome-base/gnome-control-center/files/3.26.2-without-wayland-fix.patch
new file mode 100644
index 000000000000..d045790d6c7e
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/3.26.2-without-wayland-fix.patch
@@ -0,0 +1,46 @@
+From 75dc553f10df3cf48227ec69b9465009eebf7b8b Mon Sep 17 00:00:00 2001
+From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
+Date: Wed, 17 Jan 2018 20:05:03 -0200
+Subject: [PATCH] common: Don't unconditionally define HAVE_WAYLAND
+
+This header unconditionally defines HAVE_WAYLAND when GTK
+is built with Wayland support. This breaks the build when
+building with Wayland disabled.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=785414
+(cherry picked from commit 62f07b2c6d8a28378e1f2c9f5d0c3241332ee8cf)
+[Added HAVE_WAYLAND config.h definition for autotools to fix runtime]
+Signed-off-by: Mart Raudsepp <leio@gentoo.org>
+---
+ configure.ac | 1 +
+ panels/common/gnome-settings-bus.h | 2 --
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f810bfb1f..24940a798 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -291,6 +291,7 @@ AS_IF([test "$enable_wayland" != "no"],
+ [AC_DEFINE(HAVE_UDEV, 1, [System has udev])])
+
+ PKG_CHECK_MODULES(WAYLAND, gdk-wayland-3.0)
++ AC_DEFINE(HAVE_WAYLAND, 1, [Compile with Wayland support])
+ ])
+ AM_CONDITIONAL(HAVE_WAYLAND, [test "x$enable_wayland" != "xno"])
+
+diff --git a/panels/common/gnome-settings-bus.h b/panels/common/gnome-settings-bus.h
+index ce58f5805..763a9cca7 100644
+--- a/panels/common/gnome-settings-bus.h
++++ b/panels/common/gnome-settings-bus.h
+@@ -5,8 +5,6 @@
+
+ #ifdef GDK_WINDOWING_WAYLAND
+
+-#define HAVE_WAYLAND 1
+-
+ static inline gboolean
+ gnome_settings_is_wayland (void)
+ {
+--
+2.17.0
+
diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.24.4.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.24.4.ebuild
index 5e32940aad46..81390ad69ec9 100644
--- a/gnome-base/gnome-control-center/gnome-control-center-3.24.4.ebuild
+++ b/gnome-base/gnome-control-center/gnome-control-center-3.24.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -23,12 +23,14 @@ KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh x86 ~x86-fbsd ~amd64-linux ~x8
# (mouse, keyboards, touchscreen, etc)
# display panel requires colord and gnome-settings-daemon[colord]
# printer panel requires cups and smbclient (the latter is not patch yet to be separately optional)
+# Requires gnome_bg_set_color, which was replaced with gnome_bg_set_rgba in 3.27.90
COMMON_DEPEND="
>=dev-libs/glib-2.44.0:2[dbus]
>=x11-libs/gdk-pixbuf-2.23.0:2
>=x11-libs/gtk+-3.22.0:3[X,wayland?]
>=gnome-base/gsettings-desktop-schemas-3.21.4
>=gnome-base/gnome-desktop-3.21.2:3=
+ <gnome-base/gnome-desktop-3.27.90:3
>=gnome-base/gnome-settings-daemon-3.23.90[colord,policykit]
>=x11-misc/colord-0.1.34:0=
diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r28.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r28.ebuild
new file mode 100644
index 000000000000..616a44779d21
--- /dev/null
+++ b/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r28.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+GNOME2_EAUTORECONF="yes"
+
+inherit bash-completion-r1 gnome2
+
+DESCRIPTION="GNOME's main interface to configure various aspects of the desktop"
+HOMEPAGE="https://git.gnome.org/browse/gnome-control-center/"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="2"
+IUSE="+bluetooth +colord +cups debug +gnome-online-accounts +ibus input_devices_wacom kerberos networkmanager v4l wayland"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+# gnome-session-2.91.6-r1 is needed so that 10-user-dirs-update is run at login
+# g-s-d[policykit] needed for bug #403527
+# kerberos unfortunately means mit-krb5; build fails with heimdal
+# udev could be made optional, only conditions gsd-device-panel
+# (mouse, keyboards, touchscreen, etc)
+# display panel requires colord and gnome-settings-daemon[colord]
+# printer panel requires cups and smbclient (the latter is not patch yet to be separately optional)
+COMMON_DEPEND="
+ >=dev-libs/glib-2.53.0:2[dbus]
+ >=x11-libs/gdk-pixbuf-2.23.0:2
+ >=x11-libs/gtk+-3.22.0:3[X,wayland=]
+ >=gnome-base/gsettings-desktop-schemas-3.21.4
+ >=gnome-base/gnome-desktop-3.27.3:3=
+ >=gnome-base/gnome-settings-daemon-3.25.90[colord,policykit]
+ >=x11-misc/colord-0.1.34:0=
+
+ >=dev-libs/libpwquality-1.2.2
+ dev-libs/libxml2:2
+ gnome-base/libgtop:2=
+ media-libs/fontconfig
+ >=sys-apps/accountsservice-0.6.39
+
+ >=media-libs/libcanberra-0.13[gtk3]
+ >=media-sound/pulseaudio-2[glib]
+ >=sys-auth/polkit-0.97
+ >=sys-power/upower-0.99:=
+
+ virtual/libgudev
+ x11-apps/xmodmap
+ x11-libs/cairo
+ x11-libs/libX11
+ x11-libs/libXxf86misc
+ >=x11-libs/libXi-1.2
+
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.18.2:= )
+ colord? (
+ net-libs/libsoup:2.4
+ >=x11-misc/colord-0.1.34:0=
+ >=x11-libs/colord-gtk-0.1.24 )
+ cups? (
+ >=net-print/cups-1.7[dbus]
+ >=net-fs/samba-4.0.0[client]
+ )
+ gnome-online-accounts? (
+ >=media-libs/grilo-0.3.0:0.3=
+ >=net-libs/gnome-online-accounts-3.25.3:= )
+ ibus? ( >=app-i18n/ibus-1.5.2 )
+ kerberos? ( app-crypt/mit-krb5 )
+ networkmanager? (
+ >=gnome-extra/nm-applet-1.2.0
+ >=net-misc/networkmanager-1.2.0:=[modemmanager]
+ >=net-misc/modemmanager-0.7.990 )
+ v4l? (
+ media-libs/clutter-gtk:1.0
+ >=media-video/cheese-3.5.91 )
+ input_devices_wacom? (
+ >=dev-libs/libwacom-0.7
+ >=media-libs/clutter-1.11.3:1.0
+ media-libs/clutter-gtk:1.0
+ >=x11-libs/libXi-1.2 )
+"
+# <gnome-color-manager-3.1.2 has file collisions with g-c-c-3.1.x
+# libgnomekbd needed only for gkbd-keyboard-display tool
+#
+# mouse panel needs a concrete set of X11 drivers at runtime, bug #580474
+# Also we need newer driver versions to allow wacom and libinput drivers to
+# not collide
+#
+# system-config-printer provides org.fedoraproject.Config.Printing service and interface
+# cups-pk-helper provides org.opensuse.cupspkhelper.mechanism.all-edit policykit helper policy
+RDEPEND="${COMMON_DEPEND}
+ || ( >=sys-apps/systemd-31 ( app-admin/openrc-settingsd sys-auth/consolekit ) )
+ x11-themes/adwaita-icon-theme
+ colord? ( >=gnome-extra/gnome-color-manager-3 )
+ cups? (
+ app-admin/system-config-printer
+ net-print/cups-pk-helper )
+ input_devices_wacom? ( gnome-base/gnome-settings-daemon[input_devices_wacom] )
+ >=gnome-base/libgnomekbd-3
+ wayland? ( dev-libs/libinput )
+ !wayland? (
+ >=x11-drivers/xf86-input-libinput-0.19.0
+ input_devices_wacom? ( >=x11-drivers/xf86-input-wacom-0.33.0 ) )
+
+ !<gnome-base/gdm-2.91.94
+ !<gnome-extra/gnome-color-manager-3.1.2
+ !gnome-extra/gnome-media[pulseaudio]
+ !<gnome-extra/gnome-media-2.32.0-r300
+ !<net-wireless/gnome-bluetooth-3.3.2
+"
+# PDEPEND to avoid circular dependency
+PDEPEND=">=gnome-base/gnome-session-2.91.6-r1"
+
+DEPEND="${COMMON_DEPEND}
+ x11-base/xorg-proto
+
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ dev-util/glib-utils
+ >=dev-util/intltool-0.40.1
+ >=sys-devel/gettext-0.17
+ virtual/pkgconfig
+
+ gnome-base/gnome-common
+ sys-devel/autoconf-archive
+"
+# Needed for autoreconf
+# gnome-base/gnome-common
+# sys-devel/autoconf-archive
+
+PATCHES=(
+ # Lots of patches from gnome-3-26 branch on top of 3.26.2
+ # Makes some panels and dependencies optional; requires eautoreconf
+ # https://bugzilla.gnome.org/686840, 697478, 700145
+ # Fix some absolute paths to be appropriate for Gentoo
+ "${WORKDIR}"/patches/
+ "${FILESDIR}"/${PV}-without-wayland-fix.patch # Fixes USE=-wayland build against gtk+[wayland]
+ "${FILESDIR}"/${PV}-goa-lifecycle.patch # extra patch from gnome-3-26
+ "${FILESDIR}"/${PV}-gnome-desktop-3-28-compat.patch # backport of porting to gnome-desktop-3.28 API changes; but due to runtime issues we ended up still needing to lock the wayland flags between gtk+ and g-c-c (TODO)
+)
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-update-mimedb \
+ --disable-static \
+ --enable-documentation \
+ $(use_enable bluetooth) \
+ $(use_enable colord color) \
+ $(use_enable cups) \
+ $(usex debug --enable-debug=yes ' ') \
+ $(use_enable gnome-online-accounts goa) \
+ $(use_enable ibus) \
+ $(use_enable kerberos) \
+ $(use_enable networkmanager) \
+ $(use_with v4l cheese) \
+ $(use_enable input_devices_wacom wacom) \
+ $(use_enable wayland)
+}
+
+src_install() {
+ gnome2_src_install completiondir="$(get_bashcompdir)"
+}
diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r1.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r3.ebuild
index ab4f3f3ce0ff..9078a9e52045 100644
--- a/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r1.ebuild
+++ b/gnome-base/gnome-control-center/gnome-control-center-3.26.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -23,12 +23,14 @@ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~amd64-linux ~
# (mouse, keyboards, touchscreen, etc)
# display panel requires colord and gnome-settings-daemon[colord]
# printer panel requires cups and smbclient (the latter is not patch yet to be separately optional)
+# Requires gnome_bg_set_color, which was replaced with gnome_bg_set_rgba in 3.27.90
COMMON_DEPEND="
>=dev-libs/glib-2.53.0:2[dbus]
>=x11-libs/gdk-pixbuf-2.23.0:2
- >=x11-libs/gtk+-3.22.0:3[X,wayland?]
+ >=x11-libs/gtk+-3.22.0:3[X,wayland=]
>=gnome-base/gsettings-desktop-schemas-3.21.4
>=gnome-base/gnome-desktop-3.21.2:3=
+ <gnome-base/gnome-desktop-3.27.90:3
>=gnome-base/gnome-settings-daemon-3.25.90[colord,policykit]
>=x11-misc/colord-0.1.34:0=
@@ -132,6 +134,8 @@ PATCHES=(
# https://bugzilla.gnome.org/686840, 697478, 700145
# Fix some absolute paths to be appropriate for Gentoo
"${WORKDIR}"/patches/
+ "${FILESDIR}"/${PV}-goa-lifecycle.patch # extra patch from gnome-3-26
+ "${FILESDIR}"/${PV}-without-wayland-fix.patch # Fixes USE=-wayland build against gtk+[wayland]; but due to runtime issues we ended up still needing to lock the wayland flags between gtk+ and g-c-c (TODO)
)
src_configure() {