Nextcloud + Turris 1.1 - chybí jazyková podpora / no locale support - pokračování

Po (resp. při) instalaci Nextcloud na Turris 1.1 byla v logu a následně je na úvodní stránce Nextcloudu hláška a nelze se dostat dále:
Nastavení jazyka na en_US.UTF-8/fr_FR.UTF-8/es_ES.UTF-8/de_DE.UTF-8/ru_RU.UTF-8/pt_BR.UTF-8/it_IT.UTF-8/ja_JP.UTF-8/zh_CN.UTF-8 selhalo

Prosím nainstalujte alespoň jeden z těchto jazyků do svého systému a restartujte webový server.

Zkoušel jsem hledat, ale nic jsem nenašel. Poradíte někdo.

Mám přesně tu samou hlášku … už jste si s tím nějak poradil, jak se jí zbavit?

Hledal jsem nějakou zmínku přímo v souvislosti s OpenWrt, nic konkrétního jsem nenašel. Ale dnes jsem narazil na odkaz https://github.com/owncloud/core/issues/8437 a v něm http://tech-blog.clericare.com/2013/08/how-to-deploy-owncloud-with-postgresql.html , je tam něco o nastavení PHP, které chci vyzkoušet, ale dřív než zítra večer se k tomu nedostanu.

OK … kdyžtak sem pak dejte vědět, zda-li jste došel k nějakému řešení. Díky :slight_smile:

Mě nedoběhne instalace, vypadá to ale na problém na straně updateru,
po hlášce “press return to continue, …” je asi zacyklený, nechce pokračovat ani nejde ukončit, v logu hláška:



2017-09-19T08:52:32+02:00 info updater[11390]: updater.lua:101 (Globals): Queue install of php7-cgi/turris/7.1.8-1
2017-09-19T08:52:32+02:00 info updater[11390]: updater.lua:101 (Globals): Queue install of php7-fpm/turris/7.1.8-1
2017-09-19T08:52:37+02:00 info updater[11390]: updater.lua:101 (Globals): Queue install of nextcloud/turris/12.0.2-1
2017-09-19T08:52:38+02:00 info updater[11390]: updater.lua:101 (Globals): Queue install of nextcloud-install/turris/12.0.2-1
2017-09-19T08:52:51+02:00 err kernel: [ 148.990996] NFSD: Unable to end grace period: -110

opětné spuštění updateru nejde, hlásí že už běží

root@turris:~# updater.sh
mkdir: can’t create directory ‘/tmp/update-state/lock’: File exists
Already running

musím restartovat…

Nakonec se mi podařilo instalaci dokončit, ale jen přes LuCI, přes terminál to pořád končilo chybou.

Bohužel mi to neběží stejně jako vám, modrá obrazovka s chybou jazyků…

Hlásil to někdo na team?

Já ne … v popisu verze je, že je to experimentální funkce a já (vzhledem k tomu, že po update na TurrisOS 3.8 mám router už tak v dost nestabilním stavu) nemám vůbec chuť s ničím na Turrisu experimentovat.
Držím ho při životě jen tak tak, jen se modlím, aby už vyšla opravná verze 3.8.1 naostro.
Dnes přes noc mně opět vyhnila síťová komunikace včetně WiFi.

To jsem zkoušel, je v /etc/php.ini, přidal jsem tento řádek, restartoval raději celý router a nic.
teď jsem udělal rollback na včerejšek a pro změnu mi neběží VPNka…

Mno, tak tohle jsem chtěl večer vyzkoušet já (php.ini), takže to asi nemá smysl. Celé jádro pudla bude asi v tom, že modrý Turris nemá (aspoň jsem nenašel) “locales”. V diskuzích o Nextcloudu píšou, že to není problém NC, ale hostujícího operačního systému.

Teď jsem udělal celou instalaci znovu, přes už rozchozenou VPNku, tohle je hláška z konce instalace:

omlouvám se za délku:

Nextcloud is not installed - only a limited number of commands are available
Setting locale to en_US.UTF-8/fr_FR.UTF-8/es_ES.UTF-8/de_DE.UTF-8/ru_RU.UTF-8/pt _BR.UTF-8/it_IT.UTF-8/ja_JP.UTF-8/zh_CN.UTF-8 failed
Please install one of these locales on your system and restart your webserver.

An unhandled exception has been thrown:
Exception: Environment not properly prepared. in /srv/www/nextcloud/lib/private/ Console/Application.php:145
Stack trace:
#0 /srv/www/nextcloud/console.php(99): OC\Console\Application->loadCommands(Obje ct(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\ Output\ConsoleOutput))
#1 /srv/www/nextcloud/occ(11): require_once(’/srv/www/nextcl…’)
#2 {main}Nextcloud is not installed - only a limited number of commands are avai lable
Setting locale to en_US.UTF-8/fr_FR.UTF-8/es_ES.UTF-8/de_DE.UTF-8/ru_RU.UTF-8/pt _BR.UTF-8/it_IT.UTF-8/ja_JP.UTF-8/zh_CN.UTF-8 failed
Please install one of these locales on your system and restart your webserver.

