X-Git-Url: https://iankelling.org/git/?p=iankelling.org;a=blobdiff_plain;f=setup.sh;h=5452793a6a3cce6094d307773de33ab55c8297c7;hp=59f3009bd8a45c327c05d8c5909d0e85e0a1805f;hb=5b747d8f58d4e2e9a73b704a480f9015701e00f4;hpb=d8778b6587a870f5eb36b5fd5e98297957adf429 diff --git a/setup.sh b/setup.sh index 59f3009..5452793 100755 --- a/setup.sh +++ b/setup.sh @@ -1,4 +1,4 @@ -#!/bin/bash -l +#!/bin/bash # Copyright (C) 2016 Ian Kelling # This program is free software: you can redistribute it and/or modify @@ -14,42 +14,90 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# This script depends on a few other git repos of mine, such as -# distro-functions, basic-https-conf, acme-tiny-wrapper +source /a/bin/errhandle/err -set -eE -o pipefail -trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR +usage() { + cat </dev/null || pi apache2 -type -P sqlite3 &>/dev/null || pi sqlite3 +type -P a2enmod &>/dev/null || $s apt-get -y install apache2 +type -P sqlite3 &>/dev/null || $s apt-get -y install sqlite3 +type -P ffmpeg &>/dev/null || $s apt-get -y install ffmpeg -acme-tiny-wrapper $domain 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 isdebian-stable; then - pkgs+=(build-essential ruby-dev) +if $deb8; then + pkgs+=(build-essential ruby-dev) else - pkgs+=(ruby-redcarpet) + pkgs+=(ruby-redcarpet) fi - +source /a/bin/distro-functions/src/package-manager-abstractions pi ${pkgs[@]} -if isdebian-stable; then - sudo gem install redcarpet +if $deb8; then + sudo gem install redcarpet fi chmod og+x _site/on2vote/vote.py @@ -60,11 +108,11 @@ chmod og+x _site/on2vote/vote.py # It's example apache config seems to say we can use cgi or cgid, # and googling cgid it seems a newer faster alternative. I also # depend on this in my o(n^2) python script. -sudo a2enmod cgid +$s a2enmod cgid # additional settings from browsing https://git-scm.com/docs/gitweb.conf -s dd of=/etc/gitweb.conf < # to run python scripts with cgi @@ -159,4 +209,5 @@ EOF $script_dir/gitweb-descriptions $gitroot $script_dir/build.rb -s lnf -T $script_dir/_site /var/www/$domain/html +$s rm -rf /var/www/$domain/html +$s ln -sT $script_dir/_site /var/www/$domain/html