1. Working with the source code

Nautilus Image Manipulator is written in Python and uses GTK+ version 3.

1.1. Retrieving the source code

The code is hosted on Launchpad and is versioned using Bazaar. Execute the following command to get your copy of the main branch:

bzr branch lp:nautilus-image-manipulator

You can also browse the code if you’d just like to look at it online.

1.2. Running the software from source

The steps to install from source are explained here.

1.3. Modifying the GUI

The GUI is created using Glade. Open it up by running this command:

./extra/design.py

1.4. Updating the translation template

Whenever you have made changes in the GUI or the Python source code to user-facing strings, you should run the following command to update the translation template po/nautilus-image-manipulator.pot:

./extra/update_i18n.py

1.5. Updating the translations from Launchpad

The translation template po/nautilus-image-manipulator.pot is automatically read after each commit that is pushed to the main branch, and the strings are made available for translation on Launchpad. After strings have been translated, follow this process to update the translations in your branch:

  • Request a download of all translated .mo files on Launchpad.
  • You will receive an email from Launchpad containing a link to a tarball containing all the translated files, download it.
  • Put the downloaded launchpad-export.tar.gz file in the ./po folder
  • Run the command ./extra/update_i18n.py to unpack the files and compile them locally.

Note that aside from updating the .mo files that are already present in the branch, this process will also add new files for languages that are not yet versionned. These files are for languages where the number of translated strings are not yet sufficient to justify adding them to a new release. It’s unlikely that a new language will be added before it has reached a translation rate of 80%-90%...