fix missing dependencies
[iankelling.org] / setup.sh
index ee2d48754a4eba4731ee87ec793dc84f2de300d4..59f3009bd8a45c327c05d8c5909d0e85e0a1805f 100755 (executable)
--- a/setup.sh
+++ b/setup.sh
@@ -29,18 +29,28 @@ gitroot=/a/bin/githtml
 shopt -s extglob
 
 type -P a2enmod &>/dev/null || pi apache2
+type -P sqlite3 &>/dev/null || pi sqlite3
 
 acme-tiny-wrapper $domain
 
 pkgs=(
     # build.rb dependencies
-    ruby-pygments.rb ruby-safe-yaml ruby-redcarpet
+    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)
+else
+    pkgs+=(ruby-redcarpet)
+fi
+
 pi ${pkgs[@]}
+if isdebian-stable; then
+    sudo gem install redcarpet
+fi
 chmod og+x _site/on2vote/vote.py
 
 
@@ -73,7 +83,6 @@ our @extra_breadcrumbs = (
 our \$home_link_str = 'git';
 our \$site_footer = '$PWD/_site/gitweb-footer.html';
 push @stylesheets, "/css/gitweb-site.css";
-push @stylesheets, "/css/common.css";
 our \$favicon = '/assets/favicon.png';
 # default is 25, cuts off descriptions.
 our \$projects_list_description_width = 40;
@@ -146,54 +155,8 @@ Alias /git /usr/share/gitweb
 EOF
 
 
-# my projects all have README or --help with a short single line
-# description which I parse and put into the gitweb description.
-_git_desc_readme() {
-    while read -r line; do
-        [[ $line ]] || continue
-        if echo "$line" | grep "^ *[#*]" &>/dev/null; then
-            continue
-        fi
-        echo "$line" > .git/description
-        break
-    done < README*
-}
-
-dirs=()
-for d in $gitroot/*; do
-    if [[ -d $d && ! -L $d ]]; then
-        for sub in $d/*; do
-            dirs+=($sub)
-        done
-    else
-        dirs+=($d)
-    fi
-done
-gitweb_descriptions() {
-    for d in ${dirs[@]}; do
-        d=$(readlink -f $d)
-        cd $d/..
-        e ${PWD##*/}
-        shopt -s nullglob
-        f=(!(LICENSE|COPYING|README|.git))
-        shopt -u nullglob
-        if [[ ${#f[@]} == 1 && ! -d $f ]]; then
-            if [[ ! -x $f ]]; then
-                if [[ $f == *-function ]]; then
-                    ${f%-function} --help | sed -n '2p' > .git/description
-                else
-                    _git_desc_readme
-                fi
-            else
-                $f --help | sed -n '2p' > .git/description
-            fi
-        else
-            _git_desc_readme
-        fi
-    done
-}
-
-gitweb_descriptions
+
+$script_dir/gitweb-descriptions $gitroot
 
 $script_dir/build.rb
 s lnf -T $script_dir/_site /var/www/$domain/html