Archived
1
0
This repository has been archived on 2023-08-12. You can view files and clone it, but cannot push or open issues or pull requests.
nntpchan/install.sh
ring a502259ba9 Quote variables, remove trailing whitespace
If you don't quote your variables the scripts get very buggy if you run
them with arguments with spaces in them, or even run them from a
directory with spaces in its path.
2016-07-02 23:30:03 +02:00

78 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
root=$(readlink -e "$(dirname "$0")")
prefix="/opt/nntpchan"
help_text="usage: $0 [--prefix /opt/nntpchan] [-q|--quiet] [-r|--rebuild] [--disable-redis]"
# check for help flags first
for arg in "$@" ; do
case $arg in
-h|--help)
echo "$help_text"
exit 0
;;
esac
done
_next=""
want_rebuild="0"
want_quiet="0"
build_args=""
# check for main flags
for arg in "$@" ; do
case $arg in
-q|--quiet)
want_quiet="1"
;;
-r|--rebuild)
want_rebuild="1"
;;
--prefix)
_next="prefix"
;;
--prefix=*)
prefix=$(echo "$arg" | cut -d'=' -f2)
;;
--disable-redis)
build_args="$build_args --disable-redis"
;;
*)
if [ "X$_next" == "Xprefix" ] ; then
# set prefix
prefix="$arg"
_next=""
fi
;;
esac
done
_cmd() {
if [ "X$want_quiet" == "X1" ] ; then
"$@" &> /dev/null
else
"$@"
fi
}
if [ "X$want_rebuild" == "X1" ] ; then
_cmd echo "rebuilding daemon";
_cmd "$root/build.sh" $build_args
fi
if [ ! -e "$root/srndv2" ] ; then
_cmd echo "building daemon"
# TODO: use different GOPATH for root?
_cmd "$root/build.sh" "$build_args"
fi
_cmd mkdir -p "$prefix"
_cmd mkdir -p "$prefix/webroot/thm"
_cmd mkdir -p "$prefix/webroot/img"
_cmd cp -f "$root/srndv2" "$prefix/srndv2"
_cmd cp -rf "$root/"{doc,contrib,certs} "$prefix/"
_cmd echo "installed to $prefix"