So, I finally stopped(ish) being lazy and started setting up a half-ass blog. Currently I’m trying out Hugo, thanks to a certain someone that started posting about it on the Fediverse a while back. As I’m sure you can tell some small things here and there are broken; icons for links, links themselves, etc… But I’m slowly learning how to configure Hugo and the 3rd-party theme I installed, after many hours of searching through all the scss files.
First of all, yup, I’m running this on a tiny, itty-bitty, ARM64 C1 server from Scaleway. It seems decent enough to handle the load of static files (lol) and I don’t anticipate more than 2 hits per month on this blog. Sooooo, the fun part. Hugo doesn’t offer a pre-built binary for ARM64-extended (extended being with sass/scss support). I was unaware of that fact in the beginning and was wondering why my themes were breaking terribly. Later I discovered that the Hugo package in Debian Stretch repo was really outdated; shocker I know. Noticing the themes I wanted to use required a Hugo version of 5x+, I was left with one option, compiling everything. Not that big of a deal, considering Stretch had the minimum version of Go-lang (golang1.11) in their repo. After a quick install of Go I proceeded to compile Hugo from source with extended support. Compilation took a while but, I managed to get it up and running some what smoothly. Only time will tell.
Now time for the hardware to give you an idea. Not the best, but, not the worst either.
- Easy to maintain
- Not on my network
- “Baremetal dedicated server”
- My kids can’t unplug the power cord
- Still costs me money
- Bandwidth is limited to 200Mbps
- It’s under another country’s data laws
- I always forget my Scaleway password
It does what I need it to do. Not to mention it is NOT powered by my local Energy Company which seems to be having issues as of late.
The software stack is pretty much Debian and Hugo with Apache2 serving the files up. I figured it would be simple enough to just drop the Hugo generated files inside the html folder. Being lazy, I also created a couple of aliases to do the work for me.
hugo_build: to generate the static files.
alias hugo_build='sudo /home/debian/go/bin/hugo'
This one is because the Hugo binary is in another dir and not seen by the system, I really need to search this and properly set it up.
hugo_deploy: to copy all the files from public into the html folder.
alias hugo_deploy='sudo cp -r /home/debian/blog/public/* /var/www/html/'
I did manage to tweak the theme’s sidebar HTML to allow for different social media. Basically added Mastodon, Pixelfed, and Liberapay. Maybe over a couple of weeks I can finish setting up things, choosing colors, maybe edit the theme’s layout slightly, and correctly use the awesome icons from Fork Awesome; a site Pixelfed suggested to me. Also, I plan on attempting to setup a Git hook to my Gitlab account, so that I can simply push my blog posts to my Git account and have the site auto-update, at the same time keeping a back-up of my blog posts. But, that is a project for another night. After all this I have a working setup, probably not the best or most secure, but at least it’s working. But only time will tell of things I need to change or configure differently and maybe have a smoother more secure work flow.
Until next post o/
I welcome suggestions, help, and advice. I am still learning and some things mentioned may not be the best methods, thanks!