The information in this document should help you get started using zsh with some common plugins.


We are going to install zsh and zplug. zplug will help you install and manage zsh plugins.

sudo apt install zsh zplug


zsh configuration file is named .zshrc and is located in your home directory (eg. ~/.zshrc)

If you run zsh without having the configuration file, zsh will provide you option to create one. I suggest to create basic .zshrc before you run zsh.

The following configuration file will help you get started.

Create ~/.zshrc with the following content:

# Set path if required
#export PATH=$GOPATH/bin:/usr/local/go/bin:$PATH

# Aliases
alias ls='ls --color=auto'
alias ll='ls -lah --color=auto'
alias grep='grep --color=auto'
alias ec="$EDITOR $HOME/.zshrc" # edit .zshrc
alias sc="source $HOME/.zshrc"  # reload zsh configuration

# Set up the prompt - if you load Theme with zplugin as in this example, this will be overriden by the Theme. If you comment out the Theme in zplugins, this will be loaded.
autoload -Uz promptinit
prompt adam1            # see Zsh Prompt Theme below

# Use vi keybindings even if our EDITOR is set to vi
bindkey -e

setopt histignorealldups sharehistory

# Keep 5000 lines of history within the shell and save it to ~/.zsh_history:

# Use modern completion system
autoload -Uz compinit

# zplug - manage plugins
source /usr/share/zplug/init.zsh
zplug "plugins/git", from:oh-my-zsh
zplug "plugins/sudo", from:oh-my-zsh
zplug "plugins/command-not-found", from:oh-my-zsh
zplug "zsh-users/zsh-syntax-highlighting"
zplug "zsh-users/zsh-autosuggestions"
zplug "zsh-users/zsh-history-substring-search"
zplug "zsh-users/zsh-completions"
zplug "junegunn/fzf"
zplug "themes/robbyrussell", from:oh-my-zsh, as:theme   # Theme

# zplug - install/load new plugins when zsh is started or reloaded
if ! zplug check --verbose; then
    printf "Install? [y/N]: "
    if read -q; then
        echo; zplug install
zplug load --verbose

Start zsh

You should be able to start zsh by typing zsh in your current shell (e.g. bash). This will install and load all plugins included in the ~/.zshrc file.


Make zsh your default shell

chsh -s /bin/zsh

Reload zsh after changes

You can use the alias included in the config file sc or

source $HOME/.zshrc

Plugins for zplug

You can find different plugins or themes using these links.

Zplug management

You can check your current plugins, update them, or install new ones. Use the following options with zplug command.

zplug <option>

Zsh Prompt Theme

Zsh Resources

Resources specific to Debian's Zsh Package

Debian Zsh Packaging Team

aka pkg-zsh.