New release of thunarx-python bindings

Posted in Release, Status Update on January 26th, 2010 by Adam Plumb – Be the first to comment

I am happy to announce that version 0.2.0 of the thunarx-python bindings have been released and are available for download.  The big news (and the only news) is that they can now run on any version of Thunar, all the way back to 0.4.0, so you don’t need to very latest release (v1.1.0) any more.

I’m in the process of getting thunarx-python hosted on Xfce.org, but it is slow going.  I’ll update everyone when this does happen, though.

Get it here: thunarx-python-0.2.0.tar.gz

SHASUM: e5838c597612d90f262add39ceae56dc59ad798b
MD5SUM: 6b6555157888e7dd91a15732b4970642

Git Repository: http://github.com/adamplumb/thunarx-python
Bug Tracker: http://github.com/adamplumb/thunarx-python/issues

VN:F [1.9.2_1090]
Rating: 5.0/5 (1 vote cast)

Would anyone care for a Gedit plugin?

Posted in Community, Miscellaneous on January 25th, 2010 by Adam Plumb – 3 Comments

With some time to kill before our big v0.13 release, I wanted to see what it would be like to create a RabbitVCS plugin for Gedit.  It turns out, it actually isn’t too terribly hard.  In fact, all I needed to do was implement the Gedit plugin parts and write a new class to generate menus that work with Gedit.  Currently, the plugin has the narrow focus of providing menu items for RabbitVCS actions, but in the future it could be expanded to providing a sidebar panel, or more.

Here is a quick demo video showing RabbitVCS-on-Gedit in action!

If you’re interested in running the Gedit plugin, you’ll need to be running up-to-date code from our SVN repository.  The Gedit bits are here.  If you’d like to wait for a release, it will be available for the beta release (coming next week).

I’d love it if someone would like to take over this plugin and really make it something special, as I really just wanted to get the ball rolling and show that it is possible to take RabbitVCS outside of the file manager domain.  If you’re interested in contributing to or even taking over development for the Gedit plugin, send an email to our developer’s mailing list.

VN:F [1.9.2_1090]
Rating: 5.0/5 (6 votes cast)

Preview of RabbitVCS running on Thunar

Posted in Community, Status Update on January 21st, 2010 by Adam Plumb – 1 Comment

Getting RabbitVCS to run on Thunar required me to create python bindings for the Thunar Extension Framework, but that is done now and the thunarx-python bindings are a reality.  I’m in the process of getting the source code hosted on Xfce’s git repository.

With RabbitVCS running on Thunar, we’re a small step closer to one of our big goals, which is to become file manager agnostic.

You can read my post on our mailing list about my trials and tribulations getting this all to work, but RabbitVCS on Thunar is a mixed bag.  On the one hand, I was able to get sub-menus working without having to patch Thunar, but on the other hand, there will be no emblem support for the foreseeable future.  However, one thing that Thunar has that Nautilus does not is a get_dnd_actions call, which asks plugins for menu items for when the user drags and drops an item into a folder. I haven’t implemented it yet, but in the near future this will allow you to move files around in your SVN repository via drag ‘n drop in Thunar.  Also not implemented yet is a property page that reports file status and ownership, etc.  All of that will be ready for the v0.13 release.

For now, I leave you with a short video of RabbitVCS running Thunar.

Get thunarx-python here: http://github.com/adamplumb/thunarx-python.  I’ve made a release, and you can get that in the Downloads section in github.  Currently, the only way to install the Thunar extension for RabbitVCS is to check out the latest code from SVN and run the development install.  Instructions for installing a thunarx-python plugin is available in the thunarx-python README file.  If you’re willing to brave the install, I’d love to hear your feedback!

VN:F [1.9.2_1090]
Rating: 5.0/5 (1 vote cast)

Preview of the Repository Browser for v0.13

Posted in Community, Status Update on January 7th, 2010 by Adam Plumb – 2 Comments

One of the final pieces of the puzzle for v0.13 is the repository browser, and I am quite happy with it.  Sure, I bailed on having a folder tree view, and there is no drap ‘n drop support for moving files around, but overall I think people will find it very useful when v0.13 is released.

Here is a quick ‘n dirty video I made showing some basic functionality.  Hopefully we’ll have an alpha or beta ready for v0.13 and more people can test the new stuff out.

VN:F [1.9.2_1090]
Rating: 5.0/5 (7 votes cast)

Release announcement for RabbitVCS v0.12.1

Posted in Release on December 1st, 2009 by Adam Plumb – 4 Comments

