aboutsummaryrefslogtreecommitdiff
path: root/config/mutt
diff options
context:
space:
mode:
authorKenny Ballou <kballou@devnulllabs.io>2020-10-14 10:05:44 -0600
committerKenny Ballou <kballou@devnulllabs.io>2020-12-15 14:04:46 -0700
commit418ec7b94aa8202e5f5f0a59f2bb97a7c0510068 (patch)
tree0a08e1653ba5d8efc527bbaf4e5914ffb9c8b6b9 /config/mutt
parent164cd37871e6235584ce23f3a0bf516a51b31489 (diff)
downloaddotfiles-418ec7b94aa8202e5f5f0a59f2bb97a7c0510068.tar.gz
dotfiles-418ec7b94aa8202e5f5f0a59f2bb97a7c0510068.tar.xz
dots: now for something completely different
Use home-manager to configure user packages, dotfiles, and various other configurations. Add home-manager configuration for installing and managing user packages and profiles. Convert nearly all configuration to use home-manager to install and link configuration files. In no particular order of reference, I've used and/or referenced the following configurations and posts for this homeification: [[0], [1], [2], [3], [4], [5], [6], [7], [8], [9], [10]]. [0]: https://gitlab.com/NobbZ/nix-home-manager-dotfiles [1]: https://www.malloc47.com/migrating-to-nixos/ [2]: https://lucperkins.dev/blog/home-manager/ [3]: https://github.com/jwiegley/nix-config [4]: https://www.thedroneely.com/posts/declarative-user-package-management-in-nixos/ [5]: https://hugoreeves.com/posts/2019/nix-home/ [6]: https://rycee.gitlab.io/home-manager/ [7]: https://rycee.net/posts/2017-07-02-manage-your-home-with-nix.html [8]: https://github.com/abcdw/rde [9]: https://github.com/ryantm/dotfiles [10]: https://git.sr.ht/~vdemeester/home Signed-off-by: Kenny Ballou <kballou@devnulllabs.io>
Diffstat (limited to 'config/mutt')
-rw-r--r--config/mutt/default.nix9
-rw-r--r--config/mutt/mutt/crypto49
-rw-r--r--config/mutt/mutt/kballou_devnulllabs.mutt25
-rw-r--r--config/mutt/mutt/kballou_devnulllabs.signature1
-rw-r--r--config/mutt/mutt/keybindings33
-rw-r--r--config/mutt/mutt/mailcap14
-rw-r--r--config/mutt/mutt/mailing_lists.muttrc2
-rw-r--r--config/mutt/muttrc75
8 files changed, 208 insertions, 0 deletions
diff --git a/config/mutt/default.nix b/config/mutt/default.nix
new file mode 100644
index 00000000..fbb5f96e
--- /dev/null
+++ b/config/mutt/default.nix
@@ -0,0 +1,9 @@
+{ pkgs, config, ... }:
+{
+ home.file.".muttrc".source = ./muttrc;
+
+ home.file.".mutt" = {
+ recursive = true;
+ source = ./mutt;
+ };
+}
diff --git a/config/mutt/mutt/crypto b/config/mutt/mutt/crypto
new file mode 100644
index 00000000..0f7d61a2
--- /dev/null
+++ b/config/mutt/mutt/crypto
@@ -0,0 +1,49 @@
+# vim: syntax=muttrc:
+
+# decode application/pgp
+set pgp_decode_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
+
+# verify a pgp/mime signature
+set pgp_verify_command="gpg --status-fd=2 --no-verbose --quiet --batch --output - --verify %s %f"
+
+# decrypt a pgp/mime attachment
+set pgp_decrypt_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
+
+# create a pgp/mime signed attachment
+set pgp_sign_command="gpg --no-verbose --no-version --batch --quiet --output - %?p?--passphrase-fd 0? --armor --detach-sign --textmode %?a?-u %a? %f"
+
+# create a application/pgp signed (old-style) message
+set pgp_clearsign_command="gpg --no-verbose --no-version --batch --quiet --output - %?p?--passphrase-fd 0? --armor --textmode --clearsign %?a?-u %a? %f"
+
+# create a pgp/mime encrypted attachment
+set pgp_encrypt_only_command="pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust --hidden-encrypt-to %?a?%a? -- -r %r -- %f"
+
+# create a pgp/mime encrypted and signed attachment
+set pgp_encrypt_sign_command="pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust --hidden-encrypt-to %?a?%a? -- -r %r -- %f"
+
+# import a key into the public key ring
+set pgp_import_command="gpg --no-verbose --import %f"
+
+# export a key from the public key ring
+set pgp_export_command="gpg --no-verbose --export --armor %r"
+
+# verify a key
+set pgp_verify_key_command="gpg --verbose --batch --fingerprint --check-sigs %r"
+
+# read in the public key ring
+set pgp_list_pubring_command="gpg --no-verbose --batch --quiet --with-colons --with-fingerprint --list-keys %r"
+
+# read in the secret key ring
+set pgp_list_secring_command="gpg --no-verbose --batch --quiet --with-colons --with-fingerprint --list-secret-keys %r"
+
+# fetch keys
+# set pgp_getkeys_command="pkspxycwrap %r"
+
+set pgp_timeout=300
+set pgp_good_sign="^gpg: Good signature from"
+set crypt_autosign=yes
+set crypt_replysign=yes
+set crypt_autoencrypt=no
+set crypt_replyencrypt=yes
+set crypt_replysignencrypted=yes
+set crypt_verify_sig=yes
diff --git a/config/mutt/mutt/kballou_devnulllabs.mutt b/config/mutt/mutt/kballou_devnulllabs.mutt
new file mode 100644
index 00000000..e68dc6ed
--- /dev/null
+++ b/config/mutt/mutt/kballou_devnulllabs.mutt
@@ -0,0 +1,25 @@
+# vim: syntax=muttrc:
+set realname = "Kenny Ballou"
+set from = "kballou@devnulllabs.io"
+alternates kennethmgballou@gmail.com
+set mbox_type = Maildir
+set folder = "~/.mail/"
+set spoolfile = "=INBOX"
+set postponed = "=drafts"
+set sendmail = "/usr/bin/msmtp -a kballou"
+set sendmail_wait = 0
+set copy=yes
+set record = "=sent"
+
+unmailboxes *
+mailboxes +INBOX \
+ +drafts \
+ +sent \
+ +archive
+
+set pgp_sign_as="0xB0CAA28A02958308"
+my_hdr X-PGP-Key: https://kennyballou.com/932F3E8E1C0F4A9895D7B8B8B0CAA28A02958308.txt
+set signature="~/.mutt/kballou_devnulllabs.signature"
+
+macro index O "<shell-escape>offlineimap -a devnulllabs<return>" "full sync offlineimap"
+macro index o "<shell-escape>offlineimap -a devnulllabs -qf INBOX<return>" "INBOX sync"
diff --git a/config/mutt/mutt/kballou_devnulllabs.signature b/config/mutt/mutt/kballou_devnulllabs.signature
new file mode 100644
index 00000000..1f72baa3
--- /dev/null
+++ b/config/mutt/mutt/kballou_devnulllabs.signature
@@ -0,0 +1 @@
+:SIG:!0xB0CAA28A02958308!:
diff --git a/config/mutt/mutt/keybindings b/config/mutt/mutt/keybindings
new file mode 100644
index 00000000..5a2566a0
--- /dev/null
+++ b/config/mutt/mutt/keybindings
@@ -0,0 +1,33 @@
+# vim: syntax=muttrc:
+bind index gg first-entry
+bind index G last-entry
+bind index R group-reply
+bind index <tab> sync-mailbox
+bind index <space> collapse-thread
+
+bind pager k previous-line
+bind pager j next-line
+bind pager gg top
+bind pager G bottom
+bind pager R group-reply
+
+bind index,pager <down> sidebar-next
+bind index,pager <up> sidebar-prev
+bind index,pager <right> sidebar-open
+
+bind index,pager N search-opposite
+
+bind compose P postpone-message
+bind index p recall-message
+
+macro index a "<limit>all\n" "(un)limit messages"
+macro index d "<save-message>=trash<enter><refresh>" "Delete Message"
+macro pager d "<exit><save-message>=trash<enter><refresh>" "Delete Message"
+macro index,pager D "<save-message>=archive<enter><refresh>" "Archive Message"
+macro index,pager M "<save-message>?<toggle-mailboxes>" "move message to mailbox"
+macro index,pager gs "<change-folder>=sent<enter>" "Go to sent mail"
+macro index,pager gi "<change-folder>=INBOX<enter>" "Go to inbox"
+macro index,pager gd "<change-folder>=drafts<enter>" "Go to drafts"
+macro index,pager ga "<change-folder>=archive<enter>" "Go to all mail"
+
+macro index S "<enter-command>unset wait_key<enter><shell-escape>notmuch-mutt -p -o /tmp/notmuch_search search<enter><change-folder-readonly>/tmp/notmuch_search<enter>" "Search mail (using notmuch"
diff --git a/config/mutt/mutt/mailcap b/config/mutt/mutt/mailcap
new file mode 100644
index 00000000..59dd5819
--- /dev/null
+++ b/config/mutt/mutt/mailcap
@@ -0,0 +1,14 @@
+application/msword; xdg-open %s
+
+image/jpg; xdg-open %s
+image/jpeg; xdg-open %s
+image/pjpeg; xdg-open %s
+image/png; xdg-open %s
+image/gif; xdg-open %s
+
+application/pdf; xdg-open %s
+
+text/html; w3m -I %{charset} -T text/html; needsterminal;
+text/html; w3m -I %{charset} -T text/html; copiousoutput;
+
+application/octet-steam; xdg-open %s
diff --git a/config/mutt/mutt/mailing_lists.muttrc b/config/mutt/mutt/mailing_lists.muttrc
new file mode 100644
index 00000000..7e4f8b8a
--- /dev/null
+++ b/config/mutt/mutt/mailing_lists.muttrc
@@ -0,0 +1,2 @@
+# vim: syntax=muttrc:
+subscribe user@spark.apache.org dev@spark.apache.org
diff --git a/config/mutt/muttrc b/config/mutt/muttrc
new file mode 100644
index 00000000..ffcf2d7c
--- /dev/null
+++ b/config/mutt/muttrc
@@ -0,0 +1,75 @@
+source "~/.mutt/crypto"
+source "~/.mutt/keybindings"
+source "~/.mutt/mailing_lists.muttrc"
+
+macro index <f2> '<enter-command> source ~/.mutt/kballou_devnulllabs.mutt<enter><change-folder>!<enter>'
+macro index <f3> '<enter-command> source ~/.mutt/kenny_homecu.mutt<enter><change-folder>!<enter>'
+
+set timeout = 3
+set mail_check = 0
+set wait_key = no
+set delete
+unset confirmappend
+set quit
+set beep_new
+set pipe_decode
+set thorough_search
+
+set header_cache = ~/.cache/mutt/headers
+set message_cachedir = ~/.cache/mutt/bodies
+set certificate_file = ~/.cache/mutt/certificates
+
+bind editor <space> noop
+
+ignore "Authentication-Results:"
+ignore "DomainKey-Signature:"
+ignore "DKIM-Signature:"
+hdr_order Date From To Cc
+
+ignore *
+unignore from: date subject to cc
+unignore x-mailing-list: posted-to:
+unignore x-mailer:
+
+set date_format = '%Y年%m月%d日 %T'
+set index_format = '[%Z] %D %-20.20F %s'
+set status_format = \
+'[ %f ] -- [%r%m messages %?n?(%n)?%?d?(%d)?%?t?(%t)?] -%>-(%p)'
+set markers = no
+set pager_index_lines=7
+set pager_context = 3
+set pager_stop
+set sort = 'threads'
+set sort_aux = 'last-date-received'
+set uncollapse_jump
+set sort_re
+set reply_regexp = '^(([Re][Ee]?(\[[0-9]+\])?: *?(\[[^]]+\] *)?)*'
+set send_charset="utf-8"
+set forward_format = "Fwd: %s"
+
+set mailcap_path="~/.mutt/mailcap"
+auto_view text/html
+alternative_order text/plain text/enriched text/html
+
+set sidebar_visible = yes
+set sidebar_divider_char = ' |'
+set sidebar_width = 24
+set sidebar_format = '%B%?F? [%F]?%* %?N?%N/?%S'
+color sidebar_new color221 color233
+
+set mail_check_stats = yes
+
+source ~/.mutt/kballou_devnulllabs.mutt
+
+set editor = 'vim + -c "set textwidth=72" -c "set wrap" -c "set nocp" -c "?^$"'
+
+# abook
+set query_command = "abook --mutt-query '%s'"
+macro index,pager A "<pipe-message>abook --add-email-quiet<return>" \
+"add the sender address to abook"
+
+# compose options
+set edit_headers
+set fast_reply
+set fcc_attach
+set reverse_name