shelp
shelp is a Git-based package manager written in Go, primarily for shell scripts.
What is this for?
With shelp, you can do the followings:
- Install any git repositories reachable with
gitcommand and organize them under$SHELP_ROOTdirectory.shelptreat them as packages - Add any executable files in a package into
$PATHwhenshelpinstalls it - Load any shell script in a package easily by
includefunction bundled inshelp - Manage what packages to be installed and how by the configuration file; and install them at once
- Specify any git branch or tag or commit hash for a package to install
System Requirements
- OS: Linux or macOS
gitcommand
Supported Shells:
- Bash, Zsh and most POSIX compatible shells
- fish shell
To Get Started
These guides will show you how to use shelp step by step:
- Bootstrap ... Install and activate
shelpin your shell - Tutorial ... Basic usage of
shelp - Configuration ... Configure and customize
shelpsettings - Guide ... More usecases with
shelppackages - CLI Usage ... Command reference
Versions
Latest v0.6.0 was released on 2020-06-20.
Refer to CHANGELOG.md to see difference between versions.
Alternatives
There are other tools to manage shell scripts in modular way like shelp does.
Here are some examples:
| Software | Supported Shells |
|---|---|
| basherpm/basher | Bash, Zsh, fish shell |
| zplug | Zsh |
| bpkg | Bash |
| jorgebucaran/fisher | fish shell |
Special Thanks
basher inspired me to implement some features of this tool.
License
The MIT License.
Copyright © 2020 IKEDA Kiyoshi
Last update: July 20, 2020