summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2015-11-14 13:29:39 +0100
committerPacho Ramos <pacho@gentoo.org>2015-11-14 14:46:24 +0100
commitb3c8ffbcaebc502b997908d2eba3ec9ace6cc642 (patch)
treefce54b238869ee8f2961d9d6542fc3ca1a7d8e86 /gnome-base
parentgnome-base/gnome-settings-daemon: Support python 3.5 (diff)
downloadgentoo-b3c8ffbcaebc502b997908d2eba3ec9ace6cc642.tar.gz
gentoo-b3c8ffbcaebc502b997908d2eba3ec9ace6cc642.tar.bz2
gentoo-b3c8ffbcaebc502b997908d2eba3ec9ace6cc642.zip
gnome-base/gnome-control-center: Version bump
Package-Manager: portage-2.2.24
Diffstat (limited to 'gnome-base')
-rw-r--r--gnome-base/gnome-control-center/Manifest1
-rw-r--r--gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-keep-panels-optional.patch39
-rw-r--r--gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-optional.patch537
-rw-r--r--gnome-base/gnome-control-center/gnome-control-center-3.18.2.ebuild155
4 files changed, 732 insertions, 0 deletions
diff --git a/gnome-base/gnome-control-center/Manifest b/gnome-base/gnome-control-center/Manifest
index adb7ab6a6920..82b8b258bdf6 100644
--- a/gnome-base/gnome-control-center/Manifest
+++ b/gnome-base/gnome-control-center/Manifest
@@ -2,3 +2,4 @@ DIST gnome-control-center-3.14.5.tar.xz 6984452 SHA256 66ffaf4b1eb0a745a2928035b
DIST gnome-control-center-3.16.2-pyongyang.tar.xz 22808 SHA256 bc240beacc4f1e425d470ba21bdf19cd2cd547f232fa7d2a72299f75a7fb94d5 SHA512 04649782c34e72aa7169a62f2572d500533904ccd22782b660ec318996daa84d7d6c613c858080f94024d38778291cb1d03bd19497ab8a5724885730519c7c79 WHIRLPOOL 3518b9208da2763b084e0d294f00f8e8876f5d6bf38d3fa04af6766865a6e9d8ca8906a4da4d87344d238e6ea4e29c941a9f3a42b4c3e05cb58192839d134d9e
DIST gnome-control-center-3.16.2.tar.xz 7027220 SHA256 2c2636af27a07a064669abdf79a8b0580a9a611fa4f108900167100473028a3d SHA512 29c7b87ac2f713a46e20e596f69b343e9d98991c3449e79eb3f77e5d0b14f5250902caa2e481192d6da77f22a309bb7ab5fe4e4eb3c2a9e92d8b672c6b99bb09 WHIRLPOOL e1deb4f228058d5d49c9592a9d4f219190bd8909cccf803a45df767311f3d38bf79d56893f2628475a9d807ef68d57176c89972ec4b63aa81c6d0a35b9d25d60
DIST gnome-control-center-3.16.3.tar.xz 7045744 SHA256 ff9fe9c703be1d0e3afdef7b9ea331e436846ccd4d35090d501ba9510ee5a0c5 SHA512 cf6751ef237a1479b7973fa7481e68498949d58236d6c3a93375b91a96ea166e76da818b1beec50750e659f4dee803de06c76e8fa218aa2c87370aab4d478e79 WHIRLPOOL 79899c8d5c09130c86311835d9a549ea0e72f5fa89767b66d829db9ade9a729bc3c1b75b4b33bf3e076bb90c7bd34179d07592dd1acb4088ef46e1efac91a187
+DIST gnome-control-center-3.18.2.tar.xz 7113676 SHA256 36fe6157247d2b7c8a98dbb3dbcde1c3a6f9e5e8fcc9ccf357e2b2417578f8ad SHA512 fc1f1075bfd9e86bf2cd38483050895cdbeec1574aa0313245692b2c33fed2db9b92bce634a298e7309f8fc5bf230a122768be9da04f81d0ab1f1feaeaad7754 WHIRLPOOL 00a433686b4d0cb83bcf1e2b63a795bb086241d80441a997c7164476b063e07f006ef0329c7c9a57f0344cf46bb8fb69916984169143d7c455df6927a650a1ce
diff --git a/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-keep-panels-optional.patch b/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-keep-panels-optional.patch
new file mode 100644
index 000000000000..23141e44d701
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-keep-panels-optional.patch
@@ -0,0 +1,39 @@
+From 3b51af7de7bfe7b69bbb1a96dbbc184311281704 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Mon, 11 May 2015 23:59:03 +0200
+Subject: [PATCH 1/3] Optional gotta be optional
+
+---
+ configure.ac | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9713256..bc239de 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -508,22 +508,6 @@ else
+ AC_MSG_RESULT(no)
+ fi
+
+-case $host_os in
+- linux*)
+- if test "$host_cpu" = s390 -o "$host_cpu" = s390x; then
+- # Nothing
+- echo "USB-related panels disabled on S390"
+- else
+- if test "x$have_networkmanager" != "xyes" -o \
+- "x$have_bluetooth" != "xyes" -o \
+- "x$enable_cups" != "xyes" -o \
+- "x$have_wacom" != "xyes"; then
+- AC_MSG_ERROR([The Network, Bluetooth, Printers and Wacom panels are not optional on Linux systems])
+- fi
+- fi
+- ;;
+-esac
+-
+ AC_CONFIG_FILES([
+ Makefile
+ panels/Makefile
+--
+2.3.6
+
diff --git a/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-optional.patch b/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-optional.patch
new file mode 100644
index 000000000000..96b58f655ff1
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/gnome-control-center-3.18.0-optional.patch
@@ -0,0 +1,537 @@
+From af4a143d8e0ee51b1a81807d82598101663b1034 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Fri, 25 Apr 2014 22:17:24 +0200
+Subject: [PATCH 1/2] Make bluetooth/colord/goa/kerberos/wacom optional
+
+Upstream is not interested in any part of this patch:
+
+https://bugzilla.gnome.org/show_bug.cgi?id=686840
+https://bugzilla.gnome.org/show_bug.cgi?id=697478
+https://bugzilla.gnome.org/show_bug.cgi?id=700145
+
+Dropped mm from this revision of the patch since it appears more
+complicated than ever to split it from the network panel.
+
+Signed-Off: Gilles Dartiguelongue <eva@gentoo.org>
+---
+ configure.ac | 157 ++++++++++++++++++++++++++------
+ panels/Makefile.am | 10 +-
+ panels/background/Makefile.am | 8 +-
+ panels/background/bg-pictures-source.c | 20 ++++
+ panels/user-accounts/um-realm-manager.c | 9 ++
+ shell/Makefile.am | 10 +-
+ shell/cc-panel-loader.c | 8 ++
+ 7 files changed, 186 insertions(+), 36 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fe723d5..f882e23 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -119,10 +119,6 @@ LIBGD_INIT([_view-common notification static])
+ PKG_CHECK_MODULES(LIBLANGUAGE, $COMMON_MODULES gnome-desktop-3.0 fontconfig)
+ PKG_CHECK_MODULES(LIBSHORTCUTS, $COMMON_MODULES x11)
+ PKG_CHECK_MODULES(SHELL, $COMMON_MODULES x11 polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
+-PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES cairo-gobject libxml-2.0 gnome-desktop-3.0
+- gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION
+- goa-1.0 >= $GOA_REQUIRED_VERSION
+- grilo-0.2 >= $GRILO_REQUIRED_VERSION)
+ PKG_CHECK_MODULES(DATETIME_PANEL, $COMMON_MODULES
+ gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
+ polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
+@@ -139,14 +135,65 @@ PKG_CHECK_MODULES(MOUSE_PANEL, $COMMON_MODULES xi >= 1.2
+ gnome-settings-daemon >= $GSD_REQUIRED_VERSION x11)
+ PKG_CHECK_MODULES(NETWORK_PANEL, $COMMON_MODULES gmodule-2.0)
+ PKG_CHECK_MODULES(NOTIFICATIONS_PANEL, $COMMON_MODULES)
+-PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0 >= $GOA_REQUIRED_VERSION)
++
++build_online_accounts=false
++background_online_accounts=
++AC_ARG_ENABLE(goa,
++ AC_HELP_STRING([--disable-goa],
++ [disable online accounts management panel]),
++ [case "${enableval}" in
++ yes) WANT_ONLINE_ACCOUNTS=yes ;;
++ no) WANT_ONLINE_ACCOUNTS=no ;;
++ *) AC_MSG_ERROR(bad value ${enableval} for --disable-goa) ;;
++ esac],
++ [WANT_ONLINE_ACCOUNTS=yes]) dnl Default value
++
++if test x$WANT_ONLINE_ACCOUNTS = xyes; then
++ PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0 >= $GOA_REQUIRED_VERSION)
++ build_online_accounts=true
++ background_online_accounts="goa-1.0 >= $GOA_REQUIRED_VERSION grilo-0.2 >= $GRILO_REQUIRED_VERSION"
++fi
++if test "x$build_online_accounts" = xtrue ; then
++ AC_DEFINE(BUILD_ONLINE_ACCOUNTS, 1, [Define to 1 to build the Online Accounts panel])
++fi
++AM_CONDITIONAL(BUILD_ONLINE_ACCOUNTS, test "x$build_online_accounts" = "xtrue")
++AC_SUBST(ONLINE_ACCOUNTS_PANEL_CFLAGS)
++AC_SUBST(ONLINE_ACCOUNTS_PANEL_LIBS)
++
++PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
++ gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION
++ $background_online_accounts)
++
+ PKG_CHECK_MODULES(POWER_PANEL, $COMMON_MODULES upower-glib >= 0.99.0
+ gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
+-PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES
+- colord >= $COLORD_REQUIRED_VERSION
+- colord-gtk >= $COLORD_GTK_REQUIRED_VERSION
+- libsoup-2.4
+- gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
++
++build_color=false
++AC_ARG_ENABLE(color,
++ AC_HELP_STRING([--disable-color],
++ [disable color management panel]),
++ [case "${enableval}" in
++ yes) WANT_COLOR=yes ;;
++ no) WANT_COLOR=no ;;
++ *) AC_MSG_ERROR(bad value ${enableval} for --disable-color) ;;
++ esac],
++ [WANT_COLOR=yes]) dnl Default value
++
++if test x$WANT_COLOR = xyes; then
++
++ PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES
++ colord >= $COLORD_REQUIRED_VERSION
++ colord-gtk >= $COLORD_GTK_REQUIRED_VERSION
++ libsoup-2.4
++ gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
++ build_color=true
++fi
++if test "x$build_color" = xtrue ; then
++ AC_DEFINE(BUILD_COLOR, 1, [Define to 1 to build the Color panel])
++fi
++AM_CONDITIONAL(BUILD_COLOR, test "x$build_color" = "xtrue")
++AC_SUBST(COLOR_PANEL_CFLAGS)
++AC_SUBST(COLOR_PANEL_LIBS)
++
+ PKG_CHECK_MODULES(PRINTERS_PANEL, $COMMON_MODULES
+ polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
+ PKG_CHECK_MODULES(PRIVACY_PANEL, $COMMON_MODULES)
+@@ -206,8 +253,25 @@ fi
+ AM_CONDITIONAL(HAVE_NM_UNSTABLE, [test x$nm_unstable = xyes])
+
+ # Check for gnome-bluetooth
+-PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.18.0,
+- [have_bluetooth=yes], have_bluetooth=no)
++have_bluetooth=no
++AC_ARG_ENABLE(bluetooth,
++ AC_HELP_STRING([--disable-bluetooth],
++ [disable bluetooth management panel]),
++ [case "${enableval}" in
++ yes) WANT_BLUETOOTH=yes ;;
++ no) WANT_BLUETOOTH=no ;;
++ *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluetooth) ;;
++ esac],
++ [WANT_BLUETOOTH=yes]) dnl Default value
++
++if test x$WANT_BLUETOOTH = xyes; then
++ # Check for gnome-bluetooth
++ PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.18.0,
++ [have_bluetooth=yes], have_bluetooth=no)
++ have_bluetooth=yes
++fi
++
++
+ if test "x$have_bluetooth" = xyes ; then
+ AC_DEFINE(BUILD_BLUETOOTH, 1, [Define to 1 to build the Bluetooth panel])
+ fi
+@@ -292,15 +356,27 @@ case $host_os in
+ if test "$host_cpu" = s390 -o "$host_cpu" = s390x; then
+ have_wacom=no
+ else
+- PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
+- gnome-settings-daemon >= $GSD_REQUIRED_VERSION
+- xi >= 1.2 x11 libwacom >= $LIBWACOM_REQUIRED_VERSION
+- gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
+- clutter-gtk-1.0
+- clutter-1.0 >= $CLUTTER_REQUIRED_VERSION)
+- have_wacom=yes
+- AC_DEFINE(BUILD_WACOM, 1, [Define to 1 to build the Wacom panel])
+- AC_DEFINE(HAVE_WACOM, 1, [Define to 1 is Wacom is supportted])
++ AC_ARG_ENABLE(wacom,
++ AC_HELP_STRING([--disable-wacom],
++ [disable wacom management panel]),
++ [case "${enableval}" in
++ yes) WANT_WACOM=yes ;;
++ no) WANT_WACOM=no ;;
++ *) AC_MSG_ERROR(bad value ${enableval} for --disable-wacom) ;;
++ esac],
++ [WANT_WACOM=yes]) dnl Default value
++
++ if test x$WANT_WACOM = xyes; then
++ PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
++ gnome-settings-daemon >= $GSD_REQUIRED_VERSION
++ xi >= 1.2 x11 libwacom >= $LIBWACOM_REQUIRED_VERSION
++ gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
++ clutter-gtk-1.0
++ clutter-1.0 >= $CLUTTER_REQUIRED_VERSION)
++ have_wacom=yes
++ AC_DEFINE(BUILD_WACOM, 1, [Define to 1 to build the Wacom panel])
++ AC_DEFINE(HAVE_WACOM, 1, [Define to 1 is Wacom is supportted])
++ fi
+ fi
+ ;;
+ *)
+@@ -310,16 +386,22 @@ esac
+ AM_CONDITIONAL(BUILD_WACOM, [test x${have_wacom} = xyes])
+
+ # Kerberos kerberos support
+-AC_PATH_PROG(KRB5_CONFIG, krb5-config, no)
+-if test "$KRB5_CONFIG" = "no"; then
+- AC_MSG_ERROR([krb5-config executable not found in your path - should be installed with the kerberos libraries])
+-fi
+-
+-AC_MSG_CHECKING(for krb5 libraries and flags)
+-KRB5_CFLAGS="`$KRB5_CONFIG --cflags`"
+-KRB5_LIBS="`$KRB5_CONFIG --libs`"
+-AC_MSG_RESULT($KRB5_CFLAGS $KRB5_LIBS)
++AC_ARG_ENABLE([kerberos],
++ AS_HELP_STRING([--disable-kerberos], [disable kerberos support (default: enabled)]),,
++ [enable_kerberos=yes])
++
++if test x"$enable_kerberos" != x"no" ; then
++ AC_PATH_PROG(KRB5_CONFIG, krb5-config, no)
++ if test "$KRB5_CONFIG" = "no"; then
++ AC_MSG_ERROR([krb5-config executable not found in your path - should be installed with the kerberos libraries])
++ fi
+
++ AC_MSG_CHECKING(for krb5 libraries and flags)
++ KRB5_CFLAGS="`$KRB5_CONFIG --cflags`"
++ KRB5_LIBS="`$KRB5_CONFIG --libs`"
++ AC_MSG_RESULT($KRB5_CFLAGS $KRB5_LIBS)
++ AC_DEFINE(HAVE_KERBEROS, 1, [defined if krb5 is available])
++fi
+ AC_SUBST(KRB5_CFLAGS)
+ AC_SUBST(KRB5_LIBS)
+
+@@ -538,6 +620,11 @@ if test "x$have_bluetooth" = "xyes"; then
+ else
+ AC_MSG_NOTICE([ Bluetooth panel disabled])
+ fi
++if test "x$build_color" = "xtrue"; then
++ AC_MSG_NOTICE([** colord (Color panel)])
++else
++ AC_MSG_NOTICE([ Color panel disabled])
++fi
+ if test "x$enable_cups" = "xyes"; then
+ AC_MSG_NOTICE([** CUPS (Printers panel)])
+ else
+@@ -548,6 +635,16 @@ if test "x$have_cheese" = "xyes"; then
+ else
+ AC_MSG_NOTICE([ Users panel webcam support disabled])
+ fi
++if test "x$build_online_accounts" = "xtrue"; then
++ AC_MSG_NOTICE([** gnome-online-accounts (Online Accounts panel)])
++else
++ AC_MSG_NOTICE([ Online Accounts panel disabled])
++fi
++if test "x$build_wacom" = "xtrue"; then
++ AC_MSG_NOTICE([** libwacom (Wacom Graphics Tablet panel)])
++else
++ AC_MSG_NOTICE([ Wacom Graphics Tablet panel disabled])
++fi
+ if test "x$have_wacom" = "xyes"; then
+ AC_MSG_NOTICE([** wacom (Wacom tablet panel)])
+ else
+diff --git a/panels/Makefile.am b/panels/Makefile.am
+index 9961c25..0c54622 100644
+--- a/panels/Makefile.am
++++ b/panels/Makefile.am
+@@ -2,11 +2,9 @@ SUBDIRS= \
+ common \
+ background \
+ power \
+- color \
+ display \
+ mouse \
+ notifications \
+- online-accounts \
+ region \
+ info \
+ sound \
+@@ -18,6 +16,10 @@ SUBDIRS= \
+ privacy \
+ sharing
+
++if BUILD_COLOR
++SUBDIRS += color
++endif
++
+ if BUILD_WACOM
+ SUBDIRS += wacom
+ endif
+@@ -34,4 +36,8 @@ if BUILD_BLUETOOTH
+ SUBDIRS += bluetooth
+ endif
+
++if BUILD_ONLINE_ACCOUNTS
++SUBDIRS += online-accounts
++endif
++
+ -include $(top_srcdir)/git.mk
+diff --git a/panels/background/Makefile.am b/panels/background/Makefile.am
+index ccb8017..bde4cdf 100644
+--- a/panels/background/Makefile.am
++++ b/panels/background/Makefile.am
+@@ -27,8 +27,6 @@ libbackground_chooser_la_SOURCES = \
+ $(BUILT_SOURCES) \
+ cc-background-chooser-dialog.c \
+ cc-background-chooser-dialog.h \
+- cc-background-grilo-miner.c \
+- cc-background-grilo-miner.h \
+ cc-background-item.c \
+ cc-background-item.h \
+ cc-background-xml.c \
+@@ -42,6 +40,12 @@ libbackground_chooser_la_SOURCES = \
+ bg-colors-source.c \
+ bg-colors-source.h
+
++if BUILD_ONLINE_ACCOUNTS
++libbackground_chooser_la_SOURCES += \
++ cc-background-grilo-miner.c \
++ cc-background-grilo-miner.h
++endif
++
+ libbackground_chooser_la_LIBADD = $(PANEL_LIBS) $(BACKGROUND_PANEL_LIBS)
+
+ libbackground_la_SOURCES = \
+diff --git a/panels/background/bg-pictures-source.c b/panels/background/bg-pictures-source.c
+index c165fa3..78ef4a5 100644
+--- a/panels/background/bg-pictures-source.c
++++ b/panels/background/bg-pictures-source.c
+@@ -23,13 +23,17 @@
+
+ #include "bg-pictures-source.h"
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ #include "cc-background-grilo-miner.h"
++#endif
+ #include "cc-background-item.h"
+
+ #include <string.h>
+ #include <cairo-gobject.h>
+ #include <gio/gio.h>
++#ifdef BUILD_ONLINE_ACCOUNTS
+ #include <grilo.h>
++#endif
+ #include <libgnome-desktop/gnome-desktop-thumbnail.h>
+ #include <gdesktop-enums.h>
+
+@@ -46,7 +50,9 @@ struct _BgPicturesSourcePrivate
+ {
+ GCancellable *cancellable;
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ CcBackgroundGriloMiner *grl_miner;
++#endif
+
+ GnomeDesktopThumbnailFactory *thumb_factory;
+
+@@ -84,7 +90,9 @@ bg_pictures_source_dispose (GObject *object)
+ g_clear_object (&priv->cancellable);
+ }
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ g_clear_object (&priv->grl_miner);
++#endif
+ g_clear_object (&priv->thumb_factory);
+
+ G_OBJECT_CLASS (bg_pictures_source_parent_class)->dispose (object);
+@@ -414,7 +422,11 @@ add_single_file (BgPicturesSource *bg_source,
+ gboolean needs_download;
+ gboolean retval = FALSE;
+ GFile *pictures_dir, *cache_dir;
++#ifdef BUILD_ONLINE_ACCOUNTS
+ GrlMedia *media;
++#else
++ gpointer media = NULL;
++#endif
+
+ /* find png and jpeg files */
+ if (!content_type)
+@@ -473,7 +485,9 @@ add_single_file (BgPicturesSource *bg_source,
+
+ read_file:
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ media = g_object_get_data (G_OBJECT (file), "grl-media");
++#endif
+ if (media == NULL)
+ {
+ g_object_set_data_full (G_OBJECT (file), "item", g_object_ref (item), g_object_unref);
+@@ -556,6 +570,7 @@ add_single_file_from_info (BgPicturesSource *bg_source,
+ return add_single_file (bg_source, file, content_type, mtime, ret_row_ref);
+ }
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ static gboolean
+ add_single_file_from_media (BgPicturesSource *bg_source,
+ GFile *file,
+@@ -575,6 +590,7 @@ add_single_file_from_media (BgPicturesSource *bg_source,
+
+ return add_single_file (bg_source, file, content_type, (guint64) mtime_unix, NULL);
+ }
++#endif /* BUILD_ONLINE_ACCOUNTS */
+
+ gboolean
+ bg_pictures_source_add (BgPicturesSource *bg_source,
+@@ -885,6 +901,7 @@ files_changed_cb (GFileMonitor *monitor,
+ }
+ }
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ static void
+ media_found_cb (BgPicturesSource *self, GrlMedia *media)
+ {
+@@ -896,6 +913,7 @@ media_found_cb (BgPicturesSource *self, GrlMedia *media)
+ g_object_set_data_full (G_OBJECT (file), "grl-media", g_object_ref (media), g_object_unref);
+ add_single_file_from_media (self, file, media);
+ }
++#endif /* BUILD_ONLINE_ACCOUNTS */
+
+ static void
+ bg_pictures_source_init (BgPicturesSource *self)
+@@ -962,9 +980,11 @@ bg_pictures_source_init (BgPicturesSource *self)
+
+ g_object_unref (dir);
+
++#ifdef BUILD_ONLINE_ACCOUNTS
+ priv->grl_miner = cc_background_grilo_miner_new ();
+ g_signal_connect_swapped (priv->grl_miner, "media-found", G_CALLBACK (media_found_cb), self);
+ cc_background_grilo_miner_start (priv->grl_miner);
++#endif /* BUILD_ONLINE_ACCOUNTS */
+
+ priv->thumb_factory =
+ gnome_desktop_thumbnail_factory_new (GNOME_DESKTOP_THUMBNAIL_SIZE_LARGE);
+diff --git a/panels/user-accounts/um-realm-manager.c b/panels/user-accounts/um-realm-manager.c
+index 0849160..58d50a6 100644
+--- a/panels/user-accounts/um-realm-manager.c
++++ b/panels/user-accounts/um-realm-manager.c
+@@ -22,7 +22,9 @@
+
+ #include "um-realm-manager.h"
+
++#ifdef HAVE_KERBEROS
+ #include <krb5/krb5.h>
++#endif
+
+ #include <glib.h>
+ #include <glib/gi18n.h>
+@@ -696,6 +698,7 @@ login_closure_free (gpointer data)
+ g_slice_free (LoginClosure, login);
+ }
+
++#ifdef HAVE_KERBEROS
+ static krb5_error_code
+ login_perform_kinit (krb5_context k5,
+ const gchar *realm,
+@@ -759,12 +762,14 @@ login_perform_kinit (krb5_context k5,
+
+ return code;
+ }
++#endif /* HAVE_KERBEROS */
+
+ static void
+ kinit_thread_func (GSimpleAsyncResult *async,
+ GObject *object,
+ GCancellable *cancellable)
+ {
++#ifdef HAVE_KERBEROS
+ LoginClosure *login = g_simple_async_result_get_op_res_gpointer (async);
+ krb5_context k5 = NULL;
+ krb5_error_code code;
+@@ -842,6 +847,10 @@ kinit_thread_func (GSimpleAsyncResult *async,
+
+ if (k5)
+ krb5_free_context (k5);
++#else /* HAVE_KERBEROS */
++ g_simple_async_result_set_error (async, UM_REALM_ERROR, UM_REALM_ERROR_GENERIC,
++ _("gnome-control-center was built without kerberos support"));
++#endif
+ }
+
+ void
+diff --git a/shell/Makefile.am b/shell/Makefile.am
+index c0cb91a..0b820fd 100644
+--- a/shell/Makefile.am
++++ b/shell/Makefile.am
+@@ -55,14 +55,12 @@ gnome_control_center_LDADD = \
+ $(top_builddir)/libgd/libgd.la \
+ $(top_builddir)/panels/common/liblanguage.la \
+ $(top_builddir)/panels/background/libbackground.la \
+- $(top_builddir)/panels/color/libcolor.la \
+ $(top_builddir)/panels/datetime/libdate_time.la \
+ $(top_builddir)/panels/display/libdisplay.la \
+ $(top_builddir)/panels/info/libinfo.la \
+ $(top_builddir)/panels/keyboard/libkeyboard.la \
+ $(top_builddir)/panels/mouse/libmouse-properties.la \
+ $(top_builddir)/panels/notifications/libnotifications.la \
+- $(top_builddir)/panels/online-accounts/libonline-accounts.la \
+ $(top_builddir)/panels/power/libpower.la \
+ $(top_builddir)/panels/privacy/libprivacy.la \
+ $(top_builddir)/panels/region/libregion.la \
+@@ -88,6 +86,14 @@ if BUILD_BLUETOOTH
+ gnome_control_center_LDADD += $(top_builddir)/panels/bluetooth/libbluetooth.la
+ endif
+
++if BUILD_COLOR
++gnome_control_center_LDADD += $(top_builddir)/panels/color/libcolor.la
++endif
++
++if BUILD_ONLINE_ACCOUNTS
++gnome_control_center_LDADD += $(top_builddir)/panels/online-accounts/libonline-accounts.la
++endif
++
+ # Dbus service file
+ servicefiledir = $(datadir)/dbus-1/services
+ servicefile_in_files = org.gnome.ControlCenter.service.in
+diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
+index 26576dc..8a92f95 100644
+--- a/shell/cc-panel-loader.c
++++ b/shell/cc-panel-loader.c
+@@ -33,7 +33,9 @@ extern GType cc_background_panel_get_type (void);
+ #ifdef BUILD_BLUETOOTH
+ extern GType cc_bluetooth_panel_get_type (void);
+ #endif /* BUILD_BLUETOOTH */
++#ifdef BUILD_COLOR
+ extern GType cc_color_panel_get_type (void);
++#endif /* BUILD_COLOR */
+ extern GType cc_date_time_panel_get_type (void);
+ extern GType cc_display_panel_get_type (void);
+ extern GType cc_info_panel_get_type (void);
+@@ -43,7 +45,9 @@ extern GType cc_mouse_panel_get_type (void);
+ extern GType cc_network_panel_get_type (void);
+ #endif /* BUILD_NETWORK */
+ extern GType cc_notifications_panel_get_type (void);
++#ifdef BUILD_ONLINE_ACCOUNTS
+ extern GType cc_goa_panel_get_type (void);
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ extern GType cc_power_panel_get_type (void);
+ #ifdef BUILD_PRINTERS
+ extern GType cc_printers_panel_get_type (void);
+@@ -77,7 +81,9 @@ static struct {
+ #ifdef BUILD_BLUETOOTH
+ PANEL_TYPE("bluetooth", cc_bluetooth_panel_get_type ),
+ #endif
++#ifdef BUILD_COLOR
+ PANEL_TYPE("color", cc_color_panel_get_type ),
++#endif
+ PANEL_TYPE("datetime", cc_date_time_panel_get_type ),
+ PANEL_TYPE("display", cc_display_panel_get_type ),
+ PANEL_TYPE("info", cc_info_panel_get_type ),
+@@ -87,7 +93,9 @@ static struct {
+ PANEL_TYPE("network", cc_network_panel_get_type ),
+ #endif
+ PANEL_TYPE("notifications", cc_notifications_panel_get_type),
++#ifdef BUILD_ONLINE_ACCOUNTS
+ PANEL_TYPE("online-accounts", cc_goa_panel_get_type ),
++#endif
+ PANEL_TYPE("power", cc_power_panel_get_type ),
+ #ifdef BUILD_PRINTERS
+ PANEL_TYPE("printers", cc_printers_panel_get_type ),
+--
+2.1.2
+
diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.18.2.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.18.2.ebuild
new file mode 100644
index 000000000000..c708358183e0
--- /dev/null
+++ b/gnome-base/gnome-control-center/gnome-control-center-3.18.2.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+GNOME2_LA_PUNT="yes"
+
+inherit autotools bash-completion-r1 eutils gnome2
+
+DESCRIPTION="GNOME's main interface to configure various aspects of the desktop"
+HOMEPAGE="https://git.gnome.org/browse/gnome-control-center/"
+
+LICENSE="GPL-2+"
+SLOT="2"
+IUSE="+bluetooth +colord +cups +gnome-online-accounts +i18n input_devices_wacom kerberos networkmanager v4l wayland"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+# False positives caused by nested configure scripts
+QA_CONFIGURE_OPTIONS=".*"
+
+# 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)
+COMMON_DEPEND="
+ >=dev-libs/glib-2.39.91:2[dbus]
+ >=x11-libs/gdk-pixbuf-2.23.0:2
+ >=x11-libs/gtk+-3.15:3[X,wayland?]
+ >=gnome-base/gsettings-desktop-schemas-3.15.4
+ >=gnome-base/gnome-desktop-3.17.4:3=
+ >=gnome-base/gnome-settings-daemon-3.8.3[colord?,policykit]
+
+ >=dev-libs/libpwquality-1.2.2
+ dev-libs/libxml2:2
+ gnome-base/libgtop:2=
+ media-libs/fontconfig
+
+ >=media-libs/libcanberra-0.13[gtk3]
+ >=media-sound/pulseaudio-2[glib]
+ >=sys-auth/polkit-0.97
+ >=sys-power/upower-0.99:=
+ >=x11-libs/libnotify-0.7.3:0=
+
+ virtual/libgudev
+ virtual/opengl
+ x11-apps/xmodmap
+ x11-libs/cairo
+ x11-libs/libX11
+ x11-libs/libXxf86misc
+ >=x11-libs/libXi-1.2
+
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.18.0:= )
+ 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.4[dbus]
+ || ( >=net-fs/samba-3.6.14-r1[smbclient] >=net-fs/samba-4.0.0[client] ) )
+ gnome-online-accounts? (
+ >=media-libs/grilo-0.2.12:0.2
+ >=net-libs/gnome-online-accounts-3.15.1 )
+ i18n? ( >=app-i18n/ibus-1.5.2 )
+ kerberos? ( app-crypt/mit-krb5 )
+ networkmanager? (
+ >=gnome-extra/nm-applet-0.9.7.995
+ >=net-misc/networkmanager-0.9.8[modemmanager]
+ >=net-misc/modemmanager-0.7.990 )
+ v4l? (
+ media-libs/gstreamer:1.0
+ 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
+RDEPEND="${COMMON_DEPEND}
+ || ( ( app-admin/openrc-settingsd sys-auth/consolekit ) >=sys-apps/systemd-31 )
+ >=sys-apps/accountsservice-0.6.39
+ x11-themes/gnome-icon-theme-symbolic
+ 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] )
+ i18n? ( >=gnome-base/libgnomekbd-3 )
+
+ !<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-proto/xproto
+ x11-proto/xf86miscproto
+ x11-proto/kbproto
+
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ >=dev-util/intltool-0.40.1
+ >=sys-devel/gettext-0.17
+ virtual/pkgconfig
+
+ gnome-base/gnome-common
+"
+# Needed for autoreconf
+# gnome-base/gnome-common
+
+src_prepare() {
+ # Make some panels and dependencies optional; requires eautoreconf
+ # https://bugzilla.gnome.org/686840, 697478, 700145
+ epatch "${FILESDIR}"/${PN}-3.18.0-optional.patch
+ epatch "${FILESDIR}"/${PN}-3.16.0-make-wayland-optional.patch
+ epatch "${FILESDIR}"/${PN}-3.18.0-keep-panels-optional.patch
+ epatch "${FILESDIR}"/${PN}-3.16.0-networkmanager.patch
+
+ # Fix some absolute paths to be appropriate for Gentoo
+ epatch "${FILESDIR}"/${PN}-3.10.2-gentoo-paths.patch
+
+ epatch_user
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-update-mimedb \
+ --disable-static \
+ --enable-documentation \
+ $(use_enable bluetooth) \
+ $(use_enable colord color) \
+ $(use_enable cups) \
+ $(use_enable gnome-online-accounts goa) \
+ $(use_enable i18n 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)"
+}