A script managing workhorse.
Dobbin is a simple package manager for miscellaneous binaries and scripts. Given a git repository and a list of files, the repository will be cloned and the files symlinked to a central bin directory.
One benefit of this approach is that there's no need for projects to explicitly support Dobbin, e.g. with a package.json
or something, because you define what you want to symlink yourself.
I wrote this primarily so I don't have to manually pull down various scripts into my dotfiles, and can instead store a simple list of those packages.
Since Dobbin is just a script, you can bootstrap it!
\curl -sS https://raw.githubusercontent.com/shkm/dobbin/master/dobbin | \
bash -s add https://github.com/shkm/dobbin dobbin
Now just add $HOME/.dobbin/bin
to your $PATH
.
Installs packages listed in your $HOME/.dobbin/package_list
.
Adds the package to your package list and installs it.
Each path passed is relative to the repository and will be symlinked into $HOME/.dobbin/bin
.
This will clone the Dobbin repo to $HOME/.dobbin/packages
and symlink the dobbin
file to $HOME/.dobbin/bin
.
dobbin add https://github.com/shkm/dobbin dobbin
not implemented yet
Removes the entire package from your package list.
This will remove the git repository and all symlinked files.
not implemented yet
Updates all packages in your package list, adding any symlinks where necessary.
not implemented yet
Removes any packages that aren't in your package list.
- When a package is no longer listed at all, the symlinks and repo will be deleted.
- When a package is in the list, but extraneous symlinks are detected, just those symlinks will be deleted.
not implemented yet
Opens the package list in your editor.
- Implement a
help
command - Implement
remove
command - Implement
update
command - Implement
clean
command - Implement
edit
command