Small portable utility next to cheat/speedtest; strips __MACOSX and .DS_Store entries via zip -d.
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
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. The installer backs up an existing ~/.zshrc
and ~/.zshenv before replacing them.
What gets installed where
| Path | Role |
|---|---|
~/.zshrc |
Canonical shell entry (from repo .zshrc). Stay close to upstream; reinstall overwrites it. |
~/.zshenv |
Early env for every zsh (Homebrew shellenv on macOS). |
~/.config/zshrc/*.zsh |
Your overlays, sourced by ~/.zshrc before oh-my-zsh loads. |
Do not put personal tweaks into ~/.zshrc if you want painless upgrades: put them under ~/.config/zshrc/ instead.
Personal configuration
Every *.zsh file in ~/.config/zshrc/ is sourced near the end of ~/.zshrc,
just before oh-my-zsh loads, so it can add plugins and override defaults.
# ~/.config/zshrc/local.zsh
plugins+=(docker) # add plugins
plugins=(${plugins:#zsh-autosuggestions}) # or remove one
alias gs='git status'
Ready-made tool configs from this repo's zshrc/ directory can be pulled in
by name (not personal samples):
curl -fsSL https://git.miomio.moe/mio/easyzsh/raw/branch/master/patch.sh | bash -s -- fnm pyenv
Current fragments: fnm, nvm, pyenv, p10k, merlin_devbox, merlin_worker.
Because these files load before oh-my-zsh, plugin and theme changes take effect;
aliases that must beat oh-my-zsh's own should be defined after oh-my-zsh loads
(see the note in ~/.zshrc).