geoclue - Man Page

geoclue configuration parameters

Synopsis

Main configuration file: /etc/geoclue/geoclue.conf
Overwriting parameters files: /etc/geoclue/conf.d

Description

The main GeoClue configuration file 'geoclue.conf' specifies parameters that control the operation of geoclue. Parameters can be overwritten by placing configuration files in conf.d directory and applied in alphabetic order. Thus, a configuration file '90-config.conf' will overwrite parameters specified in another configuration file '50-config.conf' in the conf.d directory.

All configurations settings below are mandatory and the defaults are what you see before you edit them in geoclue.conf. If you want to keep the default values around, copy and comment out the appropriate line(s) before changing them.

Missing 'enable' key for a particular source in the main configuration file causes that source to be enabled by default. Adding 'enable' key setting to any further config file can overwrite this default.

Agent Configuration Options

[agent] is used to begin the agent configuration.

whitelist

Whitelist of desktop IDs (without .desktop part) of all agents we recognise, separated by a ';'.

whitelist=geoclue-demo-agent;gnome-shell;io.elementary.desktop.agent-geoclue2

[network-nmea]

Network NMEA source configuration options

enable=true
Fetch location from NMEA sources on local network?

nmea-socket=/var/run/gps-share.sock
Use a nmea unix socket as the data source. If not set, unix socket will not be used.

[3g]

3G source configuration options

enable=true
Enable 3G source

[cdma]

CDMA source configuration options

enable=true
Enable CDMA source

[modem-gps]

Modem GPS source configuration options

enable=true
Enable Modem-GPS source

[wifi]

WiFi source configuration options

enable=true
Enable WiFi source

url=https://location.services.mozilla.com/v1/geolocate?key=YOUR_KEY
URL to the WiFi geolocation service. If not set, defaults to Mozilla's Location Service with a hardcoded key. To use a custom key, uncomment this URL while changing YOUR_KEY to your MLS API key.

submit-data=false Submit data to Mozilla Location Service
If set to true, geoclue will automatically submit network data to Mozilla each time it gets a GPS lock.

submission-url=https://location.services.mozilla.com/v2/geosubmit?key=YOUR_KEY
URL to submission API of Mozilla Location Service

submission-nick=geoclue
A nickname to submit network data with. A nickname must be 2-32 characters long.

[compass]

Compass configuration options

enable=true
Enable Compass

[static-source]

Static source configuration options.
This source reads location from "geolocation" file in /etc. While this file is constantly monitored for changes during geoclue operation, and the reported static location is updated accordingly, this source isn't meant for inputting a dynamically changing location to geoclue (please use the Network NMEA source for that).

enable=true
Enable the static source.
If you make use of this source, you probably should disable other location sources in geoclue.conf so they won't override the configured static location.

Application Configuration Options

Having an entry here for an application with allowed=true means that geoclue will not ask agent to authorize the application. This is to ensure that applications with built-in authorization mechanism (e.g web browsers) do not have to be bound to agents.

If your application is denied access to location information and your operating system doesn't provide any mechanism to change that, it is likely a bug in your operation system (or geoclue). The solution is to report the issue with all details, rather than adding your application to this list.

Format:

[random-app]
Desktop ID of application without .desktop part

allowed=true|false
Allowed access to location information?

system=true|false
Is application a system component?

users=
List of UIDs of all users for which this application is allowed location info access, separate by ';'. Keep it empty for allowing it for all users.

Examples:

[gnome-datetime-panel]
allowed=true
system=true
users=

[gnome-color-panel]
allowed=true
system=true
users=

[org.gnome.Shell]
allowed=true
system=true
users=

[io.elementary.desktop.agent-geoclue2]
allowed=true
system=true
users=

[epiphany]
allowed=true
system=false
users=

[firefox]
allowed=true
system=false
users=

Static Location File

Basic format

The static location file in /etc (used by the static source) is a text file consisting of the following:

  1. Latitude (floating point number; positive values mean north, negative south)
  2. Longitude (floating point number; positive values mean east, negative west)
  3. Altitude (floating point number; in meters)
  4. Accuracy radius (floating point number; in meters)

These values need to be separated by newline characters.

Additional format information

  • The '#' character starts a comment, which continues until the end of the current line.
  • Leading and trailing white-space on each line is ignored.
  • Empty lines (or containing just white-space or a comment) are ignored.

Example

# Example static location file for a machine inside Statue of Liberty torch

40.6893129   # latitude
-74.0445531  # longitude
96           # altitude
1.83         # accuracy radius (the diameter of the torch is 12 feet)

Notes

For extra security, the static location file can be made readable just by the geoclue user:

# chown geoclue /etc/geolocation
# chmod 600 /etc/geolocation

Author

Sachin Chand