Use CGI for Gemini and various style and syntax changes #3

Merged
ben merged 2 commits from :master into master 2020-05-26 23:13:04 +00:00
1 changed files with 16 additions and 20 deletions

36
bb.sh
View File

@ -61,7 +61,6 @@ global_variables() {
gophermap="gophermap"
# ignore gemini generation script and gemini index
gemini_script="generate_gemini.sh"
gemini_index="index.gmi"
# Non blogpost files. Bashblog will ignore these. Useful for static pages and custom content
@ -325,7 +324,7 @@ is_boilerplate_file() {
done
case $name in
( "$index_file" | "$archive_index" | "$gophermap" | "$gemini_index" | "$gemini_script" | "$tags_index" | "$footer_file" | "$header_file" | "$global_analytics_file" | "$prefix_tags"* )
( "$index_file" | "$archive_index" | "$gophermap" | "$gemini_index" | "$tags_index" | "$footer_file" | "$header_file" | "$global_analytics_file" | "$prefix_tags"* )
return 0 ;;
( * ) # Check for excluded
for excl in "${html_exclude[@]}"; do
@ -864,17 +863,17 @@ make_gophermap() {
ln -s "${HOME}/public_html/blog/" "${HOME}/public_gopher/blog"
fi
if [ ! -f "${HOME}/public_gopher/blog/gophermap" ]; then
cat <<- 'EOF' > $HOME/public_html/blog/gophermap
#!/bin/bash
echo -e "my bashblog posts\n"
if [ ! -f "${HOME}/public_gopher/blog/$gophermap" ]; then
cat <<- 'EOF' > $HOME/public_html/blog/$gophermap
#!/usr/bin/env sh
printf "my bashblog posts\n"
user=$(stat -c '%U' .)
for post in $(ls -t *.md); do
post=$(basename $post)
echo -e "0$post\t/~$user/blog/$post\ttilde.team\t70"
printf "0$post\t/~$user/blog/$post\ttilde.team\t70\n"
done
EOF
chmod +x $HOME/public_html/blog/gophermap
chmod +x $HOME/public_html/blog/$gophermap
fi
chmod 644 *.md
}
@ -889,22 +888,19 @@ make_gemini() {
ln -s "${HOME}/public_html/blog/" "${HOME}/public_gopher/blog"
fi
if [ ! -f "${HOME}/public_gemini/blog/generate_gemini.sh" ]; then
cat <<- 'EOF' > $HOME/public_gemini/blog/generate_gemini.sh
#!/bin/bash
echo -e "my bashblog posts\n"
user=$(stat -c '%U' .)
for post in $(ls -t *.md); do
if [ ! -f "${HOME}/public_gemini/blog/$gemini_index" ]; then
cat <<- 'EOF' > $HOME/public_gemini/blog/$gemini_index
#!/usr/bin/env sh
printf "20 text/gemini\r\n"
printf "my bashblog posts\r\n"
user=$(stat -c '%U' $0)
for post in $(ls -t /home/$user/public_gemini/blog/*.md); do
post=$(basename $post)
echo -e "=> /~$user/blog/$post $post"
printf "=> /~$user/blog/$post $post\r\n"
done
EOF
chmod +x ${HOME}/public_gemini/blog/generate_gemini.sh
chmod +x ${HOME}/public_gemini/blog/$gemini_index
fi
echo -n "Generating gemini index "
${HOME}/public_gemini/blog/generate_gemini.sh > index.gmi
echo ""
}
# generate headers, footers, etc