diff options
| author | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-18 12:15:20 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-18 12:15:20 +0530 |
| commit | 4124a5ae231a585b945c9547a3ab0c37a4eba7e3 (patch) | |
| tree | b51774266eab457a13ee176bd6cd76b093b16d03 /modules/communication/neomutt/account | |
| parent | 302f83b23b364b08dc47725266db5e20437d71e4 (diff) | |
| download | home-manager-config-4124a5ae231a585b945c9547a3ab0c37a4eba7e3.tar.gz home-manager-config-4124a5ae231a585b945c9547a3ab0c37a4eba7e3.zip | |
refactor: replace zsh deps with runtimeShell, migrate scripts from symlinkJoin to runCommand, add missing assertions and deps
Scripts: Migrated from symlinkJoin to runCommand; replaced zsh
dependency with pkgs.runtimeShell across polybar, scripts, and
fzf-launcher
Assertions: Added gopass/gpg checks for neomutt, signing checks for git,
git dependency for lazygit, file-preview deps for lf, desktop/kitten
checks for scripts
Lazygit: Fixed mkIf placement, imported assertions
Neomutt: Removed verbose keybinding descriptions
Nixvim: Removed <c-c> notification-clear mapping
File preview: Replaced libreoffice document preview with pandoc/antiword
(terminal-based)
Fzf launcher: Fixed bash compatibility (setopt → shopt -s)
Deps: Added coreutils, fontconfig, antiword, pandoc, util-linux, bash,
findutils, grep, sed, gawk, ncurses to various scripts
Diffstat (limited to 'modules/communication/neomutt/account')
| -rw-r--r-- | modules/communication/neomutt/account/default.nix | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/modules/communication/neomutt/account/default.nix b/modules/communication/neomutt/account/default.nix index 0b75c9a..4d32ad7 100644 --- a/modules/communication/neomutt/account/default.nix +++ b/modules/communication/neomutt/account/default.nix @@ -20,7 +20,36 @@ in description = "Specification of email accounts."; }; - config = mkIf config.communication.neomutt.enable { + config = { + assertions = [ + { + assertion = + !config.communication.neomutt.enable + || !lib.any (account: account.enable && account.passwordGopassSecret != null) ( + lib.attrValues config.communication.neomutt.accounts + ) + || config.security.gopass.enable; + message = '' + An enabled communication.neomutt account uses passwordGopassSecret but security.gopass.enable is not set. + Enable security.gopass to provide the account password command. + ''; + } + { + assertion = + !config.communication.neomutt.enable + || !lib.any (account: account.enable && account.gpg.key != null) ( + lib.attrValues config.communication.neomutt.accounts + ) + || config.security.gpg.enable; + message = '' + An enabled communication.neomutt account specifies a GPG key but security.gpg.enable is not set. + Enable security.gpg to provide mail signing and encryption support. + ''; + } + ]; + + } + // mkIf config.communication.neomutt.enable { accounts.email.accounts = mapAttrs ( name: account: let |
