Is ubuntu-geoip (GeoClue) used for tracking?

I am happily learning Ubuntu more closely now. I came across the process ubuntu-geoip-provider in system monitor.

Is is used for tracking or for gathering nearest server info, or for syncing time with Internet, or perhaps for all these things? I searched for it but not enough information came through. If it is tracking, what kind of info it is gathering, and why it is doing that?

It is based here: /usr/lib/ubuntu-geoip

I just wanted more detailed information for that.

Also, can this be disabled? Is disabling recommended, or would doing so cause dependency-related (or other) problems?


GeoClue

source: wikipedia.org

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 information1, but there is also a Qt Mobility API in the works2. Through this it aims to simplify development of location aware applications and promote code reuse within the free software and open source communities by defining a logical boundary between the applications and underlying location providers. GeoClue is licensed under the GNU Lesser General Public License and is currently available for Linux.

GeoClue ships in several Linux distributions including Ubuntu, Debian and Fedora. It is also the positioning service of the MeeGo mobile Linux distribution and the GNOME stack.

GeoClue provides access to multiple position providers: - GPS: Position information from a Global Positioning System receiver (via gpsd and gypsy) - GSM: Position information from cellular network connection - Plazes: Position information from the Plazes Wi-Fi location service - Hostip: Position information based on IP address - Manual: User-provided position information

In addition to position information, GeoClue can also be used for geocoding, or converting between human-readable addresses and coordinates.


GeoClue: The Geoinformation Service

  • Project page
  • Mailing list

Geoclue is a modular geoinformation service built on top of the D-Bus messaging system. The goal of the Geoclue project is to make creating location-aware applications as simple as possible.

Geoclue is Free Software, licensed under GNU LGPL. It is developed for Linux, but should be portable to any platform that uses D-Bus.

Geoclue defines a set of geoinformation APIs, but it also includes some providers that implement those APIs. Here is a list of services provided through Geoclue with the currently included implementations:

  • Position: gpsd, gypsy, hostip, plazes, gsmloc
  • Address: hostip, plazes, manual, localnet
  • Velocity: gpsd, gypsy
  • Geocode: nominatim, geonames, yahoo
  • ReverseGeocode: nominatim, geonames
  • Geoclue source code contains:

    • D-Bus definitions for the above APIs
    • C bindings for Geoclue clients
    • C bindings for data providers
    • a set of provider implementations
    • (experimental) master provider implementation.

Application ideas (so not actual implementations)

  • F-Spot / GThumb: tag photos with location data
  • Stars / MaemoStars: show night sky simulation in correct place
  • Map applications (MaemoMapper) show correct location on application open
  • Jabber / Telepathy: support XEP-0080, add location info to Presence
  • Blog software: add geotags to posts
  • Yahoo Fire Eagle could use Geoclue as data provider
  • Use position/address for desktop settings (timezone, printers, SMTP servers, whatever). Marco Polo looks like a good implementation on OS X
  • disable-screensaver-lock-when-at-home
  • Find closest free wifi access point
  • Tracking application (save location history). Could be used later for tagging photos etc.
  • browser, calendar: autofill address form fields (not sure if current location is wanted that often, though?)
  • Browser could expose location to websites: Webkit may support Locationaware in the future.
  • Google Gears

Possible data sources

  • Geocoding for phone numbers - use countries telephone number dial plans to convert phone numbers to general locations (obviously less accuracy with mobiles and world-wide roaming/etc)
  • Google Maps Geocoding API -- License says "only for showing places on Google Maps"
  • Wigle.net-- WIFI location database (10 million networks). License requires users to login.
  • geocoder.us -- geocoder for the USA (TIGER data)
  • gsmloc-provider could easily get the GSM information using AT commands on the OpenMoko platform
  • A free network location database project has begun at http://geomena.org

Turning it off

If you delete the package it will also delete indicator-datetime. If loosing the date/time applet is not a concern you can go for it.

Otherwise this seems to work too:

  • Change the clock setting to manual;
  • Kill /usr/lib/geoclue/geoclue-master
  • Kill /usr/lib/ubuntu-geoip/ubuntu-geoip-provider

The connection seems to close after killing it.


Is it used for tracking?

No; GeoClue itself does not contact external services for the reason of providing your location, but rather only provides an API for ubuntu applications to use to find out where you are.

If you are in doubt that GeoClue is providing location data to a third party for the purpose of surveillance, you can examine the source code yourself:

git clone git://anongit.freedesktop.org/git/geoclue

IMHO, a free (as in freedom) surveillance tool is an impossible realisation.


Seems relevant:

Disabling privacy-invasive Zeitgeist, Geoclue, Whoopsie (and NTPD)

http://ubuntuforums.org/showthread.php?t=2000108


This not tested, but its logic is simple.

(Still the question is - why we need to dig (more and more) for tricks... Like, how to remove "mail" icon/indicator-messages...)

Add this to the file /etc/rc.local before last line (i.e., before exit 0):

# create dump file
echo '#!/bin/sh' > /tmp/my-will
#echo 'sleep 6000' >> /tmp/my-will; # optional/depends
#chmod +x /tmp/my-will; # optional/depends

# replace "bad" files
mount -o bind /tmp/my-will /usr/lib/geoclue/geoclue-master
mount -o bind /tmp/my-will /usr/lib/ubuntu-geoip/ubuntu-geoip-provider

# kill "bad" processes
pkill geoclue-master
pkill ubuntu-geoip-provider

Another simple way to remove those 2 dbus services is to do that:

sudo mv /usr/share/dbus-1/services/org.freedesktop.Geoclue.Master.service  /usr/share/dbus-1/services/org.freedesktop.Geoclue.Master.service_disabled
sudo mv /usr/share/dbus-1/services/org.freedesktop.Geoclue.Providers.UbuntuGeoIP.service  /usr/share/dbus-1/services/org.freedesktop.Geoclue.Providers.UbuntuGeoIP.service_disabled

Then you either kill both services or reboot. The services won't be launched again at subsequent reboots.

You have to repeat the same commands if geoclue packages are updated because it will recreate the original service files.

If you need these two dbus services back, do the two mv commands above the other way to restore the original .service files.