Un requisito relativamente fácil como puede ser agregar un idioma a Horde ( gestor de mail vía web y software libre ) puede complicarse al tener que realizarlo en un entorno paquetizado y cerrdado como es Plesk. El problema de modificar este componente ( u otros de Plesk ) es que futuras versiones o parches de Plesk puedes modificar o machacar nuestros cambios. Además de no conocer el impacto real de nuestras modificaciones.
Desde el soporte de Parallels nos han indicado que no existe problema en agregar un nuevo lenguaje a Plesk y nos indican la guia de instalacion de idiomas en Horde http://www.horde.org/horde/docs/?f=po_README.html
Primero verificamos que version tenemos de Horde instalada. Vamos a intentar siempre usar las mismas versiones para quitarnos de problemas
# rpm -qa | grep horde psa-horde-3.1.7-cos5.build92090714.19
Creamos el directorio para preparar la compilacion de los idiomas ( hay que generar los .mo a partir de ficheros .po )
mkdir -p /usr/src/horde cd /usr/src/horde
Nos bajamos nuestra versión de horde:
wget http://ftp.horde.org/pub/horde/horde-3.1.7.tar.gz tar zxvf horde-3.1.7.tar.gz
Ahora nos bajamos por separado los ficheros .po del cvs y que no están en la distribucion 3.1.7.
Es muy importante no mezclar ficheros de distribuciones para evitar problemas. La estructura de directorios se almacenará en el directorio ‘horde’
export CVSROOT=:pserver:cvsread@anoncvs.horde.org:/repository cvs login # password: horde # cvs co horde/po/ horde/locale horde/lib/core.php cvs co horde/po/ horde/locale
Como solo queremos los ficheros de cadenas, mezclar phps de distinas versiones nos dará errores de clases no encontradas
cp -r horde/po/*_* horde-3.1.7/po/ cp -r horde/locale/*_* horde-3.1.7/locale/
Tenemos algunos requistios que se pueden leer en el fichero REAME.
cd /usr/src/horde-po wget http://download.pear.php.net/package/File_Find-1.3.0.tgz wget http://download.pear.php.net/package/Console_Table-1.1.3.tgz mkdir -p pear/Console mkdir -p pear/File tar zxvf File_Find-1.3.0.tgz -C pear/File/ *Find.php mv pear/File/File_Find-1.3.0/Find.php pear/File/ tar zxvf Console_Table-1.1.3.tgz -C pear/Console/ *Table.php mv pear/Console/Console_Table-1.1.3/* pear/Console/
También necesitamos la herramienta gettext al menos la version 0.12
yum install gettext
Dado que ejecutamos php con la configuracion de Plesk estamos limitados a la ejecución de comandos bajo safe_mode. En la cabecera de translator.php, agregamos las rutas necesarias ( include_path ) y con php -n hacemos que no cargue el /etc/php.ini para saltarnos el safe_mode
#!/usr/bin/php -qn <?php ini_set ("include_path", "/usr/src/horde/horde-3.1.7/lib:/usr/share/psa-pear/:/usr/src/horde/pear/:." );
Ahora generamos los ficheros:
./translator.php make
Copiamos los ficheros de cadenas a nuestra ubicación de la instalación de Plesk. Cuidado, no copiar ningún php de la rama del cvs a nuestra rama estable.
cp /usr/src/horde/horde-3.1.7/locale/* /usr/share/psa-horde/locale/
Por último editar la configuracón de horde de plesk para que aparezca el nuevo idioma disponible:
/etc/psa/webmail/horde/horde/nls.php $nls['languages']['eu_ES'] = 'Euskera';
Aún no he tenido la oportunidad de problarlo pero casi seguro que con alguna alguna actualización, machaca este fichero y hay que volver a editarlo para agregar el idioma.
Deja una respuesta