[horde] Issue on fresh install with translation and carddav

Laurent MÄNNLEIN lmannlein at auditiongineys.fr
Wed Jul 29 15:14:59 UTC 2020


  Ralf Lang <lang at b1-systems.de> le mer. 29 juil. 2020 14:35:47  
CEST  a écrit :

> Am 29.07.20 um 11:55 schrieb Ralf Lang:
>> Hi Laurant,
>>
>> Am 28.07.2020 um 16:31 schrieb Laurent MÄNNLEIN:
>>> Laurent MÄNNLEIN <lmannlein at auditiongineys.fr> le mar. 28 juil. 2020
>>> 09:17:56 UTC  a écrit :
>>>
>>>> Hi All,
>>>>
>>>> I hope that somebody can help me trigger this issue with a brand new
>>>> server.
>>>>
>>>> I have installed a brand new Debian Buster server the same way I have
>>>> my old Debian Jessie server with Postfix/Dovecot/Apache2/MariaDB.
>>>> I would like to transfer all my email system from the old server to
>>>> the new one.
>>>> I have installed Horde using Pear repository on the new one like the
>>>> old one.
>>>>
>>>> When I get to the login page, the fields displayed are always
>>>> Username and Password and never get translated as on my old server.
>>>> Even after the login page all the translation process does not work.
>>>> I have worked with Michael Rubinski who helped me get some trace from
>>>> the Horde system and the translation seems to gets blocked with the
>>>> validation process.
>>>>
>>>> I have installed locally using 'dpkg-reconfigure locales' the en_US,
>>>> es_ES, es_CA languages all in UTF-8 and I never got the translation
>>>> for all of them, I still get an error with the validation of the
>>>> language which is throwing back to the system default language
>>>> 'fr_FR' but the strings displayed at the login page are still
>>>> 'Username' and 'Password' even if the 'Language' box displays
>>>> 'Français'. The same when the language box displays 'Català' or
>>>> 'Español' I get english titles.
>>>>
>>>> I have checked if it was a debian problem but when installing
>>>> Roundcube Webmail, all the translation is fine.
>>>> I also have another web site with Wordpress which is fine also for
>>>> translation.
>>>> So for me it is only one thing which is not working with Horde but I
>>>> can't figure out what. I have verified the debian packages and the
>>>> Horde requirements and compared them with the old server and all
>>>> seems to be equal.
>>>> On the Debian 9 I have PHP 7.4 (upgraded from 5.x to 7.1, 7.2 and
>>>> 7.3) and on the Debian 10 I have PHP 7.3.
>>>> The Horde server is 5.2.22 with all the latest updates got from Pear.
>>>>
>>>> I have also followed the
>>>> 'https://www.horde.org/apps/horde/docs/TRANSLATIONS' page and the
>>>> results where:
>>>>
>>>> 1.2.1:
>>>>
>>>>     locale -a
>>>>
>>>> C
>>>> C.UTF-8
>>>> fr_FR.utf8
>>>> POSIX
>>>>
>>>> 1.2.2: Yes, the files are stored correctly
>>>>
>>>> 1.2.3:
>>>>
>>>>     strings /bin/tar | grep memory
>>>>
>>>> _obstack_memory_used
>>>> memory exhausted
>>>>
>>>>     gettext tar "memory exhausted"
>>>>
>>>> mémoire épuisée
>>>>
>>>>     (LANG=fr_FR; LANGUAGE=fr_FR;  
>>>> LC_MESSAGES=fr_FR; gettext tar
>>>> "memory exhausted" )
>>>>
>>>> bash: warning etlocale : LC_MESSAGES : impossible to change lang
>>>> parameter (fr_FR) : no such file or directory
>>>>
>>>> memory exhausted
>>>>
>>>>     (LANG=fr_FR.utf8; LANGUAGE=fr_FR.utf8;  
>>>> LC_MESSAGES=fr_FR.utf8;
>>>> gettext tar "memory exhausted" )
>>>>
>>>> mémoire épuisée
>>>>
>>>> 1.2.4:
>>>>
>>>>     ( TEXTDOMAINDIR=/var/www/horde/locale LANG=fr_FR.utf8
>>>> LANGUAGE=fr_FR.utf8 LC_MESSAGES=fr_FR.utf8 gettext horde "Calendar" )
>>>>
>>>> Agenda
>>>>
>>>> I have created the /var/www/horde/langtest.php file as following :
>>>>
>>>> <?php
>>>>
>>>> setlocale(LC_MESSAGES, 'fr_FR.UTF-8');
>>>> putenv('LANG=fr_FR.UTF-8');
>>>> putenv('LANGUAGE=fr_FR.UTF-8');
>>>> // use the tar test.
>>>> echo dgettext('tar', 'memory exhausted');
>>>> echo '<br />';
>>>>
>>>> // Specify location of translation tables
>>>> bindtextdomain('horde', './locale');
>>>>
>>>> // Choose domain
>>>> textdomain('horde');
>>>>
>>>> // Print the already tested message
>>>> echo _("Calendar");
>>>> echo '<br />';
>>>>
>>>> // this should print the same.
>>>> echo dgettext('horde', 'Calendar');
>>>>
>>>> ?>
>>>>
>>>> And the result is:
>>>>
>>>> memory exhausted
>>>> Calendar
>>>> Calendar
>>>>
>>>> I have also found a new issue with the address book when I want to
>>>> get access to the Carddav URL which throws this issue:
>>>> Horde::Fatal Error
>>>> A fatal error has occurred
>>>> Class 'Sabre\DAVACL\PrincipalBackend\AbstractBackend' not found
>>>> Details have been logged for the administrator.
>>>>
>>>> I have browsed all the mailing list history and I could find a thread
>>>> about this but it was with a GIT installation process and without any
>>>> resolution.
>>>>
>>>> So, If somebody has a clue on any issues related here, you are REALLY
>>>> VERY welcome as this is one month or so that I cannot migrate users
>>>> to the new server due to the translation problem firstly, but also
>>>> regarding the second issue with the Carddav (just checked and same
>>>> issue with the Caldav).
>>>>
>>>> Thanks for any hint you can give me to fix these issues.
>>>>
>>>> Regards,
>>>> Laurent
>>>
>>> I have solved the CardDAV/CalDAV issue, a bad removal of the
>>> /usr/share/php/Sabre folder.
>>> I have re-created it with all inside and everything is fine for this
>>> part.
>>>
>>> So the only issue now that I am facing since more than one month and
>>> that I can't figure out is with the translation which keeps displaying
>>> english default titles instead of the translated ones.
>>>
>>> If somebody have a clue on this, you are VERY welcome!
>>>
>>> Thanks,
>>> Laurent
>>>  
>>
>> I have reproduced a similar problem with a horde installation from
>> master branch. It happens in a container environment based on openSUSE
>> but it does not happen in a VM environment with the same code. I am
>> trying to fix that. Maybe we get a solution for your other distribution
>> out of this.
>
> Laurent, can you please run this snippet in the horde admin php shell?
>
> http://localhost/horde/admin/phpshell.php
>
> print_r($registry->nlsconfig->languages);
>
> foreach (array_keys($registry->nlsconfig->languages) as $lang) {
>     print "$lang\n";
>     print $registry->nlsconfig->validLang($lang) ?  
> "OK\n" : "NOT OK\n";}

