dammIT

A rantbox by Michiel Scholten

Selfhosting dammIT dependencies


This weblog uses a bunch of other projects to deliver its contents to your eyeballs. Obviously, the first is Pelican which is the Python-based static site generator converting the source files to HTML and feeds to be read on the web and in your feed readers.

However, HTML can be pretty boring, so I have been using a little theming framework for a while that's called pelican-alchemy with a lot of changes to make it more of my own taste. This theme uses Bootstrap and Font Awesome icons and I have added in highlight.js for nicely highlighting code and other text in code blocks.

Also, I am fond of good-looking font typefaces, of which I use Literata for text body and Lilex for the metadata and navigation.

Those fonts and Font Awesome icon files have been served from my own infrastructure (servers) from the start, but Bootstrap and highlight.js were loaded from their respective CDN's. That's fine and all, and uses cached copies in your browser from all the other sites that are using them, but also make me dependent on those external services, and likely causes my three readers to be tracked by those networks when they stumble upon my thoughts here.

We can't have that.

If I want things to break, I will do that myself, thank you very much.

So, today I sat down and upgraded the Font Awesome icons to the latest version 7.2 (from 6.something) including the webfonts hosted by dammit.nl itself. Then I downloaded the Bootstrap CSS file and the highlight.js theme CSS file and its Javascript file and included it in my theme repository. A sidequest was embarked upon to fix some bugs and oddities in my webhaak webhook CI/CD thing that automatically updates the theme and weblog itself on push to their respective versioning repositories, but after all of that, nothing visible was changed!

Great eh?

The best part is that everything is now hosted from the dammit.nl domain itself (this weblog), no external references/URL's anymore! It might even be faster this way. It might also fail faster, but at least that's on me then :)

article header image article header image