Any programmers interested in a RabbitVCS sub-project?

Posted in Community on November 16th, 2009 by Adam Plumb – 6 Comments

Do you want to contribute to RabbitVCS, but you want to be in charge of what you’re doing, and you don’t want Jason, Bruce, or myself to get in your hair too much?  Well, one of the great things about RabbitVCS is that we are very modular, and we have grand ideas about what we want RabbitVCS to do, but we just don’t have the time to do it as fast as we want.  Here are some ideas we have for possible sub-projects that Python and C coders can pick up and run with.

Improve the Nautilus extension framework (C Programmers)
The current Nautilus extension framework is quite basic and isn’t really powerful enough for some of the things we would like to do.  The related Python bindings (nautilus-python) would also need to be extended along with it to be useful to us.  Your job would be to write patches for these code bases and possibly become an active maintainer for those projects.  Currently, the nautilus-python project does not have an active maintainer (that I know about)

Create a Thunar extension (C and Python Programmers)
As per our recent name change, our eventual goal is to be file manager agnostic, so RabbitVCS users aren’t stuck with GNOME all the time.  Currently, Thunar has an extension framework that is somewhat similar to Nautilus’s, but they don’t have Python bindings.  Your job would be to create Python bindings for the Thunar extension framework and then port our Nautilus extension code to run on Thunar (should not be difficult).  Or you could just write a C extension and integrate RabbitVCS as much as possible

Create a Dolphin/Konqueror/PCManFM extension (C and Python Programmers)
I don’t know what the current state of any of these file managers are with respect to plugins, but it would be great to create an extension for them.  Like the Nautilus and Thunar extensions, Python bindings would allow you to more easily integrate with our status checker/monitor.  But if you would prefer a C extension we can still integrate with that fairly well.

Create a gedit (or other text editor) plugin (C Programmers, I think)
It should be possible to create a plugin for gedit or any other text editor that puts our main context menu in gedit and launches our ui dialogs.  All it would take is for someone to spend the time getting it to work.

Create a standalone GUI client (Python Programmers)
There are plenty of standalone VCS GUIs out there, but one more won’t kill anyone ;)  Indeed, we could do some pretty cool things with a standalone GUI that we may never be able to do with a file manager extension.  Your job would be to create the GUI (using PyGTK) as you see fit and integrate the RabbitVCS dialogs and other code as much as possible.


These are just some of the ideas I’ve had.  I’m sure there are other good sub-project ideas, so just get in touch with us and we’ll help you get started!