summaryrefslogtreecommitdiff
path: root/build-n-publish.sh
diff options
context:
space:
mode:
authorDuncan Wilkie <antigravityd@gmail.com>2023-07-30 07:44:09 -0500
committerDuncan Wilkie <antigravityd@gmail.com>2023-07-30 07:44:09 -0500
commitb03a002bce552485b47d3bb89b5ccd7a0e9b4e26 (patch)
tree4464a9775c36712427bf87529775684960f2c419 /build-n-publish.sh
parente1b7e1f50709c89b7b6448bd86999a5a562f0e1b (diff)
Forgot to sync this a bunch of times.
Diffstat (limited to 'build-n-publish.sh')
-rwxr-xr-xbuild-n-publish.sh42
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"