diff --git a/.bin b/.bin
index aa0ec9eb..cc19c54c 160000
--- a/.bin
+++ b/.bin
@@ -1 +1 @@
-Subproject commit aa0ec9eb75be1a30656ecaa3f50078b0c8da6951
+Subproject commit cc19c54cc238b39491ddd1afe4c083fc9ca97f9c
diff --git a/.config/dsk/run/g910 b/.config/dsk/run/g910
deleted file mode 100755
index a5762fb1..00000000
--- a/.config/dsk/run/g910
+++ /dev/null
@@ -1,176 +0,0 @@
-#! /bin/bash
-#
-# g910 coloring service
-# Copyright (C) 2019 Vintage Salt <rehashedsalt@cock.li>
-#
-# Distributed under terms of the MIT license.
-#
-
-colorbase="002b36"
-
-colorblue="268bd2"
-colorgreen="859900"
-colormagenta="d33682"
-colorred="dc322f"
-coloryellow="b58900"
-
-# Basic functions
-log() {
-	[ -z "$1" ] && return 1
-	printf "g910: %s\\n" \
-		"$1"
-}
-rsleep() {
-	[ -z "$1" ] && return 1
-	exec 1023<> <(:)
-	read -t "$1" -u 1023
-	return 0
-}
-
-# Main loop
-loop-stats() {
-	while :; do
-		# CPU stats on F1 and G6
-		g910-led -kn f1 $colorblue
-		if (( $(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)/($2+$4+$5)} END {print (usage > 0.75)}') )); then
-			g910-led -kn g6 $colorred
-		else
-			g910-led -kn g6 $colorgreen
-		fi
-		# Memory stats on F2 and G7
-		g910-led -kn f2 $colormagenta
-		if (( $(free | grep Mem | awk '{print ($3/$2 > 0.75)}') )); then
-			g910-led -kn g7 $colorred
-		else
-			g910-led -kn g7 $colorgreen
-		fi
-		# Root disk stats on F3 and G8
-		g910-led -kn f3 $coloryellow
-		if (( $(df --output=pcent / | tr -dc '0-9') > 75 )); then
-			g910-led -kn g8 $colorred
-		else
-			g910-led -kn g8 $colorgreen
-		fi
-		# Home disk stats on F4 and G9
-		g910-led -kn f4 $coloryellow
-		if (( $(df --output=pcent /home | tr -dc '0-9') > 75 )); then
-			g910-led -kn g9 $colorred
-		else
-			g910-led -kn g9 $colorgreen
-		fi
-
-		# Commit
-		g910-led -c
-
-		# Wait
-		rsleep 1
-	done
-}
-initloops() {
-	# i3wm integration
-	if pgrep i3 > /dev/null 2>&1; then
-		log "Coloring i3 related keys"
-		g910-led -k logo 000000
-		rsleep 0.025
-		g910-led -kn logo $colorred
-		g910-led -kn alt_left $colorred
-		g910-led -kn alt_right $colorred
-		g910-led -kn win_left $colorblue
-		g910-led -kn win_right $colorblue
-		g910-led -c
-	fi
-	# General loops
-	loop-stats &
-	log "Starting general stat display with PID $!"
-	wait
-}
-main() {
-	if ! command -v g910-led > /dev/null 2>&1; then
-		log "g910-led is not installed. Install it with the g810-led package"
-		exit 50
-	fi
-	if ! g910-led -a 000000 > /dev/null 2>&1; then
-		log "Could not find keyboard"
-		log "Ensure it is plugged in and that you have the proper udev rules set up"
-		log "See https://raw.githubusercontent.com/MatMoul/g810-led/master/udev/g810-led.rules"
-		exit 51
-	fi
-	log "Playing init animation"
-	log "Dimming all keys"
-	g910-led -a 000000
-	log "Flickering logo on"
-	rsleep 0.25
-	g910-led -k logo ffffff
-	rsleep 0.05
-	g910-led -k logo 000000
-	rsleep 0.025
-	g910-led -k logo ffffff
-	rsleep 0.025
-	g910-led -k logo 000000
-	rsleep 0.025
-	g910-led -k logo ffffff
-	rsleep 1
-
-	log "Flickering second logo on"
-	rsleep 0.025
-	g910-led -k logo2 $colorblue
-	rsleep 0.025
-	g910-led -k logo2 000000
-	rsleep 0.025
-	g910-led -k logo2 $colorred
-
-	log "Flickering G-keys on"
-	g910-led -g gkeys ffffff
-	rsleep 0.05
-	g910-led -g gkeys 000000
-	rsleep 0.025
-	g910-led -g gkeys 444444
-	rsleep 0.25
-
-	log "Flickering F-keys on"
-	g910-led -g fkeys 222222
-	rsleep 0.05
-	g910-led -g fkeys 333333
-	rsleep 0.025
-	g910-led -g fkeys 444444
-
-	log "Flickering keys on"
-	g910-led -g keys aaaaaa
-	rsleep 0.05
-	g910-led -g keys 888888
-	rsleep 0.15
-
-	log "Flickering numpad on"
-	g910-led -g numeric 888888
-
-	log "Flickering arrow keys on"
-	g910-led -g arrows 222222
-	rsleep 0.025
-	g910-led -g arrows 444444
-	rsleep 0.10
-
-	log "Flickering modifier keys on"
-	g910-led -g modifiers 444444
-	rsleep 0.025
-	g910-led -gn modifiers 888888
-	g910-led -kn menu 000000
-	g910-led -c
-	rsleep 0.05
-
-	log "Flickering multimedia keys on"
-	g910-led -g multimedia ffffff
-	rsleep 0.025
-	g910-led -g multimedia 888888
-
-	log "Flickering functions on"
-	g910-led -g functions aaaaaa
-	rsleep 0.025
-	g910-led -g functions 444444
-
-	g910-led -k logo2 $colorgreen
-	# Set up listeners as background processes
-	initloops
-}
-
-main "$@"
-
diff --git a/.config/liferea/feedlist.opml b/.config/liferea/feedlist.opml
index a0453f28..89bc0586 100644
--- a/.config/liferea/feedlist.opml
+++ b/.config/liferea/feedlist.opml
@@ -10,7 +10,7 @@
     <outline title="Important" text="Important" description="Important" type="vfolder" id="jtitqux" sortColumn="time" matchType="any" collapsed="true">
       <outline type="rule" text="Flag status" rule="flagged" value="" additive="true"/>
     </outline>
-    <outline title="Main" text="Main" description="Main" type="folder" id="fhwpnbm" sortColumn="time" expanded="true">
+    <outline title="Main" text="Main" description="Main" type="folder" id="fhwpnbm" sortColumn="title" sortReversed="false" expanded="true">
       <outline title="Updates" text="Updates" description="Updates" type="folder" id="kcillep" sortColumn="time" collapsed="true">
         <outline title="Metaquarium" text="Metaquarium" description="Metaquarium" type="rss" id="sebcrmi" sortColumn="time" xmlUrl="https://metaquarium.wordpress.com/feed/" htmlUrl="https://metaquarium.wordpress.com" updateInterval="-1" collapsed="true"/>
         <outline title="Dolphin" text="Dolphin" description="Dolphin" type="atom" id="ojymnjp" sortColumn="time" xmlUrl="https://dolphin-emu.org/blog/feeds/" htmlUrl="https://dolphin-emu.org/blog/feeds/" updateInterval="-1" collapsed="true"/>
diff --git a/.config/neofetch/config.conf b/.config/neofetch/config.conf
index 70e24a1a..6af36213 100644
--- a/.config/neofetch/config.conf
+++ b/.config/neofetch/config.conf
@@ -14,7 +14,7 @@ print_info() {
 
 	#info "WM" wm
 	#info "DE" de
-	prin "DSK" "$DSK_NAME_PRETTY $DSK_VERSION_PRETTY"
+	#prin "DSK" "$DSK_NAME_PRETTY $DSK_VERSION_PRETTY"
 	#info "THM" theme
 	#info "ICO" icons
 }
diff --git a/.firestarter b/.firestarter
new file mode 160000
index 00000000..b0b4b673
--- /dev/null
+++ b/.firestarter
@@ -0,0 +1 @@
+Subproject commit b0b4b673eba90c984c1e19e3c4f2ce576c065888
diff --git a/.firestarterrc b/.firestarterrc
new file mode 100644
index 00000000..673eebc9
--- /dev/null
+++ b/.firestarterrc
@@ -0,0 +1 @@
+hsetroot -solid "#383c4a"
diff --git a/.gitmodules b/.gitmodules
index d1446b3c..eaa80874 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -46,3 +46,6 @@
 [submodule ".vim/bundle/nord-vim"]
 	path = .vim/bundle/nord-vim
 	url = https://github.com/arcticicestudio/nord-vim
+[submodule ".firestarter"]
+	path = .firestarter
+	url = git@gitlab.com:rehashedsalt/firestarter
diff --git a/.local/share/color-schemes/GruvboxDark.colors b/.local/share/color-schemes/GruvboxDark.colors
deleted file mode 100644
index d45f5ebc..00000000
--- a/.local/share/color-schemes/GruvboxDark.colors
+++ /dev/null
@@ -1,119 +0,0 @@
-[ColorEffects:Disabled]
-Color=56,56,56
-ColorAmount=1
-ColorEffect=0
-ContrastAmount=0.5
-ContrastEffect=1
-IntensityAmount=0
-IntensityEffect=2
-
-[ColorEffects:Inactive]
-ChangeSelectionColor=true
-Color=112,111,110
-ColorAmount=-0.9500000000000001
-ColorEffect=0
-ContrastAmount=0.6000000000000001
-ContrastEffect=0
-Enable=false
-IntensityAmount=0
-IntensityEffect=0
-
-[Colors:Button]
-BackgroundAlternate=70,65,63
-BackgroundNormal=60,56,54
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=131,165,152
-ForegroundInactive=146,131,116
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=250,189,47
-ForegroundNormal=213,196,161
-ForegroundPositive=184,187,38
-ForegroundVisited=211,134,155
-
-[Colors:Complementary]
-BackgroundAlternate=168,153,132
-BackgroundNormal=40,40,40
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=131,165,152
-ForegroundInactive=235,219,178
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=250,189,47
-ForegroundNormal=131,165,152
-ForegroundPositive=184,187,38
-ForegroundVisited=211,134,155
-
-[Colors:Selection]
-BackgroundAlternate=123,155,143
-BackgroundNormal=131,165,152
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=40,40,40
-ForegroundInactive=146,131,116
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=250,189,47
-ForegroundNormal=235,219,178
-ForegroundPositive=184,187,38
-ForegroundVisited=177,98,134
-
-[Colors:Tooltip]
-BackgroundAlternate=154,181,171
-BackgroundNormal=131,165,152
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=251,241,199
-ForegroundInactive=146,131,116
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=215,153,33
-ForegroundNormal=40,40,40
-ForegroundPositive=152,151,26
-ForegroundVisited=177,98,134
-
-[Colors:View]
-BackgroundAlternate=50,46,45
-BackgroundNormal=60,56,54
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=131,165,152
-ForegroundInactive=146,131,116
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=250,189,47
-ForegroundNormal=213,196,161
-ForegroundPositive=184,187,38
-ForegroundVisited=211,134,155
-
-[Colors:Window]
-BackgroundAlternate=30,30,30
-BackgroundNormal=40,40,40
-DecorationFocus=131,165,152
-DecorationHover=139,175,161
-ForegroundActive=131,165,152
-ForegroundInactive=146,131,116
-ForegroundLink=69,133,136
-ForegroundNegative=251,73,52
-ForegroundNeutral=250,189,47
-ForegroundNormal=213,196,161
-ForegroundPositive=184,187,38
-ForegroundVisited=211,134,155
-
-[General]
-ColorScheme=GruvboxDark
-Name=Gruvbox Dark - KODE
-shadeSortColumn=true
-
-[KDE]
-contrast=4
-
-[WM]
-activeBackground=40,40,40
-activeBlend=30,30,30
-activeForeground=213,196,161
-inactiveBackground=40,40,40
-inactiveBlend=30,30,30
-inactiveForeground=146,131,116
diff --git a/.local/share/dsk b/.local/share/dsk
deleted file mode 160000
index cdcf1435..00000000
--- a/.local/share/dsk
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cdcf1435bd9a352b963f42bcf58911a544a88975
diff --git a/.local/share/konsole/Gruvbox_dark.colorscheme b/.local/share/konsole/Gruvbox_dark.colorscheme
deleted file mode 100644
index 5e47c7c1..00000000
--- a/.local/share/konsole/Gruvbox_dark.colorscheme
+++ /dev/null
@@ -1,64 +0,0 @@
-[Background]
-Color=40,40,40
-
-[BackgroundIntense]
-Color=40,40,40
-
-[Color0]
-Color=40,40,40
-
-[Color0Intense]
-Color=146,131,116
-
-[Color1]
-Color=204,36,29
-
-[Color1Intense]
-Color=251,73,52
-
-[Color2]
-Color=152,151,26
-
-[Color2Intense]
-Color=184,187,38
-
-[Color3]
-Color=215,153,33
-
-[Color3Intense]
-Color=250,189,47
-
-[Color4]
-Color=69,133,136
-
-[Color4Intense]
-Color=131,165,152
-
-[Color5]
-Color=177,98,134
-
-[Color5Intense]
-Color=211,134,155
-
-[Color6]
-Color=104,157,106
-
-[Color6Intense]
-Color=142,192,124
-
-[Color7]
-Color=168,153,132
-
-[Color7Intense]
-Color=235,219,178
-
-[Foreground]
-Color=235,219,178
-
-[ForegroundIntense]
-Color=235,219,178
-
-[General]
-Description=Gruvbox
-Opacity=1
-Wallpaper=
diff --git a/.local/share/konsole/Primary.profile b/.local/share/konsole/Primary.profile
deleted file mode 100644
index d15643af..00000000
--- a/.local/share/konsole/Primary.profile
+++ /dev/null
@@ -1,18 +0,0 @@
-[Appearance]
-ColorScheme=Gruvbox_dark
-Font=Inconsolata,10,-1,5,50,0,0,0,0,0,Regular
-
-[General]
-Command=bash
-Directory=/home/salt
-Name=Primary
-Parent=FALLBACK/
-ShowTerminalSizeHint=false
-StartInCurrentSessionDir=false
-TerminalColumns=86
-TerminalMargin=2
-TerminalRows=26
-
-[Scrolling]
-HistorySize=10000
-ScrollBarPosition=2
diff --git a/.local/share/konsole/Solarized.colorscheme b/.local/share/konsole/Solarized.colorscheme
deleted file mode 100644
index ff1adffd..00000000
--- a/.local/share/konsole/Solarized.colorscheme
+++ /dev/null
@@ -1,94 +0,0 @@
-[Background]
-Color=0,43,54
-
-[BackgroundFaint]
-Color=0,43,54
-
-[BackgroundIntense]
-Color=7,54,66
-
-[Color0]
-Color=7,54,66
-
-[Color0Faint]
-Color=6,48,59
-
-[Color0Intense]
-Color=0,43,54
-
-[Color1]
-Color=220,50,47
-
-[Color1Faint]
-Color=147,33,31
-
-[Color1Intense]
-Color=203,75,22
-
-[Color2]
-Color=133,153,0
-
-[Color2Faint]
-Color=94,106,0
-
-[Color2Intense]
-Color=88,110,117
-
-[Color3]
-Color=181,137,0
-
-[Color3Faint]
-Color=138,103,0
-
-[Color3Intense]
-Color=101,123,131
-
-[Color4]
-Color=38,139,210
-
-[Color4Faint]
-Color=20,77,115
-
-[Color4Intense]
-Color=131,148,150
-
-[Color5]
-Color=211,54,130
-
-[Color5Faint]
-Color=120,30,75
-
-[Color5Intense]
-Color=108,113,196
-
-[Color6]
-Color=42,161,152
-
-[Color6Faint]
-Color=24,94,88
-
-[Color6Intense]
-Color=147,161,161
-
-[Color7]
-Color=238,232,213
-
-[Color7Faint]
-Color=171,167,154
-
-[Color7Intense]
-Color=253,246,227
-
-[Foreground]
-Color=131,148,150
-
-[ForegroundFaint]
-Color=106,119,121
-
-[ForegroundIntense]
-Color=147,161,161
-
-[General]
-Description=Solarized
-Opacity=0.85
-Wallpaper=
diff --git a/.xinitrc b/.xinitrc
index 69b9f08d..bdb05a0f 100755
--- a/.xinitrc
+++ b/.xinitrc
@@ -16,11 +16,12 @@ die() {
 }
 
 # Set up our session target
-if [ -x "$HOME/.dsk/dsk" ]; then
-	export DSK_HOME="$HOME/.dsk"
-	export STARTUP="$DSK_HOME/dsk"
-elif [ -x "${XDG_CACHE_DIR:-$HOME/.local/share}/dsk/dsk" ]; then
-	export STARTUP="${XDG_CACHE_DIR:-$HOME/.local/share}/dsk/dsk"
+export FS_DIEONWM=1
+export XDG_CURRENT_DESKTOP=MATE
+if [ -x "$HOME/.firestarter/firestarter" ]; then
+	export STARTUP="$HOME/.firestarter/firestarter"
+elif [ -x "$HOME/Projects/firestarter/firestarter" ]; then
+	export STARTUP="$HOME/Projects/firestarter/firestarter"
 fi
 [ -z "$STARTUP" ] && die "No session target available"
 
diff --git a/.xsessionrc b/.xsessionrc
new file mode 100755
index 00000000..bc1dd116
--- /dev/null
+++ b/.xsessionrc
@@ -0,0 +1,12 @@
+#!/bin/sh
+for term in mate-terminal lxterminal xfce4-terminal konsole urxvt xterm; do
+	if command -v "$term" > /dev/null 2>&1; then
+		export TERMINAL="$term"
+		break
+	fi
+done
+
+export PATH="$PATH:$HOME/.bin:$HOME/.local/bin"
+if command -v go > /dev/null 2>&1; then
+	export PATH="$PATH:$HOME/.local/go/bin"
+fi