From eb5d1c1d7b37451e3670fb153baf8ac646bb07b5 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Fri, 10 Jul 2026 15:27:33 -0400 Subject: [PATCH 1/4] content: Merge News section into Blog Having separate News (community meeting notes) and Blog sections didn't make much sense - both are chronological, dated posts, and splitting them just meant two nav entries, two archives, and two templates to keep in sync for what is really one feed. Fold the community meeting notes into content/blog/ alongside the regular posts, drop the now-unused News section, template override and nav entry, and add aliases so existing /news/ links (including the two individual meeting-notes posts) redirect to their new /blog/ locations instead of 404ing. Assisted-by: AI Signed-off-by: Colin Walters --- config.toml | 1 - .../2025-07-11-community-meeting.md | 1 + .../2025-07-18-community-meeting.md | 1 + content/blog/_index.md | 1 + content/news/_index.md | 7 ------ templates/news-page.html | 25 ------------------- 6 files changed, 3 insertions(+), 33 deletions(-) rename content/{news => blog}/2025-07-11-community-meeting.md (97%) rename content/{news => blog}/2025-07-18-community-meeting.md (97%) delete mode 100644 content/news/_index.md delete mode 100644 templates/news-page.html diff --git a/config.toml b/config.toml index 15f60c0..1a72dba 100644 --- a/config.toml +++ b/config.toml @@ -56,7 +56,6 @@ juice_logo_path = "logo.png" juice_extra_menu = [ { title = "About", link = "/about", external = false }, { title = "Docs", link = "https://bootc-dev.github.io/bootc/", external = true }, - { title = "News", link = "/news", external = false }, { title = "Blog", link = "/blog", external = false }, { title = "GitHub", link = "https://github.com/bootc-dev/bootc", external = true }, ] diff --git a/content/news/2025-07-11-community-meeting.md b/content/blog/2025-07-11-community-meeting.md similarity index 97% rename from content/news/2025-07-11-community-meeting.md rename to content/blog/2025-07-11-community-meeting.md index edf0c2f..ef47086 100644 --- a/content/news/2025-07-11-community-meeting.md +++ b/content/blog/2025-07-11-community-meeting.md @@ -2,6 +2,7 @@ title = "Bootc Community Meeting Notes - 11 July 2025" date = 2025-07-11 slug = "2025-july-11-community-meeting" +aliases = ["/news/2025-july-11-community-meeting/"] +++ ### Attendees: diff --git a/content/news/2025-07-18-community-meeting.md b/content/blog/2025-07-18-community-meeting.md similarity index 97% rename from content/news/2025-07-18-community-meeting.md rename to content/blog/2025-07-18-community-meeting.md index c0d53ca..5e24ac4 100644 --- a/content/news/2025-07-18-community-meeting.md +++ b/content/blog/2025-07-18-community-meeting.md @@ -2,6 +2,7 @@ title = "Bootc Community Meeting Notes - 18 July 2025" date = 2025-07-18 slug = "2025-july-18-community-meeting" +aliases = ["/news/2025-july-18-community-meeting/"] +++ ### Attendees: diff --git a/content/blog/_index.md b/content/blog/_index.md index 69e0cc5..1e8fd92 100644 --- a/content/blog/_index.md +++ b/content/blog/_index.md @@ -4,4 +4,5 @@ weight = 8 sort_by = "date" template = "blog.html" page_template = "blog-page.html" +aliases = ["/news/"] +++ diff --git a/content/news/_index.md b/content/news/_index.md deleted file mode 100644 index 729f563..0000000 --- a/content/news/_index.md +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "News" -weight = 8 -sort_by = "date" -template = "news.html" -page_template = "news-page.html" -+++ diff --git a/templates/news-page.html b/templates/news-page.html deleted file mode 100644 index 6677ca1..0000000 --- a/templates/news-page.html +++ /dev/null @@ -1,25 +0,0 @@ -{% import "_macros.html" as macros %} -{% extends "page.html" %} - -{% block header %} -
- {{ macros::render_header() }} -
-{% endblock header %} - -{% block content %} -
{{ page.description }}
-{{ page.content | safe }} -{% endblock content %} - -{% block sidebar %} - -{% endblock sidebar %} \ No newline at end of file From f7491b6754bb509e73d88d6be2cd4bc914904b7b Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Fri, 10 Jul 2026 15:27:46 -0400 Subject: [PATCH 2/4] templates: Show latest blog posts inline on the homepage The blog previously only showed up via the nav link to /blog; you had to know it existed. Surface the 3 most recent posts (title + date) directly in the homepage content, right below the overview text, with a link through to the full archive. Assisted-by: AI Signed-off-by: Colin Walters --- templates/index.html | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/templates/index.html b/templates/index.html index f9b9adc..dcf374c 100644 --- a/templates/index.html +++ b/templates/index.html @@ -45,6 +45,27 @@

