My personal recommended way to package DSCIP is to do the following: Install all the scripts except setup.sh into /usr/share/charadon/dscip. Next, install setup.sh to /usr/bin/setup-dscip. Optionally, you can remove update.sh, if you wish for the user *not* to be able to update dscip on their own outside of the packaging system. And install the docs to your system's recommended documentation directory. (Usually /usr/share/doc, or /usr/doc) If it's installed this way, instead of grabbing DSCIP from the remote git repo, the setup script will copy the files from /usr/share/charadon/dscip. It requires no additional dependencies if I did things right, as it's written in complete POSIX shell. Though, on illumos, it'll probably need GNU Coreutils for realpath support. This is roughly what a package tree should look like. This is based on my SlackBuild for Slackware. usr ├── bin │   └── setup-dscip (setup.sh) ├── doc │   └── dscip-0.9 │   ├── LICENSE │   ├── dscip.SlackBuild │   ├── packaging.txt │   ├── publishing.txt │   ├── setup.sh.txt │   ├── templates.txt │   ├── using.txt │   └── variables.txt └── share └── charadon └── dscip ├── build.sh ├── config.sh ├── dscip ├── failed.sh ├── post.sh └── pre.sh