The zsh package contains a command interpreter (shell) usable as an interactive login shell and as a shell script command processor. Of the standard shells, zsh most closely resembles ksh but includes many enhancements.
Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://www.zsh.org/pub/zsh-5.9.tar.xz
Download MD5 sum: 182e37ca3fe3fa6a44f69ad462c5c30e
Download size: 3.2 MB
Estimated disk space required: 48 MB (includes documentation and tests)
Estimated build time: 1.6 SBU (Using parallelism=4; includes documentation and tests)
When there is a new zsh release, the old files shown above are moved to a new server directory: https://www.zsh.org/pub/old/.
Adapt the documentation build system for texinfo-7.0 or later:
sed -e 's/set_from_init_file/texinfo_&/' \ -i Doc/Makefile.in
Install zsh by running the following commands:
./configure --prefix=/usr \ --sysconfdir=/etc/zsh \ --enable-etcdir=/etc/zsh \ --enable-cap \ --enable-gdbm && make && makeinfo Doc/zsh.texi --html -o Doc/html && makeinfo Doc/zsh.texi --plaintext -o zsh.txt && makeinfo Doc/zsh.texi --html --no-split --no-headers -o zsh.html
If you have texlive-20230313 installed, you can build PDF format of the documentation by issuing the following command:
texi2pdf Doc/zsh.texi -o Doc/zsh.pdf
To test the results, issue: make check.
Now, as the root
user:
make install && make infodir=/usr/share/info install.info && make htmldir=/usr/share/doc/zsh-5.9/html install.html && install -v -m644 zsh.{html,txt} Etc/FAQ /usr/share/doc/zsh-5.9
If you built the PDF format of the documentation, install it by issuing the following command as the root
user:
install -v -m644 Doc/zsh.pdf /usr/share/doc/zsh-5.9
--sysconfdir=/etc/zsh
and --enable-etcdir=/etc/zsh
: These parameters are used so that all the zsh configuration files are consolidated into the /etc/zsh
directory. Omit these parameters if you wish to retain historical compatibility by having all the files located in the /etc
directory.
--enable-cap
: This option enables POSIX capabilities.
--enable-gdbm
: This option enables the use of the GDBM library.
--enable-pcre
: This option allows zsh to use the PCRE regular expression library in shell builtins.
There are a whole host of configuration files for zsh including /etc/zsh/zshenv
, /etc/zsh/zprofile
, /etc/zsh/zshrc
, /etc/zsh/zlogin
and /etc/zsh/zlogout
. You can find more information on these in the zsh(1)
and related manual pages.
The first time zsh is executed, you will be prompted by messages asking several questions. The answers will be used to create a ~/.zshrc
file. If you wish to run these questions again, run zsh /usr/share/zsh/5.9/functions/zsh-newuser-install -f.
There are several built-in advanced prompts. In the zsh shell, start advanced prompt support with autoload -U promptinit, then promptinit. Available prompt names are listed with prompt -l. Select a particular one with prompt <prompt-name>
. Display all available prompts with prompt -p. Except for the list and display commands above, you can insert the other ones in ~/.zshrc
to be automatically executed at shell start, with the prompt you chose.
Update /etc/shells
to include the zsh shell program names (as the root
user):
cat >> /etc/shells << "EOF"
/bin/zsh
EOF