X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/370bb0ff091c2888901e55938b632a14835d9194..31b2b4323939535a7f134a2a48382b54bfed6675:/dot/gnus-local.el.distorted diff --git a/dot/gnus-local.el.distorted b/dot/gnus-local.el.distorted index e061cf3..39a90b9 100644 --- a/dot/gnus-local.el.distorted +++ b/dot/gnus-local.el.distorted @@ -6,16 +6,57 @@ ;;; ;;;-------------------------------------------------------------------------- +;;; Random configuration. + +(setq auth-sources '("~/.gnus.authinfo")) + +(remove-hook 'gnus-mark-article-hook + 'gnus-summary-mark-read-and-unread-as-read) +(add-hook 'gnus-mark-article-hook 'gnus-summary-mark-unread-as-read) + +(setq gnus-level-unsubscribed 6) + +;;;-------------------------------------------------------------------------- ;;; How to send mail. -(and nil - (setq smtpmail-smtp-server "mail.distorted.org.uk" - smtpmail-sendto-domain "distorted.org.uk" - smtpmail-smtp-service 587 - smtpmail-auth-credentials "~/.gnus.authinfo" - message-send-mail-function 'smtpmail-send-it - smtpmail-starttls-credentials - '(("mail.distorted.org.uk" 587 "" "")))) +(setq smtpmail-smtp-service 587 + smtpmail-auth-credentials "~/.gnus.authinfo") + +(setq mdw-send-mail-alist + `((distorted-smtp + (send-mail-function . smtpmail-send-it) + (smtpmail-smtp-server . "mail.distorted.org.uk") + (smtpmail-starttls-credentials + ("mail.distorted.org.uk" 587 nil nil))) + (chiark-smtp + (send-mail-function . smtpmail-send-it) + (smtpmail-smtp-server . "smtp.dovecot.chiark.greenend.org.uk") + (starttls-extra-arguments "--insecure") + (smtpmail-starttls-credentials + ("smtp.dovecot.chiark.greenend.org.uk" 587 nil nil))) + (gmail-smtp + (send-mail-function . smtpmail-send-it) + (smtpmail-smtp-server . "smtp.gmail.com") + (smtpmail-starttls-credentials + ("smtp.gmail.com" 587 nil nil)))) + mdw-guess-send-mail-alist + `((,(concat "@\\(" "\\(chiark\\|slimy\\|coriolis\\)" + "\\.greenend\\.org\\.uk" + "\\|" "evade\\.org\\.uk" + "\\|" "fyvzl\\.net" + "\\)$") . chiark-smtp) + ("@g\\(\\|oogle\\)mail\\.com$" . gmail-smtp)) + mdw-default-send-mail-method nil) + +;;;-------------------------------------------------------------------------- +;;; News via chiark. + +;; Currently we assume an SSH tunnel. This will be fixed later. +(setq gnus-select-method + '(nntp "chiark-ssh-kludge" + (nntp-open-connection-function nntp-open-authinfo-kludge) + (nntp-address "tunnel.chiark.greenend.org.uk") + (nntp-authinfo-generic "md5cookie1way mdw"))) ;;;-------------------------------------------------------------------------- ;;; Where we get mail from. @@ -24,12 +65,25 @@ (setq gnus-secondary-select-methods '((nnimap "distorted" (nnimap-address "mail.distorted.org.uk") - (nnimap-stream tls) - (nnimap-authinfo-file "~/.gnus.authinfo")) + (nnimap-stream starttls) + (nnimap-inbox "INBOX") + (nnimap-unsplittable-articles (%Deleted))) + (nnimap "markw-distorted" + (nnimap-address "mail.distorted.org.uk") + (nnimap-stream starttls) + (nnimap-inbox "INBOX") + (nnimap-unsplittable-articles (%Deleted))) + (nnimap "mwooding-chiark" + (nnimap-address "imap.dovecot.chiark.greenend.org.uk") + (nnimap-stream starttls) + (starttls-extra-arguments ("--insecure")) + (nnimap-inbox "INBOX") + (nnimap-unsplittable-articles (%Deleted))) (nnimap "google" (nnimap-address "imap.gmail.com") (nnimap-stream tls) - (nnimap-authinfo-file "~/.gnus.authinfo")))) + (nnimap-inbox "INBOX") + (nnimap-unsplittable-articles (%Deleted))))) ;; Send sent mail back to me. (setq gnus-message-archive-method "mail" @@ -42,39 +96,74 @@ ;; General splitting configuration. (setq nnimap-split-inbox '("INBOX" "to.split") nnimap-split-rule 'nnimap-split-fancy - nnimap-split-crosspost t + nnimap-split-methods 'nnimap-split-fancy + nnmail-split-methods 'nnmail-split-fancy nnimap-split-predicate "UNDELETED" + nnimap-split-crosspost t + nnmail-split-crosspost t nnmail-split-fancy-match-partial-words nil) ;; Automatic expiry for particular groups. (setq gnus-auto-expirable-newsgroups - "^nnimap\\+distorted:\\(crap\\|spam\\|admin\\|lists\\|nag\\)\\..*") + (concat "^" + "\\(nnimap\\+[^:]+\\|nnvirtual\\):" + "\\(admin\\|crap\\|lists\\|nag\\|spam\\)\\.")) + +;; My various email addresses. +(setq message-alternative-emails bbdb-user-mail-names + message-dont-reply-to-names message-alternative-emails) ;; Mail sent to `mdw-nospam-THING' should appear to come from this address. (setq gnus-posting-styles - '(((and (string-match "^nnimap\\+distorted:crap\\.\\(.*\\)$" - gnus-newsgroup-name) - (setq mdw-from-address - (replace-match "mdw-nospam-\\1@distorted.org.uk" - nil nil gnus-newsgroup-name))) - ("From" mdw-from-address)))) + '(("^nnimap\\+distorted:crap\\." + (address (concat "mdw-nospam-" + (substring gnus-newsgroup-name (match-end 0)) + "@distorted.org.uk"))) + ("^nnimap\\+[^:]+-chiark:" + ("X-mdw-Send-Mail" "chiark-smtp")) + ("^nnimap\\+google:" + (address "distorted.mdw@gmail.com") + ("X-mdw-Send-Mail" "gmail-smtp")))) ;; The actual splitting rules. -(setq nnimap-split-fancy - '(| (to "\\<\\(news\\|newsmaster\\|usenet\\)@" "admin.news" t) - (to "\\