Minimal Zsh dotfiles for servers and VPS, with oh-my-zsh + powerlevel10k.
One-liner: curl -fsSL https://raw.githubusercontent.com/Michael-YS/server-dotfiles/main/install.sh | sh -s -- --all
This setup is designed for:
- Fast startup
- Safe behavior in non-interactive shells
- Single source of truth for all shell config
- oh-my-zsh + powerlevel10k theme
- Git plugin enabled
- Non-interactive shell safe:
scp,rsync,ssh host cmdwon't load heavy config - Common aliases and settings included
.
├── install.sh
├── README.md
└── zsh/
├── zshrc # main entry point
├── zshrc.full # full config (oh-my-zsh + p10k + common settings)
└── p10k.zsh # powerlevel10k config
~/.zshrcis symlinked to~/.dotfiles/zsh/zshrc.zshrcexits immediately for non-interactive shells.- For interactive shells, it sources the full config.
curl -fsSL https://raw.githubusercontent.com/Michael-YS/server-dotfiles/main/install.sh -o /tmp/install.sh
sh /tmp/install.shNotes:
- Installer first tries anonymous clone (for public repos).
- If that fails and
GITHUB_TOKENis set, it retries with the token. - If
GITHUB_TOKENis not set, clone will fail.
Example:
export GITHUB_TOKEN=your_token_here
sh /tmp/install.shgit clone https://github.com/Michael-YS/server-dotfiles.git ~/.dotfiles
ln -sf ~/.dotfiles/zsh/zshrc ~/.zshrcInstaller will set up oh-my-zsh and powerlevel10k for you.
~/.oh-my-zsh— oh-my-zsh framework~/.oh-my-zsh/custom/themes/powerlevel10k— powerlevel10k theme
Installer can handle both automatically.
git -C ~/.dotfiles pull --ff-only
exec zshCheck oh-my-zsh path:
test -d ~/.oh-my-zsh && echo ok || echo missingCheck p10k theme path:
test -d ~/.oh-my-zsh/custom/themes/powerlevel10k && echo ok || echo missingPersonal dotfiles repository.