From 3122d81e5c25a9ebe3735a7e2d9153085873f92f Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:35:33 -0500
Subject: vncserver requires xinitrc to be executable

---
 .config/X11/clientrc | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 mode change 100644 => 100755 .config/X11/clientrc

diff --git a/.config/X11/clientrc b/.config/X11/clientrc
old mode 100644
new mode 100755
-- 
cgit v1.2.3-2-g168b


From 6b1e58597e228a886f125efa64e57c3f94bfd259 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:36:01 -0500
Subject: remove bs

---
 .config/login.sh               | 7 -------
 .config/lxpanel/default/config | 2 --
 2 files changed, 9 deletions(-)

diff --git a/.config/login.sh b/.config/login.sh
index 392dc88..53b5238 100644
--- a/.config/login.sh
+++ b/.config/login.sh
@@ -52,13 +52,6 @@ if [[ -z $GPGKEY ]] && [[ -f "${HOME}/.gnupg/gpg.conf" ]]; then
 	echo 'login: Setting GPGKEY'
 	export GPGKEY=`sed -nr 's/^\s*default-key\s+//p' "${HOME}/.gnupg/gpg.conf"`
 fi
-if [[ -f ~/.runtime/gpg ]]; then
-	echo 'login: Setting gpg-agent info:'
-	cat ~/.runtime/gpg
-	. ~/.runtime/gpg
-	export GPG_AGENT_INFO
-	#export SSH_AUTH_SOCK
-fi
 
 # Java
 _JAVA_OPTIONS=''
diff --git a/.config/lxpanel/default/config b/.config/lxpanel/default/config
index e19a7d1..9466011 100644
--- a/.config/lxpanel/default/config
+++ b/.config/lxpanel/default/config
@@ -1,4 +1,2 @@
 [Command]
-FileManager=v-editor %s
-Terminal=urxvt -c %s
 Logout=bash -c 'echo quit >> $WMII_DIR/ctl'
-- 
cgit v1.2.3-2-g168b


From e9319a2e348b33eeb0f5bfcdd26ef885590cf8cb Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:36:26 -0500
Subject: update mail filters

---
 .config/maildirproc/att.rc    | 37 +++++++++++++++++-----------
 .config/maildirproc/purdue.rc | 56 +++++++++++++++++++++++++++++++++++++++----
 2 files changed, 75 insertions(+), 18 deletions(-)

diff --git a/.config/maildirproc/att.rc b/.config/maildirproc/att.rc
index b8ff8f1..6b31260 100644
--- a/.config/maildirproc/att.rc
+++ b/.config/maildirproc/att.rc
@@ -1,6 +1,7 @@
 # -*- mode: python; indent-tabs-mode: t -*-
 
 import os
+import os.path
 import subprocess
 import datetime
 
@@ -27,7 +28,14 @@ def is_to_or_from_re(mail,address):
 		or mail.target.matches(address))
 def move_ham(mail,folder):
 	y = datetime.datetime.now().year
