summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--home/dots/.emacs.d/BOGO-dark-theme.el2
-rw-r--r--home/dots/.emacs.d/BOGO-theme.el2
-rwxr-xr-xhome/dots/.local/bin/sync-mail7
-rw-r--r--home/dots/.notmuch-config83
-rwxr-xr-xhome/dots/mail/.notmuch/hooks/post-new13
-rwxr-xr-xhome/dots/mail/.notmuch/hooks/pre-new8
6 files changed, 115 insertions, 0 deletions
diff --git a/home/dots/.emacs.d/BOGO-dark-theme.el b/home/dots/.emacs.d/BOGO-dark-theme.el
index 187f022..7be4377 100644
--- a/home/dots/.emacs.d/BOGO-dark-theme.el
+++ b/home/dots/.emacs.d/BOGO-dark-theme.el
@@ -37,6 +37,7 @@
'(font-lock-type-face ((t (:foreground "#fffff8"))))
'(magit-section-heading ((t (:weight bold))))
'(font-lock-variable-name-face ((t (:foreground "#fffff8"))))
+ '(org-property-value ((t nil)))
'(fringe ((t nil)))
'(header-line ((t (:inherit default :foreground "grey80" :box (:line-width (12 . 12) :color "#1d1d1d") :underline (:color "gray20" :style line :position 0) :family "Iosevka Aile" :height 1.0))))
'(highlight ((t (:background "gray20"))))
@@ -58,6 +59,7 @@
'(message-header-cc ((t nil)))
'(message-cited-text-1 ((t (:foreground "gray50"))))
'(gnus-header-name ((t (:weight bold))))
+ '(notmuch-tag-face ((t nil)))
'(gnus-header-content ((t nil)))
'(gnus-header-subject ((t (:slant italic))))
'(gnus-header-from ((t (:weight bold))))
diff --git a/home/dots/.emacs.d/BOGO-theme.el b/home/dots/.emacs.d/BOGO-theme.el
index ecdfca6..d68a25a 100644
--- a/home/dots/.emacs.d/BOGO-theme.el
+++ b/home/dots/.emacs.d/BOGO-theme.el
@@ -30,6 +30,7 @@
'(git-gutter:modified ((t nil)))
'(git-gutter:deleted ((t (:foreground "red"))))
'(font-lock-function-name-face ((t nil)))
+ '(notmuch-tag-face ((t nil)))
'(font-lock-keyword-face ((t nil)))
'(shr-h1 ((t (:weight bold))))
'(shr-h2 ((t (:weight bold))))
@@ -85,6 +86,7 @@
'(org-imminent-deadline ((t (:foreground "DarkOrange3" :weight bold))))
'(org-agenda-date-today ((t (:weight bold))))
'(org-agenda-date-weekend ((t nil)))
+ '(org-property-value ((t nil)))
'(help-key-binding ((t (:weight semibold :background "#EEEEE8" :box (:line-width (1 . -1) :color "#AAAAA8")))))
'(org-agenda-done ((t (:strike-through t :inherit org-time-grid :extend nil))))
'(org-agenda-structure-filter ((t (:slant italic))))
diff --git a/home/dots/.local/bin/sync-mail b/home/dots/.local/bin/sync-mail
new file mode 100755
index 0000000..575d849
--- /dev/null
+++ b/home/dots/.local/bin/sync-mail
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+set -e
+#sh ~/mail/.notmuch/hooks/pre-sync
+mbsync -a
+notmuch new
+
+
diff --git a/home/dots/.notmuch-config b/home/dots/.notmuch-config
new file mode 100644
index 0000000..20b3f85
--- /dev/null
+++ b/home/dots/.notmuch-config
@@ -0,0 +1,83 @@
+# .notmuch-config - Configuration file for the notmuch mail system
+#
+# For more information about notmuch, see https://notmuchmail.org
+# Database configuration
+#
+# The only value supported here is 'path' which should be the top-level
+# directory where your mail currently exists and to where mail will be
+# delivered in the future. Files should be individual email messages.
+# Notmuch will store its database within a sub-directory of the path
+# configured here named ".notmuch".
+#
+[show]
+extra_headers=X-Mailer,User-Agent
+[database]
+# User configuration
+#
+# Here is where you can let notmuch know how you would like to be
+# addressed. Valid settings are
+#
+# name Your full name.
+# primary_email Your primary email address.
+# other_email A list (separated by ';') of other email addresses
+# at which you receive email.
+#
+# Notmuch will use the various email addresses configured here when
+# formatting replies. It will avoid including your own addresses in the
+# recipient list of replies, and will set the From address based on the
+# address to which the original email was addressed.
+#
+[user]
+name=Marc Coquand
+primary_email=marc@coquand.email
+other_email=marc.coquand@piva.earth;marcc@fastmail.fr;marc@mccd.space;
+# Configuration for "notmuch new"
+#
+# The following options are supported here:
+#
+# tags A list (separated by ';') of the tags that will be
+# added to all messages incorporated by "notmuch new".
+#
+# ignore A list (separated by ';') of file and directory names
+# that will not be searched for messages by "notmuch new".
+#
+# NOTE: *Every* file/directory that goes by one of those
+# names will be ignored, independent of its depth/location
+# in the mail store.
+#
+[new]
+# Search configuration
+#
+# The following option is supported here:
+#
+# exclude_tags
+# A ;-separated list of tags that will be excluded from
+# search results by default. Using an excluded tag in a
+# query will override that exclusion.
+#
+tags=new
+[search]
+exclude_tags=deleted;spam;junk
+# Maildir compatibility configuration
+#
+# The following option is supported here:
+#
+# synchronize_flags Valid values are true and false.
+#
+# If true, then the following maildir flags (in message filenames)
+# will be synchronized with the corresponding notmuch tags:
+#
+# Flag Tag
+# ---- -------
+# D draft
+# F flagged
+# P passed
+# R replied
+# S unread (added when 'S' flag is not present)
+#
+# The "notmuch new" command will notice flag changes in filenames
+# and update tags, while the "notmuch tag" and "notmuch restore"
+# commands will notice tag changes and update flags in filenames
+#
+synchronize_flags=true
+[maildir]
diff --git a/home/dots/mail/.notmuch/hooks/post-new b/home/dots/mail/.notmuch/hooks/post-new
new file mode 100755
index 0000000..ef985c0
--- /dev/null
+++ b/home/dots/mail/.notmuch/hooks/post-new
@@ -0,0 +1,13 @@
+#!/run/current-system/profile/bin/bash
+
+notmuch tag +work -- folder:/work/
+notmuch tag +home -- folder:/home/
+notmuch tag +receipt -- path:/home/Archive/Receipt/
+notmuch tag +important -- path:/home/Archive/Important/
+notmuch tag +ticket -- path:/home/Archive/Tickets/
+notmuch tag +flight -- path:/home/Archive/Flight/
+
+afew --tag --new
+
+
+
diff --git a/home/dots/mail/.notmuch/hooks/pre-new b/home/dots/mail/.notmuch/hooks/pre-new
new file mode 100755
index 0000000..949d909
--- /dev/null
+++ b/home/dots/mail/.notmuch/hooks/pre-new
@@ -0,0 +1,8 @@
+#!/run/current-system/profile/bin/bash
+notmuch search --output=files "path:/.*/INBOX/" tag:home and tag:deleted | while IFS= read -r f; do mv -v $f $(echo $f | sed 's/INBOX/Trash/' | sed 's/,U=[0-9]*:/:/'); done
+
+notmuch search --output=files "path:/.*/INBOX/" tag:home and tag:receipt and not tag:inbox | while IFS= read -r f; do mv -v $f $(echo $f | sed 's/INBOX/Archive\/Receipt/' | sed 's/,U=[0-9]*:/:/'); done
+
+notmuch search --output=files "path:/.*/INBOX/" tag:home and tag:flight and not tag:inbox | while IFS= read -r f; do mv -v $f $(echo $f | sed 's/INBOX/Archive\/Flight/' | sed 's/,U=[0-9]*:/:/'); done
+
+notmuch search --output=files "path:/.*/INBOX/" tag:home and not tag:inbox | while IFS= read -r f; do mv -v $f $(echo $f | sed 's/INBOX/Archive/' | sed 's/,U=[0-9]*:/:/'); done