KDE hat einen GEO Location Provider, den kann man sich auch anschauen:
dpkg -L plasma-workspace | grep geo
/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/dataengine/plasma_engine_geolocation.so
/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/geolocationprovider
/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/geolocationprovider/plasma-geolocation-gps.so
/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/geolocationprovider/plasma-geolocation-ip.so
Zumindest wenn man KWeatherCore und KWeather selbst baut, holt es sich latitude und longitude.
Hat aber nichts mit dem Firefox zu tun. Außerdem ist IP ungenau. Bei mir liegt es heute rund 100 Kilometer falsch, das kann sich aber bei jedem frischen IP neu auswürfeln jederzeit ändern. Für GPS müsste auch überhaupt erst mal die Hardware vorhanden sein.
Dann gibt es noch geoclue, das ist ein systemd Service, der auf D-BUS aufsetzt. Kann man so nachschauen:
systemctl status geoclue
Da gibt es nichts in den KDE-Systemeinstellungen, der systemd Dienst läuft unabhängig von KDE. Sieht man auch, wenn man mal in die geoclue.service Datei reinguckt. Bei IP als Grundlage, ist auch das Problem mit der Ungenauigkeit das gleiche. Was aber auch eigentlich eine gute Sache ist, für Privacy und etwas Sicherheit gegen eskalierendes Stalking und Überwachungswut.
Was der Firefox zulässt, wird in den Einstellungen des Firefoxes vorgegeben. Außerdem nutzt Firefox nicht geoclue, sondern Google als Schätzeisen für die Ortsbestimmung.
Was aber ein Snap in seinem abgeschotteten Gefängnis überhaupt darf, das ist eine andere Geschichte.