-	mail.move("FOLDERS.Ham."+str(y)+folder)
+	folder = "FOLDERS.Ham."+str(y)+folder
+	dir = processor.maildir_base+"/"+folder
+	if not os.path.isfile(dir+"/maildirfolder"):
+		os.makedirs(dir+"/tmp", 0o777, True)
+		os.makedirs(dir+"/new", 0o777, True)
+		os.makedirs(dir+"/cur", 0o777, True)
+		open(dir+"/maildirfolder", 'a').close()
+	mail.move(folder)
 	
 def bogofilter_auto(mail):
 	p = subprocess.Popen(
@@ -127,7 +135,7 @@ def my_filters(mail):
 		move_ham(mail,".software.networkmanager")
 		return
 
-	if mail["List-Id"].matches("maintenance.lists.parabolagnulinux.org"):
+	if mail["List-Id"].matches("maintenance\.lists\.parabola(gnulinux\.org|\.nu)"):
 		move_ham(mail,".software.parabola.maintenance")
 		return
 
@@ -137,7 +145,8 @@ def my_filters(mail):
 
 	if (
 		False
-		or mail["List-Id"].matches("parabolagnulinux.org")
+		or mail["List-Id"].matches("parabolagnulinux\.org")
+		or mail["List-Id"].matches("parabola\.nu")
 		or is_to_or_from(mail,     "parabolagnulinux.org")
 		or is_to_or_from(mail,     "kiwwwi.com.ar")
 		or is_to_or_from(mail,     "parabola.nu")
@@ -281,19 +290,19 @@ def my_filters(mail):
 	# Sort mail from software people
 	for address in [
 		"@archlinux.org",
+		"@canonical.org",
+		"@cnuk.org",
+		"@eff.org",
+		"@foocorp.net",
 		"@fsf.org",
 		"@github.com",
-		"canonical.org",
-		"cnuk.org",
-		"eff.org",
-		"esr@thyrsus.com",
-		"foocorp.net",
-		"gitorious.org",
-		"gnome.org",
-		"gnu.org",
-		"ietf.org",
-		"kde.org",
-		"sourceforge.com",
+		"@gitorious.org",
+		"@gnome.org",
+		"@gnu.org",
+		"@ietf.org",
+		"@kde.org",
+		"@sourceforge.com",
+		"@thyrsus.com",
 		"trustees@core3.amsl.com",
 		]:
 		if is_to_or_from(mail,address):
diff --git a/.config/maildirproc/purdue.rc b/.config/maildirproc/purdue.rc
index 61c264c..9f6bf37 100644
--- a/.config/maildirproc/purdue.rc
+++ b/.config/maildirproc/purdue.rc
@@ -88,12 +88,20 @@ def my_filters(mail):
 		mail.move("INBOX.crap.Facebook")
 		return
 
+	if is_to_or_from(mail,"@cerias.purdue.edu"):
+		mail.move("INBOX.crap.CERIAS")
+		return
+
+	if is_to_or_from(mail,"royfu@purdue.edu"):
+		mail.move("INBOX.crap.Hackers")
+		return
+
 	if (
 		False
 		or is_to_or_from(mail,"@cable.comcast.com")
 		or is_to_or_from(mail,"@apexsystemsinc.com")
 		):
-		mail.move("INBOX.work.Comcast")
+		mail.move("INBOX.work.2013.Comcast")
 		return
 
 	if (
@@ -109,20 +117,24 @@ def my_filters(mail):
 
 	# Fall 2012 ############################################################
 
+	# SCI210 (Teaming principles)
 	if mail["Subject"].contains("Fall-2012-SCI-21000-001:"):
 		mail.move("INBOX.classes.2012-2.SCI210")
+	# CS180 (Java)
 	if mail["Subject"].contains("fall-2012-cs-18000"):
 		mail.move("INBOX.classes.2012-2.CS180")
 		return
 	if piazza_topic(mail, "CS 18000"):
 		mail.move("INBOX.classes.2012-2.CS180.Piazza")
 		return
+	# SOC100
 	if mail["Subject"].contains("Fall-2012-SOC-10000"):
 		mail.move("INBOX.classes.2012-2.SOC100")
 		return
 
 	# Spring 2013 ##########################################################
 
+	# CS240 (C)
 	if mail["Subject"].contains("[CS240] Submission result for"):
 		mail.move("INBOX.classes.2013-1.CS240.autograder")
 		return
@@ -132,33 +144,40 @@ def my_filters(mail):
 	if piazza_topic(mail, "CS 240"):
 		mail.move("INBOX.classes.2013-1.CS240.Piazza")
 		return
+	# PHYS220
 	if mail["Subject"].matches(".*(PHYS|CHIP)\s*220.*") or is_to_or_from(mail,"srdas@purdue.edu"):
 		mail.move("INBOX.classes.2013-1.PHYS220")
 		return
+	# SOC220 (Social Problems)
 	if mail["Subject"].contains("Spring-2013-SOC-22000"):
 		mail.move("INBOX.classes.2013-1.SOC220")
 		return
 
 	# Fall 2013 ############################################################
 
+	# CS250 (Computer Architecture)
 	if mail["Subject"].contains("Fall-2013-CS-25000"):
 		mail.move("INBOX.classes.2013-2.CS250")
 		return
 	if piazza_topic(mail, "CS 250") or piazza_topic(mail, "CS 250-FALL2013"):
 		mail.move("INBOX.classes.2013-2.CS250.Piazza")
 		return
+	# CS251 (Intro Algo)
 	if mail["Subject"].contains("Fall-2013-CS-25100"):
 		mail.move("INBOX.classes.2013-2.CS251")
 		return
 	if piazza_topic(mail, "CS 251"):
 		mail.move("INBOX.classes.2013-2.CS251.Piazza")
 		return
+	# SPAN101
 	if mail["Subject"].contains("Fall-2013-SPAN-10100"):
 		mail.move("INBOX.classes.2013-2.SPAN101")
 		return
+	# MA261 (Calc III)
 	if mail["Subject"].contains("Fall-2013-MA-26100"):
 		mail.move("INBOX.classes.2013-2.MA261")
 		return
+	# MA265 (Linear Algebra)
 	if mail["Subject"].contains("Fall-2013-MA-26500"):
 		mail.move("INBOX.classes.2013-2.MA265")
 		return
@@ -172,11 +191,11 @@ def my_filters(mail):
 	if mail["From"].contains("mixable") and mail["Subject"].matches("^COM 21700"):
 		mail.move("INBOX.classes.2014-1.COM217.Mixable")
 		return
-	# CS252
+	# CS252 (Systems Programming)
 	if piazza_topic(mail, "CS 25200"):
 		mail.move("INBOX.classes.2014-1.CS252.Piazza")
 		return
-	# CS307
+	# CS307 (Software Engineering)
 	if is_to_or_from(mail, "dunsmore@purdue.edu") or mail["Subject"].contains("Spring-2014-CS-30700-LE1"):
 		mail.move("INBOX.classes.2014-1.CS307")
 		return
@@ -199,10 +218,10 @@ def my_filters(mail):
 		mail.move("INBOX.classes.2014-2.CS334")
 		return
 	# CS354 (OS)
-	# CS381 (Algo)
 	if piazza_topic(mail, "CS 354"):
 		mail.move("INBOX.classes.2014-2.CS354.Piazza")
 		return
+	# CS381 (Algo)
 	if piazza_topic(mail, "CS 381"):
 		mail.move("INBOX.classes.2014-2.CS381.Piazza")
 		return
@@ -222,6 +241,35 @@ def my_filters(mail):
 		):
 		mail.move("INBOX.classes.2014-2.PHYS221")
 		return
+
+	# Spring 2015 #########################################################
+
+	# CS352 (Compilers)
+	if is_to_or_from(mail, "wjg@cs.purdue.edu"):
+		mail.move("INBOX.classes.2015-1.CS352")
+		return
+	if piazza_topic(mail, "CS 352"):
+		mail.move("INBOX.classes.2015-1.CS352.Piazza")
+		return
+	# CS408 (Software testing)
+	if (False
+		or mail["Subject"].contains("spring-2015-cs-40800")
+		or is_to_or_from(mail, "li1471@purdue.edu")
+		or is_to_or_from(mail, "kirby@purdue.edu")
+		or is_to_or_from(mail, "webb39@purdue.edu")
+		or is_to_or_from(mail, "Jkou@purdue.edu")
+		or is_to_or_from(mail, "nstodda@purdue.edu")
+		or is_to_or_from(mail, "aryker@purdue.edu") # TA
+		):
+		mail.move("INBOX.classes.2015-1.CS408")
+		return
+	# CS448 (Databases)
+	# ME297 (FRC)
+	if mail["Subject"].contains("[ME297]"):
+		mail.move("INBOX.classes.2015-1.ME297")
+		return
+	# SOC324 (Criminology)
+
 handle_mapping = {
 	"INBOX":           my_filters,
 	}
-- 
cgit v1.2.3-2-g168b


From 19542b8e0d4d764a55f433e64d77fa6a58312f1f Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:36:41 -0500
Subject: wmii: comment out hsetroot

---
 .config/wmii-hg/config.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.config/wmii-hg/config.sh b/.config/wmii-hg/config.sh
index c560f3f..f185f9f 100644
--- a/.config/wmii-hg/config.sh
+++ b/.config/wmii-hg/config.sh
@@ -37,7 +37,7 @@ Event() {
 			< "`conffile ctl-init`" expand_variables >> $WMII_DIR/ctl
 			scansection Key | cut -sf2               >> $WMII_DIR/keys
 			# Configure X11
-			hsetroot -solid "$WMII_BACKGROUND"
+			#hsetroot -solid "$WMII_BACKGROUND"
 
 			# Clear the LBar and RBar
 			find $WMII_DIR/{l,r}bar -type f -delete
-- 
cgit v1.2.3-2-g168b


From c007a61ad7e885f7f3dadd05bae555e577ce27c9 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:37:13 -0500
Subject: pick: be careful with arguments being flags to 'printf', use stderr

---
 .local/bin/pick | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/.local/bin/pick b/.local/bin/pick
index 6dc905f..7458041 100755
--- a/.local/bin/pick
+++ b/.local/bin/pick
@@ -20,7 +20,7 @@ if [[ $1 = -s ]]; then
 	# Scan to find a running instance
 	for prog in "$@"; do
 		if [[ -n "$(pgrep "${prog%% *}")" ]]; then
-			printf '%s\n' "$prog"
+			printf -- '%s\n' "$prog"
 			exit 0
 		fi
 	done
@@ -29,10 +29,10 @@ fi
 # Scan to find one that is installed
 for prog in "$@"; do
     if [[ -x "$(which "${prog%% *}" 2>/dev/null)" ]]; then
-		printf '%s\n' "$prog"
+		printf -- '%s\n' "$prog"
 		exit 0
     fi
 done
 
-printf '%s\n' "$cmd: no suitable program found"
+printf -- '%s\n' "$cmd: no suitable program found" >&2
 exit 1
-- 
cgit v1.2.3-2-g168b


From 1e77007556e623a63478a18790098c510b9cbbd9 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:37:40 -0500
Subject: .local/bin/x-*: exec, not eval. I'm smert

---
 .local/bin/x-pdf               | 2 +-
 .local/bin/x-terminal-emulator | 2 +-
 .local/bin/x-www-browser       | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/.local/bin/x-pdf b/.local/bin/x-pdf
index cfaa258..8f9ef60 100755
--- a/.local/bin/x-pdf
+++ b/.local/bin/x-pdf
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-eval $(pick atril zathura mupdf okular evince xpdf 'emacsclient -c') "$@"
+exec $(pick atril zathura mupdf okular evince xpdf 'emacsclient -c') "$@"
diff --git a/.local/bin/x-terminal-emulator b/.local/bin/x-terminal-emulator
index 075dda5..2e158cf 100755
--- a/.local/bin/x-terminal-emulator
+++ b/.local/bin/x-terminal-emulator
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-eval $(pick 'emacsterm -c' 'urxvt' 'xterm' 'gnome-terminal') "$@"
+exec $(pick 'emacsterm -c' 'urxvt' 'xterm' 'gnome-terminal') "$@"
diff --git a/.local/bin/x-www-browser b/.local/bin/x-www-browser
index 945dcfc..b0b05e0 100755
--- a/.local/bin/x-www-browser
+++ b/.local/bin/x-www-browser
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-eval $(pick -s iceweasel icecat firefox conkeror) "$@"
+exec $(pick -s iceweasel icecat firefox conkeror) "$@"
-- 
cgit v1.2.3-2-g168b


From 15820c5e8ed6f01cf4a87b85126eb7f346ebab3d Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:38:21 -0500
Subject: configure makepkg here instead of in /etc

---
 .config/pacman/makepkg.conf | 8 ++++++++
 1 file changed, 8 insertions(+)
 create mode 100644 .config/pacman/makepkg.conf

diff --git a/.config/pacman/makepkg.conf b/.config/pacman/makepkg.conf
new file mode 100644
index 0000000..8dc4536
--- /dev/null
+++ b/.config/pacman/makepkg.conf
@@ -0,0 +1,8 @@
+PKGDEST="${LIBREHOME:-$HOME}/packages/pkgdest"
+SRCDEST="${LIBREHOME:-$HOME}/packages/srcdest"
+SRCPKGDEST="${LIBREHOME:-$HOME}/packages/srcpkgdest"
+LOGDEST="${LIBREHOME:-$HOME}/packages/logdest"
+
+PACKAGER="Luke Shumaker <lukeshu@sbcglobal.net>"
+
+MAKEFLAGS="-j3"
-- 
cgit v1.2.3-2-g168b


From c9a99ea8e015a34626a524a0e8be3c5378961894 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:48:45 -0500
Subject: systemd: {x0,}vncserver need to conflict with eachother

---
 .config/systemd/user/vncserver@.service   | 1 +
 .config/systemd/user/x0vncserver@.service | 1 +
 2 files changed, 2 insertions(+)

diff --git a/.config/systemd/user/vncserver@.service b/.config/systemd/user/vncserver@.service
index ef83ef2..8c1d818 100644
--- a/.config/systemd/user/vncserver@.service
+++ b/.config/systemd/user/vncserver@.service
@@ -1,5 +1,6 @@
 [Unit]
 Description=VNC desktop
+Conflicts=x0vncserver@%i.service
 
 [Service]
 Type=simple
diff --git a/.config/systemd/user/x0vncserver@.service b/.config/systemd/user/x0vncserver@.service
index 476e822..02165a7 100644
--- a/.config/systemd/user/x0vncserver@.service
+++ b/.config/systemd/user/x0vncserver@.service
@@ -1,5 +1,6 @@
 [Unit]
 Description=VNC server for X displays
+Conflicts=vncserver@%i.service
 
 [Service]
 Type=simple
-- 
cgit v1.2.3-2-g168b


From b844c786dbb22a45a218e183dcecd58cdbb66025 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@sbcglobal.net>
Date: Thu, 29 Jan 2015 01:59:53 -0500
Subject: fix merge

---
 .config/systemd/user/wmii@.service.wants/rbar@98_wifi.service | 1 -
 .config/systemd/user/wmii@.service.wants/redshift@.service    | 1 -
 .config/wmii-hg/rbar_acpi                                     | 2 +-
 3 files changed, 1 insertion(+), 3 deletions(-)
 delete mode 120000 .config/systemd/user/wmii@.service.wants/rbar@98_wifi.service
 delete mode 120000 .config/systemd/user/wmii@.service.wants/redshift@.service

diff --git a/.config/systemd/user/wmii@.service.wants/rbar@98_wifi.service b/.config/systemd/user/wmii@.service.wants/rbar@98_wifi.service
deleted file mode 120000
index 286989e..0000000
--- a/.config/systemd/user/wmii@.service.wants/rbar@98_wifi.service
+++ /dev/null
@@ -1 +0,0 @@
-../rbar@.service
\ No newline at end of file
diff --git a/.config/systemd/user/wmii@.service.wants/redshift@.service b/.config/systemd/user/wmii@.service.wants/redshift@.service
deleted file mode 120000
index 59234a7..0000000
--- a/.config/systemd/user/wmii@.service.wants/redshift@.service
+++ /dev/null
@@ -1 +0,0 @@
-../redshift@.service
\ No newline at end of file
diff --git a/.config/wmii-hg/rbar_acpi b/.config/wmii-hg/rbar_acpi
index bdcdf0f..5e77abb 100755
--- a/.config/wmii-hg/rbar_acpi
+++ b/.config/wmii-hg/rbar_acpi
@@ -5,7 +5,7 @@ update() {
 	setup_trap "${id}.*"
 
 	while true; do
-		acpi -bt | sed -r \
+		acpi -t | sed -r \
 			       -e 's/^([A-Z])[a-z]+ ([0-9]+):/\1\2:/' \
 			       -e 's/\s*degrees\s*/°/g' |
 		    cat -n | while read -r n line; do
-- 
cgit v1.2.3-2-g168b