summaryrefslogtreecommitdiff
path: root/nonprism-testing
diff options
context:
space:
mode:
authorIsaac David <isacdaavid@isacdaavid.info>2017-06-19 18:54:41 -0500
committerIsaac David <isacdaavid@isacdaavid.info>2017-06-19 18:54:41 -0500
commit346440fab594bdf39ec96440a8cd6757fab66916 (patch)
treea7b283eeef3c1a218441b809c35b238ff2111af6 /nonprism-testing
parenta63fbdf61bfda17b772bc3009c7ff58ccb007251 (diff)
nonprism/gnome-settings-daemon: backtrack and move to nonprism-testing
Diffstat (limited to 'nonprism-testing')
-rw-r--r--nonprism-testing/gnome-settings-daemon/PKGBUILD56
-rw-r--r--nonprism-testing/gnome-settings-daemon/nonprism.patch288
2 files changed, 344 insertions, 0 deletions
diff --git a/nonprism-testing/gnome-settings-daemon/PKGBUILD b/nonprism-testing/gnome-settings-daemon/PKGBUILD
new file mode 100644
index 000000000..c1347740b
--- /dev/null
+++ b/nonprism-testing/gnome-settings-daemon/PKGBUILD
@@ -0,0 +1,56 @@
+# Maintainer (Arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Maintainer: André Silva <emulatorman@parabola.nu>
+# Contributor: Isaac David <isacdaavid@at@isacdaavid.info>
+
+pkgname=gnome-settings-daemon
+pkgver=3.24.2
+pkgrel=1.nonprism1
+pkgdesc="GNOME Settings Daemon, without geoclue2 support"
+url="https://git.gnome.org/browse/gnome-settings-daemon"
+arch=(i686 x86_64 armv7h)
+license=(GPL)
+depends=(dconf gnome-desktop gsettings-desktop-schemas libcanberra-pulse libnotify libsystemd
+ libwacom pulseaudio pulseaudio-alsa upower librsvg libgweather geocode-glib nss
+ libgudev gtk3-print-backends libnm)
+makedepends=(intltool xf86-input-wacom libxslt docbook-xsl python git gnome-common)
+groups=(gnome)
+_commit=2ff67385f2b7c7adb0ab438cb41d114235a8e40a # tags/GNOME_SETTINGS_DAEMON_3_24_2^0
+source=("git+https://git.gnome.org/browse/gnome-settings-daemon#commit=$_commit"
+ "git+https://git.gnome.org/browse/libgnome-volume-control"
+ nonprism.patch)
+sha256sums=('SKIP'
+ 'SKIP'
+ '04217ba23fe3d76b04bdb92059257972ee7511aec6f713d807434f6a10e3d1a5')
+
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/^GNOME_SETTINGS_DAEMON_//;s/_/./g;s/-/+/g'
+}
+
+prepare() {
+ cd $pkgname
+
+ git submodule init
+ git config --local submodule."panels/media-keys/gvc".url "$srcdir/libgnome-volume-control"
+ git submodule update
+
+ patch -p1 -i $srcdir/nonprism.patch
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ cd $pkgname
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --libexecdir=/usr/lib/$pkgname --disable-static
+
+ #https://bugzilla.gnome.org/show_bug.cgi?id=656231
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make
+}
+
+package() {
+ cd $pkgname
+ make DESTDIR="$pkgdir" install
+}
diff --git a/nonprism-testing/gnome-settings-daemon/nonprism.patch b/nonprism-testing/gnome-settings-daemon/nonprism.patch
new file mode 100644
index 000000000..2e35a49c1
--- /dev/null
+++ b/nonprism-testing/gnome-settings-daemon/nonprism.patch
@@ -0,0 +1,288 @@
+diff --git a/configure.ac b/configure.ac
+index 84c8ce234..856eaeb49 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -57,7 +57,6 @@ POLKIT_REQUIRED_VERSION=0.103
+ UPOWER_REQUIRED_VERSION=0.99.0
+ GSETTINGS_DESKTOP_SCHEMAS_REQUIRED_VERSION=3.23.3
+ GEOCODE_GLIB_REQUIRED_VERSION=3.10.0
+-GEOCLUE_REQUIRED_VERSION=2.3.1
+ NM_REQUIRED_VERSION=1.0
+ LCMS_REQUIRED_VERSION=2.2
+
+@@ -162,13 +161,11 @@ PKG_CHECK_MODULES(COLOR,
+ colord >= 1.0.2
+ gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
+ libcanberra-gtk3
+- libgeoclue-2.0 >= $GEOCLUE_REQUIRED_VERSION
+ lcms2 >= $LCMS_REQUIRED_VERSION
+ libnotify)
+
+ PKG_CHECK_MODULES(DATETIME,
+ libnotify >= $LIBNOTIFY_REQUIRED_VERSION
+- libgeoclue-2.0 >= $GEOCLUE_REQUIRED_VERSION
+ geocode-glib-1.0 >= $GEOCODE_GLIB_REQUIRED_VERSION
+ gweather-3.0 >= $LIBGWEATHER_REQUIRED_VERSION
+ polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
+diff --git a/plugins/color/gcm-self-test.c b/plugins/color/gcm-self-test.c
+index 83c06c525..c22191e86 100644
+--- a/plugins/color/gcm-self-test.c
++++ b/plugins/color/gcm-self-test.c
+@@ -70,9 +70,6 @@ gcm_test_night_light (void)
+ datetime_override = g_date_time_new_utc (2017, 2, 8, 20, 0, 0);
+ gsd_night_light_set_date_time_now (nlight, datetime_override);
+
+- /* do not start geoclue */
+- gsd_night_light_set_geoclue_enabled (nlight, FALSE);
+-
+ /* do not smooth the transition */
+ gsd_night_light_set_smooth_enabled (nlight, FALSE);
+
+diff --git a/plugins/color/gsd-night-light.c b/plugins/color/gsd-night-light.c
+index 67415f1d8..7f5118468 100644
+--- a/plugins/color/gsd-night-light.c
++++ b/plugins/color/gsd-night-light.c
+@@ -20,7 +20,6 @@
+
+ #include "config.h"
+
+-#include <geoclue.h>
+
+ #define GNOME_DESKTOP_USE_UNSTABLE_API
+ #include "gnome-datetime-source.h"
+@@ -34,12 +33,9 @@ struct _GsdNightLight {
+ GObject parent;
+ GSettings *settings;
+ gboolean disabled_until_tmw;
+- gboolean geoclue_enabled;
+ GSource *source;
+ guint validate_id;
+ gint disabled_day_of_month;
+- GClueClient *geoclue_client;
+- GClueSimple *geoclue_simple;
+ gdouble cached_sunrise;
+ gdouble cached_sunset;
+ gdouble cached_temperature;
+@@ -407,66 +403,6 @@ settings_changed_cb (GSettings *settings, gchar *key, gpointer user_data)
+ night_light_recheck (self);
+ }
+
+-static void
+-on_location_notify (GClueSimple *simple,
+- GParamSpec *pspec,
+- gpointer user_data)
+-{
+- GsdNightLight *self = GSD_NIGHT_LIGHT (user_data);
+- GClueLocation *location;
+- gdouble latitude, longitude;
+-
+- location = gclue_simple_get_location (simple);
+- latitude = gclue_location_get_latitude (location);
+- longitude = gclue_location_get_longitude (location);
+-
+- g_settings_set_value (self->settings,
+- "night-light-last-coordinates",
+- g_variant_new ("(dd)", latitude, longitude));
+-
+- g_debug ("got geoclue latitude %f, longitude %f", latitude, longitude);
+-
+- /* recheck the levels if the location changed significantly */
+- if (update_cached_sunrise_sunset (self))
+- night_light_recheck_schedule (self);
+-}
+-
+-static void
+-on_geoclue_simple_ready (GObject *source_object,
+- GAsyncResult *res,
+- gpointer user_data)
+-{
+- GsdNightLight *self = GSD_NIGHT_LIGHT (user_data);
+- GClueSimple *geoclue_simple;
+- g_autoptr(GError) error = NULL;
+-
+- geoclue_simple = gclue_simple_new_finish (res, &error);
+- if (geoclue_simple == NULL) {
+- if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
+- g_warning ("Failed to connect to GeoClue2 service: %s", error->message);
+- return;
+- }
+-
+- self->geoclue_simple = geoclue_simple;
+- self->geoclue_client = gclue_simple_get_client (self->geoclue_simple);
+-
+- g_signal_connect (self->geoclue_simple, "notify::location",
+- G_CALLBACK (on_location_notify), user_data);
+-
+- on_location_notify (self->geoclue_simple, NULL, user_data);
+-}
+-
+-static void
+-register_geoclue (GsdNightLight *self)
+-{
+- gclue_simple_new (DESKTOP_ID,
+- GCLUE_ACCURACY_LEVEL_CITY,
+- self->cancellable,
+- on_geoclue_simple_ready,
+- self);
+-
+-}
+-
+ void
+ gsd_night_light_set_disabled_until_tmw (GsdNightLight *self, gboolean value)
+ {
+@@ -511,19 +447,10 @@ gsd_night_light_get_temperature (GsdNightLight *self)
+ return self->cached_temperature;
+ }
+
+-void
+-gsd_night_light_set_geoclue_enabled (GsdNightLight *self, gboolean enabled)
+-{
+- self->geoclue_enabled = enabled;
+-}
+-
+ gboolean
+ gsd_night_light_start (GsdNightLight *self, GError **error)
+ {
+
+- if (self->geoclue_enabled)
+- register_geoclue (self);
+-
+ night_light_recheck (self);
+ poll_timeout_create (self);
+
+@@ -554,9 +481,6 @@ gsd_night_light_finalize (GObject *object)
+ self->validate_id = 0;
+ }
+
+- if (self->geoclue_client != NULL)
+- gclue_client_call_stop (self->geoclue_client, NULL, NULL, NULL);
+- g_clear_object (&self->geoclue_simple);
+ G_OBJECT_CLASS (gsd_night_light_parent_class)->finalize (object);
+ }
+
+@@ -675,7 +599,6 @@ gsd_night_light_class_init (GsdNightLightClass *klass)
+ static void
+ gsd_night_light_init (GsdNightLight *self)
+ {
+- self->geoclue_enabled = TRUE;
+ self->smooth_enabled = TRUE;
+ self->cached_sunrise = -1.f;
+ self->cached_sunset = -1.f;
+diff --git a/plugins/color/gsd-night-light.h b/plugins/color/gsd-night-light.h
+index 4f086dc67..4a63ecfab 100644
+--- a/plugins/color/gsd-night-light.h
++++ b/plugins/color/gsd-night-light.h
+@@ -42,8 +42,6 @@ void gsd_night_light_set_disabled_until_tmw (GsdNightLight *self,
+ gboolean value);
+
+ /* only for the self test program */
+-void gsd_night_light_set_geoclue_enabled (GsdNightLight *self,
+- gboolean enabled);
+ void gsd_night_light_set_date_time_now (GsdNightLight *self,
+ GDateTime *datetime);
+ void gsd_night_light_set_smooth_enabled (GsdNightLight *self,
+diff --git a/plugins/datetime/gsd-timezone-monitor.c b/plugins/datetime/gsd-timezone-monitor.c
+index 2ac864875..5bc4b2932 100644
+--- a/plugins/datetime/gsd-timezone-monitor.c
++++ b/plugins/datetime/gsd-timezone-monitor.c
+@@ -25,7 +25,6 @@
+ #include "tz.h"
+ #include "weather-tz.h"
+
+-#include <geoclue.h>
+ #include <geocode-glib/geocode-glib.h>
+ #include <polkit/polkit.h>
+
+@@ -43,8 +42,6 @@ typedef struct
+ {
+ GCancellable *cancellable;
+ GPermission *permission;
+- GClueClient *geoclue_client;
+- GClueSimple *geoclue_simple;
+ Timedate1 *dtm;
+
+ TzDB *tzdb;
+@@ -265,65 +262,6 @@ start_reverse_geocoding (GsdTimezoneMonitor *self,
+ g_object_unref (reverse);
+ }
+
+-static void
+-on_location_notify (GClueSimple *simple,
+- GParamSpec *pspec,
+- gpointer user_data)
+-{
+- GsdTimezoneMonitor *self = user_data;
+- GClueLocation *location;
+- gdouble latitude, longitude;
+-
+- location = gclue_simple_get_location (simple);
+-
+- latitude = gclue_location_get_latitude (location);
+- longitude = gclue_location_get_longitude (location);
+-
+- start_reverse_geocoding (self, latitude, longitude);
+-}
+-
+-static void
+-on_geoclue_simple_ready (GObject *source_object,
+- GAsyncResult *res,
+- gpointer user_data)
+-{
+- GError *error = NULL;
+- GsdTimezoneMonitorPrivate *priv;
+- GClueSimple *geoclue_simple;
+-
+- geoclue_simple = gclue_simple_new_finish (res, &error);
+- if (geoclue_simple == NULL) {
+- if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
+- g_warning ("Failed to connect to GeoClue2 service: %s", error->message);
+- g_error_free (error);
+- return;
+- }
+-
+- priv = gsd_timezone_monitor_get_instance_private (user_data);
+- priv->geoclue_simple = geoclue_simple;
+- priv->geoclue_client = gclue_simple_get_client (priv->geoclue_simple);
+- gclue_client_set_distance_threshold (priv->geoclue_client,
+- GEOCODE_LOCATION_ACCURACY_CITY);
+-
+- g_signal_connect (priv->geoclue_simple, "notify::location",
+- G_CALLBACK (on_location_notify), user_data);
+-
+- on_location_notify (priv->geoclue_simple, NULL, user_data);
+-}
+-
+-static void
+-register_geoclue (GsdTimezoneMonitor *self)
+-{
+- GsdTimezoneMonitorPrivate *priv = gsd_timezone_monitor_get_instance_private (self);
+-
+- gclue_simple_new (DESKTOP_ID,
+- GCLUE_ACCURACY_LEVEL_CITY,
+- priv->cancellable,
+- on_geoclue_simple_ready,
+- self);
+-
+-}
+-
+ GsdTimezoneMonitor *
+ gsd_timezone_monitor_new (void)
+ {
+@@ -343,11 +281,8 @@ gsd_timezone_monitor_finalize (GObject *obj)
+ g_clear_object (&priv->cancellable);
+ }
+
+- if (priv->geoclue_client)
+- gclue_client_call_stop (priv->geoclue_client, NULL, NULL, NULL);
+
+ g_clear_object (&priv->dtm);
+- g_clear_object (&priv->geoclue_simple);
+ g_clear_object (&priv->permission);
+ g_clear_pointer (&priv->current_timezone, g_free);
+ g_clear_pointer (&priv->tzdb, tz_db_free);
+@@ -414,5 +349,4 @@ gsd_timezone_monitor_init (GsdTimezoneMonitor *self)
+ priv->tzdb = tz_load_db ();
+ priv->weather_tzdb = weather_tz_db_new ();
+
+- register_geoclue (self);
+ }