Scripts
Install Stew 🍲 (Recommended)
https://github.com/marwanhawari/stew/releases
eget marwanhawari/stew
chmod 755 stew
sudo mv stew /usr/local/bin
Install eget
https://github.com/zyedidia/eget
curl https://zyedidia.github.io/eget.sh | sh
Install deb-get
https://github.com/wimpysworld/deb-get
sudo apt install curl lsb-release wget
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
Setup Pi
#!/bin/bash
# https://shittycodingagent.ai/packages
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
curl -o- https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh | bash
brew install node@24
npm install -g @mariozechner/pi-coding-agent
# https://plannotator.ai/
curl -fsSL https://plannotator.ai/install.sh | bash
pi install npm:oh-pi
pi install npm:@tintinweb/pi-subagents
pi install npm:pi-powerline-footer
pi install npm:pi-markdown-preview
pi install npm:@plannotator/pi-extension
pi install npm:pi-init
pi install npm:pi-subdir-context
pi install npm:pi-session-auto-rename
pi install npm:pi-ghostty
pi install npm:pi-zellij
ZSH Plugins
# --- ZSNAP SETUP ---
[[ -f ~/.znap/zsh-snap/znap.zsh ]] ||
git clone --depth 1 -- https://github.com/marlonrichert/zsh-snap.git ~/.znap/zsh-snap
source ~/.znap/zsh-snap/znap.zsh
# --- CREATE THE ENVIRONMENT THAT OH-MY-ZSH PLUGINS EXPECT ---
# 1. Define the cache directory for plugins like gh, docker, etc.
export ZSH_CACHE_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/zsh"
# 2. Create the directory if it doesn't exist.
mkdir -p "$ZSH_CACHE_DIR/completions"
# 3. Load the Oh My Zsh library files. This provides helper functions for plugins.
# Clone Oh My Zsh first if it doesn't exist
if [[ ! -d ~/.znap/ohmyzsh/ohmyzsh ]]; then
echo "⚠️ Oh My Zsh not found. Cloning..."
znap clone ohmyzsh/ohmyzsh
fi
# Source specific lib files that plugins need
lib_count=0
setopt local_options null_glob
for lib_file in ~/.znap/ohmyzsh/ohmyzsh/lib/*.zsh(N); do
if [[ -f "$lib_file" ]]; then
source "$lib_file"
((lib_count++))
fi
done
# Verify Oh My Zsh lib files were loaded
if [[ $lib_count -eq 0 ]]; then
echo "❌ ERROR: Oh My Zsh library files not found at ~/.znap/ohmyzsh/ohmyzsh/lib/"
echo " Run: rm -rf ~/.znap/ohmyzsh && zsh to reinstall"
elif [[ -n "$ZSH_PLUGIN_VERBOSE" ]]; then
# Only show success message if verbose mode is enabled
# Enable with: export ZSH_PLUGIN_VERBOSE=1
echo "✅ Oh My Zsh loaded ($lib_count lib files)"
fi
# --- POWERLEVEL10K THEME ---
znap source romkatv/powerlevel10k
# --- COMPLETIONS AND CORE UTILITIES ---
# These should come first to set up the environment properly
znap source marlonrichert/zsh-autocomplete
# znap source zsh-users/zsh-autosuggestions # https://github.com/zsh-users/zsh-autosuggestions
eval "$(deja init zsh)" # https://github.com/Giammarco-Ferranti/deja#setup
znap source zsh-users/zsh-syntax-highlighting
# AI Autocomplete
eval "$(intelli-shell init zsh)" # https://github.com/lasantosr/intelli-shell
# export INTELLI_SEARCH_HOTKEY=\C-a
# _aichat_zsh() {
# if [[ -n "$BUFFER" ]]; then
# local _old=$BUFFER
# BUFFER+="⌛"
# zle -I && zle redisplay
# BUFFER=$(aichat -e "$_old")
# zle end-of-line
# fi
# }
# _fabric_zsh() {
# if [[ -n "$BUFFER" ]]; then
# local msg=$BUFFER
# zle -I && zle redisplay
# PROMPT="Be concise. Output ONLY the PLAIN TEXT command needed for a ZSH shell."
# BUFFER=$(fabric --pattern create_command "$PROMPT - $msg")
# zle end-of-line
# fi
# }
# zle -N _fabric_zsh
# bindkey "^ " _fabric_zsh
# --- OH-MY-ZSH PLUGINS ---
# Now that the environment is set up, these should load correctly.
znap source ohmyzsh/ohmyzsh plugins/autojump
znap source ohmyzsh/ohmyzsh plugins/colorize
znap source ohmyzsh/ohmyzsh plugins/docker
znap source ohmyzsh/ohmyzsh plugins/docker-compose
znap source ohmyzsh/ohmyzsh plugins/dotenv
znap source ohmyzsh/ohmyzsh plugins/gh
znap source ohmyzsh/ohmyzsh plugins/git
znap source ohmyzsh/ohmyzsh plugins/git-extras
znap source ohmyzsh/ohmyzsh plugins/github
znap source ohmyzsh/ohmyzsh plugins/invoke
znap source ohmyzsh/ohmyzsh plugins/isodate
znap source ohmyzsh/ohmyzsh plugins/ssh
znap source ohmyzsh/ohmyzsh plugins/systemadmin
znap source ohmyzsh/ohmyzsh plugins/supervisor
znap source ohmyzsh/ohmyzsh plugins/terraform
znap source ohmyzsh/ohmyzsh plugins/vscode
znap source ohmyzsh/ohmyzsh plugins/magic-enter
znap source ohmyzsh/ohmyzsh plugins/direnv
znap source ohmyzsh/ohmyzsh plugins/copybuffer
# --- OTHER PLUGINS ---
znap source wfxr/forgit
znap source MichaelAquilina/zsh-you-should-use
export YSU_IGNORED_ALIASES=("g" "ll" "micro" "m_" "m__")
export YSU_IGNORED_GLOBAL_ALIASES=("...")
export YSU_MESSAGE_FORMAT="🧠 %alias_type %command -> %alias 🧠"
export YSU_DISABLE_GLOBAL_ALIASES=1
# --- OS-SPECIFIC PLUGINS ---
if [[ "$(uname)" == "Linux" ]]; then
znap source ohmyzsh/ohmyzsh plugins/systemd
znap source ohmyzsh/ohmyzsh plugins/golang
fi
if [[ "$(uname)" == "Darwin" ]]; then
znap source ohmyzsh/ohmyzsh plugins/macos
znap source ohmyzsh/ohmyzsh plugins/iterm2
znap source ohmyzsh/ohmyzsh plugins/brew
znap source ohmyzsh/ohmyzsh plugins/aws
fi
eval "$(atuin init zsh)"
# --- PROBLEMATIC PLUGIN ---
# Load sudo LAST, after all completion systems are set up.
znap source ohmyzsh/ohmyzsh plugins/sudo
if [[ "$IDE_TERM" ]]; then
source ~/.zsh_custom/p10k-ide.zsh # Miniaml Prompt
eval "$(forge zsh plugin)"
fi
Reply:
Mastodon Bluesky Email
