From 30f8fea050f3242f0e6a2072779e706b5c8ceaf1 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Thu, 24 Sep 2026 03:42:25 +0530 Subject: refactor(modules): introduce cfg local bindings and submodule option types --- modules/security/gpg/default.nix | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) (limited to 'modules/security/gpg') diff --git a/modules/security/gpg/default.nix b/modules/security/gpg/default.nix index 3047f59..8fa7348 100644 --- a/modules/security/gpg/default.nix +++ b/modules/security/gpg/default.nix @@ -6,6 +6,8 @@ ... }: let + cfg = config.security.gpg; + gpgBackupScript = pkgs.writeShellApplication { name = "gpg-backup"; runtimeInputs = [ @@ -51,19 +53,25 @@ in description = "The gpg package to use."; }; - backup = { - enable = lib.mkEnableOption "Enable the gpg-backup script"; - package = lib.mkOption { - type = lib.types.package; - readOnly = true; - default = gpgBackupScriptPkg; - description = "The package for the gpg-backup script"; + backup = lib.mkOption { + type = lib.types.submodule { + options = { + enable = lib.mkEnableOption "Enable the gpg-backup script"; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = gpgBackupScriptPkg; + description = "The package for the gpg-backup script"; + }; + }; }; + default = { }; + description = "GPG backup script configuration."; }; }; config = lib.mkMerge [ - (lib.mkIf config.security.gpg.enable { + (lib.mkIf cfg.enable { programs.gpg = { enable = true; homedir = "${config.xdg.dataHome}/gnupg"; @@ -82,8 +90,8 @@ in pinentry.package = pkgs.pinentry-rofi; }; }) - (lib.mkIf config.security.gpg.backup.enable { - home.packages = [ config.security.gpg.backup.package ]; + (lib.mkIf cfg.backup.enable { + home.packages = [ cfg.backup.package ]; }) ]; } -- cgit v1.2.3