diff --git a/nixos/modules/services/web-apps/flarum.nix b/nixos/modules/services/web-apps/flarum.nix index a967c3b121bd..95ebcc23e7e8 100644 --- a/nixos/modules/services/web-apps/flarum.nix +++ b/nixos/modules/services/web-apps/flarum.nix @@ -106,8 +106,14 @@ in { createDatabaseLocally = mkOption { type = types.bool; - default = true; - description = "Create the database and database user locally, and run installation."; + default = false; + description = '' + Create the database and database user locally, and run installation. + + WARNING: Due to https://github.com/flarum/framework/issues/4018, this option is set + to false by default. The 'flarum install' command may delete existing database tables. + Only set this to true if you are certain you are working with a fresh, empty database. + ''; }; }; @@ -116,6 +122,7 @@ in { isSystemUser = true; home = cfg.stateDir; createHome = true; + homeMode = "755"; group = cfg.group; }; users.groups.${cfg.group} = {}; @@ -194,8 +201,6 @@ in { cp -f ${cfg.package}/share/php/flarum/{extend.php,site.php,flarum} . ln -sf ${cfg.package}/share/php/flarum/vendor . ln -sf ${cfg.package}/share/php/flarum/public/index.php public/ - chmod a+x . public - chmod +x site.php extend.php flarum '' + optionalString (cfg.createDatabaseLocally && cfg.database.driver == "mysql") '' if [ ! -f config.php ]; then php flarum install --file=${flarumInstallConfig}