On a fresh install, the setup process goes back to the step "1. Welcome!" just after step "5. Super User"
Just after submitting the form "5. Super User", we expect to go to the next step or an error.
Just after submitting the form "5. Super User", the process goes to the step "1. Welcome!" without showing any error.
I wrote the solution on this thread : https://forum.matomo.org/t/installer-starts-over-after-asking-super-user-details/39409
1 - Diagnostic
Just after SQL tables creation, I edited the file config/config.ini.php and added the following :
[log] log_writers = "file" log_level = "DEBUG"
Then, I follow the installation process until the input of super user logins/password form, and the error bringing us back to the initial step.
Then I've checked the logs :
ERROR Piwik\FrontController[2021-03-21 12:23:39 UTC]  Uncaught exception: Error: Call to undefined function Piwik\filter_var() in /usr/local/www/XXXXX/stats/core/Piwik.php:683
2 - Solution
Install missing package :
pkg install php80-filter service php-fpm restart
Everything ran as expected then.
The missing package should be mentionned at the step "2. System Check"
Running the installation process on a system with :
FreeBSD 11.4-RELEASE-p8 amd64
php80-8.0.3 PHP Scripting Language
php80-curl-8.0.3 The curl shared extension for php
php80-dom-8.0.3 The dom shared extension for php
php80-filter-8.0.3 The filter shared extension for php
php80-gd-8.0.3 The gd shared extension for php
php80-iconv-8.0.3 The iconv shared extension for php
php80-mbstring-8.0.3 The mbstring shared extension for php
php80-openssl-8.0.3 The openssl shared extension for php
php80-pdo-8.0.3 The pdo shared extension for php
php80-pdo_mysql-8.0.3 The pdo_mysql shared extension for php
php80-session-8.0.3 The session shared extension for php
php80-simplexml-8.0.3 The simplexml shared extension for php
php80-xml-8.0.3 The xml shared extension for php
php80-zlib-8.0.3 The zlib shared extension for php
Bug while running the installation process in a fresh system.
I think the reason, why noone ever noticed this issue before is that on most Linux distributions (I know at least of Debian) the "normal php package" (e.g.
php-cli) already includes the PHP filter module.
But it makes sense that the installer should check for the existence and complain if it is missing.