#!/bin/sh -efu outdir='out' opts= args= clean= verbose= while [ "$#" -gt 0 ]; do case "$1" in --repo*) ;; --clean) clean=1 ;; --outdir=*) outdir="${1##--outdir=}" ;; -v|--verbose) verbose=-v ;; --) shift; break ;; -*) opts="$opts $1" ;; *) args="$args $1" ;; esac shift done set -- $args if [ "$#" -ne 3 ]; then printf "Usage: ${0##*/} [--clean] [hasher options] [@] \n" >&2 exit fi server="$1"; shift workdir="$1"; shift pkg="$(readlink -ev "$1")"; shift rsync $verbose -rtlp "$pkg" "$server:$workdir/" ssh "$server" "cat >'$workdir/build'; sh -efu -- '$workdir/build'" <