;;; Commentary:
;; Emacs configuration of Amin Bandali, computer scientist, functional
-;; programmer, and free software advocate. Uses straight.el for
+;; programmer, and free software activist. Uses straight.el for
;; purely functional and fully reproducible package management.
;; Over the years, I've taken inspiration from configurations of many
;;; whoami
(setq user-full-name "Amin Bandali"
- user-mail-address "amin@shemshak.org")
+ user-mail-address "mab@shemshak.org")
\f
;;; comment macro
:config (pixel-scroll-mode 1))
;; ask for GPG passphrase in minibuffer
-(setq epg-pinentry-mode 'loopback)
+(use-feature epg-config
+ :defer 0.4
+ :custom
+ ((epg-gpg-program (executable-find "gpg"))
+ (epg-pinentry-mode 'loopback)))
+(use-feature epg
+ :after epg-config)
+(use-package pinentry
+ :demand
+ :after (epg server)
+ :config
+ (setq pinentry--socket-dir server-socket-dir)
+ (pinentry-start))
;; useful libraries
(require 'cl-lib)
org-catch-invisible-edits 'show-and-error
org-log-done 'time)
(add-to-list 'org-structure-template-alist '("L" . "src emacs-lisp") t)
+ (add-to-list 'org-modules 'org-habit)
:bind
(("C-c a o a" . org-agenda)
:map org-mode-map
(org-mode . flyspell-mode))
:custom
(org-agenda-files '("~/usr/org/todos/personal.org"
+ "~/usr/org/todos/habits.org"
"~/usr/org/todos/masters.org"))
(org-agenda-start-on-weekday 0)
+ (org-agenda-time-leading-zero t)
+ (org-habit-graph-column 44)
(org-latex-packages-alist '(("" "listings") ("" "color")))
:custom-face
'(org-block-begin-line ((t (:foreground "#5a5b5a" :background "#1d1f21"))))
(use-package go-mode)
+(use-package po-mode
+ :hook
+ (po-mode . (lambda () (run-with-timer 0.1 nil 'View-exit))))
+
\f
;;; Theme
(setq
gnus-select-method '(nnnil "")
gnus-secondary-select-methods
- '((nnimap "amin"
+ '((nnimap "shemshak"
(nnimap-stream plain)
(nnimap-address "127.0.0.1")
(nnimap-server-port 143)
(nnimap-authenticator plain)
- (nnimap-user "amin@shemshak.local"))
+ (nnimap-user "mab@shemshak.local"))
(nnimap "gnu"
(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+amin:Sent"
+ gnus-message-archive-group "nnimap+shemshak:Sent"
gnus-parameters
'(("l\\.deepspec"
(to-address . "deepspec@lists.cs.princeton.edu")
(use-feature gnus-art
:config
(setq
+ gnus-buttonized-mime-types '("multipart/\\(signed\\|encrypted\\)")
gnus-visible-headers
(concat gnus-visible-headers "\\|^List-Id:\\|^X-RT-Originator:\\|^User-Agent:")
gnus-sorted-header-list
(defvar mab/signature "Amin Bandali
Free Software Activist | GNU Webmaster & Volunteer
GPG: BE62 7373 8E61 6D6D 1B3A 08E8 A21A 0202 4881 6103
-https://shemshak.org/~amin/")
+https://shemshak.org/~mab")
(defvar mab/uw-signature "Amin Bandali, MMath Student
Cheriton School of Computer Science
University of Waterloo
-https://shemshak.org/~amin/")
+https://shemshak.org/~mab")
(defvar mab/csc-signature "Amin Bandali
Termcom, Computer Science Club
University of Waterloo
-https://shemshak.org/~amin/")
+https://shemshak.org/~mab")
(setq gnus-posting-styles
'((".*"
- (address "amin@shemshak.org")
+ (address "mab@shemshak.org")
(body "\nBest,\n")
(signature mab/signature)
(eval (setq mab/message-cite-say-hi t)))
(use-feature mm-decode
:config
- (setq mm-discouraged-alternatives '("text/html" "text/richtext")))
+ (setq mm-discouraged-alternatives '("text/html" "text/richtext")
+ mm-decrypt-option 'known
+ mm-verify-option 'known))
(use-feature sendmail
:config
message-subscribed-address-functions
'(gnus-find-subscribed-addresses)
message-dont-reply-to-names
- "\\(\\(amin@\\(shemshak\\|bndl\\)\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(mab\\|bandali\\|aminb?\\)@gnu\\.org\\)\\|\\(a\\(min\\.\\)?bandali@uwaterloo\\.ca\\)\\|\\(abandali@csclub\\.uwaterloo\\.ca\\)\\)")
+ "\\(\\(\\(mab\\|amin\\)@shemshak\\.org\\)\\|\\(amin@bndl\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(mab\\|bandali\\|aminb?\\)@gnu\\.org\\)\\|\\(a\\(min\\.\\)?bandali@uwaterloo\\.ca\\)\\|\\(abandali@csclub\\.uwaterloo\\.ca\\)\\)")
(require 'company-ebdb)
:hook (;; (message-setup . mml-secure-message-sign-pgpmime)
(message-mode . flyspell-mode)
:after erc)
(use-package znc
- :straight (:host nil :repo "https://git.shemshak.org/amin/znc.el")
+ :straight (:host nil :repo "https://git.shemshak.org/mab/znc.el")
:bind (("C-c a e e" . znc-erc)
("C-c a e a" . znc-all))
:config
(t (funcall (plist-get (car auth) :secret)))))))
(setq znc-servers
`(("znc.shemshak.org" 1337 t
- ((freenode "amin/freenode" ,pwd)))
+ ((freenode "mab/freenode" ,pwd)))
("znc.shemshak.org" 1337 t
- ((moznet "amin/moznet" ,pwd)))
+ ((moznet "mab/moznet" ,pwd)))
("znc.shemshak.org" 1337 t
- ((oftc "amin/oftc" ,pwd)))))))
+ ((oftc "mab/oftc" ,pwd)))))))
\f
;;; Post initialization