Hello World, I guess
I've been wanting to create a blog. I suppose it's time.
It's a funny thing. I've always felt like I have nothing to write about, yet every once in a while I run to something so ridiculous that I have to rant about it. These rants, so far, have ended up mostly in Discord (hi RPLCS). It's a shame, there's a lot of really fun stuff in there and I'm not skilled enough to dig them up.
Let's go meta
Today however, I have nothing special in my mind so I'll give a short writeup about the creation of this blog.
I chose Zola to be my static site generator. Two reasons: First, I want the site to be as lightweight as it can be - this is a blog, not an app. A tiny bit of JS for managing the active theme is all we need. Second, Zola is lightweight to me too. It took five minutes to go through the introduction and I was good to go. Just grabbed a theme and started writing.
Speaking of.. a pre-existing theme? I know, I know. I wanted to actually get something out there before I get stuck in the rabbit hole of perfectionism, so I decided to grab the Anpu theme to bootstrap the site. It's the first theme I saw that looked pleasing, so I ran with it. I'll be looking to make my own theme later.
Edit: I ended up rewriting most of the theme the next day.
But I am still an engineer
I obviously have something clever for the deployment process, right? Uh, not exactly. I went for the classic approach of botching together the most minimal thing I could think of as a first draft. A minimum viable product. The temporary hack that might end up permanent.
I run the following script in a cronjob every 5 minutes:
git fetch
git reset --hard origin/main
rsync -avh public/ /var/www/html/ --delete
chmod -R +r /var/www/html
It works. I guess.
As an aside, I wish nginx gave errors
I spent a surprising amount of time trying to figure out why nginx can't find my static files. I had set up a symlink like this, thinking it's efficient.
ln -s "$(realpath public)" /var/www/html
Turns out, nginx just will not follow the symlink if you try to use one as the static file root.