diff --git a/code/.config/Code - OSS/User/settings.json b/code/.config/Code - OSS/User/settings.json
deleted file mode 100644
index 03e0dcf..0000000
--- a/code/.config/Code - OSS/User/settings.json	
+++ /dev/null
@@ -1,43 +0,0 @@
-{
-    "[just]": {
-        "editor.tabSize": 2
-    },
-    "[yaml]": {
-        "editor.tabSize": 2
-    },
-    "breadcrumbs.enabled": false,
-    "editor.codeActionsOnSave": {
-        "source.organizeImports": "always"
-    },
-    "editor.fontFamily": "'FiraCode Nerd Font', monospace",
-    "editor.fontLigatures": true,
-    "editor.fontSize": 16,
-    "editor.formatOnSave": true,
-    "editor.insertSpaces": true,
-    "editor.minimap.enabled": false,
-    "editor.tabSize": 4,
-    "livePreview.openPreviewTarget": "External Browser",
-    "python.analysis.diagnosticMode": "workspace",
-    "python.analysis.inlayHints.callArgumentNames": "all",
-    "python.analysis.inlayHints.functionReturnTypes": true,
-    "python.analysis.inlayHints.variableTypes": true,
-    "python.analysis.typeCheckingMode": "standard",
-    "python.analysis.nodeExecutable": "/usr/bin/node",
-    "python.createEnvironment.trigger": "prompt",
-    "python.languageServer": "Jedi",
-    "redhat.telemetry.enabled": false,
-    "terminal.integrated.cursorBlinking": true,
-    "terminal.integrated.cursorStyle": "line",
-    "terminal.integrated.enablePersistentSessions": false,
-    "terminal.integrated.hideOnStartup": "always",
-    "update.showReleaseNotes": false,
-    "window.restoreWindows": "one",
-    "window.zoomLevel": 2,
-    "workbench.iconTheme": "material-icon-theme",
-    "workbench.startupEditor": "none",
-    "svelte.enable-ts-plugin": true,
-    "[python]": {
-        "editor.defaultFormatter": "ms-python.black-formatter"
-    },
-    "workbench.colorTheme": "Tokyo Night"
-}
\ No newline at end of file
diff --git a/justfile b/justfile
index 147a6db..afa9eba 100644
--- a/justfile
+++ b/justfile
@@ -63,15 +63,9 @@ flatpak:
   sudo pacman -S flatpak flatpak-xdg-utils
   flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
 
-# foot terminal emulator
-foot:
-  sudo pacman -S foot foot-terminfo
-
-  stow --dotfiles -S foot
-
 # Steam, Heroic, Prism Launcher, Gamescope, MangoHud & other utils
 games:
-  sudo pacman -S gamemode gamescope goverlay mangohud steam ttf-liberation wine wine-gecko wine-mono winetricks wqy-zenhei
+  sudo pacman -S goverlay mangohud steam ttf-liberation wine wine-gecko wine-mono winetricks wqy-zenhei
   paru -S protontricks
   flatpak install ca.parallel_launcher.ParallelLauncher com.heroicgameslauncher.hgl net.davidotek.pupgui2 org.prismlauncher.PrismLauncher
 
@@ -79,7 +73,6 @@ games:
 git:
   git config --global commit.gpgsign true
   git config --global init.defaultBranch "main"
-  git config --global user.email "trypancakes@tutanota.com"
   git config --global user.name "pancakes"
 
 # Syncthing file sync
@@ -93,13 +86,6 @@ tailscale:
   sudo systemctl enable --now tailscaled
   sudo tailscale up --operator={{username}} --ssh=true
 
-# Waydroid Android emulator with Google Apps
-waydroid:
-  ame install binder_linux-dkms waydroid
-  sudo waydroid init -s GAPPS
-  sudo systemctl enable --now waydroid-container
-  waydroid session start &
-
 # window manager and required programs
 wm:
   sudo pacman -S bluez bluez-utils cliphist easyeffects firefox fuzzel gdm gnome-keyring gtklock hunspell hunspell-en_au hunspell-en_us mako niri noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra power-profiles-daemon swayidle swww ttf-firacode-nerd ttf-font-awesome waybar wl-clipboard xdg-desktop-portal-gnome
