commit b1f8bc6d2670339d2d4418fbc0eb4d9daad26663 Author: Adrian Schröter Date: Mon Dec 18 17:13:47 2023 +0100 Sync from SUSE:ALP:Source:Standard:1.0 geoclue2 revision 5fa5add9095bb0ea8f223968b5f3ff37 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/geoclue-2.7.1.tar.bz2 b/geoclue-2.7.1.tar.bz2 new file mode 100644 index 0000000..5bd7d55 --- /dev/null +++ b/geoclue-2.7.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5624cd41148643c46d681d39153c7d26fdb8831e7e7c8601c300732fa8a6db1c +size 106458 diff --git a/geoclue2-rpmlintrc b/geoclue2-rpmlintrc new file mode 100644 index 0000000..ac177d6 --- /dev/null +++ b/geoclue2-rpmlintrc @@ -0,0 +1,6 @@ +# note: do not use systemd macros for geoclue2.service, they are not meant for dbus unit files. +addFilter("[EW]: systemd-service-without-service_del_preun") +addFilter("[EW]: systemd-service-without-service_del_postun") +addFilter("[EW]: systemd-service-without-service_add_pre") +addFilter("[EW]: systemd-service-without-service_add_post") +addFilter("W: non-standard-uid /var/lib/srvGeoClue srvGeoClue") diff --git a/geoclue2.changes b/geoclue2.changes new file mode 100644 index 0000000..fab3de8 --- /dev/null +++ b/geoclue2.changes @@ -0,0 +1,809 @@ +------------------------------------------------------------------- +Fri Sep 29 18:38:36 UTC 2023 - Bjørn Lie + +- Update to version 2.7.1: + + Add 'age' field to MLS locate queries + + Location updates now always have an accuracy value + + Improvements to NMEA parsing: + - Parse NMEA timestamps with sub-second accuracy + - Add default accuracy to NMEA RMC locations + - Ignore locations from GGA and RMC sentences if the GNSS fix + is not valid + + Prioritize GNSS sources with a recent fix over other sources, + preventing location jumps + + Install D-Bus policy in /usr/share, not /etc + + Upgrade GLib / Gio dependency to version 2.68.0 + + Correct gi annotations in GClueSimple + + Various small fixes +- Use ldconfig_scriptlets macro for post(un) handling. + +------------------------------------------------------------------- +Mon Mar 6 11:59:58 UTC 2023 - Bjørn Lie + +- Update to version 2.7.0: + + Multiple config files named *.conf are now read from the config + directory at @sysconfdir@/geoclue/conf.d. + + HTTP requests are now made via libsoup3.0 instead of + libsoup2.4. + + A static location can now be set in @sysconfdir@/geolocation + for immobile systems. + + Web source requests are now submitted with combined WiFi and + 3GPP tower data. + + Web source now checks connectivity in a way that allows + location and submission servers running on localhost. + + Web source submissions are now made using /v2/geosubmit API. + + Web source cell tower submissions now have the correct radio + type. + + Web source requests now submit the BSS age property. + + Web source submissions now contain the location speed. + + Web source cache now respects WiFi signal tolerance strictly. + + NMEA source now supports both '\n' and '\r' NMEA delimiters. + + NMEA source can now be made the Web source submit source. + + ModemManager now use signaled calls to get cached location + information to avoid performing explicit modem query. + + Location description now contains information about its source. + + GSettings backend no longer complains about being run from a + read-only filesystem. + + Many small improvements and fixes, some memory safety related. +- Drop 129.patch: Fixed upstream. + +------------------------------------------------------------------- +Wed Oct 5 13:46:12 UTC 2022 - Callum Farmer + +- Move dbus system.d conf file to /usr (bsc#1204054) + +------------------------------------------------------------------- +Thu Sep 1 08:46:41 UTC 2022 - Bjørn Lie + +- Add 129.patch: Port to use soup3. Following this, replace + pkgconfig(libsoup-2.4) with pkgconfig(libsoup-3.0) BuildRequires. + +------------------------------------------------------------------- +Fri May 20 09:44:27 UTC 2022 - Dominique Leuenberger + +- 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 + +- Remove unnecessary shadow requires + +------------------------------------------------------------------- +Thu Feb 24 16:37:30 UTC 2022 - Callum Farmer + +- Add CONFIG parameter to %sysusers_generate_pre + +------------------------------------------------------------------- +Sun Nov 28 13:21:10 UTC 2021 - Atri Bhattacharya + +- Drop geoclue2-revert-2-faulty.patch: Replaced by upstream fix + in geoclue2-geoip-when-wifi-unavailable.patch:. +- Add geoclue2-geoip-when-wifi-unavailable.patch: [gclue-wifi] Use + GeoIP when a WiFi device isn't available + [glfo#geoclue/geoclue#142]. + +------------------------------------------------------------------- +Thu Dec 31 13:10:06 UTC 2020 - Bjørn Lie + +- Update to version 2.5.7: + + A bug fix release, mainly fixing a bunch of memory leaks. +- Add geoclue2-revert-2-faulty.patch: Revert two broken commits. + https://gitlab.freedesktop.org/geoclue/geoclue/-/issues/142 + +------------------------------------------------------------------- +Sun Dec 13 13:01:31 UTC 2020 - Bjørn Lie + +- Update to version 2.5.6: + + Fix crashes in WiFi handling code. + + Plug a leak. +- Changes from version 2.5.5: + + Plug another leak. + + Fix another buffer overflow. + + Fix WiFi-geolocation that got broken in 2.5.4. + + Put freequently used small strings on the stack to avoid + excessive memory usage. + +------------------------------------------------------------------- +Tue Dec 10 20:11:13 UTC 2019 - Bjørn Lie + +- Update to version 2.5.4: + + Plug a leak that becomes pretty huge after a while of running + Geoclue. + + Fix a buffer-overflow. + +------------------------------------------------------------------- +Tue May 28 10:21:03 UTC 2019 - Bjørn Lie + +- Update to version 2.5.3: + + Fix a crash. + + Support for GGA messages from more NMEA sources. + + New API to allow automatic server side deletion of client. + + Automatically delete client on server when using GClueSimple. + + Avoid linking to system-installed library. + + Fix library-only build. + + Add manpage for geoclue.conf file. + + Document usage and building of the project. + + Other fixes and improvements. + +------------------------------------------------------------------- +Tue Jan 8 22:07:25 UTC 2019 - bjorn.lie@gmail.com + +- Update to version 2.5.2: + + Scan for WiFi networks, greatly improving accuracy of WiFi + source. + + Allow multiple clients on the same D-Bus connection and add API + for it. This is mainly targetted for Flatpak location portal. + + Add API for apps to explicitly delete their client objects. + Long running apps, like gnome-settings-daemon and Flatpak + location portal, should use that to ensure Geoclue knows when + these apps are not actually using it and hence it doesn't need + to keep running needlessly. + + Restore accidently removed, build of modem sources. + + Update location on connectivity actually changing. + + Try not spamming Mozilla Location Service. + + Fix unexpected exit when non-active clients are connected. + + Fix a check for system apps. + + Use absolute paths for sysconfdir. + + Fix links in docs. + + More debug log. + + A bunch of internal and/or non-functional fixes & improvements. +- Drop geoclue2-Fix-duplicate-decl-specifier.patch: The entire code + was removed from geoclue. + +------------------------------------------------------------------- +Sun Dec 2 18:06:16 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.5.1: + + Fix libgeoclue ABI break in 2.5.0. + + Use absolute paths for libexecdir. +- Changes from version 2.5.0: + + Drop authorization for system (non-flatpak) apps. + + Switch from autotools to meson build system. + + Use WiFi-based geolocation for city level accuracy. + + Provide Vala API. + + Don't enable all warnings from C compiler by default. + + No need to mark translatable strings in desktop files. +- Changes from version 2.4.13: + + Configuration file related changes: + - Allow absence of agent if agent white-list is empty. + - Add elementary-desktop-agent to whitelist. + - Allow disabling of all sources. + - Warn about use of Google's services. + - Document that all settings are mandatory. + + Increase default inactivity timeout to 60s. + + Increase agent timeout from 100ms to 20s. + + Console message on inactivity timeout. +- Switch to meson buildsystem, add meson BuildRequires and macros. + +------------------------------------------------------------------- +Tue Aug 14 18:08:53 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.4.12: + + Provide a work-around for documentation build issue. + + Fix library .pc file to respect the includedir option. + +------------------------------------------------------------------- +Thu Jul 26 18:21:54 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.4.11: + + Don't crash on invalid accuracy level request. + + The demo agent now watches for geoclue on D-Bus if it's not + running already, instead of giving up. This solves a + race-condition, which makes geoclue completely unusable. + + Provide Vala bindings for libgeoclue. + + Add gclue_client_get/set_time_threshold() to docs. +- Drop geoclue2-Fix-safety-header-name.patch and + geoclue2-Fix-potentially-unused-variable.patch: Fixed upstream. +- Add vala BuildRequires: New optional dependency, build vala + bindings. +- No longer nuke during build geoclue-demo-agent.desktop files, + upstream wants us to package them. + +------------------------------------------------------------------- +Tue May 8 17:25:54 UTC 2018 - bjorn.lie@gmail.com + +- Add geoclue2-Fix-safety-header-name.patch: public-api: Fix safety + header name. It should be based on the filename. +- Add geoclue2-Fix-potentially-unused-variable.patch: locator: Fix + a potentially unused variable declaration. +- Add geoclue2-Fix-duplicate-decl-specifier.patch:Fix compiler + warning about duplicate decl specifier. + +------------------------------------------------------------------- +Thu May 3 18:24:46 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.4.10: + + Fix issues introduced by last release 2.4.9: + - A crash on startup. + - Revert the new desktop ID detection code as that turned out + to not work for non-root user that geoclue is supposed to be + run as. + + Use systemd's service file to lockdown the geoclue daemon to + stop eventual security problems. + +------------------------------------------------------------------- +Wed May 2 23:24:52 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.4.9: + + Modem GPS refresh rate is now based on the location refresh + rate of apps. + + Refuse location access if no app-auth agent is registered. This + fixes a security hole where an app requests location access + before the agent gets to register itself and we end up giving + out location access even though user has disabled it. + + Port desktop ID detection to Flatpak >= 0.6.10. + + The default timeout on the service binary is now the same as + the service itself: 5 seconds. + + Demo applications: + - where-am-i now allows setting location refresh-rate. + - Only install demo agent's desktop file if it's enabled. + - Build and install demo agent unless disabled explicitly. + - Autostart the demo agent by default on non-GNOME platforms, + since an agent is required now and no one other than GNOME + yet provides one. +- Add pkgconfig(libnotify) BuildRequires: New dependency. + +------------------------------------------------------------------- +Thu Apr 12 16:27:52 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 2.4.8: + + Fix threshold for detecting too old location update. + + Explain in the configuration what the applications white-list + is meant for. + + Allow instant location updates from modem-based GPS. + + Fix a deadlock case in the helper library. + +------------------------------------------------------------------- +Wed Feb 28 16:26:22 UTC 2018 - dimstar@opensuse.org + +- Modernize spec-file by calling spec-cleaner + +------------------------------------------------------------------- +Mon May 29 14:38:56 UTC 2017 - zaitor@opensuse.org + +- Update to version 2.4.7: + + Fix a potential crash. + + More verbose warning on invalid accuracy from NMEA source. + +------------------------------------------------------------------- +Fri Apr 7 09:31:06 UTC 2017 - jengelh@inai.de + +- Drop practically empty %pre section (because of the shell comment, + it was non empty and would needlessy spawn /bin/sh). +- RPM group corrections. + +------------------------------------------------------------------- +Tue Mar 28 18:40:11 UTC 2017 - zaitor@opensuse.org + +- Update to version 2.4.6: + + Add to white-list: + - gnome-color-panel for "Night Light" functionality. + - gnome-shell for new weather view in the calendar. + + Other minor fixes. +- Drop geoclue2-permit-Night-Light.patch: Fixed upstream. +- Drop geoclue2-permit-gnome-maps.patch: No longer needed due to + changes in location settings in gnome. + +------------------------------------------------------------------- +Wed Mar 15 20:19:10 UTC 2017 - dimstar@opensuse.org + +- Split out new package system-user-srvGeoClue: create a user that + can be required by different package (e.g. NetworkManager has a + rule based on the user account. With the user created separately, + NM can now require the user even without geoclue2 being + installed). + +------------------------------------------------------------------- +Wed Mar 1 16:05:18 UTC 2017 - zaitor@opensuse.org + +- Add geoclue2-permit-Night-Light.patch: Add "Night Light" + functionality to the whitelist (bgo#779343, fdo#100008). + +------------------------------------------------------------------- +Thu Feb 2 21:21:10 UTC 2017 - zaitor@opensuse.org + +- Drop convenience shortcut for rcgeoclue, as this is a dbus + activated service, there is no point in that shortcut, no human + should ever manually call it. Following this, filter warning now + produced via rpmlintrc. + +------------------------------------------------------------------- +Fri Jan 27 16:26:11 UTC 2017 - zaitor@opensuse.org + +- Update to version 2.4.4: + + Fix a potential crash. + +------------------------------------------------------------------- +Wed Sep 7 19:28:31 UTC 2016 - zaitor@opensuse.org + +- Update to version 2.4.4: + + Expose location timestamp over D-Bus. + + Add a TimeThreshold property that allows clients to limit + location updates by time. + + Annotate default value of DistanceThreshold property. + + Check for full internet availability before declaring ourselves + online (boo#1051612, fdo#95493). + + Fix autogen.sh against builddir ≠ srcdir. + + Fix a bunch of memory leaks. + + Fix a bunch of build issues. + + Other minor fixes. + +------------------------------------------------------------------- +Mon May 30 15:48:31 UTC 2016 - zaitor@opensuse.org + +- Add geoclue2-rpmlintrc to sources to filter out bogus rpmlint + warning about missing systemd-service and nonstandard user. +- Add missing post/postun handling of library. +- Remove useless desktop file for demos, we do not build the demos. + +------------------------------------------------------------------- +Mon May 30 13:00:24 UTC 2016 - fcrozat@suse.com + +- Do not use systemd macros for geoclue2.service, they are not + designed for dbus systemd unit file [bsc#982216]. + +------------------------------------------------------------------- +Wed Apr 13 09:27:42 UTC 2016 - idonmez@suse.com + +- Update to GNOME 3.20 Fate#318572 + +------------------------------------------------------------------- +Thu Mar 3 13:39:24 UTC 2016 - zaitor@opensuse.org + +- Update to version 2.4.3: + + Fix a crash in the helper library. + +------------------------------------------------------------------- +Sat Feb 27 17:43:18 UTC 2016 - zaitor@opensuse.org + +- Update to version 2.4.2: + + Reliable desktop ID detection for xdg-app. This together with + latest gnome-shell and gnome-control-center, allows for + per-application geolocation access controls. + + Don't require xdg-app applications to pass a valid desktop ID + since Geoclue can automatically detect it. + + Don't allow xdg-app application to become user-authorization + agents. + + Correct introspection namespace version for libgeoclue. + + Option to disable the backend build. + + Demo: Provide reason to access location data. + + Demo agent: + - Critical log message on failing to show notification. + - If app provides a reason string in it's desktop file, show + that to the user. + +------------------------------------------------------------------- +Wed Dec 23 15:05:56 UTC 2015 - dimstar@opensuse.org + +- Enable GObject introspection (required by gnome-weather 3.19+): + + Pass --enable-introspection to configure. + + Add pkgconfig(gobject-introspection-1.0) BuildRequires. + + Split typelib-1_0-Geoclue-2_0 subpackage. + +------------------------------------------------------------------- +Tue Nov 24 02:08:50 UTC 2015 - zaitor@opensuse.org + +- Update to version 2.4.0: + + Add a convenience library to make interacting with Geoclue very + easy. + + Put each D-Bus interface description in it's own file. Unified + interface file still provided for backwards compatibility. + +------------------------------------------------------------------- +Thu Nov 5 21:32:00 UTC 2015 - zaitor@opensuse.org + +- Correct geoclue2-permit-gnome-maps.patch to include system=false, + all services are supposed to have a system section. Fixes + (boo#953865). + +------------------------------------------------------------------- +Mon Sep 28 15:35:11 UTC 2015 - mpluskal@suse.com + +- Update to 2.3.0 + * Add a network NMEA source, which together with this application: + https://wiki.gnome.org/Apps/GeoclueShare allows you to use the + GPS of your Android device on your geoclue-enabled machine. + * Allow root to own the name on the bus, i-e run the service. + * Make use of compass device if available, through iio-proxy. + * Fix a hang on client starting twice. + * More helpful error on agent rejection. + * Improved documentation. + * Do not ship generated D-Bus service files in the tarball. + * Only allow the geoclue user and root to call methods on agents. + * Fix ignoring of valid location updates due to comparison of + stances in different units. + * Correctly handle two consecutive location updates with same + mestamp on them. + * Correctly handle late location update. + * Build system fixes: + + Fix detection of gdbus-codegen tool. + + Workaround an intltool issue. +- Update dependencies +- Make build more verbose + +------------------------------------------------------------------- +Sat Apr 11 21:00:40 UTC 2015 - zaitor@opensuse.org + +- Update to version 2.2.0: + + Report 'Speed' and 'Heading' on location updates. + + Try to provide the most accurate location first. + + Avoid a crash by ensuring requested max accuracy is within + bounds. + + Fix GPS coordinates parsing. + + Fix GeoIP on machines without WiFi hardware. + + Gracefully handle inexistent agent. + + Stop sources whose accuracy level becomes higher, rather than + lower, than the requested level. + + Keep old location object alive on D-Bus for a bit longer to + ensure applications are not accessing it still after it is + destroyed. + + Don't enable the modem. Seems at least GNOME takes care of + modem enabling for us and besides this shouldn't be done by + geoclue anyway (fdo#85040). + + Wait for modem to be enabled before checking availability of + location capabilities and using them. This is particularly + important for pin-enabled modems. + + Ignore redundant GPS location updates. + + Fix some potential crashes. + + Some improvements to output of where-am-i demo application. + +------------------------------------------------------------------- +Thu Feb 12 20:11:11 UTC 2015 - mpluskal@suse.com + +- Cleanup spec file with spec-cleaner +- Update dependencies +- Do not try to remove .la files + +------------------------------------------------------------------- +Sat Oct 4 09:04:06 UTC 2014 - dimstar@opensuse.org + +- Update to version 2.1.10: + + Disallow application if disabled explicitly in the + configuration. + + Make it easy to add alternative modem source(s), e.g + ofono-based. + + Map: + - country-level accuracy to city-level since no source provides + country-level accuracy. + - neighborhood-level accuracy to city-level in WiFi source + (only) so applications requesting neighborhood-level accuracy + still get a location even if there is no modem available. + + Fixes to WiFi source. + + For easier debugging, add: + - more debug prints. + - commandline options to where-am-i demo application to specify + timeout and requested accuracy level. + + Fix a potential build failure. + +------------------------------------------------------------------- +Thu Aug 7 19:41:32 UTC 2014 - dimstar@opensuse.org + +- Update to version 2.1.9: + + Move from NetworkManager to direct use of wpa_supplicant to + retreive WiFI data, for greater portability. + + Port from opencellid.org to Mozilla Location Service for + 3G-geolocation. + + Network data submission + - Explicit option in config to enable submission. + - Commandline options to enable network data submission and set + nickname. + - Submit 3G data. + - Submit under 'geoclue' nick by default. + + Fix a few crashes. + + Drop now redundant workaround for pure geoip queries. + + Ability to mark an app as system component in the config so + that: + - Agent can't decide its accuracy level nor agent is asked to + authorize it. This mean automatic timezone in GNOME will + continue working even if you disable geolocation. + - App is not taken into account for 'InUse' property. That + means you will no longer have to see location crosshair in + gnome-shell's topbar forever just because you have automatic + timezone enabled. + + Exit demo app if geoclue deactivates it. + + Improved debug log. + + Many other internal changes and minor improvements. +- Changes from version 2.1.8: + + Switch to Mozilla Location Service for geoip as well. + + Allow specifying nickname to submit network data with. + + Report actual available accuracy level and keep it up2date. + + Add 'Active' property to indicate client state. + + Expose altitude info (if known). + + Timeout on inactivity, rather than no clients. + + Automatically: + - stop the client if max accuracy level is set to 0. + - start the client if max accuracy level is set to non-0 and it + was automatically stopped. + + Don't disable modem after using it. Disabling the modem, + disables it for everyone so if there was an active connection + going on through the modem, geoclue will cause it to + disconnect. While we need to have some centralized means to + enable/disable modem and ideally geoclue shouldn't do any + enabling/disabling of modems at all, for now lets just only + enable the modem. + + Fix issue of missed location updates. + + Whitelist correct ID for gnome-settings-daemon in default + config. + + Replace '--disable-wifi-source' configure option with + '--disable-network-manager'. i-e now you disable usage of + NetworkManger explicitly rather than wifi source, which is now + always built and enabled. + + Drop now redundant geoip server. + + Don't distribute .desktop.in files for demos. + + Plug some leaks. + + More debug log. + + Other minor fixes. +- Changes from version 2.1.7: + + 'InUse' property now only affected by active clients. This + fixes the issue of gnome-shell incorrectly showing 'geolocation + in use' icon. + + Move DBus interface files to their canonical location: + /usr/share/dbus-1/interfaces/. + + Drop redundant check for the C++ compiler in configure script. + + Demo agent now prints 'geolocation in use' info. +- Drop pkgconfig(libnm-glib) and pkgconfig(libxml-2.0) + BuildRequires: no longer needed. +- Add geoclue2-permit-gnome-maps.patch: Allow gnome-maps to access + geoclue. +- Also drop the invalid rpmlintrc variant geoclue2.rpmlintrc. + +------------------------------------------------------------------- +Sat Apr 5 14:11:08 UTC 2014 - dimstar@opensuse.org + +- Actually drop the rpmlintrc: the dbus service has been + authorized. + +------------------------------------------------------------------- +Fri Apr 4 19:16:19 UTC 2014 - adrian@suse.de + +- use addFilter instead of setBadness + +------------------------------------------------------------------- +Thu Mar 13 20:52:19 UTC 2014 - zaitor@opensuse.org + +- Update to version 2.1.6: + + Correct binary path is demo's desktop file. + + Move demo apps from /usr/share to /usr/libexec. +- Changes from version 2.1.5: + + Add a NULL check to fix a crasher. + + Setup D-Bus policy to be able to access NetworManager API. + + Expected agent object path now static. This breaks agent + interface but it was needed to fix the D-Bus policy. + + Fix issue of us giving every connection access to every + property on the system bus. +- Changes from version 2.1.4: + + Don't depend on unreleased libnm-glib. +- No longer use sed to lower libnm-glib requirement, fixed + upstream. + +------------------------------------------------------------------- +Sun Feb 23 06:34:19 UTC 2014 - zaitor@opensuse.org + +- Add pkgconfig(systemd) BuildRequires and add relevant + systemdmacros to pre/post/preun/postun. +- Create softlink /usr/sbin/rcgeoclue to /usr/sbin/service. + +------------------------------------------------------------------- +Fri Feb 21 11:59:35 UTC 2014 - zaitor@opensuse.org + +- Update to version 2.1.3: + + Agents can now dictate maximum accuracy level allowed for all + clients through a D-Bus property. The next version of + gnome-shell will make use of that and provide an option to + enable/disable geolocation in topbar menu. + + Add D-Bus property to specify available accuracy level. For now + we just hardcode it to report that we can provide exact + accuracy. + + Give agents time to register themselves on startup before + processing client requests. + + Move configuration file under geoclue subdir so that in future + we can easily add more configuration files if needed. + + Fixes to build. + + Some internal clean-ups. + +------------------------------------------------------------------- +Tue Feb 4 18:44:50 UTC 2014 - zaitor@opensuse.org + +- Update to version 2.1.2: + + Fix some crashing bugs. + + Ignore WiFis with '_nomap' suffix. + + Configure options for disabling WiFi, 3G and GPS modem sources. + + Avoid spaming the network resources for ignorable changes to + network setup. + + Add some required files to distribution that we forgot in last + release. +- Changes from version 2.1.1: + + 3GPP-based geolocation source. + + Uses ModemManager to get cell tower info from 3GPP modem and + uses opencellid.org's public API to translate that into a + location. + + GPS modem-based geolocation source: If your 3GPP modem has a + GPS, geoclue can now make use of it. + + WiFi-based geolocation source. + + Uses Mozilla Location Service to find location based on nearby + WiFi networks. + + Refresh location on changes in WiFi networks. + + Option in configuration file to make geoclue use Google Maps + Geolocation API rather than Mozilla Location Service. + + Option in configuration file to enable submission of wifi data + to Mozilla Location Service. If this option is enabled, the + data is submitted each time geoclue gets a GPS lock. That + means, its not completely autonomous and data is only + submitted if an application, e.g gnome-maps requests current + location with exact accuracy. + + API for clients to specify what level of geolocation accuracy + they need, e.g city-level, street-level or exact etc. + + API to check if geolocation service is in use. Next version of + gnome-shell will make use of that to show an icon in the panel + to indicate to user that their location is being accessed. + + Application authorization agent. + + Make agent completely optional. We will revert this once we + have a reliable mechanism to identify applications. + + Identify agent and client applications by their desktop IDs + rather than paths of their binaries. + + Ability for agents to dictate the accuracy level allowed for + clients. + + Maintain a whitelist of clients in configuration that do not + need agent authorization. + + Avoid redundant queries to web services. + + Install demo applications and provide a desktop file for them. + + Many more internal fixes and clean-ups. +- Add pkgconfig(libnm-glib), pkgconfig(mm-glib) and + pkgconfig(libxml-2.0) BuildRequires: new dependencies. +- Lower NetworkManager dependency to 0.9.8 in configure. + +------------------------------------------------------------------- +Sun Jan 19 10:44:30 UTC 2014 - zaitor@opensuse.org + +- Update to version 2.1.0: + + Application authentication agents support: + - API for agents to register themselves. + - API that agents need to implement. + - Configure option to enable requirement of authorization from + agent. Until there is at least one agent out there, this + requirement is disabled by default. + - A demo agent. + - Option in ${sysconfdir}/geoclue.conf containing whitelist of + all our agents. + + Don't use proxy. Seems proxy settings are per-user and system + users (which geoclue is supposed to run as) do not have access + to them. + + Add support for bus-activation via systemd service unit. + + Add mandatory 'DesktopId' property to Client interface. + + Use HTTPS to connect to geoip.fedoraproject.org. The actual + resource is behind HTTPS so using HTTP leads to redirections + and thefore redundant TCP packets. + + Fixes to build system. + +------------------------------------------------------------------- +Mon Oct 7 18:16:11 UTC 2013 - dimstar@opensuse.org + +- Create and package %{_localstatedir}/lib/%{dbus_user} (the dbus + user's home directory). + +------------------------------------------------------------------- +Tue Sep 24 17:27:49 UTC 2013 - dimstar@opensuse.org + +- Update to version 2.0.0: + + Generate docs for D-Bus interface. + + Fix build against Automake 1.13. + + Two minor fixes/cleanups. +- Changes from version 1.99.4: + + Correct check for whether db needs update in geoip-update. + + Fix geoip-update by direct usage of libsoup for HTTP GET. + + Don't inhibit compiler warnings in build. + + Fix various potential crashers. + + Take 'DistanceThreshold' property into account. + + Watch for and signal out location changes. + + Add configure option to specify service user. + + Add documentation comments to D-Bus interface XML. + + Fix various compiler warnings. + + Switch to Fedora's geoip server until we've our server setup. + + Minor fixes to pkgconfig file. + + Setup a glib log domain. + + Some optimizations. + + More debug logging. +- Drop geoclue2-no-root.patch: fixed upstream. +- Drop libtool BuildRequires and call to autoreconf, as we do no + longer carry any patch requiring to bootstrap. + +------------------------------------------------------------------- +Sun Sep 15 10:58:11 UTC 2013 - dimstar@opensuse.org + +- Provide dbus(org.freedesktop.GeoClue2) instead of dbus(GeoClue2), + as this is much closer to reality. + +------------------------------------------------------------------- +Wed Sep 11 14:06:00 UTC 2013 - dimstar@opensuse.org + +- Re-enable the D-Bus service, as the services have been white- + listed for Factory. + +------------------------------------------------------------------- +Tue Sep 10 08:41:47 UTC 2013 - dimstar@opensuse.org + +- Add COPYING to the package as %doc. + +------------------------------------------------------------------- +Mon Sep 9 08:58:12 UTC 2013 - dimstar@opensuse.org + +- Do not package the D-Bus service for now. This makes the package + 'broken', but allows us to build against the D-Bus interface and + not block inclusion of other packages any furhter (bnc#838360). + +------------------------------------------------------------------- +Tue Sep 3 20:37:16 UTC 2013 - dimstar@opensuse.org + +- Update to version 1.99.3: + + All D-Bus prop names capitalized as per general conventions. + + Expose D-Bus specification XML file in pkg-config file. + + Fix some potential crashes in error handling code. + + Remove unused build-time yelp dependency. + + Correct the libsoup dependency in pkg-config (although it + doesn't affect any applications at the moment). + + Fix some compiler warnings. +- Changes from version 1.99.2: + + Drop client-side library. + + Add COPYING file. + + Install geoip-lookup with make install. This makes life easier + for binary distributions that can then ship geoip-lookup in a + package. + + Distribute server documentation. + + Distribute & install interface XML file. + + Add/update forgotten copyright headers. +- Changes from version 1.99.1: + + Move to system D-Bus. + + Import geoip code from geocode-glib. + + Add option to automatically exit on inactivity. By default it: + - Runs indefinitely when launched manually. + - Exits after 5 seconds of inactivity when (auto)launched by + D-Bus. + + Relicense from LGPLv2+ to GPLv2+. + + Some build/installation related fixes. + + Correctly version pkg-config file. + + Fix crash on error. + + Add --version cmdline option. +- Changes from version 1.99.0: + + Bump the version number. +- Drop typelib-1_0-GeoClue-1_0 and libgeoclue-1_0-0 subpackages: + the client-side library was dropped with version 1.99.2. +- Add geoclue2-no-root.patch: Add configure option to specify + service user. +- Add call to autoreconf in build phase, as above patch touches + the buildsystem. +- Define dbus_user: srvGeoClue. +- Pass --with-dbus-service-user=%{dbus_user} to configure. +- Create %dbus_user during pre phase if the user does not yet + exist. + +------------------------------------------------------------------- +Mon Aug 5 20:51:34 UTC 2013 - dimstar@opensuse.org + +- Add ldconfig call to post/postun. + +------------------------------------------------------------------- +Mon Aug 5 19:18:52 UTC 2013 - dimstar@opensuse.org + +- Initial package, version 0.0.1. + diff --git a/geoclue2.spec b/geoclue2.spec new file mode 100644 index 0000000..e645231 --- /dev/null +++ b/geoclue2.spec @@ -0,0 +1,159 @@ +# +# spec file for package geoclue2 +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define _name geoclue + +Name: geoclue2 +Version: 2.7.1 +Release: 0 +Summary: GeoLocation Framework +License: GPL-2.0-or-later +Group: Development/Libraries/C and C++ +URL: https://gitlab.freedesktop.org/geoclue/geoclue +Source0: %{url}/-/archive/%{version}/geoclue-%{version}.tar.bz2 +Source1: srvGeoClue.conf +Source99: geoclue2-rpmlintrc + +BuildRequires: intltool >= 0.40.0 +BuildRequires: meson >= 0.47.2 +BuildRequires: pkgconfig +BuildRequires: systemd-rpm-macros +BuildRequires: sysuser-tools +BuildRequires: vala +BuildRequires: perl(XML::Parser) +BuildRequires: pkgconfig(avahi-client) >= 0.6.10 +BuildRequires: pkgconfig(avahi-glib) >= 0.6.10 +BuildRequires: pkgconfig(gio-2.0) >= 2.68.0 +BuildRequires: pkgconfig(gio-unix-2.0) >= 2.68.0 +BuildRequires: pkgconfig(glib-2.0) >= 2.68.0 +BuildRequires: pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(json-glib-1.0) >= 0.14 +BuildRequires: pkgconfig(libnotify) +BuildRequires: pkgconfig(libsoup-3.0) +BuildRequires: pkgconfig(mm-glib) >= 1.6 +BuildRequires: pkgconfig(systemd) +# This daemon runs as srvGeoClue +Requires: user(srvGeoClue) +# Virtual provides for the dbus service +Provides: dbus(org.freedesktop.GeoClue2) = %{version} +%{?systemd_requires} + +%description +GeoClue is a software framework which can be used to enable geospatial +awareness in applications. GeoClue uses the D-Bus inter-process +communication mechanism to provide location information + +%package -n system-user-srvGeoClue +Summary: System user for the geoclue service +Group: System/Base +BuildArch: noarch +%sysusers_requires + +%description -n system-user-srvGeoClue +System user for use by the geoclue service + +%package -n typelib-1_0-Geoclue-2_0 +Summary: GeoLocation Framework --GObject Introspection +Group: System/Libraries + +%description -n typelib-1_0-Geoclue-2_0 +GeoClue is a software framework which can be used to enable geospatial +awareness in applications. GeoClue uses the D-Bus inter-process +communication mechanism to provide location information + +%package devel +Summary: GeoLocation Framework -- Development files +Group: Development/Languages/C and C++ +Requires: %{name} = %{version} +Requires: typelib-1_0-Geoclue-2_0 = %{version} + +%description devel +GeoClue is a software framework which can be used to enable geospatial +awareness in applications. GeoClue uses the D-Bus inter-process +communication mechanism to provide location information + +%prep +%autosetup -p1 -n %{_name}-%{version} + +%build +%meson \ + -Dgtk-doc=false \ + -Ddbus-srv-user=srvGeoClue \ + -Ddbus-sys-dir=%{_datadir}/dbus-1/system.d \ + %{nil} +%meson_build +%sysusers_generate_pre %{SOURCE1} srvGeoClue system-user-srvGeoClue.conf + +%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 +mkdir -p %{buildroot}%{_sysusersdir} +install -m 644 %{SOURCE1} %{buildroot}%{_sysusersdir}/system-user-srvGeoClue.conf + +# 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 +%ldconfig_scriptlets + +%files +%license COPYING +%doc README.md +%{_mandir}/man5/geoclue.5%{ext_man} +# Not split per SLPP as the interface to the underlying daemon is +# too strict to allow parallel installations +%{_libdir}/libgeoclue-2.so.* +%{_libexecdir}/geoclue +%dir %{_libexecdir}/geoclue-2.0/ +%{_libexecdir}/geoclue-2.0/demos/ +%{_datadir}/applications/geoclue-where-am-i.desktop +%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Client.xml +%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Location.xml +%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Manager.xml +%{_datadir}/dbus-1/system-services/org.freedesktop.GeoClue2.service +%{_datadir}/polkit-1/rules.d/50-org.freedesktop.GeoClue2.rules +%dir %{_sysconfdir}/geoclue/ +%config %{_sysconfdir}/geoclue/geoclue.conf +%{_datadir}/dbus-1/system.d/org.freedesktop.GeoClue2.conf +%{_datadir}/dbus-1/system.d/org.freedesktop.GeoClue2.Agent.conf +%{_unitdir}/geoclue.service +# Upstream is explicitly asking us to package these, so lets give it a go. +%{_sysconfdir}/xdg/autostart/geoclue-demo-agent.desktop +%{_datadir}/applications/geoclue-demo-agent.desktop + +%files -n system-user-srvGeoClue +%attr(0700,srvGeoClue,root) %{_localstatedir}/lib/srvGeoClue +%{_sysusersdir}/system-user-srvGeoClue.conf + +%files -n typelib-1_0-Geoclue-2_0 +%{_libdir}/girepository-1.0/Geoclue-2.0.typelib + +%files devel +%{_includedir}/libgeoclue-2.0/ +%{_libdir}/*.so +%{_libdir}/pkgconfig/geoclue-2.0.pc +%{_libdir}/pkgconfig/libgeoclue-2.0.pc +%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.Agent.xml +%{_datadir}/dbus-1/interfaces/org.freedesktop.GeoClue2.xml +%{_datadir}/gir-1.0/Geoclue-2.0.gir +%{_datadir}/vala/vapi/libgeoclue-2.0.* + +%changelog diff --git a/srvGeoClue.conf b/srvGeoClue.conf new file mode 100644 index 0000000..b646824 --- /dev/null +++ b/srvGeoClue.conf @@ -0,0 +1,2 @@ +# Type Name ID GECOS [HOME] +u srvGeoClue - "User for GeoClue D-Bus service" /var/lib/srvGeoClue