Skip to content

vipau/zsimple

Repository files navigation

zsimple

Simple, modern, fast zsh environment with no hard dependencies.
The blog post has demo videos and you can also try this in a Docker container as mentioned below.

Requirements

  • zsh (recommended to use a recent version)

Optional recommended dependencies

  • git, for downloading the plugins if not installed via a package manager. If neither plugins nor git are found, they will not be used, and a warning will be shown (can be disabled).
  • starship, for having a nice customizable and powerful prompt. Check out my lightweight configuration: Blog | GitHub

Features

  • Modern feel with quality of life features while keeping things simple and fast
  • Works on Linux, MacOS and some Windows environments
  • No plugin manager (tries system paths first, otherwise asks if to git clone)
  • Only 3 (very audited) plugins: zsh-autosuggestions, zsh-completions, zsh-syntax-highlighting

Test in docker

Slim Debian image including starship and my lightweight config

docker run --rm -it ghcr.io/vipau/zsimple:debian-latest

Extremely minimal Void Linux image without starship

docker run --rm -it ghcr.io/vipau/zsimple:void-latest

Install

This will backup any existing files called .zshrc, .exports and .aliases.
Please also always keep your own backups of dotfiles.

Try with my fast starship theme (readme)

git clone --recursive https://github.com/vipau/zsimple.git
cd zsimple
ZSIMPLE_INSTALL_THEME=1 sh install.sh
zsh

For zsh default or your custom prompt:

git clone https://github.com/vipau/zsimple.git
cd zsimple
sh install.sh
zsh

Make sure to review the contents of ~/.aliases and ~/.exports afterwards, and customize to your liking.

How to update plugins

If your plugins were downloaded from your system's package manager or homebrew, update them from there. If they were git cloned by our script, and you find them in ~/.zsh/plugins and I left a small function in my ~/.aliases to update them.
If you included my aliases file, you can just run zsimple-upgrade-plugins

alias zsimple-upgrade-plugins='for d in "${ZSH_PLUGIN_DIR:-$HOME/.zsh/plugins}"/*; do echo "Updating ${d%/.git}" ; git -C "${d%/.git}" pull ; done'

Todo

  • (temporarily disabled) ssh-agent: reuse existing agent if found running

About

Simple, modern, fast zsh environment with no hard dependencies

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors