Home

Awesome

zacman

Join the chat at https://gitter.im/fzerorubigd/zacman

zacman, a simple zsh package manager in go

Goal

I need a simple way to use zsh plugins and theme, but I don't want to use a lot of blather just for some simple functions that I need. something like antigen, but with a static load mechanism like antigen-hs and no Haskel or other runtime, so I choose Go.

How to build?

gb

This is a gb project, so you can simply cline this, and use gb to build projects.

git clone --recursive  https://github.com/fzerorubigd/zacman.git

gb build

Note : I use git submodules instead of gb vendor.

go tools

but if you want, you can build it with go get (not recomanded)

go get github.com/fzerorubigd/zacman/src/zacman

Usage

bundle

first install some bundles. use zacman bundle command :

zacman bundle zsh-users/zsh-syntax-highlighting

if the plugin files are not in the root folder use the secound parameter for sub path :

zacman bundle zsh-users/zsh-completions src

see zacman help bundle for detail help.

list

then check for list of installed bundle :

zacman list

remove

for removing a bundle simply use

zacman remove sharat87/autoenv

Note : if bundle contain a sub path, in remove should supply that sub path too :

zacman remove zsh-users/zsh-completions src

snapshots

you can save snapshots from your current bundles and restore them when you want to.

zacman snapshot A_NAME

zacman restore A_NAME

Final touch : Compile

After any change to bundles, you need to compile things.

zacman compile

.zshrc

begin your .zshrc with this :

if [ ! -e ~/.zacman/zacman.zsh ];then
	zacman compile
fi;
source ~/.zacman/zacman.zsh

# other configuration ....