Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"ZSH" snowblock #272

Merged
merged 1 commit into from
May 7, 2020
Merged

"ZSH" snowblock #272

merged 1 commit into from
May 7, 2020

Conversation

arcticicestudio
Copy link
Owner

Closes #271

Finally created a new snowblock for ZSH[1].
> A shell designed for interactive use, although it is also a powerful
> scripting language.

I've switched from Bash [2] to ZSH a while ago and the configurations
have now been tested enough on a day-by-day basis to be persisted in
igloo.

When the `ZDOTDIR` environment variable is set ZSH will check for all
the configuration files [3] using the specified path instead of the
default location in the root of the user's home directory.
This is one of the many great advantages of ZSH because it allows to
create a clear bootstrap structure and helps to keep the home
directory clean by not cluttering it with more ".dotfiles".
In order to work across different platforms without the requirement of
having the `ZDOTDIR` environment variable already initialized at shell
start, e.g. through `pam_env` [4] or systemd via environment.d [5] (both
only available on most Linux system), a minimal loader script file will
be placed at `~/.zshenv`.
Since this is always the first user-level file read by ZSH it sets the
`ZDOTDIR` environment variable and then sources the actual main `zshenv`
(e.g. `$ZDOTDIR/main.zsh`) file followed by other startup files also
located in the directory instead of `$HOME/.zsh*`.
More details about the actual content and architecture is available in
the snowblock documentation.

[1]: http://zsh.sourceforge.net
[2]: https://www.gnu.org/software/bash
[3]: https://wiki.archlinux.org/index.php/zsh#Startup/Shutdown_files
[4]: https://wiki.archlinux.org/index.php/Environment_variables#Using_pam_env
[5]: https://www.freedesktop.org/software/systemd/man/environment.d.html

GH-271

Co-authored-by: Sven Greb <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

"ZSH" snowblock
2 participants