-(setq
- mail-user-agent 'gnus-user-agent
- read-mail-command 'gnus)
-
-(use-package gnus
- :bind (("s-m" . gnus-plugged)
- ("s-M" . gnus-unplugged)
- ("C-c a m" . gnus-plugged)
- ("C-c a M" . gnus-unplugged))
- :init
- (setq
- gnus-select-method '(nnnil "")
- gnus-secondary-select-methods
- '((nnimap "shemshak"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "amin@shemshak.local"))
- (nnimap "gnu"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "bandali@gnu.local")
- (nnimap-inbox "INBOX")
- (nnimap-split-methods 'nnimap-split-fancy)
- (nnimap-split-fancy (|
- ;; (: gnus-registry-split-fancy-with-parent)
- ;; (: gnus-group-split-fancy "INBOX" t "INBOX")
- ;; gnu
- (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1")
- ;; gnus
- (list ".*<\\(.*\\)\\.gnus\\.org>.*" "l.\\1")
- ;; libreplanet
- (list ".*<\\(.*\\)\\.libreplanet\\.org>.*" "l.\\1")
- ;; *.lists.sr.ht, omitting one dot if present
- ;; add more \\.?\\([^.]*\\) if needed
- (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists.sr.ht>.*" "l.~\\1.\\2\\3")
- ;; webmasters
- (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters")
- ;; other
- (list ".*atreus.freelists.org" "l.atreus")
- (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec")
- ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d
- (list ".*haskell-cafe.haskell.org" "l.haskell-cafe")
- ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u
- ;; (list ".*dev.lists.parabola.nu" "l.parabola-dev") ;u
- ;; ----------------------------------
- ;; legend: (u)nsubscribed | (d)ead
- ;; ----------------------------------
- ;; spam
- ("X-Spam-Flag" "YES" "Junk")
- ;; otherwise, leave mail in INBOX
- "INBOX")))
- (nnimap "uw"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "abandali@uw.local")
- (nnimap-inbox "INBOX")
- (nnimap-split-methods 'nnimap-split-fancy)
- (nnimap-split-fancy (|
- ;; (: gnus-registry-split-fancy-with-parent)
- ;; se212-f19
- ("subject" "SE\\s-?212" "course.se212-f19")
- (from "SE\\s-?212" "course.se212-f19")
- ;; catch-all
- "INBOX")))
- (nnimap "csc"
- (nnimap-stream plain)
- (nnimap-address "127.0.0.1")
- (nnimap-server-port 143)
- (nnimap-authenticator plain)
- (nnimap-user "abandali@csc.uw.local")))
- gnus-message-archive-group "nnimap+gnu:INBOX"
- gnus-parameters
- '(("l\\.atreus"
- (to-address . "atreus@freelists.org")
- (to-list . "atreus@freelists.org"))
- ("l\\.deepspec"
- (to-address . "deepspec@lists.cs.princeton.edu")
- (to-list . "deepspec@lists.cs.princeton.edu")
- (list-identifier . "\\[deepspec\\]"))
- ("l\\.emacs-devel"
- (to-address . "emacs-devel@gnu.org")
- (to-list . "emacs-devel@gnu.org"))
- ("l\\.help-gnu-emacs"
- (to-address . "help-gnu-emacs@gnu.org")
- (to-list . "help-gnu-emacs@gnu.org"))
- ("l\\.info-gnu-emacs"
- (to-address . "info-gnu-emacs@gnu.org")
- (to-list . "info-gnu-emacs@gnu.org"))
- ("l\\.emacs-orgmode"
- (to-address . "emacs-orgmode@gnu.org")
- (to-list . "emacs-orgmode@gnu.org")
- (list-identifier . "\\[O\\]"))
- ("l\\.emacs-tangents"
- (to-address . "emacs-tangents@gnu.org")
- (to-list . "emacs-tangents@gnu.org"))
- ("l\\.emacsconf-committee"
- (to-address . "emacsconf-committee@gnu.org")
- (to-list . "emacsconf-committee@gnu.org"))
- ("l\\.emacsconf-discuss"
- (to-address . "emacsconf-discuss@gnu.org")
- (to-list . "emacsconf-discuss@gnu.org"))
- ("l\\.emacsconf-register"
- (to-address . "emacsconf-register@gnu.org")
- (to-list . "emacsconf-register@gnu.org"))
- ("l\\.emacsconf-submit"
- (to-address . "emacsconf-submit@gnu.org")
- (to-list . "emacsconf-submit@gnu.org"))
- ("l\\.fencepost-users"
- (to-address . "fencepost-users@gnu.org")
- (to-list . "fencepost-users@gnu.org")
- (list-identifier . "\\[Fencepost-users\\]"))
- ("l\\.gnewsense-art"
- (to-address . "gnewsense-art@nongnu.org")
- (to-list . "gnewsense-art@nongnu.org")
- (list-identifier . "\\[gNewSense-art\\]"))
- ("l\\.gnewsense-dev"
- (to-address . "gnewsense-dev@nongnu.org")
- (to-list . "gnewsense-dev@nongnu.org")
- (list-identifier . "\\[Gnewsense-dev\\]"))
- ("l\\.gnewsense-users"
- (to-address . "gnewsense-users@nongnu.org")
- (to-list . "gnewsense-users@nongnu.org")
- (list-identifier . "\\[gNewSense-users\\]"))
- ("l\\.gnunet-developers"
- (to-address . "gnunet-developers@gnu.org")
- (to-list . "gnunet-developers@gnu.org")
- (list-identifier . "\\[GNUnet-developers\\]"))
- ("l\\.help-gnunet"
- (to-address . "help-gnunet@gnu.org")
- (to-list . "help-gnunet@gnu.org")
- (list-identifier . "\\[Help-gnunet\\]"))
- ("l\\.bug-gnuzilla"
- (to-address . "bug-gnuzilla@gnu.org")
- (to-list . "bug-gnuzilla@gnu.org")
- (list-identifier . "\\[Bug-gnuzilla\\]"))
- ("l\\.gnuzilla-dev"
- (to-address . "gnuzilla-dev@gnu.org")
- (to-list . "gnuzilla-dev@gnu.org")
- (list-identifier . "\\[Gnuzilla-dev\\]"))
- ("l\\.guile-devel"
- (to-address . "guile-devel@gnu.org")
- (to-list . "guile-devel@gnu.org"))
- ("l\\.guile-user"
- (to-address . "guile-user@gnu.org")
- (to-list . "guile-user@gnu.org"))
- ("l\\.guix-devel"
- (to-address . "guix-devel@gnu.org")
- (to-list . "guix-devel@gnu.org"))
- ("l\\.help-guix"
- (to-address . "help-guix@gnu.org")
- (to-list . "help-guix@gnu.org"))
- ("l\\.info-guix"
- (to-address . "info-guix@gnu.org")
- (to-list . "info-guix@gnu.org"))
- ("l\\.savannah-hackers-public"
- (to-address . "savannah-hackers-public@gnu.org")
- (to-list . "savannah-hackers-public@gnu.org"))
- ("l\\.savannah-users"
- (to-address . "savannah-users@gnu.org")
- (to-list . "savannah-users@gnu.org"))
- ("l\\.www-commits"
- (to-address . "www-commits@gnu.org")
- (to-list . "www-commits@gnu.org"))
- ("l\\.www-discuss"
- (to-address . "www-discuss@gnu.org")
- (to-list . "www-discuss@gnu.org"))
- ("l\\.haskell-art"
- (to-address . "haskell-art@we.lurk.org")
- (to-list . "haskell-art@we.lurk.org")
- (list-identifier . "\\[haskell-art\\]"))
- ("l\\.haskell-cafe"
- (to-address . "haskell-cafe@haskell.org")
- (to-list . "haskell-cafe@haskell.org")
- (list-identifier . "\\[Haskell-cafe\\]"))
- ("l\\.notmuch"
- (to-address . "notmuch@notmuchmail.org")
- (to-list . "notmuch@notmuchmail.org"))
- ("l\\.parabola-dev"
- (to-address . "dev@lists.parabola.nu")
- (to-list . "dev@lists.parabola.nu")
- (list-identifier . "\\[Dev\\]"))
- ("l\\.~bandali\\.public-inbox"
- (to-address . "~bandali/public-inbox@lists.sr.ht")
- (to-list . "~bandali/public-inbox@lists.sr.ht"))
- ("l\\.~sircmpwn\\.free-writers-club"
- (to-address . "~sircmpwn/free-writers-club@lists.sr.ht")
- (to-list . "~sircmpwn/free-writers-club@lists.sr.ht"))
- ("l\\.~sircmpwn\\.srht-admins"
- (to-address . "~sircmpwn/sr.ht-admins@lists.sr.ht")
- (to-list . "~sircmpwn/sr.ht-admins@lists.sr.ht"))
- ("l\\.~sircmpwn\\.srht-announce"
- (to-address . "~sircmpwn/sr.ht-announce@lists.sr.ht")
- (to-list . "~sircmpwn/sr.ht-announce@lists.sr.ht"))
- ("l\\.~sircmpwn\\.srht-dev"
- (to-address . "~sircmpwn/sr.ht-dev@lists.sr.ht")
- (to-list . "~sircmpwn/sr.ht-dev@lists.sr.ht"))
- ("l\\.~sircmpwn\\.srht-discuss"
- (to-address . "~sircmpwn/sr.ht-discuss@lists.sr.ht")
- (to-list . "~sircmpwn/sr.ht-discuss@lists.sr.ht"))
- ("webmasters"
- (to-address . "webmasters@gnu.org")
- (to-list . "webmasters@gnu.org"))
- ("gnu.*"
- (gcc-self . t))
- ("l\\."
- (subscribed . t))
- ("nnimap\\+uw:.*"
- (gcc-self . t)))
- gnus-large-newsgroup 50
- gnus-home-directory (b/var "gnus/")
- gnus-directory (concat gnus-home-directory "news/")
- message-directory (concat gnus-home-directory "mail/")
- nndraft-directory (concat gnus-home-directory "drafts/")
- gnus-save-newsrc-file nil
- gnus-read-newsrc-file nil
- gnus-interactive-exit nil
- gnus-gcc-mark-as-read t)
- :config
+(csetq
+ mail-user-agent 'gnus-user-agent
+ read-mail-command 'gnus
+
+ gnus-select-method '(nnnil "")
+ gnus-secondary-select-methods
+ '((nnimap "shemshak"
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "bandali@shemshak.local"))
+ (nnimap "gnu"
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "bandali@gnu.local")
+ (nnimap-inbox "INBOX")
+ (nnimap-split-methods 'nnimap-split-fancy)
+ (nnimap-split-fancy (|
+ ;; (: gnus-registry-split-fancy-with-parent)
+ ;; (: gnus-group-split-fancy "INBOX" t "INBOX")
+ ;; keep debbugs emails in INBOX
+ (list ".*<\\(.*\\)\\.debbugs\\.gnu\\.org>.*" "INBOX")
+ ;; gnu
+ (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1")
+ ;; gnus
+ (list ".*<\\(.*\\)\\.gnus\\.org>.*" "l.\\1")
+ ;; libreplanet
+ (list ".*<\\(.*\\)\\.libreplanet\\.org>.*" "l.\\1")
+ ;; iana (e.g. tz-announce)
+ (list ".*<\\(.*\\)\\.iana\\.org>.*" "l.\\1")
+ ;; orbitalfox (e.g. gemini)
+ (list ".*<\\(.*\\)\\.lists\\.orbitalfox\\.eu>.*" "l.\\1")
+ ;; *.lists.sr.ht, omitting one dot if present
+ ;; add more \\.?\\([^.]*\\) if needed
+ (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists\\.sr\\.ht>.*" "l.~\\1.\\2\\3")
+ ;; webmasters
+ (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters")
+ ;; other
+ (list ".*atreus.freelists.org" "l.atreus")
+ (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec")
+ ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d
+ (list ".*haskell-cafe.haskell.org" "l.haskell-cafe")
+ ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u
+ (list ".*dev.lists.parabola.nu" "l.parabola-dev")
+ ;; ----------------------------------
+ ;; legend: (u)nsubscribed | (d)ead
+ ;; ----------------------------------
+ ;; spam
+ ("X-Spam_action" "reject" "Junk")
+ ;; otherwise, leave mail in INBOX
+ "INBOX")))
+ (nnimap "uwaterloo"
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "abandali@uwaterloo.local")
+ (nnimap-inbox "INBOX")
+ (nnimap-split-methods 'nnimap-split-fancy)
+ (nnimap-split-fancy (|
+ ;; (: gnus-registry-split-fancy-with-parent)
+ ;; se212-f19
+ ("subject" "SE\\s-?212" "course.se212-f19")
+ (from "SE\\s-?212" "course.se212-f19")
+ ;; catch-all
+ "INBOX")))
+ (nnimap "csc"
+ (nnimap-stream plain)
+ (nnimap-address "127.0.0.1")
+ (nnimap-server-port 143)
+ (nnimap-authenticator plain)
+ (nnimap-user "abandali@csclub.uwaterloo.local")
+ (nnimap-inbox "INBOX")
+ (nnimap-split-methods 'nnimap-split-fancy)
+ (nnimap-split-fancy (|
+ ;; cron reports and other messages from root
+ (from "root@\\(.*\\.\\)?csclub\\.uwaterloo\\.ca" "INBOX")
+ ;; spam
+ ("X-Spam-Flag" "YES" "Junk")
+ ;; catch-all
+ "INBOX")))
+ (nnimap "sfl"
+ (nnimap-stream tls)
+ (nnimap-address "mail.savoirfairelinux.com")
+ (nnimap-user "amin.bandali")))
+ gnus-message-archive-group "nnimap+gnu:INBOX"
+ gnus-parameters
+ '(("l\\.atreus"
+ (to-address . "atreus@freelists.org")
+ (to-list . "atreus@freelists.org"))
+ ("l\\.deepspec"
+ (to-address . "deepspec@lists.cs.princeton.edu")
+ (to-list . "deepspec@lists.cs.princeton.edu")
+ (list-identifier . "\\[deepspec\\]"))
+ ("l\\.emacs-devel"
+ (to-address . "emacs-devel@gnu.org")
+ (to-list . "emacs-devel@gnu.org"))
+ ("l\\.help-gnu-emacs"
+ (to-address . "help-gnu-emacs@gnu.org")
+ (to-list . "help-gnu-emacs@gnu.org"))
+ ("l\\.info-gnu-emacs"
+ (to-address . "info-gnu-emacs@gnu.org")
+ (to-list . "info-gnu-emacs@gnu.org"))
+ ("l\\.emacs-orgmode"
+ (to-address . "emacs-orgmode@gnu.org")
+ (to-list . "emacs-orgmode@gnu.org")
+ (list-identifier . "\\[O\\]"))
+ ("l\\.emacs-tangents"
+ (to-address . "emacs-tangents@gnu.org")
+ (to-list . "emacs-tangents@gnu.org"))
+ ("l\\.emacsconf-committee"
+ (to-address . "emacsconf-committee@gnu.org")
+ (to-list . "emacsconf-committee@gnu.org"))
+ ("l\\.emacsconf-discuss"
+ (to-address . "emacsconf-discuss@gnu.org")
+ (to-list . "emacsconf-discuss@gnu.org"))
+ ("l\\.emacsconf-org"
+ (to-address . "emacsconf-org@gnu.org")
+ (to-list . "emacsconf-org@gnu.org"))
+ ("l\\.emacsconf-org-private"
+ (to-address . "emacsconf-org-private@gnu.org")
+ (to-list . "emacsconf-org-private@gnu.org"))
+ ("l\\.emacsconf-register"
+ (to-address . "emacsconf-register@gnu.org")
+ (to-list . "emacsconf-register@gnu.org"))
+ ("l\\.emacsconf-submit"
+ (to-address . "emacsconf-submit@gnu.org")
+ (to-list . "emacsconf-submit@gnu.org"))
+ ("l\\.fencepost-users"
+ (to-address . "fencepost-users@gnu.org")
+ (to-list . "fencepost-users@gnu.org")
+ (list-identifier . "\\[Fencepost-users\\]"))
+ ("l\\.gnewsense-art"
+ (to-address . "gnewsense-art@nongnu.org")
+ (to-list . "gnewsense-art@nongnu.org")
+ (list-identifier . "\\[gNewSense-art\\]"))
+ ("l\\.gnewsense-dev"
+ (to-address . "gnewsense-dev@nongnu.org")
+ (to-list . "gnewsense-dev@nongnu.org")
+ (list-identifier . "\\[Gnewsense-dev\\]"))
+ ("l\\.gnewsense-users"
+ (to-address . "gnewsense-users@nongnu.org")
+ (to-list . "gnewsense-users@nongnu.org")
+ (list-identifier . "\\[gNewSense-users\\]"))
+ ("l\\.gnunet-developers"
+ (to-address . "gnunet-developers@gnu.org")
+ (to-list . "gnunet-developers@gnu.org")
+ (list-identifier . "\\[GNUnet-developers\\]"))
+ ("l\\.help-gnunet"
+ (to-address . "help-gnunet@gnu.org")
+ (to-list . "help-gnunet@gnu.org")
+ (list-identifier . "\\[Help-gnunet\\]"))
+ ("l\\.bug-gnuzilla"
+ (to-address . "bug-gnuzilla@gnu.org")
+ (to-list . "bug-gnuzilla@gnu.org")
+ (list-identifier . "\\[Bug-gnuzilla\\]"))
+ ("l\\.gnuzilla-dev"
+ (to-address . "gnuzilla-dev@gnu.org")
+ (to-list . "gnuzilla-dev@gnu.org")
+ (list-identifier . "\\[Gnuzilla-dev\\]"))
+ ("l\\.guile-devel"
+ (to-address . "guile-devel@gnu.org")
+ (to-list . "guile-devel@gnu.org"))
+ ("l\\.guile-user"
+ (to-address . "guile-user@gnu.org")
+ (to-list . "guile-user@gnu.org"))
+ ("l\\.guix-devel"
+ (to-address . "guix-devel@gnu.org")
+ (to-list . "guix-devel@gnu.org"))
+ ("l\\.help-guix"
+ (to-address . "help-guix@gnu.org")
+ (to-list . "help-guix@gnu.org"))
+ ("l\\.info-guix"
+ (to-address . "info-guix@gnu.org")
+ (to-list . "info-guix@gnu.org"))
+ ("l\\.savannah-hackers-public"
+ (to-address . "savannah-hackers-public@gnu.org")
+ (to-list . "savannah-hackers-public@gnu.org"))
+ ("l\\.savannah-users"
+ (to-address . "savannah-users@gnu.org")
+ (to-list . "savannah-users@gnu.org"))
+ ("l\\.www-commits"
+ (to-address . "www-commits@gnu.org")
+ (to-list . "www-commits@gnu.org"))
+ ("l\\.www-discuss"
+ (to-address . "www-discuss@gnu.org")
+ (to-list . "www-discuss@gnu.org"))
+ ("l\\.haskell-art"
+ (to-address . "haskell-art@we.lurk.org")
+ (to-list . "haskell-art@we.lurk.org")
+ (list-identifier . "\\[haskell-art\\]"))
+ ("l\\.haskell-cafe"
+ (to-address . "haskell-cafe@haskell.org")
+ (to-list . "haskell-cafe@haskell.org")
+ (list-identifier . "\\[Haskell-cafe\\]"))
+ ("l\\.notmuch"
+ (to-address . "notmuch@notmuchmail.org")
+ (to-list . "notmuch@notmuchmail.org"))
+ ("l\\.parabola-dev"
+ (to-address . "dev@lists.parabola.nu")
+ (to-list . "dev@lists.parabola.nu")
+ (list-identifier . "\\[Dev\\]"))
+ ("l\\.~bandali\\.public-inbox"
+ (to-address . "~bandali/public-inbox@lists.sr.ht")
+ (to-list . "~bandali/public-inbox@lists.sr.ht"))
+ ("l\\.~sircmpwn\\.free-writers-club"
+ (to-address . "~sircmpwn/free-writers-club@lists.sr.ht")
+ (to-list . "~sircmpwn/free-writers-club@lists.sr.ht"))
+ ("l\\.~sircmpwn\\.srht-admins"
+ (to-address . "~sircmpwn/sr.ht-admins@lists.sr.ht")
+ (to-list . "~sircmpwn/sr.ht-admins@lists.sr.ht"))
+ ("l\\.~sircmpwn\\.srht-announce"
+ (to-address . "~sircmpwn/sr.ht-announce@lists.sr.ht")
+ (to-list . "~sircmpwn/sr.ht-announce@lists.sr.ht"))
+ ("l\\.~sircmpwn\\.srht-dev"
+ (to-address . "~sircmpwn/sr.ht-dev@lists.sr.ht")
+ (to-list . "~sircmpwn/sr.ht-dev@lists.sr.ht"))
+ ("l\\.~sircmpwn\\.srht-discuss"
+ (to-address . "~sircmpwn/sr.ht-discuss@lists.sr.ht")
+ (to-list . "~sircmpwn/sr.ht-discuss@lists.sr.ht"))
+ ("webmasters"
+ (to-address . "webmasters@gnu.org")
+ (to-list . "webmasters@gnu.org"))
+ ("gnu.*"
+ (gcc-self . t))
+ ("l\\."
+ (subscribed . t))
+ ("nnimap\\+uwaterloo:.*"
+ (gcc-self . t)))
+ ;; nnimap-record-commands t
+ gnus-large-newsgroup 50
+ gnus-home-directory (b/var "gnus/")
+ gnus-directory (concat gnus-home-directory "news/")
+ message-directory (concat gnus-home-directory "mail/")
+ nndraft-directory (concat gnus-home-directory "drafts/")
+ gnus-save-newsrc-file nil
+ gnus-read-newsrc-file nil
+ gnus-interactive-exit nil
+ gnus-gcc-mark-as-read t)
+
+(with-eval-after-load 'gnus