How to Install zsh and Oh My Zsh in Windows 10

If you’re coming to Windows from macOS or Linux, you might miss the powerful functionality of the UNIX command line or “shell.” Windows doesn’t ship with the UNIX shell enabled by default, but you can easily get a shell running on Windows and even extend the shell’s power with zsh.

zsh, also called the “Z-shell,” is a more powerful version of Bash, the standard shell that ships on Linux and macOS systems. zsh allows users to extend the appearance and functionality of their shell with scripts, plugins and more. There’s a wide community of developers that have made amazingly useful plugins for zsh, and you can code your own extensions and plugins as well. If you spend a lot of time on the terminal, it’s a great way to improve your quality of life.

Before we can install zsh or Oh My Zsh, we need to first enable the default shell called Bash. This used to require third-party programs like Cygwin, and you can still do it that way. However, Windows 10 now ships with a Linux subsystem that’s turned off by default. If we turn it on, we’ll be able to run Bash on Windows using native software packages.

1. Open Settings and click on “Updates & Security.”

settings-update-and-security

2. Click “For developers” in the sidebar, then click the radio button next to “Developer mode.”

settings-developer-mode

3. In the pop-up window, click “Yes” to proceed with enabling developer mode.

settings-developer-mode-2

4. Open Control Panel and navigate to the “Programs and Features” menu.

control-panel-programs-features-open

5. Click “Turn Windows features on or off” in the sidebar.

control-panel-turn-windows-features

6. Scroll down and tick the checkbox next to “Windows Subsystem for Linux (Beta)” to enable the Linux subsystem. Then click the “OK” button.

control-panel-turn-on-linux-subsystem

7. Wait for the installer to finish.

windows-features-installing

8. When the installer is finished, click “Restart Now” to restart your computer and complete the installation.

windows-features-restart-now

9. After you’ve restarted your computer, type “bash” into the Start Menu and launch the bash script.

bash-exe-start-menu

10. This will open a command prompt and finish installing UNIX and Bash. Type the “y” key and press “Enter” to confirm installation of the remaining components.

bash-exe-install-script-2

11. Wait while the remaining components are downloaded and configured.

bash-exe-install-script-3

12. When prompted, create a username for Bash and UNIX.

bash-exe-install-script-4

13. Enter a password you’ll use for Bash and UNIX. You won’t see any characters appear as you type, but they are being saved. Press “Enter.”

bash-exe-install-script-5

14. When the installation is finished, you’ll be returned to the command prompt. You can now close this window.

bash-exe-install-script-6

Now that we have a shell on Windows, our next step is to install zsh. We’ll use the “apt-get” package manager to download and install it.

1. Open Bash from the Start Menu.

bash-on-ubuntu-start-menu

2. Type the following command into the command prompt and press “Enter:”

sudo apt-get install zsh

bash-apt-get-1

3. Enter your Bash/UNIX password when prompted and press “Enter.”

bash-apt-get-2

4. When prompted, type “Y” and press “Enter” to continue the installation.

bash-apt-get-3

5. When the installation is complete, you’ll be returned to the command prompt.

bash-apt-get-4

Now that we’ve installed zsh, we can start using it.

1. Open Bash from the Start Menu.

bash-on-ubuntu-start-menu

2. Type zsh and press “Enter.”

zsh-launch-zsh

3. On first run, you’ll need to go through some zsh configuration options. There’s a bunch there, but we recommend actually looking at all the information and choosing the options you like. If you’re not sure what to choose, you can just press the “2” key to accept the default configuration.

zsh-configure-zsh

4. When the configuration is complete, you’ll be returned to the zsh command prompt.

zsh-command-prompt

Now that we have zsh installed, we can install Oh My Zsh. If you’re not familiar with Oh My Zsh, the developer says it best: “Oh-My-Zsh is an open source, community-driven framework for managing your zsh configuration.” It also ships with more than 200 plugins and 140 themes for zsh, extending functionality and making your command line easier to customize.

1. Open Bash from the Start Menu.

bash-on-ubuntu-start-menu

2. Use the following command to download and install git, a prerequisite for installing Oh My Zsh:

sudo apt-get install git

zsh-install-git

3. Once git is installed, we can download and install Oh My Zsh. To do so, copy and paste the following command into your command line and press “Enter.”

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Note that you can quickly paste into the zsh command line by selecting the Xsh window and right-clicking.

zsh-install-oh-my-zsh

4. Enter your Bash/UNIX password when prompted and press “Enter.”

zsh-install-oh-my-zsh-enter-password

5. When the installation is finished, you’ll see Oh My Zsh’s ASCII art.

zsh-installed-success-ascii

Once you’ve installed zsh and Oh My Zsh, you can use them both just as you would on a UNIX system. If you want to learn more, you can check out zsh’s online user guide and Oh My Zsh’s wikis.

Leave a Reply

Yeah! You've decided to leave a comment. That's fantastic! Check out our comment policy here. Let's have a personal and meaningful conversation.