From 867bed2b5fc325bf6a4a4372de47f9fb42269588 Mon Sep 17 00:00:00 2001 From: Jorijn van der Graaf Date: Sat, 8 Aug 2026 03:35:05 +0200 Subject: [PATCH 1/2] ci: redeploy to pick up the backfilled 13b048149b5511dd.h264.mp4 The H.264 sibling landed on the media mount after the previous deploy ran, and fetch-media.sh only discovers siblings at build time. Co-Authored-By: Claude Fable 5 From ae30ac69f72ada56cceab6767dc6962aab3809f7 Mon Sep 17 00:00:00 2001 From: Jorijn van der Graaf Date: Sat, 8 Aug 2026 14:38:14 +0200 Subject: [PATCH 2/2] privacy policy --- deploy/Caddyfile.example | 6 ++++++ shared/interfaces/Catcrafts.Shared-Content.cppm | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/deploy/Caddyfile.example b/deploy/Caddyfile.example index 8e6c7b7..c94a9d9 100644 --- a/deploy/Caddyfile.example +++ b/deploy/Caddyfile.example @@ -144,3 +144,9 @@ catcrafts.net { } } } + +# www -> apex. DNS A/AAAA for www point at this box; Caddy obtains the +# certificate automatically. 308 to match the redirs above. +www.catcrafts.net { + redir https://catcrafts.net{uri} 308 +} diff --git a/shared/interfaces/Catcrafts.Shared-Content.cppm b/shared/interfaces/Catcrafts.Shared-Content.cppm index 9d5ea5a..6c2832c 100644 --- a/shared/interfaces/Catcrafts.Shared-Content.cppm +++ b/shared/interfaces/Catcrafts.Shared-Content.cppm @@ -216,7 +216,7 @@ export const std::vector& LegalPages() { { "Order records that belong to an invoice are kept for seven years. That is the Dutch fiscal retention obligation, and it is the one case where a deletion request cannot be honoured early. Everything in an order that the tax records do not need is deleted on request.", "An order that is never paid lapses; its record is kept briefly for abuse spotting and then has no reason to exist.", - "The order file is stored on a machine Catcrafts runs, readable only by the service account, and encrypted before any backup leaves that machine.", + "The order file is stored on machine hosted by hetzner, a GDPR compliant german cloud hosting service.", } }, { "What this site does not do", { @@ -226,7 +226,7 @@ export const std::vector& LegalPages() { { "Server logs", { "The web server keeps ordinary request logs. Those exist to debug faults and spot abuse, and are not connected to order records or used to build any kind of profile.", - "Those logs are also this site's only analytics: a page of aggregate statistics, computed on the server, with visitor addresses anonymized before anything is stored. A tally like that is nothing to keep secret, so you are free to take a look yourself at catcrafts.net/analytics.", + "Those logs are also this site's only analytics: a page of aggregate statistics, computed on the server, with visitor addresses anonymized before anything is stored. A tally like that is nothing to keep secret, so you are free to take a look yourself at https://catcrafts.net/analytics.", } }, { "Your rights", { @@ -234,7 +234,7 @@ export const std::vector& LegalPages() { } }, { "Changes", { - "This page has a date at the top. Anything that changes what is collected or why gets a new date, and you do not have to take the date's word for it: every previous version of this page, with the exact diff, is public at catcrafts.net/legal/privacy/history.", + "This page has a date at the top. Anything that changes what is collected or why gets a new date, and you do not have to take the date's word for it: every previous version of this page, with the exact diff, is public at https://catcrafts.net/legal/privacy/history.", } }, }, },