Integrate GeoClue to help with regulatory compliance
As part of our Linux wireless vendor support strategy we have added a new regulatory infrastructure as of the 2.6.28 kernel. Devices can specify their regulatory domain through different interfaces. Users can further help compliance by specifying their country. We can take advantage of applications such GeoClue to help compliance by making use of the different possible seeds of location we can get on a Linux system.
One initial step here is to extend Network Manager to make use of the information supplied by GeoClue to be able to seed to wpa_supplicant the country which should be set for the current regulatory domain.
Another possible part of this project could be to extend GeoClue to (somehow) use the timezone chosen by the user (e.g. Europe/Berlin) to give a clue about the current country. The GNOME clock applet even allows defining custom locations via their latitude/longitude and setting them with a timezone as a "home location", which may be possible to integrate with GeoClue.
A successful application for this project should show creativity in the various ways to obtain the location and how to deduce the regulatory legislation (country).
Referring context information from the environment is what humans do naturally, using their five senses. This context information is extremely useful and plays a major role in making humans smart. Utilising the same context information will be extremely beneficial to the computers as well and make them more user-friendly . In today's scenario a lot of automation and utility can be achieved utilising an important context information i.e. location. If the computer can automatically realise its location and update its behaviour accordingly, it can be indeed very useful. As the laptops are becoming more and more mobile these days, location sensitivity is extremely desired and necessary .
The current project aims to incorporate the location-awareness in the Gnome-desktop and utilise the same to automatically update the linux kernel to set the country for the current regulatory domain. The geographical information will be treated along the same lines as time and hence automatic updation or manual modification of the location will be as easy as changing time or date. The functionalities which the project intends to achieve are extremely desired and not provided for, till now. With these functionalities, a user can use her location as the factor to automate some routine tasks . For example, if the geographical information is incorporated in the Tracker so that it indexes the files based on location as well, a user can query for the files which were modified/accessed in a particular location (say office). The Clock applet can update its timezone and weather settings after sensing the change in location. The similar approach can be used in maintaining the new regulatory implementation for Linux wireless by informing the kernel about the country the system is in .
Location of a computer system can be estimated with the help of a number of factors like GPS, IP Address, Mac Address, etc. GeoClue is a D-Bus service which utilizes the information from these factors and helps applications become geo-aware . The project will utilise the set of geoinformation APIs provided by GeoClue, and the providers which implement these APIs, to get position information, get location coordinates through address and the reverse.
As the first step towards making the Gnome-desktop location aware, the following Gnome applications will be integrated with GeoClue services : Clock and weather applet, Tracker, Evolution, Empathy and Gwibber. Also, for the Internet-based applications, a map can be generated to view the location of the contacts in the visual format, using OpenStreetMap and libchamplain . The second part of the project will be implemented by extending Network Manager to make use of the information supplied by GeoClue to be able to seed to wpa_supplicant, the country which should be set for the current regulatory domain, which in turn passes the information to the kernel.
Luis R. Rodriguez <email@example.com>
- Kalpana Roy