Shundle is short for sh bundle and is a sh plugin manager.
-
Set up Shundle:
$ git clone --depth=1 https://github.com/javier-lopez/shundle ~/.shundle/bundle/shundle
-
Configure bundles:
Sample
.bashrc
(if not using bash use your shell init profile):if [ -f ~/.shundle/bundle/shundle/shundle ]; then . ~/.shundle/bundle/shundle/shundle #let shundle manage shundle, required! Bundle='javier-lopez/shundle' #options SHUNDLE_ENV_COLOR=1 #from GitHub Bundle='gh:javier-lopez/shundle-plugins/eternalize' Bundle='github:javier-lopez/shundle-plugins/colorize:master' Bundle='github:javier-lopez/shundle-plugins/autocd:f7916' Bundle='https://github.com/javier-lopez/shundle-plugins/aliazator.git' ALIAZATOR_PLUGINS="installed" #from non GitHub #Bundle='git://git.domain.com/rep.git' #from the web #Bundle='http://domain.com/awesome-script' #from the file system #Bundle='file://path/to/script' fi # Brief help # shundle list - list installed bundles # shundle install - install configured bundles # shundle search - search for foo in github (experimental) # shundle clean - confirm (or auto-approve) removal of unused bundles # # run shundle without parameters for more details or see the wiki for FAQ #
-
Install configured bundles:
$ . ~/.bashrc $ shundle install $ . ~/.bashrc
Installation requires Git and triggers
git clone
for each configured repo to~/.shundle/bundle/
.
If by any reason you dislike Shundle you can uninstall it by removing the top shundle directory:
$ rm -rf ~/.shundle
Please drop me an email with your suggestions or open an issue describing the problems you faced.
Thank you!
- Shundle was developed and tested with Bash 4.2 on Linux
- Shundle will try to run in as many platforms & shells as possible
- Shundle tries to be as KISS as possible
Shundle is a work in progress, so any ideas and patches are appreciated.
- write documentation
- improve install|update visualization
- tests
- improve error handling
- make it rock!