/> {% endblock fonts %} +{% block content %} +
Overview
+{{ section.content | safe }} + +
Latest from the Blog
+
    + {% set blog = get_section(path="blog/_index.md") %} + {% for post in blog.pages | slice(end=3) %} +
  • + + {{ post.title }} + +
    + {{ post.date | date(format="%B %d, %Y") }} +
    +
  • + {% endfor %} +
+

See all posts »

+{% endblock content %} + {% block sidebar %} From ce6775d948b1c39a98115d233bb619773c415a55 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Fri, 10 Jul 2026 15:33:26 -0400 Subject: [PATCH 3/4] templates: Drop redundant Archive sidebar on the blog listing page The theme's blog.html shows every post twice on /blog/: once in the main content list, and again in a sidebar labeled 'Archive'. That's confusing now that News has been folded in and the list is a bit longer. The main list already serves as the archive, so just empty out the sidebar block. Also fix a stale .gitignore entry left over from when the site lived under a site/ subdirectory; it was ignoring site/public/ instead of the public/ dir that zola build actually produces at the repo root. Assisted-by: AI Signed-off-by: Colin Walters --- .gitignore | 2 +- templates/blog.html | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 templates/blog.html diff --git a/.gitignore b/.gitignore index d04640d..ab69d47 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -site/public/ +public/ .idea .DS_Store \ No newline at end of file diff --git a/templates/blog.html b/templates/blog.html new file mode 100644 index 0000000..99c785a --- /dev/null +++ b/templates/blog.html @@ -0,0 +1,9 @@ +{% extends "juice/templates/blog.html" %} + +{# The theme's default sidebar just repeats the same post list shown in the + main content above as an "Archive" - drop it instead of showing every + post twice on the same page. #} +{% block sidebar %} + +{% endblock sidebar %} From 6deebefa8e113524d7290f52e0dc5c171d5d9677 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Fri, 17 Jul 2026 12:04:42 -0400 Subject: [PATCH 4/4] config: Skip YouTube links in the external link checker CI (PR #48) is failing with 6 'broken' links, all 429 Too Many Requests from youtube.com/youtu.be: Broken link in .../2026-jul-07-conference-talks-devconf-flock-2026.md to https://www.youtube.com/watch?v=... : Client error status code (429 Too Many Requests) received YouTube rate-limits Zola's non-browser user agent once a page links to more than a couple of videos; the links themselves are fine in an actual browser. Skip them the same way we already skip freedesktop.org for its similar bot-hostile behavior. Assisted-by: AI Signed-off-by: Colin Walters --- config.toml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/config.toml b/config.toml index 1a72dba..6f48ed2 100644 --- a/config.toml +++ b/config.toml @@ -29,9 +29,14 @@ feed_filenames = ["rss.xml"] #output_dir #preserve_dotfiles_in_output [link_checker] -# freedesktop.org returns 418 to bots but works fine in browsers +# freedesktop.org returns 418 to bots but works fine in browsers. +# YouTube aggressively rate-limits (429) Zola's link checker once a page +# links to more than a couple of videos, even though the links work fine +# in a browser - skip it rather than have that fail CI. skip_prefixes = [ "https://www.freedesktop.org/", + "https://www.youtube.com/", + "https://youtu.be/", ] #slugify #search