Commits: 6

Upgrade Zola, enable atom feed

There was a change to how code blocks syntax highliting is configured.

index d07db2f..c7e6fa4 100644
--- a/config.toml
+++ b/config.toml
@@ -1,3 +1,7 @@
+title = "Tad Website"
+description = "A personal website and blog of Tad Lispy."
+author = "Tad Lispy"
+
=# The URL the site will be built for
=base_url = "https://tad-lispy.com/"
=
@@ -7,10 +11,14 @@ compile_sass = true
=# Whether to build a search index to be used later on by a JavaScript library
=build_search_index = true
=
+generate_feeds = true
+feed_filenames = ["atom.xml"]
+
=[markdown]
-# Whether to do syntax highlighting
-# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
-highlight_code = true
+
+[markdown.highlighting]
+light_theme = "solarized-light"                                                                                     
+dark_theme = "solarized-dark"
=
=[link_checker]
=# Seems like some services (e.g. stackoverflow) are blocking connections from CI servers
index 587cbde..3c3a5a8 100644
--- a/flake.lock
+++ b/flake.lock
@@ -5,11 +5,11 @@
=        "systems": "systems"
=      },
=      "locked": {
-        "lastModified": 1705309234,
-        "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
+        "lastModified": 1731533236,
+        "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
=        "owner": "numtide",
=        "repo": "flake-utils",
-        "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
+        "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
=        "type": "github"
=      },
=      "original": {
@@ -20,11 +20,11 @@
=    },
=    "nixpkgs": {
=      "locked": {
-        "lastModified": 1707268954,
-        "narHash": "sha256-2en1kvde3cJVc3ZnTy8QeD2oKcseLFjYPLKhIGDanQ0=",
+        "lastModified": 1771369470,
+        "narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
=        "owner": "NixOS",
=        "repo": "nixpkgs",
-        "rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1",
+        "rev": "0182a361324364ae3f436a63005877674cf45efb",
=        "type": "github"
=      },
=      "original": {
index 54e6fef..bb2194b 100644
--- a/sass/style.scss
+++ b/sass/style.scss
@@ -195,3 +195,21 @@ footer {
=.dim {
=    color: var(--muted-color);
=}
+
+
+// Syntax highliting - see https://www.getzola.org/documentation/content/syntax-highlighting/
+
+.giallo-l {
+    display: inline-block;
+    min-height: 1lh;
+    width: 100%;
+}
+.giallo-ln {
+    display: inline-block;
+    user-select: none;
+    margin-right: 0.4em;
+    padding: 0.4em;
+    min-width: 3ch;
+    text-align: right;
+    opacity: 0.8;
+}
index ac95fd2..cbbde5c 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -25,7 +25,11 @@
=        <link rel="mask-icon" href="{\{ get_url(path = '/safari-pinned-tab.svg') \}}" color="#5bbad5">
=        <meta name="msapplication-TileColor" content="#da532c">
=        <meta name="theme-color" content="#ffffff">
-
+        
+        {\% block rss %}
+        <link rel="alternate" type="application/rss+xml" title="RSS" href="{\{ get_url(path="rss.xml", trailing_slash=false) \}}">
+        {\% endblock %}
+        
=        <script src="https://cdn.usefathom.com/script.js" data-site="ODXZZEEQ" defer></script>
=
=    </head>

Publish rss.xml along with atom.xml

index c7e6fa4..f203feb 100644
--- a/config.toml
+++ b/config.toml
@@ -12,7 +12,7 @@ compile_sass = true
=build_search_index = true
=
=generate_feeds = true
-feed_filenames = ["atom.xml"]
+feed_filenames = ["atom.xml", "rss.xml"]
=
=[markdown]
=

Do not fiddle with base URL in CI deployment

It was useful long time ago, when GitLab pages would be published under a prefix (like gitlab.io/tad-lispy/tad-lispy.com/ or something like that). Now GitLab allows to always publish to a root with randomly generated domain name, so it's not necesary, and it's messing with RSS feed by producing relative URLs where absolute are required.

index 5ec0fa6..0d40ef2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -15,8 +15,7 @@ pages:
=  stage: deploy
=  image: $CI_REGISTRY_IMAGE:build
=  script:
-    - base_url="/$(cut --delimiter='/' --fields=4- <<< $CI_PAGES_URL)"
-    - make base_url=${base_url}
+    - make
=
=  artifacts:
=    paths:

Do not fiddle with base URL in Makefile

Similar to previous commit.

index e1c45d0..27967cd 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,6 @@ all: test build
=.PHONY: all
=
=build: # Compile the website into the public/ directory
-build: base_url ?= ""
=build: public
=.PHONY: build
=
@@ -24,9 +23,8 @@ install:
=.PHONY: install
=
=
-public: base_url ?= ""
=public:
-	zola build --base-url "$(base_url)"
+	zola build
=	touch $@
=
=### DEVELOPMENT

Fix footnotes in the manifesto

I had to write them as HTML, because they are nested inside HTML elements. Apparently older versions of Zola would render them anyway, but it broke after the update.

index f203feb..1855ae9 100644
--- a/config.toml
+++ b/config.toml
@@ -15,6 +15,7 @@ generate_feeds = true
=feed_filenames = ["atom.xml", "rss.xml"]
=
=[markdown]
+bottom_footnotes = false
=
=[markdown.highlighting]
=light_theme = "solarized-light"
index 6b1443a..3c8c691 100644
--- a/content/blog/2025-03-16-tad-co-op-and-manifesto/index.md
+++ b/content/blog/2025-03-16-tad-co-op-and-manifesto/index.md
@@ -19,22 +19,22 @@ I care about
=    <span class="list-item"><strong>honesty</strong> and</span>
=    <span class="list-item"><strong>freedom</strong></span>
=</span>  
-<span class="dim">in this specific order</span>[^1].
+<span class="dim">in this specific order</span><sup class="footnote-reference"><a href="#1">1</a></sup>.
=
=I want to
=<span class="inline-list">
-  <span class="list-item"><strong>earn decent money</strong>[^2] while</span> 
-  <span class="list-item">doing <strong>useful</strong>[^3], <strong>positive</strong>[^4] work</span>
+  <span class="list-item"><strong>earn decent money</strong><sup class="footnote-reference"><a href="#2">2</a></sup> while</span>
+  <span class="list-item">doing <strong>useful</strong><sup class="footnote-reference"><a href="#3">3</a></sup>, <strong>positive</strong>[^4] work</span>
=</span>  
-with <strong>mutual support</strong>[^5]  
+with <strong>mutual support</strong><sup class="footnote-reference"><a href="#5">5</a></sup>
=of people
=that I 
=<span class="inline-list">
=  <span class="list-item"><strong>like</strong>,</span>
-  <span class="list-item"><strong>trust</strong> to rely on[^6]</span>
-  <span class="list-item">and <strong>respect</strong>[^7],</span>
+  <span class="list-item"><strong>trust</strong> to rely on<sup class="footnote-reference"><a href="#6">6</a></sup></span>
+  <span class="list-item">and <strong>respect</strong><sup class="footnote-reference"><a href="#7">7</a></sup>,</span>
=</span>  
-without having or being a ~~boss~~[^8].
+without having or being a ~~boss~~<sup class="footnote-reference"><a href="#8">8</a></sup>.
={\% end %}
=
=[^1]: All those principles are important, but the order matters, because life is complicated and full of edge cases. Mostly fairness, honesty and freedom reinforce each other, but sometimes they clash and have to be negotiated. For example freedom of speech is very important, but it doesn't absolve spreading lies and misinformation. You are free to be wrong. To err is human. But it's only ok to say wrong things if you honestly believe what you say, and only if you are willing to change your mind. Willful ignorance is just lying to yourself. So in my eyes honesty trumps freedom. Honesty is a mean to discover truth (whatever it might be), and knowing truth should be a mean to foster fairness. For example it is not fair to tell young children about the horrors of war. Or if you are an atheist like me, it's not fair to tell a dying believer that there is no afterlife. If you are using truth to harm others, or even being honest, but in a disrespectful way, you are no friend of mine and I won't do business with you.

Fix a footnote in the manifesto, format the code

index 3c8c691..9abf1ce 100644
--- a/content/blog/2025-03-16-tad-co-op-and-manifesto/index.md
+++ b/content/blog/2025-03-16-tad-co-op-and-manifesto/index.md
@@ -23,16 +23,27 @@ I care about
=
=I want to
=<span class="inline-list">
-  <span class="list-item"><strong>earn decent money</strong><sup class="footnote-reference"><a href="#2">2</a></sup> while</span>
-  <span class="list-item">doing <strong>useful</strong><sup class="footnote-reference"><a href="#3">3</a></sup>, <strong>positive</strong>[^4] work</span>
+  <span class="list-item">
+    <strong>earn decent money</strong><sup class="footnote-reference"><a href="#2">2</a></sup> while
+  </span>
+  <span class="list-item">
+    doing
+    <strong>useful</strong><sup class="footnote-reference"><a href="#3">3</a></sup>,
+    <strong>positive</strong><sup class="footnote-reference"><a href="#4">4</a></sup>
+    work
+  </span>
=</span>  
=with <strong>mutual support</strong><sup class="footnote-reference"><a href="#5">5</a></sup>
=of people
=that I 
=<span class="inline-list">
=  <span class="list-item"><strong>like</strong>,</span>
-  <span class="list-item"><strong>trust</strong> to rely on<sup class="footnote-reference"><a href="#6">6</a></sup></span>
-  <span class="list-item">and <strong>respect</strong><sup class="footnote-reference"><a href="#7">7</a></sup>,</span>
+  <span class="list-item">
+    <strong>trust</strong> to rely on<sup class="footnote-reference"><a href="#6">6</a></sup>
+  </span>
+  <span class="list-item">
+    and <strong>respect</strong><sup class="footnote-reference"><a href="#7">7</a></sup>,
+  </span>
=</span>  
=without having or being a ~~boss~~<sup class="footnote-reference"><a href="#8">8</a></sup>.
={\% end %}