# Configuration file for Geoclue
#
# NOTE: All configurations settings below are mandatory and the defaults are
#       what you see before you edit them. If you want to keep the default
#       values around, copy and comment out the appropriate line(s) before
#       changing them.

# Agent configuration options
[agent]

# 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;sm.puri.Phosh;lipstick

# IP source configuration options
[ip]

# Enable the GeoIP source
enable=true

# Method (backend) to use for IP location. Currently implemented are:
# 'ichnaea': Use the Ichnaea API (BeaconDB, Positon, etc.) with the URL from the wifi source.
# 'gmaps': Use the location determined by Google Maps.
# 'reallyfreegeoip': reallyfreegeoip.org. Fixed accuracy, see accuracy option below.
method=ichnaea

# Optional overrides to method defaults:
#
# Alternative server URL
#url=https://example.com/v1/geolocate
#
# Override the accuracy value from method
#accuracy=30000.0

# Network NMEA source configuration options
[network-nmea]

# Network NMEA sources are automatically discovered using avahi, domain "_nmea-0183._tcp".
# An NMEA service in your network can be registered to avahi by running
# $ avahi-publish-service -H my.nmea.host "NMEA over TCP" _nmea-0183._tcp 50000
# Here 'my.nmea.host' and '50000' are the hostname and port of the NMEA service.

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

# Use an NMEA unix socket as the data source
# nmea-socket=/var/run/gps-share.sock

# 3G source configuration options
[3g]

# Enable 3G source
enable=true

# CDMA source configuration options
[cdma]

# Enable CDMA source
enable=true

# Modem GPS source configuration options
[modem-gps]

# Enable Modem GPS source
enable=true

# WiFi source configuration options
[wifi]

# Enable WiFi source
enable=true

# URL to a WiFi geolocation service compatible with the Ichnaea API
# (https://ichnaea.readthedocs.io/en/latest/api/geolocate.html).
# An API key can be set by using the 'key' URL parameter.
# If unset, defaults to an URL defined at build-time,
# this URL is 'https://api.beacondb.net/v1/geolocate''
#url=https://example.com/v1/geolocate?key=YOUR_KEY

# To use the BeaconDB geolocation service, uncomment this URL.
#url=https://api.beacondb.net/v1/geolocate

# To use the Positon geolocation service, uncomment this URL.
#
# NOTE: Distributors of geoclue may only uncomment this URL if the
#       service is used in a non-commercial manner, to quote Positon:
#
#         We generally consider a service or software commercial, when it is only
#         intended to be available (beyond free trials or other restrictions) via
#         a one-time payment, subscription, account registration or similar.
#         Funding the development through donations or optional support contracts
#         does not make the software itself commercial.
#
#         Fedora Linux, CentOS Stream, Rocky Linux or AlmaLinux all would not be
#         considered commercial by us, neither would e.g. Debian, Ubuntu or
#         elementary OS. However, RedHat Enterprise Linux and various SUSE Linux
#         Enterprise versions would be considered commercial.
#
#       For more information, contact Positon or consult their website:
#       https://positon.xyz/docs/
#
#url=https://api.positon.xyz/v1/geolocate?key=56aba903-ae67-4f26-919b-15288b44bda9

# To use the Google geolocation service, uncomment this URL
# while changing YOUR_KEY to your Google API key.
#
# WARNING: Please make sure that you are complying with the Google's ToS and
#          policies if you uncomment this:
#
# https://developers.google.com/maps/documentation/geolocation/policies
#
#url=https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_KEY

# Submit data to WiFi geolocation service
# If set to true, geoclue will automatically submit network data
# each time it gets a GPS lock.
#
# Currently, only Modem GPS or Network NMEA sources are supported as providers
# of a location to submit (one at a time).
# If Modem GPS source is enabled above it will be the exclusive provider
# (regardless whether the system is actually equipped with such modem),
# otherwise Network NMEA source will be considered.
submit-data=false

# URL to submit data to a WiFi geolocation service with an Ichnaea compatible API
# (https://ichnaea.readthedocs.io/en/latest/api/geosubmit2.html).
# If unset, defaults to an URL defined at build-time,
# this URL is 'https://api.beacondb.net/v2/geosubmit'.
#submission-url=https://example.com/v2/geosubmit?key=YOUR_KEY

# A nickname to submit network data with. If empty, omitted from the submission.
# Otherwise, must be 2 to 32 characters long. Defaults to "geoclue".
submission-nick=geoclue

# Compass configuration options
[compass]

# Enable Compass
enable=true

# Static source configuration options
#
# This source reads location from "geolocation" file in /etc - please
# consult geoclue(5) man page for the format description of this file.
[static-source]

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

# Application configuration options
#
# NOTE: 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:
#
# # Desktop ID of application without .desktop part
# [random-app]
#
# # Allowed access to location information?
# allowed=true|false
#
# # Is application a system component?
# system=true|false
#
# # 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.
# users=

[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=

[sm.puri.Phosh]
allowed=true
system=true
users=

[epiphany]
allowed=true
system=false
users=

[firefox]
allowed=true
system=false
users=

[lipstick]
allowed=true
system=true
users=