We are excited to announce the release of RabbitVCS v0.12.1!  This is our first point release of the v0.12 branch and it fixes some big bugs that cropped up after the general v0.12 release.  Here is a list of the most important changes and fixes.

  • (r1791) Merged new SSL client cert prompt into v0.12.1 branch
  • (r1794) Changed “previous log message” UI behaviour. Newlines now replaced by “return key” glyph (U+23CE). Trailing whitespace stripped only from entire message. Fixes issue 184
  • (r1800) Wrong comparison of “name” value returned from property dialog. Fixes issue 186.
  • (r1833) Fix for issue #195.  The checkboxes in the update to revision dialog were inconsistently padded.
  • (r1840) Merge of locale detection/setting fix from main branch.
  • (r1852) Removed extraneous debugging line (merged from trunk).
  • (r1915) Merged change from issue #1856 into v12.1 branch (python 2.4 compatbility fix)
  • (r1917) Added the nautilusold extension code to the v0.12.1 branch
  • (r2030) Fixes bug #1, SSL certificate failure
  • (r2050) Bug fixes and improvements for packaging scripts

KNOWN ISSUES
Go to http://wiki.rabbitvcs.org/wiki/support/known-issues

AVAILABILITY
Go to http://www.rabbitvcs.org

We now have a working 64bit package for Fedora!  We will have RHEL/CentOS packages soon.

ABOUT RABBITVCS
RabbitVCS is a project with the goal of developing a collection of utilities to allow for better client integration with some of the popular version control systems. We currently support the Nautilus File Manager and the Subversion version control system.

The RabbitVCS Team

VN:F [1.9.2_1090]
Rating: 4.8/5 (12 votes cast)

Any programmers interested in a RabbitVCS sub-project?

Posted in Community on November 16th, 2009 by Adam Plumb – 4 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!

VN:F [1.9.2_1090]
Rating: 4.5/5 (10 votes cast)

A preview of new log and compare functionality in v0.13

Posted in Miscellaneous, Status Update on October 30th, 2009 by Adam Plumb – 8 Comments

For me, and I think for a lot of other people, one of the key missing pieces of functionality for RabbitVCS v0.12 is robust support for comparing files, folders, and revisions; so this is the first thing I started working on for v0.13.  So far, I’ve updated the log viewer and created a new dialog devoted to comparisons, but I’ll be improving context menu functionality throughout all dialogs.  Here is a video preview of the new log view functionality and the compare dialog.

VN:F [1.9.2_1090]
Rating: 4.8/5 (6 votes cast)

The RabbitVCS Project as seen by CodeSwarm

Posted in Miscellaneous on October 17th, 2009 by Adam Plumb – Be the first to comment

Today, I happened upon the code_swarm project, which allows you visualize your project’s development over time.  One of the neatest things about it does everything from your repository’s log.  Here is what code_swarm spit out for RabbitVCS.  Pretty cool…

VN:F [1.9.2_1090]
Rating: 4.0/5 (4 votes cast)

A second extension for older distributions, seeking maintainer

Posted in Community on October 10th, 2009 by Adam Plumb – 1 Comment

Some older distributions, such as RHEL5/CentOS5 and Debian Lenny (and older) just don’t work with the RabbitVCS v0.12 extension code.  One of the problems is that we use code that requires the most recent nautilus-python (the python bindings we use to extend nautilus), and even a relatively recent Nautilus and that code is often not available on older distributions.  In addition, we have several other dependencies in v0.12 that need relatively recent versions to work.

Fortunately, there is a way out.  The NautilusSvn v0.11 extension code is actually quite simple and straightforward, and will work on very old versions of Nautilus and nautilus-python.  So what I have done is set up a second extension folder in our repository called “nautilusold” based on the code from the v0.11 extension, but the nice part is that it connects to all the windows and dialogs in v0.12.  Check out this video of RabbitVCS on CentOS 5.

Right now, this new extension is only available in trunk, and is not packaged, but you can easily install it by replacing the RabbitVCS.py in your extensions folder with the nautilusold/RabbitVCS.py file.  It is as simple as that!

All is not perfect, however.  As you may have noticed from the video, submenus don’t work quite right in older versions of nautilus-python, so all menu items have to be fit on the main Nautilus context-menu.

Also, since this is an entirely separate module from the standard extension code, it needs to be maintained and hopefully improved.  That is why I’m sending out a call to anyone who is interested that we would love to have someone dedicated to maintaining and improving the nautilusold extension.  I’ve gotten it to a good working state, but there is still plenty to do, such as:

  • Integrate with our v0.12 translations
  • Clean up the menuitems logic code, and possibly figure out a way to use submenus
  • Improve the status monitor to remove the need for the “Refresh Status” button
  • Figure out how to get our existing nautilus extension to work with older distros so we don’t need this second extension.

If anyone is interested in carrying the torch on, please get in touch and I will be happy to get you started.

VN:F [1.9.2_1090]
Rating: 3.7/5 (3 votes cast)

See RabbitVCS v0.12 in action

Posted in Miscellaneous on October 7th, 2009 by Adam Plumb – 1 Comment

I’ve posted some videos of RabbitVCS in action on Youtube.  Here is the first of the series, checking out a simple working copy from a repository.

VN:F [1.9.2_1090]
Rating: 5.0/5 (1 vote cast)