Description of the project
Main goal
Permit nautilus users to access their Google Documents by clicking on the “file → connect to a server” menu. Then the connection window shows up and in the listBox the user can choose "Google docs" (the same way as "FTP_server", "windows share"...). Afterward, he has to fill in his Google account user-name and password. Then he can manage and edit his Google docs and folders the same way as if it was local documents/folders.
Benefits for the gnome desktop and its community
The goal of this project is particularly interesting for end users. I have personally been using Google docs since Google launched this service, but I can not use it for all the documents I produce since the current system of synchronization is very unergonomic. I think having this synchronization system as a basic and fully integrated feature of the gnome desktop can be considered as a great step for the convergence between desktops and Internet applications. Since popular Linux distributions such as Ubuntu are pointing out this convergence as being a main point of what the next generation users desktop should be, I think my project is very profitable for our preferred desktop!
Components I am hacking on
- First extended the libgdata library which is a C library to access gData APIs.
- For now I am writing a GVFS backend which permit to handle Google documents (using libgdata).
- Finally, I will write some code in nautilus so users can use the new GVFS feature.
My plans:
Read about gData API and dive into the libgdata library and write google docs service class descriptions
- Status: Done
Implement libgdata google document service
- Status: Done
Dive into the GVFS source code and understand well how it works.
- Status: Done.
Think the way everything should work
- Status: Done
I talked with Christian to make some decision about the way we should handle different formats of google document and how the sharing/staring feature of Google docs should work. We decided that:
- Staring/staring should be integrated as a nautilus plug-in, will be done later.
- Staring: We may add staring folders in nautilus (when using Google docs). Stared documents should be added in those folders.
- We also decided to handle all documents in odf format by default. I can also add a 'download as PDF' feature thanks to the Google docs nautilus plug-in.
Think well my program and the functions and classes I have to write
- Status: Done.
Write the libgdata service for Google documents and test it
- Status: Done
Write the GVFS Backend for Google documents
- Status: Needs testing and bug fixes.
Write tests to certify the coherence of the written code
- Status: TODO
Hack on nautilus to add different features to handle Google documents
Status: Patch available at https://bugzilla.gnome.org/show_bug.cgi?id=591178
Test , debug and write documentations
- Status: In progress
Future evolutions
- Synchronize Google Docs each time the user connects on the Internet.
- Permit users to access their Google documents off-line as well as on-line.
Add the possibility to do the same thing with PicassaWeb pictures since it uses the same API and Google account.