From 875ef0a605c298e3033ef950119092d09e21f306 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Fri, 5 Nov 2021 14:19:06 +0100 Subject: fix(web/blog): make base URL configurable for atom feeds This was previously hardcoded to tazj.in, which is not going to work of course. Instead it now takes the blog config which has a new baseUrl parameter. For ease of use, the configs of my and the TVL blog have been moved into a location that is accessible in the tree for reuse. Change-Id: I94e71aaa7859db4380eb7013740a17f6b6a02620 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3777 Tested-by: BuildkiteCI Reviewed-by: tazjin --- web/blog/default.nix | 5 ++--- web/blog/fragments.nix | 2 +- web/tvl/blog/default.nix | 6 ++++++ web/tvl/default.nix | 14 +++++--------- 4 files changed, 14 insertions(+), 13 deletions(-) (limited to 'web') diff --git a/web/blog/default.nix b/web/blog/default.nix index fd8f7dc9fc..ec386a2177 100644 --- a/web/blog/default.nix +++ b/web/blog/default.nix @@ -40,8 +40,8 @@ let fragments = import ./fragments.nix args; # Functions for generating feeds for these blogs using //web/atom-feed. - toFeedEntry = defun [ post atom-feed.entry ] (post: rec { - id = "https://tazj.in/blog/${post.key}"; + toFeedEntry = { baseUrl, ...}: defun [ post atom-feed.entry ] (post: rec { + id = "${baseUrl}/${post.key}"; title = post.title; content = readFile (renderMarkdown post.content); published = post.date; @@ -52,7 +52,6 @@ let href = id; }; }); - in { inherit post toFeedEntry; inherit (fragments) renderPost; diff --git a/web/blog/fragments.nix b/web/blog/fragments.nix index f95c0f17a5..9a4446324e 100644 --- a/web/blog/fragments.nix +++ b/web/blog/fragments.nix @@ -59,7 +59,7 @@ let
''; - renderPost = { name, footer }: post: runCommandNoCC "${post.key}.html" {} '' + renderPost = { name, footer, ... }: post: runCommandNoCC "${post.key}.html" {} '' cat ${writeText "header.html" (header name post.title)} > $out # Write the post title & date diff --git a/web/tvl/blog/default.nix b/web/tvl/blog/default.nix index fac627a940..cedfc6b417 100644 --- a/web/tvl/blog/default.nix +++ b/web/tvl/blog/default.nix @@ -1,6 +1,12 @@ { depot, ... }: { + config = { + name = "TVL's blog"; + footer = depot.web.tvl.footer {}; + baseUrl = "https://tvl.fyi/blog"; + }; + posts = [ { key = "kicking-off-tvix"; diff --git a/web/tvl/default.nix b/web/tvl/default.nix index c403350031..4a3688bf31 100644 --- a/web/tvl/default.nix +++ b/web/tvl/default.nix @@ -4,16 +4,12 @@ with depot.nix.yants; let inherit (pkgs) graphviz runCommandNoCC writeText; - inherit (depot.web) blog atom-feed; + inherit (depot.web) atom-feed blog tvl; - blogConfig = { - name = "TVL's blog"; - footer = depot.web.tvl.footer {}; - }; postRenderingCommands = defun [ (list blog.post) string ] (posts: lib.concatStringsSep "\n" - (map (p: "cp ${blog.renderPost blogConfig p} $out/blog/${p.key}.html") posts) + (map (p: "cp ${blog.renderPost tvl.blog.config p} $out/blog/${p.key}.html") posts) ); tvlGraph = runCommandNoCC "tvl.svg" { @@ -33,12 +29,12 @@ let href = "https://tvl.fyi/feed.atom"; }; - entries = map blog.toFeedEntry depot.web.tvl.blog.posts; + entries = map (blog.toFeedEntry tvl.blog.config) tvl.blog.posts; }; atomFeed = writeText "feed.atom" (atom-feed.renderFeed feed); - homepage = depot.web.tvl.template { + homepage = tvl.template { title = "The Virus Lounge"; content = '' The Virus Lounge @@ -109,6 +105,6 @@ let in runCommandNoCC "website" {} '' mkdir -p $out/blog cp ${homepage} $out/index.html - ${postRenderingCommands depot.web.tvl.blog.posts} + ${postRenderingCommands tvl.blog.posts} cp ${atomFeed} $out/feed.atom '' -- cgit 1.4.1