diff --git a/files/bash/.bashrc b/files/bash/.bashrc
index 8c4fd69..297afeb 100644
--- a/files/bash/.bashrc
+++ b/files/bash/.bashrc
@@ -11,6 +11,7 @@ pathadd '/home/nemo/bin'
 
 alias xclip='xclip -selection c'
 alias sl=ls
+alias dynamodump='docker run bchew/dynamodump /usr/local/bin/dynamodump'
 # ... or force ignoredups and ignorespace
 #metasploit, my own scripts, texlive
 pathadd '/opt/framework-3.5.2/app/'
@@ -34,6 +35,7 @@ alias subtitles='subliminal -p addic7ed -l en -s -- $1'
 alias pu='phpunit'
 alias ghpr='gh pull-request'
 alias ssdr='sudo systemctl daemon-reload'
+alias k='kubectl'
 
 # https://github.com/chef/inspec
 function inspec { docker run -it --rm -v $(pwd):/share chef/inspec $@; }
diff --git a/files/display/.config/nitrogen/bg-saved.cfg b/files/display/.config/nitrogen/bg-saved.cfg
index 301a04d..91d682f 100644
--- a/files/display/.config/nitrogen/bg-saved.cfg
+++ b/files/display/.config/nitrogen/bg-saved.cfg
@@ -1,14 +1,14 @@
 [xin_0]
-file=/home/nemo/Pictures/Wallpapers/wallhaven-592298.jpg
-mode=4
+file=/home/nemo/Pictures/Wallpapers/wallhaven-597113.jpg
+mode=0
 bgcolor=#000000
 
 [xin_1]
-file=/home/nemo/Pictures/Wallpapers/wallhaven-610303.jpg
-mode=4
+file=/home/nemo/Pictures/Wallpapers/wallhaven-599189.png
+mode=0
 bgcolor=#000000
 
 [xin_2]
 file=/home/nemo/Pictures/Wallpapers/switzerland_alps_mountains_night_beautiful_landscape_99817_1080x1920.jpg
-mode=4
+mode=0
 bgcolor=#000000
diff --git a/files/display/.config/nitrogen/nitrogen.cfg b/files/display/.config/nitrogen/nitrogen.cfg
index 651450c..bf28d59 100644
--- a/files/display/.config/nitrogen/nitrogen.cfg
+++ b/files/display/.config/nitrogen/nitrogen.cfg
@@ -1,12 +1,12 @@
 [geometry]
-posx=967
-posy=874
-sizex=919
-sizey=991
+posx=34
+posy=1377
+sizex=1852
+sizey=488
 
 [nitrogen]
 view=icon
 recurse=true
 sort=alpha
 icon_caps=false
-dirs=/home/nemo/Pictures;/home/nemo/projects/personal/avatars/wallpaper;/home/nemo/Downloads;
+dirs=/home/nemo/Pictures;/home/nemo/projects/personal/avatars/wallpaper;
diff --git a/files/git/.gitconfig b/files/git/.gitconfig
index 032453a..692305e 100644
--- a/files/git/.gitconfig
+++ b/files/git/.gitconfig
@@ -31,7 +31,7 @@
     branch = auto
     diff   = auto
     status = auto
-    ui     = true
+	ui = true
 
 [alias]
     l50 = "!git log --abbrev-commit --date=short --pretty=format:'%x00%h%x00%cd%x00%s%x00%an%x00%d' | gawk -F '\\0' '{ printf \"%s\\033[31m%s\\033[0m \\033[32m%s\\033[0m  %-50s \\033[30;1m%s\\033[0m\\033[33m%s\\n\", $1, $2, $3, gensub(/(.{49}).{2,}/, \"\\\\1…\",\"g\",$4), $5, $6 }' | less -R"
@@ -42,21 +42,18 @@
 [help]
     autocorrect = 10
 
-[diff]
-    indentHeuristic = on
-
 [push]
     default = current
 
 [color "diff-highlight"]
-    oldNormal = red bold
-    oldHighlight = red bold 52
-    newNormal = green bold
-    newHighlight = green bold 22
+	oldNormal = red bold
+	oldHighlight = red bold 52
+	newNormal = green bold
+	newHighlight = green bold 22
 
 [core]
     # https://github.com/so-fancy/diff-so-fancy
