GNOME Commander

A powerful filemanager for the Gnome desktop environment

Development

GCMD hacking

RSS-feed for the latest changes in svn repository.

This page contains information about hacking and contributing to the Gnome Commander project. We encourage anyone hwo wants to contribute with code, translations, bugreporting, boil up new useful ideas, or just give some quality feedback that also is quite important. You are all welcome to sign up on our mailing lists and take part in discussions and development.

Versions

Some words about versions and version numbering.

Gnome Commander is being developed in a stable and a testing branch, where the test releases fills the purpose of testing new ideas. Successful ones will then get backported to the stable branch. The version numbers (major, minor and micro) follows the quite usual standard of odd and even versioning, where odd minor versions stands for the unstable releases and the even numbered branch eventually gets the thoroughly tested new functions backported. Remember this when talking about GCMD or when sending patches.

To check out the latest sources from SVN, following commands can be used:

The stable 1.2 branch:
svn checkout svn://svn.gnome.org/svn/gnome-commander/trunk

The 1.3 testing branch:
svn checkout svn://svn.gnome.org/svn/gnome-commander/branches/gcmd-1-3

Contributing

If you want to contribute, send in patches, translations, having some useful idea or just some feedback, good or bad, then you are welcome to contact us thrugh our mailing lists or the authors directly if you want to keep it more private.

If you're not an programmer but have some good ideas for stuff that you want to see in this program, check the TODO file first before sending email to the authors or the mailing lists.

If you want to submit a patch please do so.

Special note for translators:

Although GNOME Commander is currently available in over 30 languages, there are still many missing and those to improve. The current status of all project translations can be found at http://progress.gnome.org/module/gnome-commander.

For adding a new translation simply download the head potfile and rename it to LL.po (replace "LL" with your language code, see the complete list of language codes).

Here you will find the recipe on how to contribute your new or updated translation (replace "LL" with your language code, see the complete list of language codes).

  1. Get a fresh copy of the program source (either from SVN or snapshot)
  2. Unpack it and run ./autogen.sh.
  3. Update proper LL.po file by usual chant: CD into the po directory and run intltool-update LL.

You may find translation compedia to be quite handy as a reference. To create such a compedium from all LL GNOME translations it is required to:

wget -r -l1 -nd -A.po -b http://l10n-status.gnome.org/HEAD/LL/extras/
wget -r -l1 -nd -A.po -b http://l10n-status.gnome.org/HEAD/LL/office/
wget -r -l1 -nd -A.po -b http://l10n-status.gnome.org/HEAD/LL/fifth-toe/
msgcat -o compendium-LL.po *.po

Our recommended translation tools are: Poedit (http://www.poedit.org/) and gtranslator (http://gtranslator.sourceforge.net/). KBabel could also be a good tool if you also have the neccesary KDE libs installed..

All translation files (LL.po) MUST be UTF-8 and to avoid corruption by mail application please send them as gzipped or bzipped attachments.

Hacking documents

Links to documents regarding Gnome Commander internals.


Building from source

Required libraries:

If you have the libraries above, and of course their sub-dependencys, devel-packages and a sane build environment, the usual "./configure make make install" procedure should work like a charm. If you are building the code checked out from SVN, use ./autogen.sh insted of configure, in the SVN case you also need to have the gnome-common files installed.

FAM is an optional library, it is used to monitoring file alterations, which means that when you create/delete/modify a file this program gets a message from FAM so it can update it's directory views on the fly.
Update: from 0.9.8 and on, files modified within GC should update without FAM.

For the internal viewer to be able to show exif and IPTC data you also need to have libexif and libiptcdata installed, this is optional though.

Build on FreeBSD

For our FreeBSD users here is a page describing how to build GNOME Commander on FreeBSD in order to get full functionality out of it.


Bugs

Discovered a bug?

You can report or view Gnome Commander bugs at the gnome.org Bugzilla.

Though Gnome Commander is relatively free from bugs and is a quite mature program, no programs will ever be totally bugfree. New bugs can be introduced with new features, or through other programs and libraries it depends on, this goes especially for development and testing versions. Quality bugreporting is very important and can be a very good help for the developers to make a better program. Bugreporting is not an act of dissatisfaction, so you are very welcome to help us find, hunt down and kill the bugs. Testing of new releases and bugreporting is the best way users without programming knowledge can help out in the development of a program, and those with programming knowledge are very welcome to suggest fixes and/or send patches to the developers, all in the spirit of free and open source software.

Given enough eyeballs, all bugs are shallow.
//Linus law.


To top of page

Mailing lists

There are two mailing lists regarding Gnome Commander.

The user list is mostly for topics about using Gnome Commander, a kind of support list. The devel list is where the developers of this project are discussing topics about the development. For the moment, all posts from non members of these lists are beeing held for approval due to spam reasons, but anyone are welcome to sign up on the lists and post unmoderated. So, if you post without beeing signed up on the list, your mail will be moderated before it is sent to the list, and remember that you should note in the email that people should CC their replies to you.

The team

Authors

For the moment this project has two authors committing code:

Contributors

There are many small contributors that has contributed in many ways, it would be impossible to mention them all, but most of them contributing with code or translations are mentioned in the AUTHORS file or the changelog of translations.

A big "thanks to" is also directed to the former maintainer of Gnome Commander, Marcus Bjurman hwo where the one that initiaded this project publicly in 2001 and developed it up to version 1.1.6 in 2004. Without him there would not have been any Gnome Commander. Thank you Marcus.

To top of page

 
Valid html 4.01 Strict!