The way it works in open source projects is similar but with a twist. If there are enough people who want to have a certain application in their language they will have to get together and start working on the translation. The way this works for most applications is through using the gettext library to produce POT files. That is, all output strings are extracted into a file which the translator can then work on. This way, the translators don't have to interact with the source code.
To make things even better, tools that can manipulate those files have been developed, such as KBabel and gTranslator. Even Emacs has a PO mode.
An example of this is the Arabeyes Project, which is the official translation team for both Gnome and KDE interfaces.
"No, no, I don't mind being called the smartest man in the world. I just wish it wasn't this one." -- Adrian Veidt/Ozymandias, WATCHMEN