@ -19,18 +19,18 @@
# change configuration variables here to suit you
### be sure to also change the header and footer in build_entries! ###
make_globals( ) {
global_title = " my gemlog"
global_description = "a gemlog about gemlogs "
global_url = "gemini:// example.com /gemlog/" # link to base url of gemlog
global_author = " example "
global_author_email = " you@example.co m"
global_author_url = "gemini:// example.com/ " # homepage of author
global_title = " swiftmandolin's gemlog"
global_description = "a gemlog about nonsense you probably don't care about "
global_url = "gemini:// rawtext.club/~swiftmandolin /gemlog/" # link to base url of gemlog
global_author = " swiftmandolin "
global_author_email = " swiftmandolin@tilde.tea m"
global_author_url = "gemini:// rawtext.club/~swiftmandolin/index.gmi " # homepage of author
global_license = "CC BY 4.0"
gemlog_feed = "atom.xml" # filename of the atom feed
number_of_feed_articles = "50" # maximum number of posts added to atom feed
feed_base_url = "gemini:// example.com /gemlog/" # base url that the feed is hosted at
feed_web_url = "https:// example.co m/files/" # base url that the feed is hosted at on the web
feed_base_url = "gemini:// rawtext.club/~swiftmandolin /gemlog/" # base url that the feed is hosted at
feed_web_url = "https:// swiftmandolin.tilde.tea m/files/" # base url that the feed is hosted at on the web
index = "index.gmi" # main page of gemlog, not recommended to change
@ -53,52 +53,6 @@ get_post_title() {
cat " $1 " | perl -lne 's/#{1,3}\s+(.*)/\1/ or next; print; exit'
}
make_atom( ) {
echo "Bulding atom feed..."
atomfile = " $gemlog_feed . $RANDOM "
while [ [ -f $atomfile ] ] ; do atomfile = " $gemlog_feed . $RANDOM " ; done
{
pubdate = $( date " $date_format_8601 " )
cat << EOF
<?xml version = "1.0" encoding = "utf-8" ?>
<feed xmlns = "http://www.w3.org/2005/Atom" >
<title>$global_title </title>
<subtitle>$global_description </subtitle>
<link rel = 'self' href = '$feed_base_url$gemlog_feed' />
<link rel = 'alternate' href = '$global_url$index' />
<updated>$pubdate </updated>
<author>
<name>$global_author </name>
<email>$global_author_email </email>
<uri>$global_author_url </uri>
</author>
<id>$global_url </id>
<generator uri = '$gemlog_sh_link' >gemlog.sh</generator>
<rights>© $global_author - $global_license </rights>
EOF
n = 0
while IFS = '' read -r i; do
( ( n >= $number_of_feed_articles ) ) && break
printf "\n <entry>\n <title>"
get_post_title " $i " | tr -d '\n'
printf " </title>\n <id> $global_url ${ i # './' } </id>\n "
printf " <link rel='alternate' href=' $global_url ${ i # './' } '/>\n <updated> "
echo " $i " | perl -ne '/^(\d{4}-\d{2}-\d{2}).*/; print $1' | date " $date_format_8601_timeless " -f - | tr -d '\n'
# change or remove the <summary></summary> block if you want a different description or no description at all
printf " </updated>\n <summary>You need a gemini client to view this post. If you have one installed, here is the link to the post: $global_url ${ i # './' } </summary>\n </entry>\n "
n = $(( n + 1 ))
done < <( ls -r [ [ :digit:] ] *.gmi)
printf '</feed>'
} 3>& 1 >" $atomfile "
mv " $atomfile " " $gemlog_feed "
chmod 644 " $gemlog_feed "
}
build_entries( ) {
echo "Building index..."
@ -108,19 +62,23 @@ build_entries() {
{
# header of the page (above the posts list)
cat << 'EOF'
` ` ` wow, alt text! wouldn' t you love to help people with screenreaders too?
┌──────────────────┐
│ │
│ YOUR │
│ │
│ ART │
│ │
│ HERE │
│ │
└──────────────────┘
` ` ` some crazy looking ASCII art that says gemlog
.-'' ' -.
.---. ' _ \
__.....__ __ __ ___ | | / /` ' . \
.--./) .-'' '. | |/ `.' ` . | | . | \ ' .--./)
/.'' \\ / .-'' " '-. `. | .-. .-. '| || ' | '/.''\\
| | | / /________\ \| | | | | || | \ \ / /| | | |
\` -' /| || | | | | || | `. ` ..' / \` -' /
/( "'` \ .-------------'| | | | | || | '-...-'` /(" ' `
\ '---.\ ' -.____...---.| | | | | || | \ ' ---.
/'""' .\` . .' |__| |__| |__|| | /' "" ' .\
|| || ` '' -...... -' ' ---' || ||
\' . __// \' . __//
` '---' ` '---'
` ` `
it' s my gemlog all right!
by switmandolin
EOF
curyear = ""
curmonth = ""
@ -153,12 +111,14 @@ EOF
──────────────────
= > / go home
= > $global_author_url go home
= > $feed_base_url $gemlog_feed this gemlog has an atom feed at: $feed_base_url $gemlog_feed
= > $feed_web_url $gemlog_feed or through the web at: $feed_web_url $gemlog_feed
= > $gemlog_sh_link generated with gemlog.sh
= > https://patorjk.com/software/taag/#p= display& h = 2& v = 0& f = Crazy& t = gemlog ASCII Art by Patrick Gillespie
EOF
} 3>& 1 >" $indexfile "
@ -179,7 +139,5 @@ toot() {
}
make_globals
make_atom
build_entries
toot