iimprove example, add initial post-receive example - stagit-gopher - A git gopher frontend. (mirror) Err bitreich.org 70 hgit clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ URL:git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ bitreich.org 70 1Log /scm/stagit-gopher/log.gph bitreich.org 70 1Files /scm/stagit-gopher/files.gph bitreich.org 70 1Refs /scm/stagit-gopher/refs.gph bitreich.org 70 1Tags /scm/stagit-gopher/tag bitreich.org 70 1README /scm/stagit-gopher/file/README.gph bitreich.org 70 1LICENSE /scm/stagit-gopher/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 8dde93c6f9887d8a69ce60d528970848c01abb3d /scm/stagit-gopher/commit/8dde93c6f9887d8a69ce60d528970848c01abb3d.gph bitreich.org 70 1parent 4a1c5be06d3e0a487cc43e910093ab690dd33114 /scm/stagit-gopher/commit/4a1c5be06d3e0a487cc43e910093ab690dd33114.gph bitreich.org 70 hAuthor: Hiltjo Posthuma URL:mailto:hiltjo@codemadness.org bitreich.org 70 iDate: Sat, 15 Jul 2017 12:58:10 +0200 Err bitreich.org 70 i Err bitreich.org 70 iimprove example, add initial post-receive example Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i D example.sh | 37 ------------------------------- Err bitreich.org 70 i A example_create.sh | 38 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i A example_post-receive.sh | 66 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i3 files changed, 104 insertions(+), 37 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/example.sh b/example.sh /scm/stagit-gopher/file/example.sh.gph bitreich.org 70 i@@ -1,37 +0,0 @@ Err bitreich.org 70 i-#!/bin/sh Err bitreich.org 70 i-# - Makes index for repositories in a single directory. Err bitreich.org 70 i-# - Makes static pages for each repository directory. Err bitreich.org 70 i-# Err bitreich.org 70 i-# NOTE, things to do manually (once): Err bitreich.org 70 i-# - write clone url, for example "git://git.codemadness.org/dir" to the "url" Err bitreich.org 70 i-# file for each repo. Err bitreich.org 70 i-# Err bitreich.org 70 i-# Usage: Err bitreich.org 70 i-# - mkdir -p gphdir && cd gphdir Err bitreich.org 70 i-# - sh example.sh Err bitreich.org 70 i- Err bitreich.org 70 i-# path must be absolute. Err bitreich.org 70 i-reposdir="/var/scm/git" Err bitreich.org 70 i-gopherdir="/var/gopher" Err bitreich.org 70 i-stagitdir="/scm" Err bitreich.org 70 i-destdir="${gopherdir}/${stagitdir}" Err bitreich.org 70 i- Err bitreich.org 70 i-# make index. Err bitreich.org 70 i-stagit-gopher-index -b "${stagitdir}" "${reposdir}/"*/ > "${destdir}/index.gph" Err bitreich.org 70 i- Err bitreich.org 70 i-# make files per repo. Err bitreich.org 70 i-for dir in "${reposdir}/"*/; do Err bitreich.org 70 i- # strip .git suffix. Err bitreich.org 70 i- r=$(basename "${dir}") Err bitreich.org 70 i- d=$(basename "${dir}" ".git") Err bitreich.org 70 i- printf "%s... " "${d}" Err bitreich.org 70 i- Err bitreich.org 70 i- mkdir -p "${destdir}/${d}" Err bitreich.org 70 i- cd "${destdir}/${d}" Err bitreich.org 70 i- stagit-gopher -b "${stagitdir}/${d}" -c ".cache" "${reposdir}/${r}" Err bitreich.org 70 i- Err bitreich.org 70 i- # symlinks Err bitreich.org 70 i- ln -sf log.gph index.gph Err bitreich.org 70 i- Err bitreich.org 70 i- printf "done\n" Err bitreich.org 70 i-done Err bitreich.org 70 1diff --git a/example_create.sh b/example_create.sh /scm/stagit-gopher/file/example_create.sh.gph bitreich.org 70 i@@ -0,0 +1,38 @@ Err bitreich.org 70 i+#!/bin/sh Err bitreich.org 70 i+# - Makes index for repositories in a single directory. Err bitreich.org 70 i+# - Makes static pages for each repository directory. Err bitreich.org 70 i+# Err bitreich.org 70 i+# NOTE, things to do manually (once) before running this script: Err bitreich.org 70 i+# - write clone url, for example "git://git.codemadness.org/dir" to the "url" Err bitreich.org 70 i+# file for each repo. Err bitreich.org 70 i+# - write description in "description" file. Err bitreich.org 70 i+# Err bitreich.org 70 i+# Usage: Err bitreich.org 70 i+# - mkdir -p gphdir && cd gphdir Err bitreich.org 70 i+# - sh example.sh Err bitreich.org 70 i+ Err bitreich.org 70 i+# path must be absolute. Err bitreich.org 70 i+reposdir="/var/scm/git" Err bitreich.org 70 i+gopherdir="/var/gopher" Err bitreich.org 70 i+stagitdir="/scm" Err bitreich.org 70 i+destdir="${gopherdir}/${stagitdir}" Err bitreich.org 70 i+ Err bitreich.org 70 i+# make index. Err bitreich.org 70 i+stagit-gopher-index -b "${stagitdir}" "${reposdir}/"*/ > "${destdir}/index.gph" Err bitreich.org 70 i+ Err bitreich.org 70 i+# make files per repo. Err bitreich.org 70 i+for dir in "${reposdir}/"*/; do Err bitreich.org 70 i+ # strip .git suffix. Err bitreich.org 70 i+ r=$(basename "${dir}") Err bitreich.org 70 i+ d=$(basename "${dir}" ".git") Err bitreich.org 70 i+ printf "%s... " "${d}" Err bitreich.org 70 i+ Err bitreich.org 70 i+ mkdir -p "${destdir}/${d}" Err bitreich.org 70 i+ cd "${destdir}/${d}" Err bitreich.org 70 i+ stagit-gopher -b "${stagitdir}/${d}" -c ".cache" "${reposdir}/${r}" Err bitreich.org 70 i+ Err bitreich.org 70 i+ # symlinks Err bitreich.org 70 i+ ln -sf log.gph index.gph Err bitreich.org 70 i+ Err bitreich.org 70 i+ printf "done\n" Err bitreich.org 70 i+done Err bitreich.org 70 1diff --git a/example_post-receive.sh b/example_post-receive.sh /scm/stagit-gopher/file/example_post-receive.sh.gph bitreich.org 70 i@@ -0,0 +1,66 @@ Err bitreich.org 70 i+#!/bin/sh Err bitreich.org 70 i+# generic git post-receive hook. Err bitreich.org 70 i+# change the config options below and call this script in your post-receive Err bitreich.org 70 i+# hook or symlink it. Err bitreich.org 70 i+# Err bitreich.org 70 i+# usage: $0 [name] Err bitreich.org 70 i+# Err bitreich.org 70 i+# if name is not set the basename of the current directory is used, Err bitreich.org 70 i+# this is the directory of the repo when called from the post-receive script. Err bitreich.org 70 i+ Err bitreich.org 70 i+name="$1" Err bitreich.org 70 i+if test "$name" = ""; then Err bitreich.org 70 i+ name="$(basename $(pwd))" Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+# config Err bitreich.org 70 i+# paths must be absolute. Err bitreich.org 70 i+reposdir="/home/src/src" Err bitreich.org 70 i+dir="${reposdir}/${name}" Err bitreich.org 70 i+gopherdir="/home/www/gopher" Err bitreich.org 70 i+stagitdir="/" Err bitreich.org 70 i+destdir="${gopherdir}/${stagitdir}" Err bitreich.org 70 i+cachefile=".gphcache" Err bitreich.org 70 i+# /config Err bitreich.org 70 i+ Err bitreich.org 70 i+if ! test -d "$dir"; then Err bitreich.org 70 i+ echo "$dir does not exist" >&2 Err bitreich.org 70 i+ exit 1 Err bitreich.org 70 i+fi Err bitreich.org 70 i+cd "$dir" || exit 1 Err bitreich.org 70 i+ Err bitreich.org 70 i+# detect git push -f Err bitreich.org 70 i+force=0 Err bitreich.org 70 i+while read -r old new ref; do Err bitreich.org 70 i+ hasrevs=$(git rev-list "$old" "^$new" | sed 1q) Err bitreich.org 70 i+ if test -n "$hasrevs"; then Err bitreich.org 70 i+ force=1 Err bitreich.org 70 i+ break Err bitreich.org 70 i+ fi Err bitreich.org 70 i+done Err bitreich.org 70 i+ Err bitreich.org 70 i+# strip .git suffix. Err bitreich.org 70 i+r=$(basename "${name}") Err bitreich.org 70 i+d=$(basename "${name}" ".git") Err bitreich.org 70 i+printf "[%s] stagit .gph pages... " "${d}" Err bitreich.org 70 i+ Err bitreich.org 70 i+mkdir -p "${destdir}/${d}" Err bitreich.org 70 i+cd "${destdir}/${d}" || exit 1 Err bitreich.org 70 i+ Err bitreich.org 70 i+# remove commits and $cachefile on git push -f, this recreated later on. Err bitreich.org 70 i+if test "$force" = "1"; then Err bitreich.org 70 i+ rm -f "${cachefile}" Err bitreich.org 70 i+ rm -rf "commit" Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+# make index. Err bitreich.org 70 i+stagit-gopher-index -b "${stagitdir}" "${reposdir}/"*/ > "${destdir}/index.gph" Err bitreich.org 70 i+ Err bitreich.org 70 i+# remove /'s at the end. Err bitreich.org 70 i+stagitdir=$(printf '%s' "${stagitdir}" | sed 's@[/]*$@@g') Err bitreich.org 70 i+# make pages. Err bitreich.org 70 i+stagit-gopher -b "${stagitdir}/${d}" -c "${cachefile}" "${reposdir}/${r}" Err bitreich.org 70 i+ Err bitreich.org 70 i+ln -sf log.gph index.gph Err bitreich.org 70 i+ Err bitreich.org 70 i+printf "done\n" Err bitreich.org 70 .