update web server setup dependency
[iankelling.org] / setup.sh
index aa3501f8c4419cfc63a7c5503e9ceefade65eca4..ed295eb9172a36a04973c8458da522565c2a4c47 100755 (executable)
--- a/setup.sh
+++ b/setup.sh
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# This script depends on a few other git repos of mine, such as
-# distro-functions, basic-https-conf, acme-tiny-wrapper
 
 set -eE -o pipefail
 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
 
 usage() {
     cat <<EOF
-Usage: ${0##*/} [-h|--help] [DOMAIN_NAME]
+Usage: ${0##*/} [OPTIONS] [DOMAIN_NAME]
 Setup dependencies, apache, and gitweb. Then call build.rb.
 
 Default DOMAIN_NAME is iankelling.org. Domain is expected to resolve
 so we can get a let's encrypt cert.
 
+This script depends on a few other git repos of mine: distro-functions
+and basic-https-conf.
 
+
+-p PORT      Apache port, default is 443.
 -h|--help    Print help and exit.
 
 Note: Uses GNU getopt options parsing style
@@ -38,10 +40,12 @@ EOF
 
 ##### begin command line parsing ########
 
-temp=$(getopt -l help, h "$@") || usage 1
+port=443
+temp=$(getopt -l help, p: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 ;;
@@ -72,8 +76,6 @@ type -P a2enmod &>/dev/null || $s apt-get -y install apache2
 type -P sqlite3 &>/dev/null || $s apt-get -y install sqlite3
 
 
-acme-tiny-wrapper $domain
-
 pkgs=(
     # build.rb dependencies
     ruby-pygments.rb ruby-safe-yaml ruby-sass
@@ -126,15 +128,17 @@ our \$site_footer = '$PWD/_site/gitweb-footer.html';
 push @stylesheets, "/css/gitweb-site.css";
 our \$favicon = '/assets/favicon.png';
 # default is 25, cuts off descriptions.
-our \$projects_list_description_width = 40;
+our \$projects_list_description_width = 50;
 # a bit superflous since they are all me
 our \$omit_owner = true;
 # highlight scripts with no extension, uses a patch
 # that is on it's way upstream.
 our \$highlight_force = 1;
+our \$home_text = "$script_dir/_site/gitweb_home.html";
+our \$projects_list_group_categories = 1;
 EOF
 
-apache-site - $domain <<EOF
+web-conf -p $port - apache2 $domain <<EOF
 # to run python script on my site:
 <Directory /var/www/$domain/html/on2vote>
   # to run python scripts with cgi