summaryrefslogtreecommitdiff
path: root/htmldir/example_create.sh
diff options
context:
space:
mode:
Diffstat (limited to 'htmldir/example_create.sh')
-rwxr-xr-xhtmldir/example_create.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/htmldir/example_create.sh b/htmldir/example_create.sh
new file mode 100755
index 0000000..d6e2a1c
--- /dev/null
+++ b/htmldir/example_create.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+# This script is ment to initialize your stagit website
+
+# - Makes index for repositories in a single directory.
+# - Makes static pages for each repository directory.
+#
+# NOTE, things to do manually (once) before running this script:
+# - copy style.css, logo.png and favicon.png manually, a style.css example
+# is included.
+#
+# - write clone URL, for example "git://git.codemadness.org/dir" to the "url"
+# file for each repo.
+# - write owner of repo to the "owner" file.
+# - write description in "description" file.
+#
+# How to use
+# - mkdir -p htmldir && cd htmldir
+# - sh example_create.sh
+
+# path must be absolute.
+
+# Repodir is where your git repos are located
+reposdir="/srv/git"
+
+#curdir is the current directory but I suggest switching it to your website directory
+# Current
+#curdir="$(pwd)"
+
+# Absolute
+curdir="/var/www/git/htmldir"
+
+# make index.
+stagit-index "${reposdir}/"*/ > "${curdir}/index.html"
+
+# make files per repo.
+for dir in "${reposdir}/"*/; do
+ # strip .git suffix.
+ r=$(basename "${dir}")
+ d=$(basename "${dir}" ".git")
+ printf "%s... " "${d}"
+
+ mkdir -p "${curdir}/${d}"
+ cd "${curdir}/${d}" || continue
+ stagit -c ".cache" -u "https://git.codemadness.nl/$d/" "${reposdir}/${r}"
+
+ # symlinks
+ ln -sf log.html index.html
+ ln -sf ../style.css style.css
+ ln -sf ../logo.png logo.png
+ ln -sf ../favicon.png favicon.png
+
+ echo "done"
+done