From a453a7a062bcc6677a7a527032c3309dff2195a5 Mon Sep 17 00:00:00 2001 From: Joe Mou Date: Fri, 4 Apr 2025 19:46:03 -0400 Subject: Try minimal danb/rss aggregator Probably won't keep this, but playing with OCI containers and XSLT were interesting. Converting Feedly OPML to feeds.txt: $ nomad @xmlstarlet select -T -t -m '//outline[@type="rss"]' -v ./@xmlUrl -o $'\t' -v ./@title -o $'\t#' -v ../@text -o $'\n' Downloads/feedly-093988c0-b9a0-4bb7-97dc-6946128b509e-2025-03-30-d63a70cb-archive/subscriptions.opml | awk -F'\t' -v OFS=' ' '{gsub(/ /, "_", $2); gsub(/ /, "-", $3); $1=$1; print}' --- hostnix/elmo/rss.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'hostnix/elmo/rss.nix') diff --git a/hostnix/elmo/rss.nix b/hostnix/elmo/rss.nix index f343d83..421934e 100644 --- a/hostnix/elmo/rss.nix +++ b/hostnix/elmo/rss.nix @@ -23,4 +23,22 @@ }; # TODO services.oauth2-proxy.nginx.virtualHosts = { "mf.mou.fo" = {}; }; + + virtualisation.podman.enable = true; + virtualisation.oci-containers = { + containers = { + rss = { + image = "codeberg.org/danb/rss"; + ports = [ "127.0.0.1:8283:80" ]; + volumes = [ "/home/joe/rss:/app/storage" ]; + autoStart = true; + }; + }; + }; + + services.nginx.virtualHosts."rss.elmo.mou.fo" = { + locations."/" = { + proxyPass = "http://localhost:8283"; + }; + }; } -- cgit v1.3.1