Geolocation not working − the Google maps API always returns error codes

Bug #1860830 reported by Frank
90
This bug affects 15 people
Affects Status Importance Assigned to Milestone
chromium-browser (Ubuntu)
Fix Released
High
Olivier Tilloy
firefox (Ubuntu)
Fix Released
High
Olivier Tilloy

Bug Description

Happened as soon as Firefox was updated to 72.0.1. I noticed sites could not determine my location.

Troubleshooting page shows "missing" under Location service key.

I have another computer running Lubuntu 18.04LTS, which I rarely use. Just for fun, I booted it up and as soon as the software updater updated Firefox to 72.0.1, location stopped working.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: firefox 72.0.1+build1-0ubuntu0.18.04.1
ProcVersionSignature: Ubuntu 4.15.0-74.84-generic 4.15.18
Uname: Linux 4.15.0-74-generic x86_64
AddonCompatCheckDisabled: False
ApportVersion: 2.20.9-0ubuntu7.9
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: frank 2125 F.... pulseaudio
 /dev/snd/controlC1: frank 2125 F.... pulseaudio
BuildID: 20200107212822
Channel: Unavailable
CurrentDesktop: ubuntu:GNOME
Date: Fri Jan 24 19:58:30 2020
Extensions: extensions.sqlite corrupt or missing
ForcedLayersAccel: False
IfupdownConfig:
 # interfaces(5) file used by ifup(8) and ifdown(8)
 auto lo
 iface lo inet loopback
IncompatibleExtensions: Unavailable (corrupt or non-existant compatibility.ini or extensions.sqlite)
IpRoute:
 default via 192.168.0.1 dev wlan0 proto dhcp metric 600
 169.254.0.0/16 dev wlan0 scope link metric 1000
 192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.8 metric 600
Locales: extensions.sqlite corrupt or missing
MostRecentCrashID: bp-82fc5472-37b3-46d6-a6fa-f47e11180406
PrefErrors: Unexpected character ',' before close parenthesis @ /usr/lib/firefox/omni.ja:greprefs.js:727
PrefSources: prefs.js
Profiles: Profile0 (Default) - LastVersion=72.0.1/20200107212822 (In use)
RunningIncompatibleAddons: False
SourcePackage: firefox
Themes: extensions.sqlite corrupt or missing
UpgradeStatus: Upgraded to bionic on 2019-07-05 (203 days ago)
dmi.bios.date: 03/24/2011
dmi.bios.vendor: Hewlett-Packard
dmi.bios.version: F.27
dmi.board.asset.tag: Base Board Asset Tag
dmi.board.name: 1442
dmi.board.vendor: Hewlett-Packard
dmi.board.version: 67.33
dmi.chassis.type: 10
dmi.chassis.vendor: Hewlett-Packard
dmi.chassis.version: N/A
dmi.modalias: dmi:bvnHewlett-Packard:bvrF.27:bd03/24/2011:svnHewlett-Packard:pnHPPaviliondv7NotebookPC:pvr048D100000242B20000020000:rvnHewlett-Packard:rn1442:rvr67.33:cvnHewlett-Packard:ct10:cvrN/A:
dmi.product.family: 103C_5335KV
dmi.product.name: HP Pavilion dv7 Notebook PC
dmi.product.version: 048D100000242B20000020000
dmi.sys.vendor: Hewlett-Packard

Revision history for this message
Frank (oscarkatz) wrote :
Revision history for this message
Olivier Tilloy (osomon) wrote :

This is not caused by a missing API key, but rather by a change on Google's servers which started returning errors for all geolocation requests (firefox and chromium-browser in Ubuntu use the google geolocation API). See https://groups.google.com/a/chromium.org/forum/#!topic/chromium-packagers/ZytNtRam5II for details.

Changed in firefox (Ubuntu):
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Olivier Tilloy (osomon)
Changed in chromium-browser (Ubuntu):
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Olivier Tilloy (osomon)
summary: - Location not working 72.0.1; location service key missing
+ Geolocation not working − the Google maps API always returns error codes
Revision history for this message
Olivier Tilloy (osomon) wrote :

The problem started happening on Friday the 17th of January.

Revision history for this message
Lisa Nelson (lisa50469) wrote :

73.0b12 (64-bit)
Has the same bug

Revision history for this message
Rafael Romero (rmru1969) wrote :

75.0 (64-bit) Mozilla Firefox for Ubuntu - Canonical 1.0 here. Geolocation not working, it did work in 74.0 but had not worked in 73.0. API key present (AIzaSyAeBu...4qR5UXs), but gets a Status Code 429: No Reason Phrase error. IP/port contacted is 172.217.14.234:443.

geo.wifi.uri = https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_API_KEY%

Doesn't work with Mozilla's uri either: https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%

in the latter case the IP/port contacted is 172.217.3.170:443

The error reported is the same: Status Code 429: No Reason Phrase. I know a 429 is usually a "too many requests" so my guess is that the API key is exceeding some max limit, and must be shared by all of us using Firefox on Ubuntu.

Regular Firefox versions work fine, Chronmium & Chrome work fine, and everything works fine on other OSs, so at this point it's the Canonical-modified Firefox version on Linux only --the one for many reason I must use every day.

Revision history for this message
Éric Piel (pieleric) wrote :

Here, with Firefox 75, it seems to work with the Mozilla location service. I've changed:
geo.provider.network.url = https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%

(note that the config key name is different)

Revision history for this message
John Tanner (jdtanneratgmaildotcom) wrote :

I can echo Eric's observation above but with Firefox 75 (released with 20.04) and Firefox 76 (latest version).

If geo.provider.network.url is set to the Google service then it doesn't work, but the mozilla one does. If you download Firefox from mozilla then geolocation with Google works fine, so it must be an issue with the version provided by Canonical/Ubuntu.

Revision history for this message
Olivier Tilloy (osomon) wrote :

It is an issue with the Google API key used in Ubuntu builds (see comment #2).

Revision history for this message
Vadim Evard (v-e-evard-w) wrote :

Firefox 77.0.1 under Ubuntu 18.04 is still affected. Any news or workarounds on this?
Can we somehow (manually?) override API keys to the ones that don't error out?

Revision history for this message
Vadim Evard (v-e-evard-w) wrote :

Upd: you can indeed override the API key in about:config.
To find a value that works, download Firefox from mozilla.org, extract the archive, and run

grep --binary-files=text MOZ_GOOGLE_LOCATION_SERVICE_API_KEY omni.ja

Revision history for this message
Olivier Tilloy (osomon) wrote :

As pointed out by Evangelos in https://groups.google.com/a/chromium.org/g/chromium-packagers/c/ZytNtRam5II/m/4o9ql5IaAwAJ?pli=1, geolocation started working again on July 29th.
Marking the bug fixed accordingly, let's hope this doesn't break unexpectedly again.

Changed in chromium-browser (Ubuntu):
status: Confirmed → Fix Released
Changed in firefox (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.