From f7fd86c39d3fb3403443c59eb0994eb8a2667bf8 Mon Sep 17 00:00:00 2001 From: Till Date: Mon, 22 May 2023 13:38:46 +0200 Subject: [PATCH] smime --- _config.xdg.dataHome/neomutt/cache/headers | Bin 57344 -> 0 bytes .../neomutt/cache/headers-lock | Bin 8192 -> 0 bytes home/mail/bindings.neomuttrc | 49 ++++----- home/mail/config.neomuttrc | 21 ++-- home/mail/default.nix | 101 +++++++++++------- home/mail/smime.neomuttrc | 27 +++++ texput.log | 9 -- 7 files changed, 121 insertions(+), 86 deletions(-) delete mode 100644 _config.xdg.dataHome/neomutt/cache/headers delete mode 100644 _config.xdg.dataHome/neomutt/cache/headers-lock create mode 100644 home/mail/smime.neomuttrc delete mode 100644 texput.log diff --git a/_config.xdg.dataHome/neomutt/cache/headers b/_config.xdg.dataHome/neomutt/cache/headers deleted file mode 100644 index dbcc25ee745c449d46ef7e94ca5db8a42ae1fabb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57344 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 Bo~!@> diff --git a/_config.xdg.dataHome/neomutt/cache/headers-lock b/_config.xdg.dataHome/neomutt/cache/headers-lock deleted file mode 100644 index 5bcc15ecc232a916d63bd1b55d8ab05ddc9a36de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmcb2;Qc;E21W)DfRG>-1H=FS|Nlc+s3a4Vi>wwZ1g3E51508dK{2mk display-message bind index collapse-thread bind index,pager gf change-folder @@ -15,14 +16,6 @@ bind index,pager gf change-folder bind index,pager V noop macro index,pager V "html" -# Sidebar navigation -# bind index,pager \Cj sidebar-next -# bind index,pager \Ck sidebar-prev -# bind index,pager \Cl sidebar-open -# bind index,pager gl sidebar-toggle-visible - -# macro index,pager g8 "less" "Just testing" - # compose bind compose p postpone-message bind compose P pgp-menu @@ -49,28 +42,28 @@ macro index,pager y ":set resolve=no\nn:set resolve=yes\n$spoolfile" "Move message to the inbox" # switch folders -# macro index,pager gi "$spoolfile" "Go to inbox" macro index,pager g! "$spoolfile" "Go to inbox" macro index,pager gd "$postponed" "Go to drafts" -# macro index,pager gs "$record" "Go to sent" macro index,pager g< "$record" "Go to sent" -# macro index,pager ga "$mbox" "Go to archive" +macro index,pager ga "$mbox" "Go to archive" macro index,pager g> "$mbox" "Go to archive" macro index,pager gt "$trash" "Go to trash" macro index,pager gj "$my_junk" "Go to junk" # accounts -macro index,pager gu "+gu/IMAP/Inbox" "Go to GU" -macro index,pager gp "+systemli/IMAP/Inbox" "Go to Systemli" -macro index,pager gm "+gmail/IMAP/Inbox" "Go to Gmail" -macro index,pager gk "+ks/IMAP/Inbox" "Go to KS" -macro index,pager gi "+ktiu/IMAP/Inbox" "Go to ktiu" -macro index,pager gf "+dkg/IMAP/Inbox" "Go to DKG" +macro index,pager gu "~/.local/share/mail/imap/gu/Inbox" "Go to GU" +# macro index,pager gp "+systemli/IMAP/Inbox" "Go to Systemli" +# macro index,pager gm "+gmail/IMAP/Inbox" "Go to Gmail" +# macro index,pager gk "+ks/IMAP/Inbox" "Go to KS" +macro index,pager gi "~/.local/share/mail/imap/ktiu/Inbox" "Go to ktiu" +# macro index,pager gf "+dkg/IMAP/Inbox" "Go to DKG" macro index,pager L "all\n" "Show all messages (undo limit)" -macro index,pager go "mbsync -c ~/.config/mbsync/mbsyncrc $my_mbsync_acct && notmuch new" \ - "Run mbsync to sync mail for this account" +# macro index,pager go "mbsync -c ~/.config/mbsync/mbsyncrc $my_mbsync_acct && notmuch new" \ +# "Run mbsync to sync mail for this account" + +macro index,pager go "mbsync $my_mbsync_acct && notmuch new" \ macro index,pager g/ \ "" \ diff --git a/home/mail/config.neomuttrc b/home/mail/config.neomuttrc index 78ea42f..fa13f24 100644 --- a/home/mail/config.neomuttrc +++ b/home/mail/config.neomuttrc @@ -1,8 +1,9 @@ -# set mailcap_path = ~/.config/neomutt/mailcap -# set tmpdir = ~/.local/share/neomutt/tmp set alias_file = ~/.local/share/neomutt/aliases.neomuttrc +source $alias_file + +source ./smime.neomuttrc + set my_download_folder = ~/tmp -set folder = ~/.local/share/mail/imap/ # Caching set header_cache = ~/.local/share/neomutt/cache/headers @@ -21,7 +22,6 @@ set sleep_time = 0 # set shell = /bin/bash # Sending -# set sendmail = "/home/till/.nix-profile/bin/sendmail -C /home/till/.config/msmtp/msmtprc" set use_envelope_from unset reverse_realname @@ -40,8 +40,8 @@ unset reverse_realname # folder-hook $folder/ktiu/ source ~/.config/neomutt/accounts/ktiu.neomuttrc # folder-hook $folder/dkg/ source ~/.config/neomutt/accounts/dkg.neomuttrc # folder-hook $folder/papa/ source ~/.config/neomutt/accounts/papa.neomuttrc -# folder-hook . source ~/.config/neomutt/bindings.neomuttrc +folder-hook . source ~/.config/neomutt/bindings.neomuttrc # # Source config # source ~/.config/neomutt/views.neomuttrc @@ -49,7 +49,6 @@ unset reverse_realname # source ~/.config/neomutt/colors.neomuttrc # source ~/.config/neomutt/smime.neomuttrc # source ~/.config/neomutt/pgp.neomuttrc -source $alias_file # Compose set editor = "nvim -c 'call woof#init#Init()'" @@ -117,11 +116,11 @@ color header yellow default "^(From|To|CC|BCC)" color header blue default "^Date" ## Status -color status yellow default '\[ ↻ \]' -color status green default '\[ ✔ \]' -color status magenta default '\[ ٪ \]' -color status black default '\[ [0-9]+ new \]' -color status red default '\[ [0-9]+ to delete \]' +# color status yellow default '\[ ↻ \]' +# color status green default '\[ ✔ \]' +# color status magenta default '\[ ٪ \]' +# color status black default '\[ [0-9]+ new \]' +# color status red default '\[ [0-9]+ to delete \]' ## Mutt color message cyan default diff --git a/home/mail/default.nix b/home/mail/default.nix index b1ccd0d..f32a7ba 100644 --- a/home/mail/default.nix +++ b/home/mail/default.nix @@ -6,43 +6,21 @@ programs.neomutt = { enable = true; vimKeys = true; - ]; - sort = "reverse-threads"; - changeFolderWhenSourcingAccount = false; - extraConfig = builtins.readFile ./config.neomttrc; + extraConfig = builtins.readFile ./config.neomuttrc; }; xdg.configFile."neomutt/bindings.neomuttrc".source = ./bindings.neomuttrc; + xdg.configFile."neomutt/smime.neomuttrc".source = ./smime.neomuttrc; accounts.email = { maildirBasePath = "${config.xdg.dataHome}/mail/imap"; accounts = { - ktiu = { - primary = true; - address = "till@ktiu.net"; - realName = "Till Straube"; - imap.host = "shorbut.ktiu.net"; - smtp.host = "shorbut.ktiu.net"; - userName = "till"; - signature.text = '' - Till Straube - ''; - signature.showSignature = "append"; - neomutt.enable = true; - neomutt.extraConfig = '' - unalternates * - alternates @ktiu.net$ - set reverse_name - # set my_signature = {signature} - color status yellow default - ''; - mbsync.enable = true; - msmtp.enable = true; - passwordCommand = "secret-tool lookup server shorbut.ktiu.net account till"; - }; gu = { + primary = true; address = "straube@geo.uni-frankfurt.de"; realName = "Till Straube"; imap.host = "imap.server.uni-frankfurt.de"; smtp.host = "smtpauth.rz.uni-frankfurt.de"; + smtp.tls.useStartTls = true; + passwordCommand = "secret-tool lookup server uni-frankfurt.de account tstraube"; userName = "tstraube"; signature = { text = '' @@ -50,20 +28,67 @@ ''; showSignature = "append"; }; - neomutt.enable = true; - neomutt.extraConfig = '' - unalternates * - alternates ^straube@em.uni-frankfurt.de$ \ - ^tstraube@em.uni-frankfurt.de$ \ - ^tstraube@rz.uni-frankfurt.de$ \ - ^tstraube@uni-frankfurt.de$ - unset reverse_name - # set my_signature = {signature} - color status blue default + neomutt = { + enable = true; + sendMailCommand = "/home/till/.nix-profile/bin/msmtp"; + extraConfig = '' + set mbox='+Archive' + set my_junk='+Spamverdacht' + set my_mbsync_acct='gu' + + set crypt_autosign + set crypt_replyencrypt + set crypt_replysign + set crypt_replysignencrypted + set crypt_verify_sig + set smime_is_default + set smime_default_key = "f1355556.0" + set pgp_default_key = "" + + unalternates * + alternates ^straube@em.uni-frankfurt.de$ \ + ^tstraube@em.uni-frankfurt.de$ \ + ^tstraube@rz.uni-frankfurt.de$ \ + ^tstraube@uni-frankfurt.de$ + unset reverse_name + # set my_signature = {signature} + color status blue default + ''; + }; + mbsync.enable = true; + msmtp = { + enable = true; + # extraConfig = { + # tls_starttls = "on"; + # }; + }; + }; + ktiu = { + address = "till@ktiu.net"; + realName = "Till Straube"; + imap.host = "shorbut.ktiu.net"; + smtp.host = "shorbut.ktiu.net"; + smtp.tls.useStartTls = true; + userName = "till"; + signature.text = '' + Till Straube ''; + signature.showSignature = "append"; + neomutt = { + enable = true; + sendMailCommand = "/home/till/.nix-profile/bin/msmtp"; + extraConfig = '' + set my_mbsync_acct='ktiu' + unalternates * + alternates @ktiu.net$ + set reverse_name + # set my_signature = {signature} + color status yellow default + ''; + }; mbsync.enable = true; msmtp.enable = true; - passwordCommand = "secret-tool lookup server imap.server.uni-frankfurt.de account tstraube"; + passwordCommand = "secret-tool lookup server shorbut.ktiu.net account till"; }; }; }; diff --git a/home/mail/smime.neomuttrc b/home/mail/smime.neomuttrc new file mode 100644 index 0000000..15da302 --- /dev/null +++ b/home/mail/smime.neomuttrc @@ -0,0 +1,27 @@ +# Use SMIME +unset crypt_use_gpgme + +# Locations +set smime_ca_location="~/.keys/neomutt/smime/ca" +set smime_certificates="~/.keys/neomutt/smime/public" +set smime_keys="~/.keys/neomutt/smime/private" + +# Commands (smime_keys) +set smime_pk7out_command="openssl smime -verify -in %f -noverify -pk7out" +set smime_get_cert_command="openssl pkcs7 -print_certs -in %f" +set smime_get_signer_cert_command="openssl smime -verify -in %f -noverify -signer %c -out /dev/null" +set smime_get_cert_email_command="openssl x509 -in %f -noout -email" +set smime_import_cert_command="smime_keys add_cert %f" + +# Outgoing +set smime_encrypt_with="aes256" +set smime_encrypt_command="openssl smime -encrypt -%a -outform DER -in %f %c" +set smime_sign_digest_alg="sha256" +set smime_sign_command="openssl smime -sign -md %d -signer %c -inkey %k -passin stdin -in %f -certfile %i -outform DER" + +# Incoming +set smime_decrypt_command="openssl smime -decrypt -passin stdin -inform DER -in %f -inkey %k -recip %c" +set smime_verify_command="openssl smime -verify -inform DER -in %s %C -content %f" +set smime_verify_opaque_command="\ +openssl smime -verify -inform DER -in %s %C || \ +openssl smime -verify -inform DER -in %s -noverify 2>/dev/null" diff --git a/texput.log b/texput.log deleted file mode 100644 index 92b9854..0000000 --- a/texput.log +++ /dev/null @@ -1,9 +0,0 @@ -This is TeX, Version 3.141592653 (TeX Live 2021/nixos.org) (preloaded format=tex 1980.1.1) 16 MAY 2023 14:34 -**sourcesanspro.sty - -! Emergency stop. -<*> sourcesanspro.sty - -End of file on the terminal! - -No pages of output.