{ config, pkgs, lib, ... }: let inherit (import ../../lib) serveHtml; remote = "https://cgit.lassul.us/stockholm"; in { services.nginx.virtualHosts."redaktion.r".locations."/".extraConfig = serveHtml ../../lib/radio-news.html pkgs; age.secrets = { gemini-api-key.file = ../../secrets/gemini-api-key.age; }; systemd.services.news-digest = { enable = true; wantedBy = ["multi-user.target"]; wants = ["network-online.target"]; serviceConfig.LoadCredential = [ "gemini-api-key:${config.age.secrets.gemini-api-key.path}" ]; startAt = "*:50"; script = '' set -efu PATH=$PATH:${lib.makeBinPath [pkgs.w3m pkgs.gnused pkgs.curl pkgs.jq pkgs.yq]} export GEMINI_API_KEY="$(cat "$CREDENTIALS_DIRECTORY/gemini-api-key")" EVENTS=$( curl https://www.goodnewsnetwork.org/feed/ \ | xq ' .rss.channel.item | map(select((.pubDate|strptime("%a, %d %b %Y %H:%M:%S %z")) as $date | ($date | mktime) > (now - (60 * 60 * 24))) | {title, description}) ' ) SYSTEM_PROMPT=$(cat <