Barry Kauler, the Puppy Linux creator, has developed a unique tool for the internationalization of Puppy. It’s called MoManager and is available from the menu, under “Utilities”. It allows anybody to start translating one or more applications, or even the whole Puppy. Somewhere in 2013, L18L forked MoManager and created a faster and more translator-friendly version. Today he is the official MoManager developer/maintainer.

Barry’s vision was that people translating everything become “maintainers” for that language, while occasional translators can send their work to the maintainer of that language, so that it can be added to the language pack.

The beauty of MoManager is that it frees the translator from the technically more difficult aspects of software translation. E.g. each time MoManager is started, it builds a list of all translatable files on the system and divides them into two categories:

  1. translated (with indication showing which files are up-to-date and which need updating)
  2. untranslated

The moment a translator selects a file to translate, MoManager creates a fresh ".pot file" ('Portable Object Template') internally and then presents a ".po file" ('Portable Object') to the translator, either in Geany or, if installed and selected, in Poedit. When the translation is finished and saved, that ".po file" is processed and becomes a ".mo file" ('Machine Object'), which MoManager then automatically adds to the correct translations directory for that language.

Sounds complicated? Don't worry, this is just a bit of background info. Remember, MoManager will take care of all this, allowing you to just concentrate on the actual translating.

Another huge MoManager benefit is that everything you need to get started is already available in Puppy: MoManager and Geany, the text editor.

However, there are two things to explain here:

1. Up until now (Feb. 2015), MoManager needs the "Devx" file to be installed. (This is the collection of apps and libraries needed by developers.) So most Puppies at this moment in time need this.

But again, Barry is leading the pack: in his most recent puplets (Quirky 6 and +), he includes everything needed by MoManager within the distro. This effectively means neither the Devx, nor anything else needs to be downloaded and installed to start translating! That will hopefully become standard practice in all Puppies in the near future.

2. Geany is a really nice editor and it's pre-installed, but many experienced translators prefer to use Poedit, the specialized translation editor. It is a stable and reliable tool,  just a download away...your choice!

(tip: if you choose Geany, change the font in Geany - Preferences to e.g. 'Sans' right away, your eyes will be grateful ;))

Possible Poedit downloads:


poedit-1.5.4-1:  (PET)

poedit-1.5.4-1:  (SFS)

Now, let's open MoManager.

(you will be prompted to download the Devx file, different for each version of Puppy)

After installing the Devx, start MoManager and you will see this screen:

momanager window

You can now check the MoManager version (which is simply the date (y-m-d) of the last update):


and have a look in the forum , to see if newer versions are available.

When you first open MoManager it's a good idea to take a moment and set up your preferences. There's a button for that at the bottom:


On the left side the already translated files, the right side ones still to be translated:


mm-select poedit

mm-select file

mm-create po

An example in Geany:

mm-geany example

When the translation is complete, save it and close Geany.

the same in Poedit:

mm-poedit example

When the translation is finished, save it and close Poedit.

Closing the editor - Poedit or Geany- will open this message box:


Select 'OK' to continue.The window also shows the locations where the files will be saved.

mm-message box

Still selecting 'OK' activates the translation system.

All .mo files are located in: /usr/share/locale/es/LC_MESSAGES
es for Spanish, just an example)

If you decide not to save the translation, just click ‘Cancel’ in the yellow message box and you will get this:


In this case nothing will be changed.

If you want to eliminate the translation simply delete it from LC_MESSAGES.

Building the langpack

Sooner or later there comes a time there's nothing left to translate...or at least you feel enough has been translated to warrant creating a language pack.

The most glorious moment has arrived: letting MoManager create the language pack!

To do so, just click the green button in the bottom right corner mm-yes button

( or the PET button in older versions of MoManager   mm-pet button   )


MoManager...putting the fun back into translating :)


Simple Guide for Translators, version 0.2.1 (25-02-2015)

Concept: xanad

contributors: xanad, Bert

©Puppy Translators Team