Hi Ralph,

Thank you so much for helping me on this issue.

For the CardDAV/CalDAV, I don't know if you have seen my other email  
but it was due to a mistake when I deleted the /usr/share/php/Sabre  
folder.
After re-creating it, all is fine now.

And for the language issue, here is the result of the PHP Shell instruction :
###########
Array
(
    [ar_OM] => ‭Arabic (Oman) ‮(عربية)
    [ar_SY] => ‭Arabic (Syria) ‮(عربية)
    [id_ID] => Bahasa Indonesia
    [bs_BA] => Bosanski
    [bg_BG] => ‭Bulgarian (Български)
    [ca_ES] => Català
    [cs_CZ] => Český
    [zh_CN] => ‭Chinese (Simplified) (简体中文)
    [zh_TW] => ‭Chinese (Traditional) (正體中文)
    [da_DK] => Dansk
    [de_DE] => Deutsch
    [en_US] => ‭English (American)
    [en_GB] => ‭English (British)
    [en_CA] => ‭English (Canadian)
    [es_ES] => Español
    [et_EE] => Eesti
    [eu_ES] => Euskara
    [fa_IR] => ‭Farsi (Persian) ‮(فارسی)
    [fr_FR] => Français
    [gl_ES] => Galego
    [el_GR] => ‭Greek (Ελληνικά)
    [he_IL] => ‭Hebrew ‮(עברית)
    [hr_HR] => Hrvatski
    [is_IS] => Íslenska
    [it_IT] => Italiano
    [ja_JP] => ‭Japanese (日本語)
    [km_KH] => ‭Khmer (ខមែរ)
    [ko_KR] => ‭Korean (한국어)
    [lv_LV] => Latviešu
    [lt_LT] => Lietuvių
    [mk_MK] => ‭Macedonian (Македонски)
    [hu_HU] => Magyar
    [nl_NL] => Nederlands
    [nb_NO] => ‭Norsk (bokmål)
    [nn_NO] => ‭Norsk (nynorsk)
    [pl_PL] => Polski
    [pt_PT] => Português
    [pt_BR] => Português do Brasil
    [ro_RO] => Română
    [ru_RU] => ‭Russian (Русский)
    [sk_SK] => Slovenský
    [sl_SI] => Slovensko
    [fi_FI] => Suomi
    [sv_SE] => Svenska
    [th_TH] => ‭Thai (ภาษาไทย)
    [uk_UA] => ‭Ukrainian (Українська)
    [tr_TR] => Türkçe
)
ar_OM
NOT OK
ar_SY
NOT OK
id_ID
NOT OK
bs_BA
NOT OK
bg_BG
NOT OK
ca_ES
NOT OK
cs_CZ
NOT OK
zh_CN
NOT OK
zh_TW
NOT OK
da_DK
NOT OK
de_DE
NOT OK
en_US
NOT OK
en_GB
NOT OK
en_CA
NOT OK
es_ES
NOT OK
et_EE
NOT OK
eu_ES
NOT OK
fa_IR
NOT OK
fr_FR
OK
gl_ES
NOT OK
el_GR
NOT OK
he_IL
NOT OK
hr_HR
NOT OK
is_IS
NOT OK
it_IT
NOT OK
ja_JP
NOT OK
km_KH
NOT OK
ko_KR
NOT OK
lv_LV
NOT OK
lt_LT
NOT OK
mk_MK
NOT OK
hu_HU
NOT OK
nl_NL
NOT OK
nb_NO
NOT OK
nn_NO
NOT OK
pl_PL
NOT OK
pt_PT
NOT OK
pt_BR
NOT OK
ro_RO
NOT OK
ru_RU
NOT OK
sk_SK
NOT OK
sl_SI
NOT OK
fi_FI
NOT OK
sv_SE
NOT OK
th_TH
NOT OK
uk_UA
NOT OK
tr_TR
NOT OK
###########

The fr_FR that I am trying to use is displayed as OK, but the login  
screen and all the web site after is still displaying default english  
strings.
I am not on openSUSE but on Debian Buster (v10) and it is very  
frustating as I can't see what can be the issue which is preventing  
the site to display correct translation, as I have installed other  
sites (Wordpress/Roundcube) which are working well with the  
translation system.

I hope this will give you more hints.

Let me know if you need more things to check on my server.

All the best,
Laurent



More information about the horde mailing list