diff --git a/contrib/kiss-new b/contrib/kiss-new new file mode 100755 index 0000000..c5ded48 --- /dev/null +++ b/contrib/kiss-new @@ -0,0 +1,45 @@ +#!/bin/sh + +die() { + printf 'error: %s.\n' "$*" >&2 + exit 1 +} + +log() { + printf '=> %s.\n' "$*" +} + +main() { + [ "$1" ] || { + log Create boilerplate KISS packages + log Usage: kiss-new name version source + + exit + } + + [ -d "$1" ] && + die Package "$1" already exists. + + mkdir -p "$1" || + die Couldn\'t create directory in "$PWD" + + cd "$1" || + die Couldn\'t enter directory "$1/" + + log Creating build file; { + printf '#!/bin/sh -e\n' > build + chmod +x build + } + + log Creating version file with "'${2%% *} 1'"; { + printf '%s\n' "${2%% *} 1" > version + } + + log Creating sources file with "'$3'"; { + printf '%s\n' "$3" > sources + } + + log Package "$1" created in "$PWD" +} + +main "$@"