@@ -111,3 +97,10 @@ wm:
   sudo systemctl enable --now power-profiles-daemon
 
   stow --dotfiles -S wm
+
+zsh:
+  sudo pacman -S zsh
+  chsh -s /usr/bin/zsh
+  curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
+  rm ~/.zimrc ~/.zsh
+  stow --dotfiles -S zsh
diff --git a/mangohud/.config/MangoHud/MangoHud.conf b/mangohud/.config/MangoHud/MangoHud.conf
deleted file mode 100644
index 8c6dd29..0000000
--- a/mangohud/.config/MangoHud/MangoHud.conf
+++ /dev/null
@@ -1,67 +0,0 @@
-################### File Generated by Goverlay ###################
-legacy_layout=false
-
-
-background_alpha=0.6
-round_corners=0
-background_alpha=0.6
-background_color=000000
-
-font_size=24
-text_color=FFFFFF
-position=top-left
-toggle_hud=Shift_R+F12
-
-table_columns=3
-gpu_text=GPU
-gpu_stats
-gpu_load_change
-gpu_load_value=50,90
-gpu_load_color=FFFFFF,FFAA7F,CC0000
-throttling_status
-gpu_temp
-cpu_text=CPU
-cpu_stats
-core_load
-
-cpu_load_change
-cpu_load_value=50,90
-cpu_load_color=FFFFFF,FFAA7F,CC0000
-cpu_temp
-vram
-vram_color=AD64C1
-ram
-ram_color=C26693
-fps
-engine
-engine_color=EB5B5B
-gpu_name
-vulkan_driver
-wine
-wine_color=EB5B5B
-frame_timing
-frametime_color=00FF00
-fps_limit_method=late
-toggle_fps_limit=Shift_L+F1
-
-fps_limit=0
-gamemode
-battery
-battery_color=00FF00
-battery_time
-custom_text=Arch Linux
-exec=lsb_release -a | grep Release | uniq | cut -c 10-26
-custom_text=Kernel
-exec=uname -r
-
-
-
-af=0
-picmip=0
-
-
-output_folder=/home/ollie
-log_duration=30
-autostart_log=0
-log_interval=100
-toggle_logging==Shift_L+F2
diff --git a/zsh/dot-zimrc b/zsh/dot-zimrc
new file mode 100644
index 0000000..b99e864
--- /dev/null
+++ b/zsh/dot-zimrc
@@ -0,0 +1,59 @@
+# Start configuration added by Zim install {{{
+#
+# This is not sourced during shell startup, and it's only used to configure the
+# zimfw plugin manager.
+#
+
+#
+# Modules
+#
+
+# Sets sane Zsh built-in environment options.
+zmodule environment
+# Provides handy git aliases and functions.
+zmodule git
+# Applies correct bindkeys for input events.
+zmodule input
+# Sets a custom terminal title.
+zmodule termtitle
+# Utility aliases and functions. Adds colour to ls, grep and less.
+zmodule utility
+
+#
+# Prompt
+#
+
+# Exposes to prompts how long the last command took to execute
+zmodule duration-info
+# Exposes git repository status information to prompts
+zmodule git-info
+# Exposes currently working directory to prompts
+zmodule prompt-pwd
+
+export ON_COLOR=magenta
+zmodule s1ck94
+
+#
+# Completion
+#
+
+# Additional completion definitions for Zsh.
+zmodule zsh-users/zsh-completions --fpath src
+# Enables and configures smart and extensive tab completion.
+# completion must be sourced after all modules that add completion definitions.
+zmodule completion
+
+#
+# Modules that must be initialized last
+#
+
+# Fish-like syntax highlighting for Zsh.
+# zsh-users/zsh-syntax-highlighting must be sourced after completion
+zmodule zsh-users/zsh-syntax-highlighting
+# Fish-like history search (up arrow) for Zsh.
+# zsh-users/zsh-history-substring-search must be sourced after zsh-users/zsh-syntax-highlighting
+zmodule zsh-users/zsh-history-substring-search
+# Fish-like autosuggestions for Zsh.
+zmodule zsh-users/zsh-autosuggestions
+# }}} End configuration added by Zim install
+
diff --git a/zsh/dot-zshrc b/zsh/dot-zshrc
new file mode 100644
index 0000000..fd01ac2
--- /dev/null
+++ b/zsh/dot-zshrc
@@ -0,0 +1,135 @@
+# Start configuration added by Zim install {{{
+#
+# User configuration sourced by interactive shells
+#
+
+# -----------------
+# Zsh configuration
+# -----------------
+
+#
+# History
+#
+
+# Remove older command from the history if a duplicate is to be added.
+setopt HIST_IGNORE_ALL_DUPS
+
+#
+# Input/output
+#
+
+# Set editor default keymap to emacs (`-e`) or vi (`-v`)
+bindkey -e
+
+# Prompt for spelling correction of commands.
+#setopt CORRECT
+
+# Customize spelling correction prompt.
+#SPROMPT='zsh: correct %F{red}%R%f to %F{green}%r%f [nyae]? '
+
+# Remove path separator from WORDCHARS.
+WORDCHARS=${WORDCHARS//[\/]}
+
+# -----------------
+# Zim configuration
+# -----------------
+
+# Use degit instead of git as the default tool to install and update modules.
+#zstyle ':zim:zmodule' use 'degit'
+
+# --------------------
+# Module configuration
+# --------------------
+
+#
+# git
+#
+
+# Set a custom prefix for the generated aliases. The default prefix is 'G'.
+#zstyle ':zim:git' aliases-prefix 'g'
+
+#
+# input
+#
+
+# Append `../` to your input for each `.` you type after an initial `..`
+#zstyle ':zim:input' double-dot-expand yes
+
+#
+# termtitle
+#
+
+# Set a custom terminal title format using prompt expansion escape sequences.
+# See http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html#Simple-Prompt-Escapes
+# If none is provided, the default '%n@%m: %~' is used.
+#zstyle ':zim:termtitle' format '%1~'
+
+#
+# zsh-autosuggestions
+#
+
+# Disable automatic widget re-binding on each precmd. This can be set when
+# zsh-users/zsh-autosuggestions is the last module in your ~/.zimrc.
+ZSH_AUTOSUGGEST_MANUAL_REBIND=1
+
+# Customize the style that the suggestions are shown with.
+# See https://github.com/zsh-users/zsh-autosuggestions/blob/master/README.md#suggestion-highlight-style
+#ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=242'
+
+#
+# zsh-syntax-highlighting
+#
+
+# Set what highlighters will be used.
+# See https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md
+ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets)
+
+# Customize the main highlighter styles.
+# See https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md#how-to-tweak-it
+#typeset -A ZSH_HIGHLIGHT_STYLES
+#ZSH_HIGHLIGHT_STYLES[comment]='fg=242'
+
+# ------------------
+# Initialize modules
+# ------------------
+
+ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
+# Download zimfw plugin manager if missing.
+if [[ ! -e ${ZIM_HOME}/zimfw.zsh ]]; then
+  if (( ${+commands[curl]} )); then
+    curl -fsSL --create-dirs -o ${ZIM_HOME}/zimfw.zsh \
+        https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
+  else
+    mkdir -p ${ZIM_HOME} && wget -nv -O ${ZIM_HOME}/zimfw.zsh \
+        https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
+  fi
+fi
+# Install missing modules, and update ${ZIM_HOME}/init.zsh if missing or outdated.
+if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
+  source ${ZIM_HOME}/zimfw.zsh init
+fi
+# Initialize modules.
+source ${ZIM_HOME}/init.zsh
+
+# ------------------------------
+# Post-init module configuration
+# ------------------------------
+
+#
+# zsh-history-substring-search
+#
+
+zmodload -F zsh/terminfo +p:terminfo
+# Bind ^[[A/^[[B manually so up/down works both before and after zle-line-init
+for key ('^[[A' '^P' ${terminfo[kcuu1]}) bindkey ${key} history-substring-search-up
+for key ('^[[B' '^N' ${terminfo[kcud1]}) bindkey ${key} history-substring-search-down
+for key ('k') bindkey -M vicmd ${key} history-substring-search-up
+for key ('j') bindkey -M vicmd ${key} history-substring-search-down
+unset key
+# }}} End configuration added by Zim install
+
+HISTFILE=~/.histfile
+HISTSIZE=1000
+SAVEHIST=5000
+unsetopt beep
+bindkey -v