Accepting request 980316 from Application:Geo
OBS-URL: https://build.opensuse.org/request/show/980316 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/geoclue2?expand=0&rev=42
This commit is contained in:
commit
5a283c5fb6
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:6cc7dbe4177b4e7f3532f7fe42262049789a3cd6c55afe60a3564d7394119c27
|
|
||||||
size 85764
|
|
3
geoclue-2.6.0.tar.bz2
Normal file
3
geoclue-2.6.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cdc9efcb98ce81284d7a6c3c899330481ffdca44bba3c18b9e530618298aa4a0
|
||||||
|
size 94890
|
@ -1,99 +0,0 @@
|
|||||||
From 2abc9d544dbf3678bdac10c969d677b792a7622d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Dor Askayo <dor.askayo@gmail.com>
|
|
||||||
Date: Wed, 11 Aug 2021 17:53:54 +0300
|
|
||||||
Subject: [PATCH] gclue-wifi: Use GeoIP when a WiFi device isn't available
|
|
||||||
|
|
||||||
Query for GeoIP when a WiFi device isn't available, instead of
|
|
||||||
treating this case as a failure. This restores the functionality
|
|
||||||
which regressed by 715cfbf.
|
|
||||||
|
|
||||||
Fixes https://gitlab.freedesktop.org/geoclue/geoclue/-/issues/142.
|
|
||||||
---
|
|
||||||
src/gclue-wifi.c | 38 +++++++++++++++++---------------------
|
|
||||||
1 file changed, 17 insertions(+), 21 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/gclue-wifi.c b/src/gclue-wifi.c
|
|
||||||
index 3ca5de9..3fc78d0 100644
|
|
||||||
--- a/src/gclue-wifi.c
|
|
||||||
+++ b/src/gclue-wifi.c
|
|
||||||
@@ -990,19 +990,10 @@ gclue_wifi_get_accuracy_level (GClueWifi *wifi)
|
|
||||||
return wifi->priv->accuracy_level;
|
|
||||||
}
|
|
||||||
|
|
||||||
-/* Can return NULL without setting @error, signifying an empty BSS list. */
|
|
||||||
+/* Can return NULL, signifying an empty BSS list. */
|
|
||||||
static GList *
|
|
||||||
-get_bss_list (GClueWifi *wifi,
|
|
||||||
- GError **error)
|
|
||||||
+get_bss_list (GClueWifi *wifi)
|
|
||||||
{
|
|
||||||
- if (wifi->priv->interface == NULL) {
|
|
||||||
- g_set_error_literal (error,
|
|
||||||
- G_IO_ERROR,
|
|
||||||
- G_IO_ERROR_FAILED,
|
|
||||||
- "No WiFi devices available");
|
|
||||||
- return NULL;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
return g_hash_table_get_values (wifi->priv->bss_proxies);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1010,16 +1001,16 @@ static SoupMessage *
|
|
||||||
gclue_wifi_create_query (GClueWebSource *source,
|
|
||||||
GError **error)
|
|
||||||
{
|
|
||||||
- GList *bss_list; /* As in Access Points */
|
|
||||||
+ GClueWifi *wifi = GCLUE_WIFI (source);
|
|
||||||
+ GList *bss_list = NULL; /* As in Access Points */
|
|
||||||
SoupMessage *msg;
|
|
||||||
- g_autoptr(GError) local_error = NULL;
|
|
||||||
|
|
||||||
- bss_list = get_bss_list (GCLUE_WIFI (source), &local_error);
|
|
||||||
- if (local_error != NULL) {
|
|
||||||
- g_propagate_error (error, g_steal_pointer (&local_error));
|
|
||||||
- return NULL;
|
|
||||||
+ if (wifi->priv->interface == NULL) {
|
|
||||||
+ goto create_query;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ bss_list = get_bss_list (wifi);
|
|
||||||
+
|
|
||||||
/* Empty list? */
|
|
||||||
if (bss_list == NULL) {
|
|
||||||
g_set_error_literal (error,
|
|
||||||
@@ -1029,6 +1020,7 @@ gclue_wifi_create_query (GClueWebSource *source,
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+create_query:
|
|
||||||
msg = gclue_mozilla_create_query (bss_list, NULL, error);
|
|
||||||
g_list_free (bss_list);
|
|
||||||
return msg;
|
|
||||||
@@ -1047,16 +1039,20 @@ gclue_wifi_create_submit_query (GClueWebSource *source,
|
|
||||||
GClueLocation *location,
|
|
||||||
GError **error)
|
|
||||||
{
|
|
||||||
+ GClueWifi *wifi = GCLUE_WIFI (source);
|
|
||||||
GList *bss_list; /* As in Access Points */
|
|
||||||
SoupMessage * msg;
|
|
||||||
- g_autoptr(GError) local_error = NULL;
|
|
||||||
|
|
||||||
- bss_list = get_bss_list (GCLUE_WIFI (source), &local_error);
|
|
||||||
- if (local_error != NULL) {
|
|
||||||
- g_propagate_error (error, g_steal_pointer (&local_error));
|
|
||||||
+ if (wifi->priv->interface == NULL) {
|
|
||||||
+ g_set_error_literal (error,
|
|
||||||
+ G_IO_ERROR,
|
|
||||||
+ G_IO_ERROR_FAILED,
|
|
||||||
+ "No WiFi devices available");
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ bss_list = get_bss_list (wifi);
|
|
||||||
+
|
|
||||||
/* Empty list? */
|
|
||||||
if (bss_list == NULL) {
|
|
||||||
g_set_error_literal (error,
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
|||||||
# note: do not use systemd macros for geoclue2.service, they are not meant for dbus unit files.
|
# note: do not use systemd macros for geoclue2.service, they are not meant for dbus unit files.
|
||||||
addFilter("W: systemd-service-without-service_del_preun")
|
addFilter("[EW]: systemd-service-without-service_del_preun")
|
||||||
addFilter("W: systemd-service-without-service_del_postun")
|
addFilter("[EW]: systemd-service-without-service_del_postun")
|
||||||
addFilter("W: systemd-service-without-service_add_pre")
|
addFilter("[EW]: systemd-service-without-service_add_pre")
|
||||||
addFilter("W: systemd-service-without-service_add_post")
|
addFilter("[EW]: systemd-service-without-service_add_post")
|
||||||
addFilter("W: non-standard-uid /var/lib/srvGeoClue srvGeoClue")
|
addFilter("W: non-standard-uid /var/lib/srvGeoClue srvGeoClue")
|
||||||
# This is a dbus activated service, no human should ever call it.
|
|
||||||
addFilter("W: suse-missing-rclink geoclue")
|
|
||||||
|
@ -1,3 +1,29 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 20 09:44:27 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Update to version 2.6.0:
|
||||||
|
+ Stop the client for system applications when accuracy is set to
|
||||||
|
NONE.
|
||||||
|
+ NMEA: add a unix socket file option.
|
||||||
|
+ Client info: support cgroup v2.
|
||||||
|
+ Don't compute movements for low accuracy sources.
|
||||||
|
+ Add an option to generate vapi.
|
||||||
|
+ Send the 3G tower type as part of the Mozilla location service
|
||||||
|
requests.
|
||||||
|
+ Add phosh & lipstick as allowed agents.
|
||||||
|
+ Use GeoIP when no WiFi device is available.
|
||||||
|
+ Modem manager: add polkit rule to allow GPS access.
|
||||||
|
+ Allow disabling compass at build and at runtime.
|
||||||
|
+ Fix heading computation for identical locations.
|
||||||
|
+ Be strict with time and distance threshold.
|
||||||
|
+ Fix the XDG location portal integration.
|
||||||
|
+ Replace agent wait timeout with a queue.
|
||||||
|
+ Other bugs fixes.
|
||||||
|
- Drop geoclue2-geoip-when-wifi-unavailable.patch: fixed upstream.
|
||||||
|
- Minor tweaks to rpmlintrc file: systemd_service changed from
|
||||||
|
warnings to error (but still don't apply here, as it's a dbus
|
||||||
|
enabled service).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Mar 20 19:25:46 UTC 2022 - Callum Farmer <gmbr3@opensuse.org>
|
Sun Mar 20 19:25:46 UTC 2022 - Callum Farmer <gmbr3@opensuse.org>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package geoclue2
|
# spec file for package geoclue2
|
||||||
#
|
#
|
||||||
# Copyright (c) 2021 SUSE LLC
|
# Copyright (c) 2022 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -19,7 +19,7 @@
|
|||||||
%define _name geoclue
|
%define _name geoclue
|
||||||
|
|
||||||
Name: geoclue2
|
Name: geoclue2
|
||||||
Version: 2.5.7
|
Version: 2.6.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: GeoLocation Framework
|
Summary: GeoLocation Framework
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
@ -28,8 +28,6 @@ URL: https://gitlab.freedesktop.org/geoclue/geoclue
|
|||||||
Source0: %{url}/-/archive/%{version}/geoclue-%{version}.tar.bz2
|
Source0: %{url}/-/archive/%{version}/geoclue-%{version}.tar.bz2
|
||||||
Source1: srvGeoClue.conf
|
Source1: srvGeoClue.conf
|
||||||
Source99: geoclue2-rpmlintrc
|
Source99: geoclue2-rpmlintrc
|
||||||
# PATCH-FIX-UPSTREAM geoclue2-geoip-when-wifi-unavailable.patch glfo#geoclue/geoclue#142 badshah400@gmail.com -- gclue-wifi: Use GeoIP when a WiFi device isn't available
|
|
||||||
Patch0: geoclue2-geoip-when-wifi-unavailable.patch
|
|
||||||
BuildRequires: intltool >= 0.40.0
|
BuildRequires: intltool >= 0.40.0
|
||||||
BuildRequires: meson >= 0.47.2
|
BuildRequires: meson >= 0.47.2
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
@ -62,6 +60,7 @@ communication mechanism to provide location information
|
|||||||
%package -n system-user-srvGeoClue
|
%package -n system-user-srvGeoClue
|
||||||
Summary: System user for the geoclue service
|
Summary: System user for the geoclue service
|
||||||
Group: System/Base
|
Group: System/Base
|
||||||
|
BuildArch: noarch
|
||||||
%sysusers_requires
|
%sysusers_requires
|
||||||
|
|
||||||
%description -n system-user-srvGeoClue
|
%description -n system-user-srvGeoClue
|
||||||
@ -100,15 +99,16 @@ communication mechanism to provide location information
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
%meson_install
|
%meson_install
|
||||||
|
|
||||||
|
# Rename polkit rule to have specific ordering capabilities - boo#1199767#c1
|
||||||
|
mv %{buildroot}/usr/share/polkit-1/rules.d/org.freedesktop.GeoClue2.rules \
|
||||||
|
%{buildroot}/usr/share/polkit-1/rules.d/50-org.freedesktop.GeoClue2.rules
|
||||||
|
|
||||||
install -d %{buildroot}%{_localstatedir}/lib/srvGeoClue
|
install -d %{buildroot}%{_localstatedir}/lib/srvGeoClue
|
||||||
mkdir -p %{buildroot}%{_sysusersdir}
|
mkdir -p %{buildroot}%{_sysusersdir}
|
||||||
install -m 644 %{SOURCE1} %{buildroot}%{_sysusersdir}/system-user-srvGeoClue.conf
|
install -m 644 %{SOURCE1} %{buildroot}%{_sysusersdir}/system-user-srvGeoClue.conf
|
||||||
|
|
||||||
# Remove desktop file, we do not build the demos # Upstream is explicitly asking us to package these, so lets give it a go.
|
|
||||||
#find %%{buildroot} -type f -name "geoclue-demo-agent.desktop" -delete -print
|
|
||||||
|
|
||||||
# note: do not use systemd macros for geoclue2.service, they are not meant for dbus unit files.
|
# note: do not use systemd macros for geoclue2.service, they are not meant for dbus unit files.
|
||||||
|
|
||||||
%pre -n system-user-srvGeoClue -f srvGeoClue.pre
|
%pre -n system-user-srvGeoClue -f srvGeoClue.pre
|
||||||
%post -p /sbin/ldconfig
|
%post -p /sbin/ldconfig
|
||||||
%postun -p /sbin/ldconfig
|
%postun -p /sbin/ldconfig
|
||||||
@ -131,6 +131,7 @@ install -m 644 %{SOURCE1} %{buildroot}%{_sysusersdir}/system-user-srvGeoClue.con
|
|||||||
%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Manager.xml
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Manager.xml
|
||||||
%dir %{_datadir}/dbus-1/system-services
|
%dir %{_datadir}/dbus-1/system-services
|
||||||
%{_datadir}/dbus-1/system-services/org.freedesktop.GeoClue2.service
|
%{_datadir}/dbus-1/system-services/org.freedesktop.GeoClue2.service
|
||||||
|
%{_datadir}/polkit-1/rules.d/50-org.freedesktop.GeoClue2.rules
|
||||||
%dir %{_sysconfdir}/dbus-1
|
%dir %{_sysconfdir}/dbus-1
|
||||||
%dir %{_sysconfdir}/dbus-1/system.d
|
%dir %{_sysconfdir}/dbus-1/system.d
|
||||||
%dir %{_sysconfdir}/geoclue/
|
%dir %{_sysconfdir}/geoclue/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user