refactor(nixos): use new persistDirs option and remove environment.persistence where possible

This commit is contained in:
Mohammad Rafiq 2025-06-14 19:59:42 +08:00
parent 16b7f375bd
commit 77d8ed7a13
No known key found for this signature in database
9 changed files with 98 additions and 36 deletions

View file

@ -5,6 +5,7 @@
...
}:
let
inherit (lib) singleton;
cfg = config.server.databases;
in
{
@ -26,13 +27,11 @@ in
config = lib.mkMerge [
(lib.mkIf cfg.postgresql.enable {
networking.firewall.allowedTCPPorts = lib.singleton cfg.postgresql.port;
environment.persistence."/persist".directories = [
{
directory = builtins.toString config.services.postgresql.dataDir;
user = "postgres";
group = "postgres";
}
];
persistDirs = singleton {
directory = builtins.toString config.services.postgresql.dataDir;
user = "postgres";
group = "postgres";
};
services.postgresql = {
enable = true;
enableTCPIP = true;
@ -48,13 +47,11 @@ in
})
(lib.mkIf cfg.mongodb.enable {
networking.firewall.allowedTCPPorts = [ cfg.mongodb.port ];
environment.persistence."/persist".directories = [
{
directory = builtins.toString config.services.mongodb.dbpath;
user = "mongodb";
group = "mongodb";
}
];
persistDirs = singleton {
directory = builtins.toString config.services.mongodb.dbpath;
user = "mongodb";
group = "mongodb";
};
services.mongodb = {
enable = true;
bind_ip = "0.0.0.0";
@ -65,13 +62,11 @@ in
})
(lib.mkIf cfg.mysql.enable {
networking.firewall.allowedTCPPorts = [ cfg.mysql.port ];
environment.persistence."/persist".directories = [
{
directory = builtins.toString config.services.mysql.dataDir;
user = "mysql";
group = "mysql";
}
];
persistDirs = singleton {
directory = builtins.toString config.services.mysql.dataDir;
user = "mysql";
group = "mysql";
};
services.mysql = {
enable = true;
package = pkgs.mariadb;