update: email and notmuch

This commit is contained in:
2025-10-23 14:06:36 -04:00
parent b2b5943fe6
commit 7dfdf9defd
3 changed files with 35 additions and 161 deletions

View File

@@ -10,7 +10,7 @@
../../modules/home-manager/kitty.nix ../../modules/home-manager/kitty.nix
../../modules/home-manager/zsh.nix ../../modules/home-manager/zsh.nix
../../modules/home-manager/tmux.nix ../../modules/home-manager/tmux.nix
../../modules/home-manager/email-work.nix ../../modules/home-manager/email-personal.nix
../../modules/home-manager/password-store ../../modules/home-manager/password-store
../../modules/home-manager/taskwarrior.nix ../../modules/home-manager/taskwarrior.nix
../../modules/home-manager/kubernetes.nix ../../modules/home-manager/kubernetes.nix

View File

@@ -22,7 +22,7 @@
(ring-bell-function 'ignore) (ring-bell-function 'ignore)
(split-width-threshold 300) (split-width-threshold 300)
(switch-to-buffer-obey-display-actions t) (switch-to-buffer-obey-display-actions t)
(tab-width 4) (indent-tabs-mode nil)
(treesit-font-lock-level 4) (treesit-font-lock-level 4)
(truncate-lines t) (truncate-lines t)
(use-dialog-box nil) (use-dialog-box nil)
@@ -546,35 +546,30 @@
:config :config
(global-diff-hl-mode)) (global-diff-hl-mode))
;; LSP Mode ;; EMAIL -----------
;; (use-package lsp-mode (use-package notmuch
;; :ensure t :ensure t
;; :init :bind (("C-c m" . notmuch-hello))
;; (setq lsp-keymap-prefix "C-c l") :custom
;; (defun my/lsp-mode-setup-completion () (notmuch-search-oldest-first nil)
;; (setf (alist-get 'styles (alist-get 'lsp-capf completion-category-defaults)) (notmuch-saved-searches
;; '(orderless))) '((:name "inbox" :query "tag:inbox")
;; :hook ((typescript-ts-mode . lsp) (:name "unread" :query "tag:unread")
;; (tsx-ts-mode . lsp) (:name "sent" :query "tag:sent")
;; (js-ts-mode . lsp) (:name "drafts" :query "tag:draft")))
;; ;; if you want which-key integration :config
;; (lsp-mode . lsp-enable-which-key-integration) (setq sendmail-program "msmtp")
;; (lsp-completion-mode . my/lsp-mode-setup-completion)) (setq notmuch-fcc-dirs nil))
;; :commands lsp
;; :config
;; (setq lsp-eslint-server-command '("vscode-eslint-language-server" "--stdio"))
;; (lsp-register-client
;; (make-lsp-client
;; :new-connection (lsp-stdio-connection '("tailwindcss-language-server" "--stdio"))
;; :activation-fn (lsp-activate-on "typescriptreact" "typescript" "css" "html")
;; :add-on? t
;; :notification-handlers (ht ("@/tailwindCSS/projectInitialized" #'ignore)
;; ("@/tailwindCSS/projectsDestroyed" #'ignore)))))
;; (use-package lsp-ui (use-package ol-notmuch
;; :ensure t :ensure t
;; :commands lsp-ui-mode :bind
;; :config ("C-c l" . org-store-link))
;; (setq lsp-ui-sideline-enable nil))
;; EPUBS ----------
(use-package nov
:ensure t
:config
((add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode))))
(provide 'init) (provide 'init)

View File

@@ -4,66 +4,14 @@
lib, lib,
... ...
}: { }: {
home.packages = with pkgs; [
w3m
inetutils
];
services = {
# mbsync = {
# enable = true;
# frequency = "*-*-* *:*/5:00";
# postExec = "\${pkgs.notmuch} new";
# };
vdirsyncer = {
enable = true;
#frequency = "*-*-* *:*/5:00";
};
};
programs = { programs = {
aerc = {
enable = true;
extraConfig = {
ui = {
sort = "-r arrival";
threading-enabled = true;
fuzzy-complete = true;
};
general = {
default-save-path = "~/Downloads";
log-file = "~/.aerc.log";
unsafe-accounts-conf = true;
};
compose = {
address-book-cmd = "notmuch address \"%s\"";
};
filters = {
"text/plain" = "colorize";
"text/calendar" = "calendar";
"text/html" = "html | colorize";
};
};
};
msmtp = { msmtp = {
enable = true; enable = true;
}; };
mbsync = { mbsync = {
enable = true; enable = true;
}; };
lieer = { afew = {
enable = true;
};
vdirsyncer = {
enable = true;
};
khal = {
enable = true;
};
khard = {
enable = true;
};
mu = {
enable = true; enable = true;
}; };
notmuch = { notmuch = {
@@ -71,11 +19,7 @@
new.tags = [ "new" ]; new.tags = [ "new" ];
hooks = { hooks = {
postNew = '' postNew = ''
notmuch tag +sent -new tag:new from:michael@michaelthomson.dev afew --tag --new
notmuch tag +cal attachment:.ics
notmuch tag +inbox +unread -new "tag:new"
''; '';
preNew = '' preNew = ''
mbsync -a mbsync -a
@@ -85,7 +29,6 @@
}; };
accounts = { accounts = {
email = { email = {
accounts.personal = { accounts.personal = {
primary = true; primary = true;
@@ -93,9 +36,6 @@
realName = "Michael Thomson"; realName = "Michael Thomson";
userName = "michael@michaelthomson.dev"; userName = "michael@michaelthomson.dev";
passwordCommand = "rbw get --folder email michael@michaelthomson.dev"; passwordCommand = "rbw get --folder email michael@michaelthomson.dev";
aerc = {
enable = true;
};
mbsync = { mbsync = {
enable = true; enable = true;
create = "both"; create = "both";
@@ -121,67 +61,6 @@
notmuch = { notmuch = {
enable = true; enable = true;
}; };
mu = {
enable = true;
};
};
};
calendar = {
basePath = ".calendar";
accounts.personal = {
primary = true;
primaryCollection = "personal";
remote = {
type = "caldav";
url = "https://nextcloud.michaelthomson.dev/remote.php/dav";
userName = "michael@michaelthomson.dev";
passwordCommand = [
"rbw"
"get"
"nextcloud.michaelthomson.dev"
];
};
vdirsyncer = {
enable = true;
auth = "basic";
collections = ["personal"];
};
khal = {
enable = true;
type = "calendar";
};
};
};
contact = {
basePath = ".contacts";
accounts.personal = {
local = {
type = "filesystem";
fileExt = ".vcf";
};
remote = {
type = "carddav";
url = "https://nextcloud.michaelthomson.dev/remote.php/dav";
userName = "michael@michaelthomson.dev";
passwordCommand = [
"rbw"
"get"
"nextcloud.michaelthomson.dev"
];
};
vdirsyncer = {
enable = true;
auth = "basic";
collections = ["contacts"];
};
khal = {
enable = true;
collections = ["contacts"];
};
khard = {
enable = true;
defaultCollection = "contacts";
};
}; };
}; };
}; };