From bec8f9184879180c4c1bf86d93dde97772fd4a16 Mon Sep 17 00:00:00 2001 From: kalipso Date: Mon, 20 Mar 2023 20:55:21 +0100 Subject: [PATCH] WIP setup db and webserver this is the first working version. system could be tested and worked. it maybe that database setup is still wrong and privileges of /var/ep3bs are not handled properly right now --- ep3-bs.nix | 33 ++++++++++++++++++--------------- flake.nix | 1 + 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/ep3-bs.nix b/ep3-bs.nix index 209e22a..71c72a3 100644 --- a/ep3-bs.nix +++ b/ep3-bs.nix @@ -167,7 +167,7 @@ in name = mkOption { type = types.str; - default = "ep3bs"; + default = "ep3bsdb"; description = lib.mdDoc "Database name."; }; @@ -229,7 +229,6 @@ in "d '${cfg.stateDir}/config/autoload' 777 ${cfg.user} ep3-bs - -" "d '${cfg.stateDir}/vendor' 777 ${cfg.user} ep3-bs - -" "d '${cfg.stateDir}/vendor/symfony' 777 ${cfg.user} ep3-bs - -" - #"z '${cfg.stateDir}' 777 ${cfg.user} ep3-bs - -" "Z '${cfg.stateDir}' 777 ${cfg.user} ep3-bs - -" ]; @@ -243,14 +242,16 @@ in "rewrite" ]; virtualHosts.localhost = { - documentRoot = mkDefault "${cfg.stateDir}"; + documentRoot = mkDefault "${cfg.stateDir}/public/"; extraConfig = '' - + DirectoryIndex index.php index.htm index.html Allow from * Options +FollowSymlinks AllowOverride All Require all granted + php_admin_flag display_errors on + php_admin_value error_reporting 22517 ''; }; @@ -260,18 +261,20 @@ in enable = mkDefault true; package = mkDefault pkgs.mariadb; - initialScript = let - mysqlInitScript = pkgs.writeText "mysqlInitScript" '' - CREATE USER '${cfg.database.user}'@'localhost' IDENTIFIED BY '${cfg.database.password}'; - ''; - in "${mysqlInitScript}"; + #GRANT ALL PRIVILEGES ON DATABASE ${cfg.database.name} TO '${cfg.database.user}'@'localhost'; + initialScript = pkgs.writeText "mysqlInitScript" '' + CREATE USER '${cfg.database.user}'@localhost IDENTIFIED BY '${cfg.database.password}'; + CREATE DATABASE ${cfg.database.name}; + GRANT ALL PRIVILEGES ON *.* TO '${cfg.database.user}'@localhost IDENTIFIED BY '${cfg.database.password}'; + FLUSH PRIVILEGES; + ''; - ensureDatabases = [ cfg.database.name ]; - ensureUsers = [ - { name = cfg.database.user; - ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; }; - } - ]; + #ensureDatabases = [ cfg.database.name ]; + #ensureUsers = [ + # { name = cfg.database.user; + # ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; }; + # } + #]; }; systemd.services.ep3-bs = { diff --git a/flake.nix b/flake.nix index 3b5f237..87b2a74 100644 --- a/flake.nix +++ b/flake.nix @@ -34,6 +34,7 @@ ./ep3-bs.nix { services.ep3-bs.enable = true; + services.ep3-bs.database.user = "testuser3"; services.ep3-bs.database.password = "testPassword1234"; users.users.test = { isNormalUser = true;