diff --git a/.urlview b/.urlview new file mode 100644 index 0000000..ea74888 --- /dev/null +++ b/.urlview @@ -0,0 +1 @@ +COMMAND xdg-open %s diff --git a/Makefile b/Makefile index 3ff8863..38f8a5b 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ LN_FLAGS = -sfnv MKDIR_FLAGS = -pv -home_symlinks = aliases Xresources xbindkeysrc xinitrc +home_symlinks = aliases Xresources xbindkeysrc xinitrc offlineimaprc mutt zprofile zshrc config_copy = diff --git a/aliases b/aliases index eb52306..1d82af4 100644 --- a/aliases +++ b/aliases @@ -1,3 +1,4 @@ alias irc="ssh -6 pew@paul.walko.org" alias irc-admin="ssh -6 ubuntu@paul.walko.org" alias hackbox="ssh -p2222 -6 paul@cabinet.walko.org" +alias mutt="export CURR_DIR=$PWD && mutt && cd $CURR_DIR" diff --git a/mutt/accounts/gmail b/mutt/accounts/gmail new file mode 100644 index 0000000..511c375 --- /dev/null +++ b/mutt/accounts/gmail @@ -0,0 +1,6 @@ +set from = "paulsw.pw@gmail.com" +set sendmail = "/usr/bin/msmtp -a gmail" +set mbox = "+gmail/archive" +set postponed = "+gmail/drafts" + +color status red default diff --git a/mutt/accounts/vt b/mutt/accounts/vt new file mode 100644 index 0000000..e0f6d7e --- /dev/null +++ b/mutt/accounts/vt @@ -0,0 +1,6 @@ +set from = "pwalko@vt.edu" +set sendmail = "/usr/bin/msmtp -a vt" +set mbox = "+vt/archive" +set postponed = "+vt/drafts" + +color status green default diff --git a/mutt/accounts/walko b/mutt/accounts/walko new file mode 100644 index 0000000..ddb8ae4 --- /dev/null +++ b/mutt/accounts/walko @@ -0,0 +1,6 @@ +set from = "paul@walko.org" +set sendmail = "/usr/bin/msmtp -a walko" +set mbox = "+walko/archive" +set postponed = "+walko/drafts" + +color status cyan default diff --git a/mutt/colors b/mutt/colors new file mode 100644 index 0000000..4e01c01 --- /dev/null +++ b/mutt/colors @@ -0,0 +1,161 @@ +# Slightly edited solarized theme http://ethanschoonover.com/solarized +# Colors +# vim: filetype=muttrc + +mono index bold ~N +mono index bold ~F +mono index bold ~T +mono index bold ~D +# +# make sure that you are using mutt linked against slang, not ncurses, or +# suffer the consequences of weird color issues. use "mutt -v" to check this. + +# custom body highlights ----------------------------------------------- +# highlight my name and other personally relevant strings +#color body color136 color234 "(ethan|schoonover)" +# custom index highlights ---------------------------------------------- +# messages which mention my name in the body +#color index color136 color234 "~b \"phil(_g|\!| gregory| gold)|pgregory\" !~N !~T !~F !~p !~P" +#color index J_cream color230 "~b \"phil(_g|\!| gregory| gold)|pgregory\" ~N !~T !~F !~p !~P" +#color index color136 color37 "~b \"phil(_g|\!| gregory| gold)|pgregory\" ~T !~F !~p !~P" +#color index color136 J_magent "~b \"phil(_g|\!| gregory| gold)|pgregory\" ~F !~p !~P" +## messages which are in reference to my mails +#color index J_magent color234 "~x \"(mithrandir|aragorn)\\.aperiodic\\.net|thorin\\.hillmgt\\.com\" !~N !~T !~F !~p !~P" +#color index J_magent color230 "~x \"(mithrandir|aragorn)\\.aperiodic\\.net|thorin\\.hillmgt\\.com\" ~N !~T !~F !~p !~P" +#color index J_magent color37 "~x \"(mithrandir|aragorn)\\.aperiodic\\.net|thorin\\.hillmgt\\.com\" ~T !~F !~p !~P" +#color index J_magent color160 "~x \"(mithrandir|aragorn)\\.aperiodic\\.net|thorin\\.hillmgt\\.com\" ~F !~p !~P" + +# for background in 16 color terminal, valid background colors include: +# base03, bg, black, any of the non brights + +# basic colors --------------------------------------------------------- +color normal color244 color234 +color error color160 color234 +color tilde color235 color234 +color message color37 color234 +color markers color160 color254 +color attachment color254 color234 +color search color61 color234 +#color status J_black J_status +color status color241 color235 +color indicator color234 color136 +color tree color136 color234 # arrow in threads + +# basic monocolor screen +mono bold bold +mono underline underline +mono indicator reverse +mono error bold + +# index ---------------------------------------------------------------- + +# color index color160 color234 "~D(!~p|~p)" # deleted +# color index color235 color234 ~F # flagged +# color index color166 color234 ~= # duplicate messages +# color index color240 color234 "~A!~N!~T!~p!~Q!~F!~D!~P" # the rest +# color index J_base color234 "~A~N!~T!~p!~Q!~F!~D" # the rest, new +color index color160 color234 "~A" # all messages +color index color166 color234 "~E" # expired messages +color index color015 color027 "~N" # new messages +color index color33 color234 "~O" # old messages +color index color61 color234 "~Q" # messages that have been replied to +color index color246 color234 "~R" # read messages +color index color015 color027 "~U" # unread messages +color index color015 color027 "~U~$" # unread, unreferenced messages +color index color241 color234 "~v" # messages part of a collapsed thread +color index color241 color234 "~P" # messages from me +color index color37 color234 "~p!~F" # messages to me +color index color015 color027 "~N~p!~F" # new messages to me +color index color015 color027 "~U~p!~F" # unread messages to me +color index color246 color234 "~R~p!~F" # messages to me +color index color160 color235 "~F" # flagged messages +color index color160 color235 "~F~p" # flagged messages to me +color index color160 color017 "~N~F" # new flagged messages +color index color160 color017 "~N~F~p" # new flagged messages to me +color index color160 color017 "~U~F~p" # new flagged messages to me +color index color235 color160 "~D" # deleted messages +color index color245 color234 "~v~(!~N)" # collapsed thread with no unread +color index color136 color234 "~v~(~N)" # collapsed thread with some unread +color index color64 color234 "~N~v~(~N)" # collapsed thread with unread parent +# statusbg used to indicated flagged when foreground color shows other status +# for collapsed thread +color index color160 color235 "~v~(~F)!~N" # collapsed thread with flagged, no unread +color index color136 color235 "~v~(~F~N)" # collapsed thread with some unread & flagged +color index color64 color235 "~N~v~(~F~N)" # collapsed thread with unread parent & flagged +color index color64 color235 "~N~v~(~F)" # collapsed thread with unread parent, no unread inside, but some flagged +color index color37 color235 "~v~(~p)" # collapsed thread with unread parent, no unread inside, some to me directly +color index color136 color160 "~v~(~D)" # thread with deleted (doesn't differentiate between all or partial) +#color index color136 color234 "~(~N)" # messages in threads with some unread +#color index color64 color234 "~S" # superseded messages +color index color076 color234 "~T" # tagged messages +color index color136 color160 "~=" # duplicated messages + +# message headers ------------------------------------------------------ + +#color header color240 color234 "^" +color hdrdefault color240 color234 +color header color241 color234 "^(From)" +color header color33 color234 "^(Subject)" + +# body ----------------------------------------------------------------- + +color quoted color33 color234 +color quoted1 color37 color234 +color quoted2 color136 color234 +color quoted3 color160 color234 +color quoted4 color166 color234 + +color signature color240 color234 +color bold color235 color234 +color underline color235 color234 +color normal color244 color234 +# +color body color245 color234 "[;:][-o][)/(|]" # emoticons +color body color245 color234 "[;:][)(|]" # emoticons +color body color245 color234 "[*]?((N)?ACK|CU|LOL|SCNR|BRB|BTW|CWYL|\ + |FWIW|vbg|GD&R|HTH|HTHBE|IMHO|IMNSHO|\ + |IRL|RTFM|ROTFL|ROFL|YMMV)[*]?" +color body color245 color234 "[ ][*][^*]*[*][ ]?" # more emoticon? +color body color245 color234 "[ ]?[*][^*]*[*][ ]" # more emoticon? + +## pgp + +color body color160 color234 "(BAD signature)" +color body color37 color234 "(Good signature)" +color body color234 color234 "^gpg: Good signature .*" +color body color241 color234 "^gpg: " +color body color241 color160 "^gpg: BAD signature from.*" +mono body bold "^gpg: Good signature" +mono body bold "^gpg: BAD signature from.*" + +# yes, an insance URL regex +color body color160 color234 "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]" +# and a heavy handed email regex +#color body J_magent color234 "((@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]),)*@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]):)?[0-9a-z_.+%$-]+@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\])" + +# Various smilies and the like +#color body color230 color234 "<[Gg]>" # +#color body color230 color234 "<[Bb][Gg]>" # +#color body color136 color234 " [;:]-*[})>{(<|]" # :-) etc... +# *bold* +#color body color33 color234 "(^|[[:space:][:punct:]])\\*[^*]+\\*([[:space:][:punct:]]|$)" +#mono body bold "(^|[[:space:][:punct:]])\\*[^*]+\\*([[:space:][:punct:]]|$)" +# _underline_ +#color body color33 color234 "(^|[[:space:][:punct:]])_[^_]+_([[:space:][:punct:]]|$)" +#mono body underline "(^|[[:space:][:punct:]])_[^_]+_([[:space:][:punct:]]|$)" +# /italic/ (Sometimes gets directory names) +#color body color33 color234 "(^|[[:space:][:punct:]])/[^/]+/([[:space:][:punct:]]|$)" +#mono body underline "(^|[[:space:][:punct:]])/[^/]+/([[:space:][:punct:]]|$)" + +# Border lines. +#color body color33 color234 "( *[-+=#*~_]){6,}" + +#folder-hook . "color status J_black J_status " +#folder-hook gmail/inbox "color status J_black color136 " +#folder-hook gmail/important "color status J_black color136 " + + +## Colour definitions when on a mono screen +mono bold bold +mono underline underline +mono indicator reverse diff --git a/mutt/mailcap b/mutt/mailcap new file mode 100644 index 0000000..c981380 --- /dev/null +++ b/mutt/mailcap @@ -0,0 +1,18 @@ +# MS Word documents +application/msword; ~/.mutt/view_attachment.sh %s "-" '/usr/bin/libreoffice' + +# Images +image/jpg; ~/.mutt/view_attachment.sh %s jpg +image/jpeg; ~/.mutt/view_attachment.sh %s jpg +image/pjpeg; ~/.mutt/view_attachment.sh %s jpg +image/png; ~/.mutt/view_attachment.sh %s png +image/gif; ~/.mutt/view_attachment.sh %s gif + +# PDFs +application/pdf; ~/.mutt/view_attachment.sh %s pdf + +# HTML +text/html; ~/.mutt/view_attachment.sh %s html + +# Unidentified files +application/octet-stream; ~/.mutt/view_attachment.sh %s "-" diff --git a/mutt/msmtp.log b/mutt/msmtp.log new file mode 100644 index 0000000..4b73ad0 --- /dev/null +++ b/mutt/msmtp.log @@ -0,0 +1,10 @@ +Jun 18 16:35:25 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=paulsw.pw@gmail.com mailsize=322 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497818126 y19sm5220220qkb.10 - gsmtp' exitcode=EX_OK +Jun 18 17:21:26 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=echarlie@vt.edu mailsize=382 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497820888 m51sm5793379qtb.62 - gsmtp' exitcode=EX_OK +Jun 18 18:45:10 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=echarlie@vt.edu mailsize=2633 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497825911 b6sm5292803qkc.68 - gsmtp' exitcode=EX_OK +Jun 18 18:56:33 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=echarlie@vt.edu mailsize=2532 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497826594 t13sm5962291qtc.22 - gsmtp' exitcode=EX_OK +Jun 18 18:57:12 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=paul@walko.org mailsize=2840 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497826633 e32sm6205306qte.1 - gsmtp' exitcode=EX_OK +Jun 18 19:17:04 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=echarlie@vt.edu mailsize=1630 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497827825 c6sm6069494qtb.56 - gsmtp' exitcode=EX_OK +Jun 18 19:20:13 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=paulsw.pw@gmail.com mailsize=2421 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497828014 l207sm5548050qke.36 - gsmtp' exitcode=EX_OK +Jun 18 19:37:38 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=paul@walko.org mailsize=1546 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497829059 r9sm6148728qtr.31 - gsmtp' exitcode=EX_OK +Jun 18 20:17:05 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=paulsw.pw@gmail.com mailsize=579645 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497831426 g6sm5462018qkb.48 - gsmtp' exitcode=EX_OK +Jun 18 20:55:43 host=smtp.gmail.com tls=on auth=on user=pwalko@vt.edu from=pwalko@vt.edu recipients=joe@walko.org mailsize=1411 smtpstatus=250 smtpmsg='250 2.0.0 OK 1497833744 u9sm6164611qtb.29 - gsmtp' exitcode=EX_OK diff --git a/mutt/muttrc b/mutt/muttrc new file mode 100644 index 0000000..f4627ca --- /dev/null +++ b/mutt/muttrc @@ -0,0 +1,62 @@ +# Compose things +set realname = "Paul Walko" +set sendmail = "/usr/bin/msmtp" +set sendmail_wait = 0 +set editor = "vim" + +# General things +set folder = ~/.mail +set mailcap_path = ~/.mutt/mailcap +set tmpdir = ~/Desktop/temp + +set wait_key = no +set mbox_type = Maildir +set timeout = 3 +set mail_check = 0 +unset move +set delete +unset confirmappend +set quit +source ~/.mutt/colors +set crypt_use_gpgme = yes + +# Sidebar thigns +set sidebar_visible = yes +set sidebar_width = 14 +bind index sidebar-next +bind index sidebar-prev +bind index sidebar-open + +# Indexing +bind index g noop +bind index gg first-entry +bind index G last-entry +bind index R group-reply +bind index sync-mailbox + +# Pager bindings +bind pager g noop +bind pager gg top +bind pager G bottom +bind pager R group-reply +bind attach view-mailcap + +# Macros +macro pager \Cu "|urlview" "call urlview to open links" + +# Account Settings +set spoolfile = "+vt/INBOX" + +mailboxes +vt/INBOX \ + +gmail/INBOX \ + +walko/INBOX \ + +gmail/updates \ + +gmail/social \ + +vt/xen-devel \ + +vt/OCVT \ + +vt/CISCO \ + +vt/SWAT + +folder-hook vt/* source ~/.mutt/accounts/vt +folder-hook walko/* source ~/.mutt/accounts/walko +folder-hook gmail/* source ~/.mutt/accounts/gmail diff --git a/mutt/offlineimap.py b/mutt/offlineimap.py new file mode 100644 index 0000000..7e9cdb9 --- /dev/null +++ b/mutt/offlineimap.py @@ -0,0 +1,8 @@ +from subprocess import check_output +import os + +def get_pass(mailbox): + gpg = [ + 'pass', 'email/{}'.format(mailbox) + ] + return check_output(gpg).strip() diff --git a/mutt/offlineimap.pyc b/mutt/offlineimap.pyc new file mode 100644 index 0000000..e8ef19b Binary files /dev/null and b/mutt/offlineimap.pyc differ diff --git a/mutt/passwords/dumb.gpg b/mutt/passwords/dumb.gpg new file mode 100644 index 0000000..a30b449 Binary files /dev/null and b/mutt/passwords/dumb.gpg differ diff --git a/mutt/view_attachment.sh b/mutt/view_attachment.sh new file mode 100755 index 0000000..2d5d38d --- /dev/null +++ b/mutt/view_attachment.sh @@ -0,0 +1,127 @@ +#!/bin/bash +# +# Author: Eric Gebhart +# +# Purpose: To be called by mutt as indicated by .mailcap to handle mail attachments. +# +# Function: Copy the given file to a temporary directory so mutt +# Won't delete it before it is read by the application. +# +# Along the way, discern the file type or use the type +# That is given. +# +# Finally use 'open' or 'open -a' if the third argument is +# given. +# +# +# Arguments: +# +# $1 is the file +# $2 is the type - for those times when file magic isn't enough. +# I frequently get html mail that has no extension +# and file can't figure out what it is. +# +# Set to '-' if you don't want the type to be discerned. +# Many applications can sniff out the type on their own. +# And they do a better job of it too. +# +# Open Office and MS Office for example. +# +# $3 is open with. as in open -a 'open with this .app' foo.xls +# +# Examples: These are typical .mailcap entries which use this program. +# +# Image/JPEG; /Users/vdanen/.mutt/view_attachment %s +# Image/PNG; /Users/vdanen/.mutt/view_attachment %s +# Image/GIF; /Users/vdanen/.mutt/view_attachment %s +# +# Application/PDF; /Users/vdanen/.mutt/view_attachment %s +# +# #This HTML example passes the type because file doesn't always work and +# #there aren't always extensions. +# +# text/html; /Users/vdanen/.mutt/view_attachment %s html +# +# # If your Start OpenOffice.org.app is spelled with a space like this one, <-- +# # then you'll need to precede the space with a \ . I found that too painful +# # and renamed it with an _. +# +# Application/vnd.ms-excel; /Users/vdanen/.mutt/view_attachment %s "-" '/Applications/OpenOffice.org1.1.2/Start_OpenOffice.org.app' +# Application/msword; /Users/vdanen/.mutt/view_attachment %s "-" '/Applications/OpenOffice.org1.1.2/Start_OpenOffice.org.app' +# +# +# Debugging: If you have problems set debug to 'yes'. That will cause a debug file +# be written to /tmp/mutt_attach/debug so you can see what is going on. +# +# See Also: The man pages for open, file, basename +# + +# the tmp directory to use. +tmpdir="$HOME/Desktop/.tmp/mutt_attach" + +# the name of the debug file if debugging is turned on. +debug_file=$tmpdir/debug + +# debug. yes or no. +#debug="no" +debug="yes" + +type=$2 +open_with=$3 + +# make sure the tmpdir exists. +mkdir -p $tmpdir + +# clean it out. Remove this if you want the directory +# to accumulate attachment files. +rm -f $tmpdir/* + +# Mutt puts everything in /tmp by default. +# This gets the basic filename from the full pathname. +filename=`basename $1` + +# get rid of the extenson and save the name for later. +file=`echo $filename | cut -d"." -f1` + +if [ $debug = "yes" ]; then + echo "1:" $1 " 2:" $2 " 3:" $3 > $debug_file + echo "Filename:"$filename >> $debug_file + echo "File:"$file >> $debug_file + echo "===========================" >> $debug_file +fi + +# if the type is empty then try to figure it out. +if [ -z $type ]; then + file $1 + type=`file -bi $1 | cut -d"/" -f2` +fi + +# if the type is '-' then we don't want to mess with type. +# Otherwise we are rebuilding the name. Either from the +# type that was passed in or from the type we discerned. +if [ $type = "-" ]; then + newfile=$filename +else + newfile=$file.$type +fi + +newfile=$tmpdir/$newfile + +# Copy the file to our new spot so mutt can't delete it +# before the app has a chance to view it. +cp $1 $newfile + +if [ $debug = "yes" ]; then + echo "File:" $file "TYPE:" $type >> $debug_file + echo "Newfile:" $newfile >> $debug_file + echo "Open With:" $open_with >> $debug_file +fi + +# If there's no 'open with' then we can let preview do it's thing. +# Otherwise we've been told what to use. So do an open -a. + +if [ -z $open_with ]; then + xdg-open $newfile +else + xdg-open -a "$open_with" $newfile +fi diff --git a/offlineimaprc b/offlineimaprc new file mode 100644 index 0000000..6253761 --- /dev/null +++ b/offlineimaprc @@ -0,0 +1,134 @@ +[general] +ui = ttyui +accounts = vt, walko, gmail +maxsyncaccounts = 3 +pythonfile = ~/.mutt/offlineimap.py + +############################ +### Accounts +# vt +[Account vt] +localrepository = vt-local +remoterepository = vt-remote +autorefresh = 0.5 +quick = 10 + +# walko +[Account walko] +localrepository = walko-local +remoterepository = walko-remote +autorefresh = 0.5 +quick = 10 + +# gmail +[Account gmail] +localrepository = gmail-local +remoterepository = gmail-remote +autorefresh = 0.5 +quick = 10 + +########################### +### Repositories +# vt +[Repository vt-local] +type = Maildir +localfolders = ~/.mail/vt +nametrans = lambda folder: { + 'drafts': '[Gmail]/Drafts', + 'sent': '[Gmail]/Sent Mail', + 'flagged': '[Gmail]/Starred', + 'trash': '[Gmail]/Trash', + 'archive': '[Gmail]/All Mail', + }.get(folder, folder) + +[Repository vt-remote] +sslcacertfile = /etc/ssl/certs/ca-certificates.crt +maxconnections = 1 +type = Gmail +keepalive = 60 +holdconnectionopen = yes +remoteuser = pwalko@vt.edu +remotepasseval = get_pass("vt") +realdelete = no +nametrans = lambda folder: { + '[Gmail]/Drafts': 'drafts', + '[Gmail]/Sent Mail': 'sent', + '[Gmail]/Starred': 'flagged', + '[Gmail]/Trash': 'trash', + '[Gmail]/All Mail': 'archive', + }.get(folder, folder) +folderfilter = lambda folder: folder not in [ + '[Gmail]/Trash', + '[Gmail]/Spam', + '[Gmail]/Important', + '[Gmail]/Chats', + ] + +# walko +[Repository walko-local] +type = Maildir +localfolders = ~/.mail/walko +nametrans = lambda folder: { + 'drafts': '[Gmail]/Drafts', + 'sent': '[Gmail]/Sent Mail', + 'flagged': '[Gmail]/Starred', + 'trash': '[Gmail]/Trash', + 'archive': '[Gmail]/All Mail', + }.get(folder, folder) + +[Repository walko-remote] +sslcacertfile = /etc/ssl/certs/ca-certificates.crt +maxconnections = 1 +type = Gmail +keepalive = 60 +holdconnectionopen = yes +remoteuser = paul@walko.org +remotepasseval = get_pass("walko") +realdelete = no +nametrans = lambda folder: { + '[Gmail]/Drafts': 'drafts', + '[Gmail]/Sent Mail': 'sent', + '[Gmail]/Starred': 'flagged', + '[Gmail]/Trash': 'trash', + '[Gmail]/All Mail': 'archive', + }.get(folder, folder) +folderfilter = lambda folder: folder not in [ + '[Gmail]/Trash', + '[Gmail]/Important', + '[Gmail]/Chats', + ] + +# gmail +[Repository gmail-local] +type = Maildir +localfolders = ~/.mail/gmail +nametrans = lambda folder: { + 'drafts': '[Gmail]/Drafts', + 'sent': '[Gmail]/Sent Mail', + 'flagged': '[Gmail]/Starred', + 'trash': '[Gmail]/Trash', + 'archive': '[Gmail]/All Mail', + }.get(folder, folder) + +[Repository gmail-remote] +sslcacertfile = /etc/ssl/certs/ca-certificates.crt +maxconnections = 1 +type = Gmail +keepalive = 60 +holdconnectionopen = yes +remoteuser = paulsw.pw@gmail.com +remotepasseval = get_pass("gmail") +realdelete = no +nametrans = lambda folder: { + '[Gmail]/Drafts': 'drafts', + '[Gmail]/Sent Mail': 'sent', + '[Gmail]/Starred': 'flagged', + '[Gmail]/Trash': 'trash', + '[Gmail]/All Mail': 'archive', + }.get(folder, folder) +folderfilter = lambda folder: folder not in [ + '[Gmail]/Trash', + '[Gmail]/Spam', + '[Gmail]/Important', + '[Gmail]/Chats', + ] diff --git a/xbindkeysrc b/xbindkeysrc index 70e19e6..1288081 100644 --- a/xbindkeysrc +++ b/xbindkeysrc @@ -1,13 +1,13 @@ -"amixer set Master 5%+" +"amixer -c 1 set Master 5%+" XF86AudioRaiseVolume -"amixer set Master 5%-" +"amixer -c 1 set Master 5%-" XF86AudioLowerVolume -"amixer set Master toggle" +"amixer -c 1 set Master toggle && amixer -c 1 set Speaker unmute" XF86AudioMute -"amixer set Capture toggle" +"amixer -c 1 set Capture toggle" XF86AudioMicMute "xbacklight -inc 5" diff --git a/zprofile b/zprofile new file mode 100644 index 0000000..2319699 --- /dev/null +++ b/zprofile @@ -0,0 +1,2 @@ +gpg2 --quiet --no-tty --batch -d /home/paul/.mutt/passwords/dumb.gpg > /dev/null +systemctl --user start offlineimap > /dev/null diff --git a/zshrc b/zshrc new file mode 100644 index 0000000..6d8e705 --- /dev/null +++ b/zshrc @@ -0,0 +1,88 @@ +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:/usr/local/bin:$PATH + +# Path to your oh-my-zsh installation. + export ZSH=/home/paul/.oh-my-zsh + +# Set name of the theme to load. Optionally, if you set this to "random" +# it'll load a random theme each time that oh-my-zsh is loaded. +# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes +ZSH_THEME="robbyrussell" + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. Case +# sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment the following line to disable bi-weekly auto-update checks. +# DISABLE_AUTO_UPDATE="true" + +# Uncomment the following line to change how often to auto-update (in days). +# export UPDATE_ZSH_DAYS=13 + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git) + +source $ZSH/oh-my-zsh.sh + +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='mvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch x86_64" + +# ssh +# export SSH_KEY_PATH="~/.ssh/rsa_id" + +# Set personal aliases, overriding those provided by oh-my-zsh libs, +# plugins, and themes. Aliases can be placed here, though oh-my-zsh +# users are encouraged to define aliases within the ZSH_CUSTOM folder. +# For a full list of active aliases, run `alias`. +# +# Example aliases +# alias zshconfig="mate ~/.zshrc" +# alias ohmyzsh="mate ~/.oh-my-zsh" + +export GPG_TTY=$(tty) +source ~/.aliases