diff options
Diffstat (limited to 'build-n-publish.sh')
-rwxr-xr-x | build-n-publish.sh | 42 |
1 files changed, 42 insertions, 0 deletions
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" |