indent and minor formatting
[iankelling.org] / setup.sh
index cd4dfaa3358e99e49435790293423e9c06551e52..5452793a6a3cce6094d307773de33ab55c8297c7 100755 (executable)
--- a/setup.sh
+++ b/setup.sh
@@ -17,7 +17,7 @@
 source /a/bin/errhandle/err
 
 usage() {
-    cat <<EOF
+  cat <<EOF
 Usage: ${0##*/} [OPTIONS] [DOMAIN_NAME] [LETSENCRYPT_EMAIL]
 Setup dependencies, apache, and gitweb. Then call build.rb.
 
@@ -33,21 +33,23 @@ and basic-https-conf.
 
 Note: Uses GNU getopt options parsing style
 EOF
-    exit $1
+  exit $1
 }
 
 ##### begin command line parsing ########
 
+
 port=443
-temp=$(getopt -l help, p:h "$@") || usage 1
+temp=$(getopt -l help, sp:h "$@") || usage 1
 eval set -- "$temp"
 while true; do
-    case $1 in
-        -p) port=$2; shift 2 ;;
-        -h|--help) usage ;;
-        --) shift; break ;;
-        *) echo "$0: Internal error! unexpected args: $*" ; exit 1 ;;
-    esac
+  case $1 in
+    -s) allow_symlinks_arg=-s; shift ;;
+    -p) port=$2; shift 2 ;;
+    -h|--help) usage ;;
+    --) shift; break ;;
+    *) echo "$0: Internal error! unexpected args: $*" ; exit 1 ;;
+  esac
 done
 
 ##### end command line parsing ########
@@ -60,16 +62,16 @@ domain=${1:-iankelling.org} # use argument for testing site
 email=$2
 if [[ $email ]]; then
   email_arg="-e $email"
-  fi
+fi
 gitroot=/a/bin/githtml
 
 if [[ $EUID != 0 ]]; then
-    s=sudo
+  s=sudo
 fi
 
 deb8=false
 if grep -xFq 'VERSION_ID="8"' /etc/os-release; then
-    deb8=true
+  deb8=true
 fi
 
 shopt -s extglob
@@ -80,22 +82,22 @@ type -P ffmpeg &>/dev/null || $s apt-get -y install ffmpeg
 
 
 pkgs=(
-    # build.rb dependencies
-    ruby-pygments.rb ruby-safe-yaml ruby-sass
-    # python pkgs used for o(n^2) voting blog entry
-    python-bcrypt python-passlib
-    # gitweb pkgs
-    gitweb highlight
+  # build.rb dependencies
+  ruby-pygments.rb ruby-safe-yaml ruby-sass
+  # python pkgs used for o(n^2) voting blog entry
+  python-bcrypt python-passlib
+  # gitweb pkgs
+  gitweb highlight
 )
 if $deb8; then
-    pkgs+=(build-essential ruby-dev)
+  pkgs+=(build-essential ruby-dev)
 else
-    pkgs+=(ruby-redcarpet)
+  pkgs+=(ruby-redcarpet)
 fi
-
-$s apt-get -y install ${pkgs[@]}
+source /a/bin/distro-functions/src/package-manager-abstractions
+pi ${pkgs[@]}
 if $deb8; then
-    sudo gem install redcarpet
+  sudo gem install redcarpet
 fi
 chmod og+x _site/on2vote/vote.py
 
@@ -141,7 +143,7 @@ our \$home_text = "$script_dir/_site/gitweb_home.html";
 our \$projects_list_group_categories = 1;
 EOF
 
-web-conf $email_arg -p $port - apache2 $domain <<EOF
+web-conf $allow_symlinks_arg $email_arg -p $port - apache2 $domain <<EOF
 # to run python script on my site:
 <Directory /var/www/$domain/html/on2vote>
   # to run python scripts with cgi