34 Installing ZSH
Pika edited this page 2018-03-29 12:46:49 -04:00

Zsh?

Oh-My-Zsh is a framework for Zsh, the Z shell.

  • In order for Oh-My-Zsh to work, Zsh must be installed.
    • Please run zsh --version to confirm.
    • Expected result: zsh 5.1.1 or more recent
  • Additionally, Zsh should be set as your default shell.
    • Please run echo $SHELL from a new terminal to confirm.
    • Expected result: usr/bin/zsh or similar

Install and set up zsh as default

If necessary, follow these steps to install Zsh:

  1. There are two main ways to install Zsh
  1. Verify installation by running zsh --version. Expected result: zsh 5.1.1 or more recent.
  2. Make it your default shell: chsh -s $(which zsh)
  1. Log out and login back again to use your new default shell.
  2. Test that it worked with echo $SHELL. Expected result: /bin/zsh or similar.
  3. Test with '$SHELL --version'. Expected result: 'zsh 5.1.1' or similar

How to install zsh in many platforms

macOS

Try zsh --version before installing it from Homebrew. If it's newer than 4.3.9 you might be OK. Preferably newer than or equal to 5.0.

brew install zsh zsh-completions

Assuming you have Homebrew installed. If not, most versions of macOS ship zsh by default, but it's normally an older version. Alternatively, you may also use MacPorts

sudo port install zsh zsh-completions

Ubuntu, Debian & derivatives

apt install zsh

If you don't have apt, the recommended package manager for end users [1] [2] [3] [4] , you can try apt-get or aptitude.

Other distributions that apply include: Linux Mint, elementary OS, Zorin OS, Raspbian, MX Linux.

OpenSUSE

zypper install zsh

Arch Linux

pacman -S zsh

Void Linux

xbps-install zsh

Fedora

dnf install zsh

FreeBSD

To install the package:

pkg install zsh

To install the port:

cd /usr/ports/shells/zsh/ && make install clean

To reduce memory usage, optionally enable zsh-mem options with

make config

before running "make install".

Centos/RHEL

sudo yum update && sudo yum -y install zsh

Cygwin

Install the zsh package using the installer. Unfortunately Cygwin doesn't have a standard command line interface.

The easiest way to change the default shell is to set your SHELL user environment variable. Search for "Edit Environment variables for your account" to bring up the environment variables window, create a new variable named "SHELL" and give it the value "/usr/bin/zsh/".

Alternatively: Open Cygwin (in BASH) then type:

sudo nano ~/.bashrc

Once the .bashrc file is open, add this line to the very top:

exec zsh

Close and save the file. Close and reopen Cygwin. It will execute the command every time you load the terminal and run your zsh shell.

Solus

eopkg it zsh

Funtoo/Gentoo

emerge app-shells/zsh

Add yours

If you know a platform that is not covered, edit this page and add it!