{ "uuid": [ { "value": "81676cf3-0b30-4619-a922-12ff3e16ba76" } ], "langcode": [ { "value": "en" } ], "type": [ { "target_id": "daily_email", "target_type": "node_type", "target_uuid": "8bde1f2f-eef9-4f2d-ae9c-96921f8193d7" } ], "revision_timestamp": [ { "value": "2025-05-28T12:13:26+00:00" } ], "revision_uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "revision_log": [], "status": [ { "value": true } ], "uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "title": [ { "value": "Drupal-powered podcast pages" } ], "created": [ { "value": "2025-05-28T09:07:31+00:00" } ], "changed": [ { "value": "2025-05-28T12:13:26+00:00" } ], "promote": [ { "value": false } ], "sticky": [ { "value": false } ], "default_langcode": [ { "value": true } ], "revision_translation_affected": [ { "value": true } ], "path": [ { "alias": "\/daily\/2025\/05\/28\/drupal-powered-podcast-pages", "langcode": "en" } ], "body": [ { "value": "

Following my daily email archive, I've recently switched the podcast pages on my website from Sculpin to Drupal\/Tome.<\/p>

The recent episode with Luke McCormick<\/a> was the first to be created in Drupal and served from static HTML generated by Tome, and I've since re-created the other podcast episodes and the podcast landing page<\/a>.<\/p>

The next steps are to re-add the links on a podcast episode page to other episodes with the same guests, and to rebuild the podcast feed that's used to update players like Spotify and PocketCasts.<\/p>

Once I've finished this, I'll move on to my presentations pages<\/a> as those are the ones that change next frequently.<\/p>

How am I doing this?<\/h2>

A lot of the content is still served from HTML generated by Sculpin, which is stored in one directory on my server.<\/p>

The newer content, generated by Tome, is stored in another directory.<\/p>

In my Nginx configuration, I change the root<\/code> value based on the URL, so depending on which page you're visiting, you'll get content from Sculpin or Tome.<\/p>

Here's part of that configuration:<\/p>

server {\r\n  listen localhost:8095:\r\n  server_name www.oliverdavies.uk:\r\n  root \/var\/www\/vhosts\/website-sculpin;\r\n\r\n  location \/ {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n  }\r\n\r\n  location ~ ^\/archive {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/core {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/daily\/.+ {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/homelab {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/podcast {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/sites\/default\/files {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n\r\n  location ~ ^\/themes\/custom\/opdavies {\r\n    try_files $uri $uri.html $uri\/index.html =404;\r\n    root \/var\/www\/vhosts\/website-tome;\r\n  }\r\n}<\/code><\/pre>

This is the same approach as upgrading incrementally<\/a> from old versions of software to new versions or different software.<\/p>

Neither site knows about the other and they work independently.<\/p>

My Nginx configuration is managed within my NixOS configuration<\/a>, so you can see the whole configuration for my website and how I've leveraged the Nix language to simplify the process of migrating new paths to Tome.<\/p>", "format": "full_html", "processed": "

Following my daily email archive, I've recently switched the podcast pages on my website from Sculpin to Drupal\/Tome.<\/p>

The recent episode with Luke McCormick<\/a> was the first to be created in Drupal and served from static HTML generated by Tome, and I've since re-created the other podcast episodes and the podcast landing page<\/a>.<\/p>

The next steps are to re-add the links on a podcast episode page to other episodes with the same guests, and to rebuild the podcast feed that's used to update players like Spotify and PocketCasts.<\/p>

Once I've finished this, I'll move on to my presentations pages<\/a> as those are the ones that change next frequently.<\/p>

How am I doing this?<\/h2>

A lot of the content is still served from HTML generated by Sculpin, which is stored in one directory on my server.<\/p>

The newer content, generated by Tome, is stored in another directory.<\/p>

In my Nginx configuration, I change the root<\/code> value based on the URL, so depending on which page you're visiting, you'll get content from Sculpin or Tome.<\/p>

Here's part of that configuration:<\/p>

server {\n  listen localhost:8095:\n  server_name www.oliverdavies.uk:\n  root \/var\/www\/vhosts\/website-sculpin;\n\n  location \/ {\n    try_files $uri $uri.html $uri\/index.html =404;\n  }\n\n  location ~ ^\/archive {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/core {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/daily\/.+ {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/homelab {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/podcast {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/sites\/default\/files {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n\n  location ~ ^\/themes\/custom\/opdavies {\n    try_files $uri $uri.html $uri\/index.html =404;\n    root \/var\/www\/vhosts\/website-tome;\n  }\n}<\/code><\/pre>

This is the same approach as upgrading incrementally<\/a> from old versions of software to new versions or different software.<\/p>

Neither site knows about the other and they work independently.<\/p>

My Nginx configuration is managed within my NixOS configuration<\/a>, so you can see the whole configuration for my website and how I've leveraged the Nix language to simplify the process of migrating new paths to Tome.<\/p>", "summary": "" } ], "feeds_item": [] }