Commit 40e4d269551d

Vincent Demeester <vincent@sbr.pm>
2026-01-28 16:09:13
fix(slack-archive): add uv paths and configurable HTML output
The service was failing because uvx needs write access to both cache and data directories. Also adds SLACK_ARCHIVE_HTML_DIR to output the generated HTML to the tektoncd-slack-archive experiments repo. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 5f84fa7
Changed files (2)
systems
tools
slack-archive
systems/kyushu/extra.nix
@@ -120,8 +120,9 @@
       ExecStart = "${pkgs.slack-archive}/bin/slack-archive archive";
       Environment = [
         "SLACK_ARCHIVE_DIR=/var/lib/slack-archive"
+        "SLACK_ARCHIVE_HTML_DIR=/home/vincent/src/experiments/tektoncd-slack-archive"
         "HOME=/home/vincent"
-        "XDG_CACHE_HOME=/home/vincent/.cache"
+        "XDG_CACHE_HOME=/home/vincent/.local/cache"
       ];
 
       # Security hardening
@@ -130,8 +131,10 @@
       ProtectHome = "read-only";
       ReadWritePaths = [
         "/var/lib/slack-archive"
-        "/home/vincent/.cache/slackdump"
         "/home/vincent/.local/cache/slackdump"
+        "/home/vincent/.local/cache/uv"
+        "/home/vincent/.local/share/uv"
+        "/home/vincent/src/experiments/tektoncd-slack-archive"
       ];
       NoNewPrivileges = true;
 
tools/slack-archive/slack-archive.sh
@@ -7,7 +7,7 @@ set -euo pipefail
 DATA_DIR="${SLACK_ARCHIVE_DIR:-/var/lib/slack-archive}"
 ARCHIVE_DIR="$DATA_DIR/archive"
 EXPORT_DIR="$DATA_DIR/exports"
-HTML_DIR="$DATA_DIR/html"
+HTML_DIR="${SLACK_ARCHIVE_HTML_DIR:-$DATA_DIR/html}"
 CHANNELS_FILE="$DATA_DIR/public-channels.txt"
 CHANNELS_JSON="$DATA_DIR/channels.json"