diff --git a/modules/services/databases/postgresql.nix b/modules/services/databases/postgresql.nix index 139a716ae75..69051c29521 100644 --- a/modules/services/databases/postgresql.nix +++ b/modules/services/databases/postgresql.nix @@ -153,7 +153,8 @@ in jobs.postgresql = { description = "PostgreSQL server"; - startOn = "started network-interfaces and filesystem"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" "fs.target" ]; environment = { TZ = config.time.timeZone; diff --git a/modules/services/web-servers/apache-httpd/default.nix b/modules/services/web-servers/apache-httpd/default.nix index 2f90c515643..7c13fd32752 100644 --- a/modules/services/web-servers/apache-httpd/default.nix +++ b/modules/services/web-servers/apache-httpd/default.nix @@ -581,12 +581,8 @@ in jobs.httpd = { description = "Apache HTTPD"; - startOn = "started networking and filesystem" - # Hacky. Some subservices depend on Postgres - # (e.g. Mediawiki), but they don't have a way to declare - # that dependency. So just start httpd after postgresql if - # the latter is enabled. - + optionalString config.services.postgresql.enable " and started postgresql"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" "fs.target" "postgresql.service" ]; path = [ httpd pkgs.coreutils pkgs.gnugrep ]