38 lines
882 B
Bash
Executable File
38 lines
882 B
Bash
Executable File
#!/bin/bash
|
|
|
|
SOURCE_DIR=~/blog_source
|
|
ASSETS_DIR=$SOURCE_DIR/assets
|
|
|
|
GEM_DIR=~/public_gemini
|
|
|
|
rm -r $GEM_DIR/*
|
|
|
|
mkdir -p $GEM_DIR/assets/jpeg
|
|
mkdir -p $GEM_DIR/assets/svg
|
|
|
|
cp $ASSETS_DIR/jpeg/* $GEM_DIR/assets/jpeg/
|
|
cp $ASSETS_DIR/svg/* $GEM_DIR/assets/svg/
|
|
|
|
cp $SOURCE_DIR/index.gmi $SOURCE_DIR/index.gmi.temp
|
|
|
|
LINE=`grep -Fn 'Posts' $SOURCE_DIR/index.gmi | cut -d : -f 1`
|
|
LINE=$(($LINE+1))
|
|
|
|
for FILE in `ls -tr $SOURCE_DIR/posts | grep -v /`
|
|
do
|
|
NAME=${FILE%.html}
|
|
OUT="$GEM_DIR/$NAME.gmi"
|
|
~/bin/html2gemini_rs "${SOURCE_DIR}/posts/${FILE}" > "${OUT}"
|
|
|
|
SPACES=`tr -s '_' ' ' <<< "$NAME"`
|
|
ENTRY="posts/${FILE}"
|
|
TIME_MODIFIED=`stat -c %y ${ENTRY} | grep -oE "\w{4}-\w{2}-\w{2} \w{2}:\w{2}:\w{2}"`
|
|
|
|
sed -i "$LINE i => ${NAME}.gmi ${SPACES} ${TIME_MODIFIED} UTC" $SOURCE_DIR/index.gmi.temp
|
|
done
|
|
|
|
cp $SOURCE_DIR/index.gmi.temp $GEM_DIR/index.gmi
|
|
rm $SOURCE_DIR/index.gmi.temp
|
|
|
|
|