itCreate stagit-gopher pages for repositories - stagit - static git page generator Err adamsgaard.dk 70 hgit clone git://src.adamsgaard.dk/stagit URL:git://src.adamsgaard.dk/stagit adamsgaard.dk 70 1Log /src/stagit/log.gph adamsgaard.dk 70 1Files /src/stagit/files.gph adamsgaard.dk 70 1Refs /src/stagit/refs.gph adamsgaard.dk 70 1README /src/stagit/file/README.gph adamsgaard.dk 70 1LICENSE /src/stagit/file/LICENSE.gph adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1commit 266351f14f1f75459a6d2e81d27513da080ad065 /src/stagit/commit/266351f14f1f75459a6d2e81d27513da080ad065.gph adamsgaard.dk 70 1parent 659766c53a09b469a534cbeba9d2fe7181542fa5 /src/stagit/commit/659766c53a09b469a534cbeba9d2fe7181542fa5.gph adamsgaard.dk 70 hAuthor: Anders Damsgaard URL:mailto:anders@adamsgaard.dk adamsgaard.dk 70 iDate: Mon, 24 Feb 2020 15:53:52 +0100 Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iCreate stagit-gopher pages for repositories Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iDiffstat: Err adamsgaard.dk 70 i A create-gopher.sh | 37 +++++++++++++++++++++++++++++++ Err adamsgaard.dk 70 i M create.sh | 3 +-- Err adamsgaard.dk 70 i M post-receive.sh | 27 +++++++++++++++++++++++++++ Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i3 files changed, 65 insertions(+), 2 deletions(-) Err adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1diff --git a/create-gopher.sh b/create-gopher.sh /src/stagit/file/create-gopher.sh.gph adamsgaard.dk 70 it@@ -0,0 +1,37 @@ Err adamsgaard.dk 70 i+#!/bin/sh Err adamsgaard.dk 70 i+# - Makes index for repositories in a single directory. Err adamsgaard.dk 70 i+# - Makes static pages for each repository directory. Err adamsgaard.dk 70 i+# Err adamsgaard.dk 70 i+# NOTE, things to do manually (once) before running this script: Err adamsgaard.dk 70 i+# - write clone url, for example "git://git.codemadness.org/dir" to the "url" Err adamsgaard.dk 70 i+# file for each repo. Err adamsgaard.dk 70 i+# - write description in "description" file. Err adamsgaard.dk 70 i+# Err adamsgaard.dk 70 i+# Usage: Err adamsgaard.dk 70 i+# - mkdir -p gphdir && cd gphdir Err adamsgaard.dk 70 i+# - sh example_create.sh Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# path must be absolute. Err adamsgaard.dk 70 i+basedir="/src" Err adamsgaard.dk 70 i+reposdir="/home/git" Err adamsgaard.dk 70 i+curdir="$(pwd)" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# make index. Err adamsgaard.dk 70 i+stagit-gopher-index -b "$basedir" "${reposdir}/"*/ > "${curdir}/index.gph" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# make files per repo. Err adamsgaard.dk 70 i+for dir in "${reposdir}/"*/; do Err adamsgaard.dk 70 i+ # strip .git suffix. Err adamsgaard.dk 70 i+ r=$(basename "${dir}") Err adamsgaard.dk 70 i+ d=$(basename "${dir}" ".git") Err adamsgaard.dk 70 i+ printf "%s... " "${d}" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+ mkdir -p "${curdir}/${d}" Err adamsgaard.dk 70 i+ cd "${curdir}/${d}" || continue Err adamsgaard.dk 70 i+ stagit-gopher -b "${basedir}/${d}" -c ".cache" "${reposdir}/${r}" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+ # symlinks Err adamsgaard.dk 70 i+ ln -sf log.gph index.gph Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+ echo "done" Err adamsgaard.dk 70 i+done Err adamsgaard.dk 70 1diff --git a/create.sh b/create.sh /src/stagit/file/create.sh.gph adamsgaard.dk 70 it@@ -41,8 +41,7 @@ for dir in "${reposdir}/"*/; do Err adamsgaard.dk 70 i ln -sf ../logo.png logo.png Err adamsgaard.dk 70 i ln -sf ../favicon.png favicon.png Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i- printf "Disallow: /%s/file/\nDisallow: /%s/commit/\n" \ Err adamsgaard.dk 70 i- "$r" "$r" >> "${curdir}/robots.txt" Err adamsgaard.dk 70 i+ echo "Disallow: /${r}/file/\nDisallow: /${r}/commit/\n" >> "${curdir}/robots.txt" Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i echo "done" Err adamsgaard.dk 70 i done Err adamsgaard.dk 70 1diff --git a/post-receive.sh b/post-receive.sh /src/stagit/file/post-receive.sh.gph adamsgaard.dk 70 it@@ -22,8 +22,11 @@ fi Err adamsgaard.dk 70 i reposdir="/home/git" Err adamsgaard.dk 70 i dir="${reposdir}/${name}" Err adamsgaard.dk 70 i htmldir="/var/www/domains/src.adamsgaard.dk" Err adamsgaard.dk 70 i+gopherdir="/var/gopher" Err adamsgaard.dk 70 i stagitdir="/" Err adamsgaard.dk 70 i destdir="${htmldir}${stagitdir}" Err adamsgaard.dk 70 i+gopherstagitdir="/src" Err adamsgaard.dk 70 i+gopherdestdir="${gopherdir}${gopherstagitdir}" Err adamsgaard.dk 70 i cachefile=".htmlcache" Err adamsgaard.dk 70 i # /config Err adamsgaard.dk 70 i Err adamsgaard.dk 70 it@@ -49,6 +52,8 @@ done Err adamsgaard.dk 70 i # strip .git suffix. Err adamsgaard.dk 70 i r=$(basename "${name}") Err adamsgaard.dk 70 i d=$(basename "${name}" ".git") Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+## HTML Err adamsgaard.dk 70 i printf "[%s] stagit HTML pages... " "${d}" Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i mkdir -p "${destdir}/${d}" Err adamsgaard.dk 70 it@@ -77,3 +82,25 @@ ln -sf ../style.css style.css Err adamsgaard.dk 70 i ln -sf ../logo.png logo.png Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i echo "done" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+## GPH Err adamsgaard.dk 70 i+printf "[%s] stagit gopher pages... " "${d}" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+mkdir -p "${gopherdestdir}/${d}" Err adamsgaard.dk 70 i+cd "${gopherdestdir}/${d}" || exit 1 Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# remove commits and ${cachefile} on git push -f, this recreated later on. Err adamsgaard.dk 70 i+if test "${force}" = "1"; then Err adamsgaard.dk 70 i+ rm -f "${cachefile}" Err adamsgaard.dk 70 i+ rm -rf "commit" Err adamsgaard.dk 70 i+fi Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# make index. Err adamsgaard.dk 70 i+stagit-gopher-index -b "${gopherstagitdir}" "${reposdir}/"*/ > "${destdir}/index.gph" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+# make pages. Err adamsgaard.dk 70 i+stagit-gopher -b "${gopherstagitdir}/${d}" -c "${cachefile}" "${reposdir}/${r}" Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+ln -sf log.gph index.gph Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i+echo "done" Err adamsgaard.dk 70 .