8 June 2009

Introducing geoclue-properties

While deploying Geoclue with friends, I came to the conclusion that we need a GUI tool for end users to setup Geoclue.  Geoclue-properties was born.  gstreamer-properties was an inspiration (for the name, and part of the visual aspect).

I started the project only last Monday night, but you can already do this with it:

  • See your current address and postion according to Geoclue
  • List installed providers and their provided services
  • Set an address on the Manual provider
  • Set the address for the current network on the Localnet provider
  • List previously configured addresses in the Localnet provider

Just the last items save the user of having to use dbus-send incantations.   For the screenshot lovers, here’s your dose.

The project is still quite embryonic.  It is my first attempt at using Python for such a task and I lack knowledge (and quite frankly time) on how to create the project’s infrastructure (almost as if I am missing autotools — scary!).  If someone is willing to contribute that or point me the doc I’d appreciate!

Try it!

Comments (9)

  1. 9 June 2009
    Javier said...

    Hello,

    this is amazing!! How about integrate this in “About me” in Gnome?

  2. 9 June 2009
    Pierre-Luc Beaudoin said...

    The way I see it, About Me should contain your postal address, while this tool contains your dynamic location.

  3. 11 June 2009
    Henri Bergius said...

    This should show a map, too :-)

  4. 11 June 2009
    Pierre-Luc Beaudoin said...

    Definitively :)

  5. 23 June 2009
    Stefano Costa said...

    Hi,
    I cloned your git repo and tried installing gc-p, but it gives me an Exception:

    (geoenv)steko@gibreel:~/code/geoclue-properties$ geoclue-properties
    D-Bus error: org.freedesktop.DBus.Error.NoReply: Message did not receive a reply (timeout by message bus)
    Traceback (most recent call last):
    File “/home/steko/code/geoclue-properties/geoenv/bin/geoclue-properties”, line 7, in
    sys.exit(geoclueproperties.geoclue_properties.main())
    File “/home/steko/code/geoclue-properties/geoenv/lib/python2.5/site-packages/geoclueproperties/geoclue_properties.py”, line 261, in main
    dialog = GeocluePropertiesDialog()
    File “/home/steko/code/geoclue-properties/geoenv/lib/python2.5/site-packages/geoclueproperties/geoclue_properties.py”, line 71, in __init__
    self.create_general_tab()
    File “/home/steko/code/geoclue-properties/geoenv/lib/python2.5/site-packages/geoclueproperties/geoclue_properties.py”, line 218, in create_general_tab
    client.SetRequirements(geoclue.ACCURACY_LEVEL_COUNTRY, 0, True, geoclue.RESOURCE_NETWORK)
    File “/usr/lib/pymodules/python2.5/dbus/proxies.py”, line 140, in __call__
    **keywords)
    File “/usr/lib/pymodules/python2.5/dbus/connection.py”, line 622, in call_blocking
    message, timeout)
    dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name :1.291 was not provided by any .service files

  6. 23 June 2009
    Björn Heide said...

    @Stefano:
    Same here until I removed the geoclue-examples package (debian). Must be something wrong with /usr/lib/geoclue/geoclue-example

  7. 24 June 2009
    Stefano Costa said...

    @Björn
    Right (sid/experimental too), it goes away.

    Now the GUI shows, but in the terminal there are some other warnings and errors, perhaps they’re useful for Pierre-Luc:

    (geoenv)steko@gibreel:~/code/geoclue-properties$ ./geoclue-properties
    ERROR:dbus.proxies:Introspect error on :1.71:/org/freedesktop/Geoclue/Master: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
    org.freedesktop.DBus.GLib.UnmappedError.GeoclueErrorQuark.Code1: Geoclue master client has no usable Position providers
    /home/steko/code/geoclue-properties/geoclueproperties/geoclue_properties.py:174: GtkWarning: gdk_x11_atom_to_xatom_for_display: assertion `atom != GDK_NONE’ failed
    dialog.run()

  8. 29 June 2009
    kr0y said...

    I encounter the following error :
    ./geoclue-properties.py
    D-Bus error: org.freedesktop.DBus.Error.NoReply: Message did not receive a reply (timeout by message bus)
    Traceback (most recent call last):
    File “./geoclue-properties.py”, line 262, in
    dialog = GeocluePropertiesDialog()
    File “./geoclue-properties.py”, line 72, in __init__
    self.create_general_tab()
    File “./geoclue-properties.py”, line 219, in create_general_tab
    client.SetRequirements(geoclue.ACCURACY_LEVEL_COUNTRY, 0, True, geoclue.RESOURCE_NETWORK)
    File “/var/lib/python-support/python2.6/dbus/proxies.py”, line 140, in __call__
    **keywords)
    File “/var/lib/python-support/python2.6/dbus/connection.py”, line 622, in call_blocking
    message, timeout)
    dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name :1.161 was not provided by any .service files

    Also I checked for geoclue-example but couldnt find /usr/lib/geoclue/geoclue-example
    I found an executable in /usr/local/libexec/geoclue-example , removed and tried but still didnt help.

  9. 29 June 2009
    Pierre-Luc Beaudoin said...

    OK, can we agree that comments on a blog are not a place to debug stuff? Please send me an email instead.