# Easy Zsh Setup One-command zsh environment: oh-my-zsh, powerlevel10k, and a curated plugin set (autosuggestions, syntax-highlighting, completions, history-substring-search, fzf-tab, k), plus eza, zoxide, fzf, and Nerd Fonts. ## Install ```bash curl -fsSL https://git.miomio.moe/mio/easyzsh/raw/branch/master/install.sh | bash ``` Options: `--cp-hist` / `-c` imports bash history; `--non-interactive` / `-n` skips the default-shell change. From a git checkout: ```bash ./deploy.sh ``` ## Layout | Path | Role | Reinstall | | --- | --- | --- | | `~/.zshenv` | Always-on: Homebrew, `~/.local/bin`, source `local.zsh` | Overwritten | | `~/.zshrc` | Interactive: omz, plugins, aliases, fzf, zoxide | Overwritten | | `~/.config/zsh/local.zsh` | Machine-local overrides (every zsh, including agents) | **Never overwritten** | | `~/.config/zshrc/*.zsh` | Personal/tool overlays before oh-my-zsh | Left alone | | `~/.local/bin/` | User tools + shims (e.g. `grok` → `~/.grok/bin/grok`) | Left alone | easyzsh does **not** manage `~/.zprofile`. Put machine/login hooks in `local.zsh`. Do **not** put `~/.grok/bin` on PATH wholesale. ```bash # ~/.config/zsh/local.zsh . "$HOME/.cargo/env" # ~/.config/zshrc/prefs.zsh plugins+=(docker) ``` Tool fragments from this repo: ```bash curl -fsSL https://git.miomio.moe/mio/easyzsh/raw/branch/master/patch.sh | bash -s -- fnm pyenv ```