Trying to install nextcloud as per the documentation (https://www.turris.cz/doc/en/howto/nextcloud) is not going to work:
Issues:
- lighttpd-mod-access has an invalid post-instg-pkg script so installation doesn’t finish properly when opkg tries to execute it (it probably shouldn’t have a
*.postinst-pkg
at all, judging by its generic*.postinst
) script. - php7-fpm doesn’t remove cleanly, because of an opkg warning about some invalid temporary unpack directory
- nextcloud doesn’t appear to install libmysqlclient which is necessary for the MySQL PDO driver to work, which Nextcloud relies on (so the nextcloud_install script fails with an ugly stack trace)
- Manually installing libmysqlclient fixed that one, but then it turns out the default charset of
utf8mb4
which nextcloud uses is not supported. - libmysqlclient does not appear to ship a /usr/share/mysql/charsets/Index.xml file or indeed any charset definitions. Not great.
- taking a look at the MariaDB client instead: its /usr/share/mariadb/charsets/Index.xml file contains no utf8mb4 entry either. This means that by default Nextcloud cannot work with the MariaDB packages from the Turris repos.
- fixing that could be done by editing the /srv/www/nextcloud/config/config.php file but the point of the
utf8mb4
is support for emoji and suchlike. So it implies a regression in features/functionality. - It would therefore be better to enable support for the
utf8mb4
charset/collation in MariaDB itself. - Beyond that, the
nextcloud_install
script does not make it clear what the ‘admin’ login refers to. Turns out it is not the root user of the mysql/mariadb database. - It also does not suppress echoing of the password for the admin user.