aboutsummaryrefslogtreecommitdiffstats
path: root/modules/programs
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar+git@gmail.com>2026-07-10 02:05:18 +0530
committerArpit Chakladar <arpitchakladar+git@gmail.com>2026-07-10 02:05:18 +0530
commitbf7a0f704a7ffc64d77f53d940f49f0bd9d4d35e (patch)
tree596912421d29f6e58a9a45108df52cb4e1e68876 /modules/programs
parentee32d0d0813f9870d89fb7d821633fd8b4a9987a (diff)
downloadhome-manager-config-bf7a0f704a7ffc64d77f53d940f49f0bd9d4d35e.tar.gz
home-manager-config-bf7a0f704a7ffc64d77f53d940f49f0bd9d4d35e.zip
feat: using neomutt instead of meli for the tui email client
using a private module that stores the private config options for the user which are not to be pushed to the public repo
Diffstat (limited to 'modules/programs')
-rw-r--r--modules/programs/default.nix2
-rw-r--r--modules/programs/email/default.nix39
-rw-r--r--modules/programs/git/default.nix27
-rw-r--r--modules/programs/meli/default.nix46
-rw-r--r--modules/programs/neomutt/assertions.nix (renamed from modules/programs/meli/assertions.nix)0
-rw-r--r--modules/programs/neomutt/default.nix17
6 files changed, 27 insertions, 104 deletions
diff --git a/modules/programs/default.nix b/modules/programs/default.nix
index 1527087..cba7617 100644
--- a/modules/programs/default.nix
+++ b/modules/programs/default.nix
@@ -24,7 +24,7 @@
./lf
./lsd
./maim
- ./meli
+ ./neomutt
./nixvim
./nvtop
./opencode
diff --git a/modules/programs/email/default.nix b/modules/programs/email/default.nix
index 36dfc95..3a57cf0 100644
--- a/modules/programs/email/default.nix
+++ b/modules/programs/email/default.nix
@@ -2,12 +2,11 @@
{
config,
lib,
- pkgs,
...
}:
let
- mailDir = "${config.home.homeDirectory}/.local/mail";
+ mailDir = "${config.home.homeDirectory}/.local/share/mail";
in
{
options.programs.email = {
@@ -15,39 +14,11 @@ in
};
config = lib.mkIf config.programs.email.enable {
- home.packages = [
- pkgs.mbsync
- pkgs.notmuch
- ];
+ programs.mbsync.enable = true;
+ programs.notmuch.enable = true;
- home.sessionVariables = {
- MAILDIR = mailDir;
- NOTMUCH_CONFIG = "${config.xdg.configHome}/notmuch/notmuchrc";
- };
+ accounts.email.maildirBasePath = mailDir;
- xdg.configFile."notmuch/notmuch.config" = {
- text = ''
- [database]
- path=${mailDir}/.notmuch
-
- [user]
- name=
- address=
- primary_key=
-
- [new]
- tags=unclassified;new;
- ignore=
-
- [search]
- exclude_tags=deleted;spam;
-
- [maildir]
- synchronize_flags=true
-
- [crypto]
- gpg_path=${pkgs.gnupg}/bin/gpg
- '';
- };
+ home.sessionVariables.MAILDIR = mailDir;
};
}
diff --git a/modules/programs/git/default.nix b/modules/programs/git/default.nix
index 91498b0..cb4519d 100644
--- a/modules/programs/git/default.nix
+++ b/modules/programs/git/default.nix
@@ -6,7 +6,10 @@
# Git - Distributed version control system
{
- imports = [ ./assertions.nix ];
+ imports = [
+ ./assertions.nix
+ ]
+ ++ lib.optional (builtins.pathExists ../../private/git.nix) ../../private/git.nix;
options.programs.git = {
username = lib.mkOption {
@@ -20,25 +23,10 @@
};
useSSH = lib.mkEnableOption "Use SSH instead of HTTPS for common git platforms.";
-
- signing = {
- key = lib.mkOption {
- type = lib.types.nullOr lib.types.str;
- default = null;
- description = "GPG signing key ID.";
- };
- signByDefault = lib.mkEnableOption "Sign commits by default";
- };
};
config = lib.mkIf config.programs.git.enable {
programs.git = {
- includes = [
- {
- path = "${config.xdg.configHome}/git/personal";
- condition = "hasconfig:remote.*.url:git@*";
- }
- ];
settings =
lib.recursiveUpdate
{
@@ -57,13 +45,6 @@
url."git@git.sr.ht:".insteadOf = "https://git.sr.ht/";
}
);
- extraConfig = {
- user.signingKey = lib.mkIf (
- config.programs.git.signing.key != null
- ) config.programs.git.signing.key;
- commit.gpgSign = config.programs.git.signing.signByDefault;
- tag.forceSignAnnotated = config.programs.git.signing.signByDefault;
- };
};
};
}
diff --git a/modules/programs/meli/default.nix b/modules/programs/meli/default.nix
deleted file mode 100644
index d17a3db..0000000
--- a/modules/programs/meli/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-# meli - Terminal email client
-{
- config,
- lib,
- pkgs,
- ...
-}:
-
-let
- mailDir = "${config.home.homeDirectory}/.local/mail";
-in
-{
- imports = [ ./assertions.nix ];
-
- config = lib.mkIf config.programs.meli.enable {
- home.packages = [ pkgs.meli ];
-
- xdg.configFile."meli/config.toml" = {
- text = ''
- [terminal]
- themes = "dark"
-
- [notifications]
- enable = false
-
- [pager]
- html_filter = "${pkgs.bat}/bin/bat --language=html"
-
- [composing]
- editor_command = "${pkgs.neovim}/bin/nvim"
-
- [pgp]
- auto_verify_signatures = true
- gpg_binary = "${pkgs.gnupg}/bin/gpg"
-
- [search]
- backend = "notmuch"
- database_path = "${mailDir}/.notmuch"
- '';
- };
-
- programs.zsh.initExtra = lib.mkAfter ''
- alias meli='meli-sync && meli'
- '';
- };
-}
diff --git a/modules/programs/meli/assertions.nix b/modules/programs/neomutt/assertions.nix
index d651047..d651047 100644
--- a/modules/programs/meli/assertions.nix
+++ b/modules/programs/neomutt/assertions.nix
diff --git a/modules/programs/neomutt/default.nix b/modules/programs/neomutt/default.nix
new file mode 100644
index 0000000..c0e16d4
--- /dev/null
+++ b/modules/programs/neomutt/default.nix
@@ -0,0 +1,17 @@
+# neomutt - Terminal email client
+{
+ config,
+ lib,
+ ...
+}:
+
+{
+ imports = [ ./assertions.nix ];
+
+ config = lib.mkIf config.programs.neomutt.enable {
+ programs.neomutt = {
+ sidebar.enable = true;
+ sort = "reverse-threads";
+ };
+ };
+}