Scripts and things

Scripts

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

Comments