Skip to content

Instantly share code, notes, and snippets.

@ZhaofengWu
Last active July 14, 2024 16:53
Show Gist options
  • Save ZhaofengWu/f345652e994e3b68c309352a7610460f to your computer and use it in GitHub Desktop.
Save ZhaofengWu/f345652e994e3b68c309352a7610460f to your computer and use it in GitHub Desktop.
Install zsh without root
#!/bin/bash
set -e
# OPTIONAL: zsh will not install without ncurses. IF your machine doesn't have ncurses, you need to install it first.
export CXXFLAGS=" -fPIC" CFLAGS=" -fPIC" CPPFLAGS="-I${HOME}/include" LDFLAGS="-L${HOME}/lib"
wget https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.2.tar.gz
tar -xzvf ncurses-6.2.tar.gz
cd ncurses-6.2
./configure --prefix=$HOME --enable-shared
make
make install
cd .. && rm ncurses-6.2.tar.gz && rm -r ncurses-6.2
# install zsh itself
wget -O zsh.tar.xz https://sourceforge.net/projects/zsh/files/latest/download
mkdir zsh && unxz zsh.tar.xz && tar -xvf zsh.tar -C zsh --strip-components 1
cd zsh
./configure --prefix=$HOME
make
make install
cd .. && rm zsh.tar && rm -r zsh
echo -e "export SHELL=~/bin/zsh\nexec ~/bin/zsh -l" >> ~/.bash_profile # or chsh
# OPTIONAL: install oh-my-zsh
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
@zhuzzz
Copy link

zhuzzz commented Jan 31, 2024

Thanks for the script! Works like a charm :)

@NiklasRoberts
Copy link

Works perfectly, thanks!

@sahiljhawar
Copy link

sahiljhawar commented May 21, 2024

This is not a promotion or spam, but for those people who cannot run oh-my-zsh due to some limitations and are using oh-my-bash but facing sluggish performance. I highly suggest all of them to watch this video and setup all the plugins independent of oh-my-zsh. Works flawlessly!

IMAGE ALT TEXT

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment