From 5b480bd0d654a120a49a99251904bfacfe9fd0db Mon Sep 17 00:00:00 2001 From: hektor Date: Fri, 11 Sep 2026 18:45:22 +0200 Subject: [PATCH] refactor(database): modularize --- home/modules/database/default.nix | 33 ++++++++++++---------------- home/modules/database/mssql.nix | 12 ++++++++++ home/modules/database/postgresql.nix | 12 ++++++++++ home/modules/database/redis.nix | 12 ++++++++++ 4 files changed, 50 insertions(+), 19 deletions(-) create mode 100644 home/modules/database/mssql.nix create mode 100644 home/modules/database/postgresql.nix create mode 100644 home/modules/database/redis.nix diff --git a/home/modules/database/default.nix b/home/modules/database/default.nix index 32d0f22..219f32e 100644 --- a/home/modules/database/default.nix +++ b/home/modules/database/default.nix @@ -1,26 +1,21 @@ -{ - config, - lib, - pkgs, - ... -}: +{ lib, ... }: { options.database = { - mssql.enable = lib.mkEnableOption "MSSQL"; - postgresql.enable = lib.mkEnableOption "PostgreSQL"; - redis.enable = lib.mkEnableOption "Redis"; + mssql = { + enable = lib.mkEnableOption "MSSQL"; + }; + postgresql = { + enable = lib.mkEnableOption "PostgreSQL"; + }; + redis = { + enable = lib.mkEnableOption "Redis"; + }; }; - config = lib.mkMerge [ - (lib.mkIf config.database.mssql.enable { - home.packages = with pkgs; [ (config.nixgl.wrap dbeaver-bin) ]; - }) - (lib.mkIf config.database.postgresql.enable { - home.packages = with pkgs; [ (config.nixgl.wrap pgadmin4-desktopmode) ]; - }) - (lib.mkIf config.database.redis.enable { - home.packages = with pkgs; [ redis ]; - }) + imports = [ + ./mssql.nix + ./postgresql.nix + ./redis.nix ]; } diff --git a/home/modules/database/mssql.nix b/home/modules/database/mssql.nix new file mode 100644 index 0000000..bad3cd6 --- /dev/null +++ b/home/modules/database/mssql.nix @@ -0,0 +1,12 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + config = lib.mkIf config.database.mssql.enable { + home.packages = with pkgs; [ (config.nixgl.wrap dbeaver-bin) ]; + }; +} diff --git a/home/modules/database/postgresql.nix b/home/modules/database/postgresql.nix new file mode 100644 index 0000000..3908a62 --- /dev/null +++ b/home/modules/database/postgresql.nix @@ -0,0 +1,12 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + config = lib.mkIf config.database.postgresql.enable { + home.packages = with pkgs; [ (config.nixgl.wrap pgadmin4-desktopmode) ]; + }; +} diff --git a/home/modules/database/redis.nix b/home/modules/database/redis.nix new file mode 100644 index 0000000..bf0cddb --- /dev/null +++ b/home/modules/database/redis.nix @@ -0,0 +1,12 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + config = lib.mkIf config.database.redis.enable { + home.packages = with pkgs; [ redis ]; + }; +}