An unhandled exception has been thrown:
Exception: Environment not properly prepared. in /srv/www/nextcloud/lib/private/ Console/Application.php:145
Stack trace:
#0 /srv/www/nextcloud/console.php(99): OC\Console\Application->loadCommands(Obje ct(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\ Output\ConsoleOutput))
#1 /srv/www/nextcloud/occ(11): require_once(’/srv/www/nextcl…’)
#2 {main}Nextcloud is not installed - only a limited number of commands are avai lable
Setting locale to en_US.UTF-8/fr_FR.UTF-8/es_ES.UTF-8/de_DE.UTF-8/ru_RU.UTF-8/pt _BR.UTF-8/it_IT.UTF-8/ja_JP.UTF-8/zh_CN.UTF-8 failed
Please install one of these locales on your system and restart your webserver.

An unhandled exception has been thrown:
Exception: Environment not properly prepared. in /srv/www/nextcloud/lib/private/ Console/Application.php:145
Stack trace:
#0 /srv/www/nextcloud/console.php(99): OC\Console\Application->loadCommands(Obje ct(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\ Output\ConsoleOutput))
#1 /srv/www/nextcloud/occ(11): require_once(’/srv/www/nextcl…’)
#2 {main}Your Nextcloud installation should be available at http://10.0.0.1/next cloud
Your username is

Ano, přesně to samé mám po instalaci nextcloudu v logu také.
Takže náš dotaz zní: je NextCloud podporován na modrých Turris 1.x routerech, nebo ne a funguje jen na Omnii.
Dotaz pro někoho z týmu (@Tangero, @miska, @cynerd)

Díky

A pokud má fungovat na modrých, jak upravit LOCALES aby to běželo?

Díky, @Tangero, @miska, @cynerd

Našel jsem toto:

OpenWrt is not built with locale support by default, which is needed for ownCloud. Therefore this HOWTO only works if you compile your own OpenWRT firmware image and include full language support in the kernel. For more information see https://forum.openwrt.org/viewtopic.php?id=45251.

Zdroj: https://wiki.openwrt.org/doc/howto/owncloud

Experimentalni sme to oznacili, protoze to zaclo fungovat teprv nedavno a sami vime, ze to zatim neni uplne vyladeny. Koukneme na to, je mozny ze to je na starym Turrisu aktualne rozbity, ze tam je nejaka drobna odlisnost oproti Omniim na kterych se to ladilo primarne, ale urcite chceme Nextcloud podporovat i na starym Turrisu. Jen vam ted nedovedu slibit, kdy se k tomu dostanem.

Asi jsem to našel…

Otevřete si /srv/www/nextcloud/lib/private/legacy/util.php

a na řádku 1244 přepište false na true…
viz: OpenWrt Forum Archive
Asi to ale jen vypne kontrolu…

EDIT: nemůžu se ale dostat dál přes nastavení…
EDIT2: na dotaz mysql -u root -p a po zadání hesla, odpoví
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
asi mám někde chybu…
EDIT3: Ha, databáze pod root je bez hesla… stačí odentrovat…
EDIT4: Tak já končím, do db se dostanu ale dál už moje znalosti asi nestačí…
prohlížel jsem i /etc/my.cnf ale nepomohlo mi to…

Ujistete se, ze mate nainstalovano libmariadbclient a ne libmysqlclient

Mám, do mailu přišla hláška

Oznámení o aktualizacích

• Odstraněn balík libmysqlclient

dále

root@turris:~# opkg info libmariadbclient
Package: libmariadbclient
Version: 10.2.8-1
Depends: libc, uclibcxx, zlib, libpthread, libopenssl, libiconv, libatomic
Status: install ok installed
Architecture: mpc85xx
Installed-Time: 1505821130

S tím odstraněním kontroly v util.php to není dobrý nápad, na fóru Nextcloudu psali něco v tom smyslu, že pokud to tam je, tak to asi má význam (mj. by do budoucna byl velký problém s jakoukoliv diakritikou, např. v názvech ukládaných souborů apod., si myslím) …

Koukám na tu hlášku na přihlašovací obrazovce, referencuje cestu /usr/share/mysql/charsets, ale na Turrisu je cesta /usr/share/mariadb/charsets/ a navíc tam chybí soubor utf8mb4 . Tohle by snad šlo řešit symlinkem … a výběrem jiného kódování?

Zkuste projistotu opkg install --force-reinstall libmariadbclient