-    pager = diff-so-fancy | less --tabs=4 -RFX
+	pager = diff-so-fancy | less --tabs=4 -RFX
 	preloadindex = true
 
 [svn-remote "svn"]
@@ -73,3 +70,12 @@
   insteadOf = https://bitbucket.org/
 [credential]
 	helper = cache --timeout=3600
+[color "diff"]
+	meta = yellow
+	frag = magenta bold
+	commit = yellow bold
+	old = red bold
+	new = green bold
+	whitespace = red reverse
+[diff-so-fancy]
+	useUnicodeRuler = false
diff --git a/files/i3/.i3/config b/files/i3/.i3/config
index 4689e4b..bc41405 100644
--- a/files/i3/.i3/config
+++ b/files/i3/.i3/config
@@ -53,6 +53,8 @@ bindsym $mod+Shift+Return split h; exec cwdterm.sh
 bindsym Shift+F2 split v; exec cwdterm.sh
 bindsym Ctrl+F2 split h; exec cwdterm.sh
 
+#bindsym $mod+space split h; exec /home/nemo/bin/minions
+
 # Snippy for quick text
 # https://gist.github.com/coderofsalvation/46549e3788ade2f3a938
 bindsym $mod+grave exec snippy.sh
diff --git a/files/irc/.irssi/config b/files/irc/.irssi/config
new file mode 100644
index 0000000..00827b5
--- /dev/null
+++ b/files/irc/.irssi/config
@@ -0,0 +1,406 @@
+servers = (
+  { address = "irc.dal.net"; chatnet = "DALnet"; port = "6667"; },
+  {
+    address = "ssl.efnet.org";
+    chatnet = "EFNet";
+    port = "9999";
+    use_tls = "yes";
+  },
+  {
+    address = "irc.esper.net";
+    chatnet = "EsperNet";
+    port = "6697";
+    use_tls = "yes";
+    tls_verify = "yes";
+  },
+  {
+    address = "chat.freenode.net";
+    chatnet = "Freenode";
+    port = "6697";
+    use_tls = "yes";
+    tls_verify = "yes";
+  },
+  {
+    address = "irc.gamesurge.net";
+    chatnet = "GameSurge";
+    port = "6667";
+  },
+  {
+    address = "eu.irc6.net";
+    chatnet = "IRCnet";
+    port = "6667";
+    use_tls = "yes";
+  },
+  { address = "open.ircnet.net"; chatnet = "IRCnet"; port = "6667"; },
+  {
+    address = "irc.ircsource.net";
+    chatnet = "IRCSource";
+    port = "6667";
+  },
+  { address = "irc.netfuze.net"; chatnet = "NetFuze"; port = "6667"; },
+  {
+    address = "irc.oftc.net";
+    chatnet = "OFTC";
+    port = "6697";
+    use_tls = "yes";
+    tls_verify = "yes";
+  },
+  { 
+    address = "irc.quakenet.org";
+    chatnet = "QuakeNet";
+    port = "6667";
+  },
+  {
+    address = "irc.rizon.net";
+    chatnet = "Rizon";
+    port = "6697";
+    use_tls = "yes";
+    tls_verify = "yes";
+  },
+  { address = "silc.silcnet.org"; chatnet = "SILC"; port = "706"; },
+  { 
+    address = "irc.undernet.org";
+    chatnet = "Undernet";
+    port = "6667";
+  }
+);
+
+chatnets = {
+  DALnet = {
+    type = "IRC";
+    max_kicks = "4";
+    max_msgs = "20";
+    max_whois = "30";
+  };
+  EFNet = { 
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "4";
+    max_whois = "1";
+  };
+  EsperNet = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "4";
+    max_whois = "1";
+  };
+  Freenode = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "4";
+    max_whois = "1";
+  };
+  GameSurge = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+  IRCnet = { 
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+  IRCSource = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "4";
+    max_whois = "1";
+  };
+  NetFuze = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+  OFTC = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; };
+  QuakeNet = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+  Rizon = { 
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+  SILC = { type = "SILC"; };
+  Undernet = {
+    type = "IRC";
+    max_kicks = "1";
+    max_msgs = "1";
+    max_whois = "1";
+  };
+};
+
+channels = (
+  { name = "#lobby"; chatnet = "EsperNet"; autojoin = "No"; },
+  { name = "#freenode"; chatnet = "Freenode"; autojoin = "No"; },
+  { name = "#irssi"; chatnet = "Freenode"; autojoin = "No"; },
+  { name = "#gamesurge"; chatnet = "GameSurge"; autojoin = "No"; },
+  { name = "#irssi"; chatnet = "IRCNet"; autojoin = "No"; },
+  { name = "#ircsource"; chatnet = "IRCSource"; autojoin = "No"; },
+  { name = "#netfuze"; chatnet = "NetFuze"; autojoin = "No"; },
+  { name = "#oftc"; chatnet = "OFTC"; autojoin = "No"; },
+  { name = "silc"; chatnet = "SILC"; autojoin = "No"; }
+);
+
+aliases = {
+  ATAG = "WINDOW SERVER";
+  ADDALLCHANS = "SCRIPT EXEC foreach my \\$channel (Irssi::channels()) { Irssi::command(\"CHANNEL ADD -auto \\$channel->{name} \\$channel->{server}->{tag} \\$channel->{key}\")\\;}";
+  B = "BAN";
+  BACK = "AWAY";
+  BANS = "BAN";
+  BYE = "QUIT";
+  C = "CLEAR";
+  CALC = "EXEC - if command -v bc >/dev/null 2>&1\\; then printf '%s=' '$*'\\; echo '$*' | bc -l\\; else echo bc was not found\\; fi";
+  CHAT = "DCC CHAT";
+  CUBES = "SCRIPT EXEC Irssi::active_win->print(\"%_bases\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x0\\${_}0\\$_\" } '0'..'9','A'..'F' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_cubes\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { my \\$y = \\$_*6 \\; join '', map { my \\$x = \\$_ \\; map { \"%x\\$x\\$_\\$x\\$_\" } @{['0'..'9','A'..'Z']}[\\$y .. \\$y+5] } 1..6 }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) for 0..5 \\; Irssi::active_win->print(\"%_grays\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x7\\${_}7\\$_\" } 'A'..'X' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_mIRC extended colours\", MSGLEVEL_CLIENTCRAP) \\; my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 0..15 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; for my \\$z (0..6) { my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 16+(\\$z*12)..16+(\\$z*12)+11 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) }";
+  DATE = "TIME";
+  DEHIGHLIGHT = "DEHILIGHT";
+  DESCRIBE = "ACTION";
+  DHL = "DEHILIGHT";
+  EXEMPTLIST = "MODE $C +e";
+  EXIT = "QUIT";
+  GOTO = "SCROLLBACK GOTO";
+  HIGHLIGHT = "HILIGHT";
+  HL = "HILIGHT";
+  HOST = "USERHOST";
+  INVITELIST = "MODE $C +I";
+  J = "JOIN";
+  K = "KICK";
+  KB = "KICKBAN";
+  KN = "KNOCKOUT";
+  LAST = "LASTLOG";
+  LEAVE = "PART";
+  M = "MSG";
+  MUB = "UNBAN *";
+  N = "NAMES";
+  NMSG = "^MSG";
+  P = "PART";
+  Q = "QUERY";
+  RESET = "SET -default";
+  RUN = "SCRIPT LOAD";
+  SAY = "MSG *";
+  SB = "SCROLLBACK";
+  SBAR = "STATUSBAR";
+  SIGNOFF = "QUIT";
+  SV = "MSG * Irssi $J ($V) - http://www.irssi.org";
+  T = "TOPIC";
+  UB = "UNBAN";
+  UMODE = "MODE $N";
+  UNSET = "SET -clear";
+  W = "WHO";
+  WC = "WINDOW CLOSE";
+  WG = "WINDOW GOTO";
+  WJOIN = "JOIN -window";
+  WI = "WHOIS";
+  WII = "WHOIS $0 $0";
+  WL = "WINDOW LIST";
+  WN = "WINDOW NEW HIDDEN";
+  WQUERY = "QUERY -window";
+  WW = "WHOWAS";
+  1 = "WINDOW GOTO 1";
+  2 = "WINDOW GOTO 2";
+  3 = "WINDOW GOTO 3";
+  4 = "WINDOW GOTO 4";
+  5 = "WINDOW GOTO 5";
+  6 = "WINDOW GOTO 6";
+  7 = "WINDOW GOTO 7";
+  8 = "WINDOW GOTO 8";
+  9 = "WINDOW GOTO 9";
+  10 = "WINDOW GOTO 10";
+  11 = "WINDOW GOTO 11";
+  12 = "WINDOW GOTO 12";
+  13 = "WINDOW GOTO 13";
+  14 = "WINDOW GOTO 14";
+  15 = "WINDOW GOTO 15";
+  16 = "WINDOW GOTO 16";
+  17 = "WINDOW GOTO 17";
+  18 = "WINDOW GOTO 18";
+  19 = "WINDOW GOTO 19";
+  20 = "WINDOW GOTO 20";
+  21 = "WINDOW GOTO 21";
+  22 = "WINDOW GOTO 22";
+  23 = "WINDOW GOTO 23";
+  24 = "WINDOW GOTO 24";
+  25 = "WINDOW GOTO 25";
+  26 = "WINDOW GOTO 26";
+  27 = "WINDOW GOTO 27";
+  28 = "WINDOW GOTO 28";
+  29 = "WINDOW GOTO 29";
+  30 = "WINDOW GOTO 30";
+  31 = "WINDOW GOTO 31";
+  32 = "WINDOW GOTO 32";
+  33 = "WINDOW GOTO 33";
+  34 = "WINDOW GOTO 34";
+  35 = "WINDOW GOTO 35";
+  36 = "WINDOW GOTO 36";
+  37 = "WINDOW GOTO 37";
+  38 = "WINDOW GOTO 38";
+  39 = "WINDOW GOTO 39";
+  40 = "WINDOW GOTO 40";
+  41 = "WINDOW GOTO 41";
+  42 = "WINDOW GOTO 42";
+  43 = "WINDOW GOTO 43";
+  44 = "WINDOW GOTO 44";
+  45 = "WINDOW GOTO 45";
+  46 = "WINDOW GOTO 46";
+  47 = "WINDOW GOTO 47";
+  48 = "WINDOW GOTO 48";
+  49 = "WINDOW GOTO 49";
+  50 = "WINDOW GOTO 50";
+  51 = "WINDOW GOTO 51";
+  52 = "WINDOW GOTO 52";
+  53 = "WINDOW GOTO 53";
+  54 = "WINDOW GOTO 54";
+  55 = "WINDOW GOTO 55";
+  56 = "WINDOW GOTO 56";
+  57 = "WINDOW GOTO 57";
+  58 = "WINDOW GOTO 58";
+  59 = "WINDOW GOTO 59";
+  60 = "WINDOW GOTO 60";
+  61 = "WINDOW GOTO 61";
+  62 = "WINDOW GOTO 62";
+  63 = "WINDOW GOTO 63";
+  64 = "WINDOW GOTO 64";
+  65 = "WINDOW GOTO 65";
+  66 = "WINDOW GOTO 66";
+  67 = "WINDOW GOTO 67";
+  68 = "WINDOW GOTO 68";
+  69 = "WINDOW GOTO 69";
+  70 = "WINDOW GOTO 70";
+  71 = "WINDOW GOTO 71";
+  72 = "WINDOW GOTO 72";
+  73 = "WINDOW GOTO 73";
+  74 = "WINDOW GOTO 74";
+  75 = "WINDOW GOTO 75";
+  76 = "WINDOW GOTO 76";
+  77 = "WINDOW GOTO 77";
+  78 = "WINDOW GOTO 78";
+  79 = "WINDOW GOTO 79";
+  80 = "WINDOW GOTO 80";
+  81 = "WINDOW GOTO 81";
+  82 = "WINDOW GOTO 82";
+  83 = "WINDOW GOTO 83";
+  84 = "WINDOW GOTO 84";
+  85 = "WINDOW GOTO 85";
+  86 = "WINDOW GOTO 86";
+  87 = "WINDOW GOTO 87";
+  88 = "WINDOW GOTO 88";
+  89 = "WINDOW GOTO 89";
+  90 = "WINDOW GOTO 90";
+  91 = "WINDOW GOTO 91";
+  92 = "WINDOW GOTO 92";
+  93 = "WINDOW GOTO 93";
+  94 = "WINDOW GOTO 94";
+  95 = "WINDOW GOTO 95";
+  96 = "WINDOW GOTO 96";
+  97 = "WINDOW GOTO 97";
+  98 = "WINDOW GOTO 98";
+  99 = "WINDOW GOTO 99";
+};
+
+statusbar = {
+
+  items = {
+
+    barstart = "{sbstart}";
+    barend = "{sbend}";
+
+    topicbarstart = "{topicsbstart}";
+    topicbarend = "{topicsbend}";
+
+    time = "{sb $Z}";
+    user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}";
+
+    window = "{sb $winref:$tag/$itemname{sbmode $M}}";
+    window_empty = "{sb $winref{sbservertag $tag}}";
+
+    prompt = "{prompt $[.15]itemname}";
+    prompt_empty = "{prompt $winname}";
+
+    topic = " $topic";
+    topic_empty = " Irssi v$J - http://www.irssi.org";
+
+    lag = "{sb Lag: $0-}";
+    act = "{sb Act: $0-}";
+    more = "-- more --";
+  };
+
+  default = {
+
+    window = {
+
+      disabled = "no";
+      type = "window";
+      placement = "bottom";
+      position = "1";
+      visible = "active";
+
+      items = {
+        barstart = { priority = "100"; };
+        time = { };
+        user = { };
+        window = { };
+        window_empty = { };
+        lag = { priority = "-1"; };
+        act = { priority = "10"; };
+        more = { priority = "-1"; alignment = "right"; };
+        barend = { priority = "100"; alignment = "right"; };
+      };
+    };
+
+    window_inact = {
+
+      type = "window";
+      placement = "bottom";
+      position = "1";
+      visible = "inactive";
+
+      items = {
+        barstart = { priority = "100"; };
+        window = { };
+        window_empty = { };
+        more = { priority = "-1"; alignment = "right"; };
+        barend = { priority = "100"; alignment = "right"; };
+      };
+    };
+
+    prompt = {
+
+      type = "root";
+      placement = "bottom";
+      position = "100";
+      visible = "always";
+
+      items = {
+        prompt = { priority = "-1"; };
+        prompt_empty = { priority = "-1"; };
+        input = { priority = "10"; };
+      };
+    };
+
+    topic = {
+
+      type = "root";
+      placement = "top";
+      position = "1";
+      visible = "always";
+
+      items = {
+        topicbarstart = { priority = "100"; };
+        topic = { };
+        topic_empty = { };
+        topicbarend = { priority = "100"; alignment = "right"; };
+      };
+    };
+  };
+};
+settings = {
+  core = { real_name = "Nemo"; user_name = "nemo"; nick = "nemo"; };
+  "fe-text" = { actlist_sort = "refnum"; };
+};
diff --git a/files/snippets/.snippy/T b/files/snippets/.snippy/T
new file mode 100644
index 0000000..9d51f16
--- /dev/null
+++ b/files/snippets/.snippy/T
@@ -0,0 +1 @@
+terraform = "true"
\ No newline at end of file
diff --git a/files/snippets/.snippy/summaryhtml b/files/snippets/.snippy/summaryhtml
new file mode 100644
index 0000000..3d8057c
--- /dev/null
+++ b/files/snippets/.snippy/summaryhtml
@@ -0,0 +1,6 @@
+<details>
+<summary>TITLE</summary>
+
+```
+```
+</details>
\ No newline at end of file
diff --git a/files/x11/.Xresources b/files/x11/.Xresources
index 7df0b30..bf7f59f 100644
--- a/files/x11/.Xresources
+++ b/files/x11/.Xresources
@@ -59,4 +59,10 @@ URxvt.scrollBar: false
 URxvt.resize-font.smaller: C-Down
 URxvt.resize-font.bigger: C-Up
 URxvt.iso14755: false
-URxvt.iso14755_52: false
\ No newline at end of file
+URxvt.iso14755_52: false
+
+URxvt.perl-ext-common: default,matcher,resize-font
+URxvt.url-launcher: /usr/bin/xdg-open
+URxvt.matcher.button: 1
+URxvt.keysym.C-Delete: perl:matcher:last
+URxvt.keysym.M-Delete: perl:matcher:list