#! /usr/bin/env bash # Init variables APTPKG_VERSION="0.1.0" # Show help show_help(){ cat > /dev/stdout < "$builddir"/DEBIAN/control } # Download a debian package build_deb(){ echo "Getting $source" wget "$source" -qP dist/ ( cd dist ; verify ) } # Download and build using files build_file(){ builddir=${name}_${version}-${rev}_amd64 cd "$1" mkdir -p "$builddir" for url in $source; do echo "Getting $source" wget -q "$url" done verify # Run steps "$@" gen_control_file "$@" for maintfile in preinst postinst prerm postrm; do [ -f $maintfile ] && cin-bin $maintfile "$builddir"/DEBIAN/$maintfile done cd - dpkg-deb --build --root-owner-group "$1"/"$builddir" dist/ } # Determine which function to run load_build(){ mkdir -p dist # shellcheck disable=SC1090 source "$1/build" case "$type" in deb) build_deb ;; file) build_file "$@" ;; esac } # Run! case $1 in -h|--help) show_help ;; *) if [ $# -ne 1 ]; then error_usage_die "You must provide one directory" fi check "$1" load_build "$1" ;; esac