AutoZSH is an open source easy install & default configuration wrapper
for the Z Shell and oh-my-zsh.
The project aims to
provide a quick start with a feature-rich zsh environment. It installs
oh-my-zsh together with several plugins and supplies a default zshrc
file featuring default key bindings and some custom functions.
This project is distributed under the Creative Commons Attribution‑ShareAlike 4.0 International License.
You are free to share and adapt the code as long as:
- you give appropriate credit and
- you distribute your contributions under the same terms*
If you fork, redistribute or embed AutoZSH:
- Include a link "AutoZSH" to this repository in your README or documentation.
- Attribute the original author:
AutoZSH was created by Daniel Speck (github.com/daniel451) Licensed under CC-BY-SA 4.0 Redistribution permitted given you copy and include this notice and distribute your works under the same license. - Keep this license notice and include any changes you made.
- If you publish derivative work, license it under the same CC BY-SA 4.0 terms.
These must be pre-installed and reachable on the invoking user's PATH
before the installer runs — system-wide or user-local installs both work:
zshgitcurl
These are required by the shipped configuration, but they do not have to be installed system-wide — AutoZSH can provide them itself:
fzf(0.48 or newer: powers the Ctrl-p / Ctrl-t directory and file navigation widgets via its built-in filesystem walker)zoxide(smartercdnavigation)
If missing (or, for fzf, older than 0.48), the installer prompts to
install them user-locally into ~/.local/bin. Declining or a failed
installation aborts the setup. For unattended runs, install is accepted
with INSTALL_LOCAL_DEPS=1.
You can install AutoZSH with a single command:
curl -fsSL https://raw.githubusercontent.com/Daniel451/AutoZSH/main/install.sh | bashThe script will:
- Check the required dependencies and install
fzf/zoxideuser-locally if missing (prompted interactively, or pre-accepted withINSTALL_LOCAL_DEPS=1in non-interactive runs). - Install oh-my-zsh and plugins.
- Configure your
.zshrc. - Backup existing configuration if present.
To ensure non-interactive installation (e.g., to run the installation as part of an automated setup, Dockerfile, ...), you can set NONINTERACTIVE=1 globally or for that command:
curl -fsSL https://raw.githubusercontent.com/Daniel451/AutoZSH/main/install.sh | NONINTERACTIVE=1 INSTALL_LOCAL_DEPS=1 bashTo customize the installation or run manually:
- Clone this repository.
- Run
./install.sh.
After installation the provided zshrc becomes your $HOME/.zshrc.
Feel free to modify this file to tailor themes, plugins or any other
settings to your preference.