In our continued desire to pull more of the web/social experiences down to the desktop, we need to extend the APIs provided by gwibber to enable integration more applications. In Lucid gwibber was limited to python and dbus APIs, this project aims to move those APIs to C (libgwibber) and generate bindings into other languages like pythone, mono, vala, etc. This will make it easier for other applications to integrate and bring that experience to more users.

Release Note

This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the release notes of the first release in which it is implemented. (Not all of these will actually be included in the release notes, at the release manager's discretion; but writing them is a useful exercise.)

It is mandatory.


Social media is exploding right now, with more and more ways for users to interact with each other popping up daily. We want to bring that experience down to the Ubuntu Desktop and seamlessly integrate the desktop apps users use everyday with the online services they know and love.

User stories

Jorge is a heavy consumer of social media, he depends on keeping up with what other people are working on for his job as well as his own passion for software. He subscribes to a variety of online services, with a different mix of contacts available on each. Many of the posts that are most important to Jorge are screenshots or links showing off cool new software. Jorge frequently follows the links, views the screenshots, and re-tweets the things he finds exciting.

Laurie's network of friends are all on facebook, many of which are mothers and love to share stories, post photos of their children, plan events, etc. She enjoys not only viewing her own family photos on her Ubuntu Desktop, but also browsing albums shared by her friends. While browsing those albums, she posts comments on photos, marks them as "liked", and tags other friends in photos.

Jono is really into music, specifically metal, and loves telling the world about the music he loves. While headbanging along to a song he is particularly enjoying, he desides he loves the song so much he wants to tell his friends to check it out. He broadcasts a reference to the song which includes a link to where his friends can get it.

Rick has been working all weekend on adding fun features to a new quickly project he started. After he publishes the project to a personal package archive, he wants to tell his social contacts what he has been doing and how they can try it out. He uses quickly to broadcast his progress, which contains a link that launches software-center, directly on a details page for Rick's package. His contacts can now install his package with just one more click.

Jorge just finished creating slides for a presentation about dinosaurs, and his theory on how they became extinct. He needs to provide a public URL to the presentation for the event he is speaking at. Jorge saves the file to his Ubuntu One account and creates a public URL, and decides it would also be cool to post the link to his friends.



You can have subsections that better describe specific parts of the issue.


This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:

UI Changes

Should cover changes required to the UI, or specific UI that is required to implement this

Code Changes

Code changes should include an overview of what needs to change, and in some cases even the specific details.



Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.

BoF agenda and discussion

Enhancements to the API:

Enhancements to the widgets:


DesktopTeam/Specs/Maverick/SocialFromTheStart (last edited 2010-05-18 19:58:54 by ken-vandine)