From b03a002bce552485b47d3bb89b5ccd7a0e9b4e26 Mon Sep 17 00:00:00 2001 From: Duncan Wilkie Date: Sun, 30 Jul 2023 07:44:09 -0500 Subject: Forgot to sync this a bunch of times. --- build-n-publish.sh | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 build-n-publish.sh (limited to 'build-n-publish.sh') diff --git a/build-n-publish.sh b/build-n-publish.sh new file mode 100755 index 0000000..9ee2df9 --- /dev/null +++ b/build-n-publish.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +# Build and publish the HTML site: +haunt build && haunt publish + +# Uses https://github.com/LukeEmmet/html2gmi +# Converts the site into text/gemini; outputs to ./gemini. +# There is a publisher which copies that to /home/gemini/gemini/content on the remote. + +root=$(dirname $0) + +remotename=functorial.xyz +remotedir=/home/gemini/gemini/content + +shopt -s nullglob + +rm -rf $root/gemini +mkdir $root/gemini $root/gemini/pages $root/gemini/posts $root/gemini/assets $root/gemini/assets/image + +for page in $root/site/*.html; do + out=$root/gemini/$(basename $page ".html").gmi + html2gmi --input $page --output $out --emitImagesAsLinks --prettyTables --citationMarkers; + sed -i 's/\.html/.gmi/g' $out + +done + +for page in $root/site/pages/*.html $root/site/posts/*.html; do + out=$root/gemini/$(basename $(dirname $page))/$(basename $page ".html").gmi + html2gmi --input $page --output $out --emitImagesAsLinks --prettyTables --citationMarkers; + sed -i 's/\.html/.gmi/g' $out +done + +for pic in $root/site/assets/image/*; do + cp $pic $root/gemini/assets/image/ +done + +cp $root/site/assets/cv.pdf $root/gemini/assets/ +cp $root/site/assets/pubkey.txt $root/gemini/assets/ +cp $root/site/feed.xml $root/gemini/ + +rsync -r gemini/* root@$remotename:$remotedir +ssh root@functorial.xyz "systemctl restart agate" -- cgit v1.2.3