Archive for May 1st, 2010

Adding Multiple Language support and Fixing issues with slovenian symbols on Squirrelmail Web Mail on Linux

Saturday, May 1st, 2010

No doubt Squirrelmail Web Mail is one excellent piece of software you can useon top of Qmail mail server.
However as with every piece of software you face issues every now and then.
The issue that a colleague of mine has encountered at the Company where are work is was caused by a broken character encodingof some of the slovenian letters like the Slovenian “c” and Slovenian “s”.
Besides that I’ve noted that the basic Squirrelmail installation I have previously done, some time ago wasmissing the all languages squirrelmail internationalization pack.

I revealed the missing Squirrelmail internationalzation by going to Squirrel Web mail’s installation directory /var/www/squirrelmail/locales/ and listing the content of the directory.:
The locales directory listing displayed only 4 files README.locales, index.php and timezones.cfg as well as a directory containing the default encoding configured to squirrelmail

The file README.locales explains thoroughly how to install all of the available translation languages to squirrelmail.
If you feel uncertain / informed on what you do I suggest you read The documentation available on Internationalization on Squirrelmail’s website
Anyways here is how for the lazy ones step by step walk through:

debian-server:~# mkdir /root/locales/;
debian-server:~# cd /root/locales/
debian-server:/root/locales# wget http://bit.ly/bKbrid"
debian-server:/root/locales# tar -zxvvf all_locales-1.4.18-20090526.tar.gz

The above commands will download all locales for the 1.4 generation stable release of Squirrelmail.

Note that it’s would be a good idea to download the latest all_locales on squirrelmail’s download webpage .

Now you will have in your /root/locales/ the following directory structure.

all_locales-1.4.18-20090526.tar.gz COPYING.locales images/ locale/ TRANSLATORS
ChangeLog.locales help/ install* ReleaseNotes.locales version

To install all the locales addons to squirrelmail to achieve internationalization of your Web mail you’ll have to invoke the install script which can be seen from the above file list.

debian-server:/root/locales# ./install
Please enter path to your squirrelmail installation: /var/www/squirrelmail/

Above in the prompt urging you to enter a directory enter the location to your squirrelmail installation in my case as shown above it’s /var/www/squirrelmail

That’s all now all necessery files will be merged with your squirrelmail installation directory.

Now you can safely remove the /root/locales squirrelmail internationalization installer files
debian-server:~# rm -rf /root/locales

However there is one more vital step to partake to assure Slovenian Symbols as well as other character encoding written in the UTF-8 standard will appear in your email communcation in squirrel web mail.
You’ll be required to change Squirrelmail’s Default Language
debian-server:/var/www/squirrelmail# ./configure

SquirrelMail Configuration : Read: config.php (1.4.0)
———————————————————
Main Menu —
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages

D. Set pre-defined settings for specific IMAP servers

C Turn color on
S Save data
Q Quit

In the above screen Choose: 10. Languages The following screen will Appear.

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Language preferences
1. Default Language : en_US
2. Default Charset : iso-8859-2
3. Enable lossy encoding : false

R Return to Main Menu
C Turn color on
S Save data
Q Quit

Here you’ll need to change the variables: 2. and 3..
There Default Charset variable should be changed to utf-8 as well as the Enable lossy encoding variable should be switched to true.

If you wonder what Enable lossy encoding does please read the Supported Charsets documentation section on Squirrelmail’s website
The description for Lossy Encoding on the above link is:
Lossy Encoding – allows charset conversions when the output charset does not support all symbols used in the original email charset.

Hopefully this will solve your issues with broken Slovenian encoding in Squirrelmail and will add internationalization support in your Squirrel Web Mail.
If use the commend form and inform me about the issues you encounter and I’ll try to help!