Files
MetaAppStore/Apps/MetaFeederUsenet/rationale.md
T

1.5 KiB

MetaFeeder · Usenet — Rationale

What deviation / exception is being requested

  1. metafeederusenet-feeder runs user: 0:0.

(The NNTmux indexer this feeder used to bundle — and its own exceptions: a web UI on its own login, seeded TMDB/TVDB keys — is now the separate NNTmux app in worph/AppStore, with its own rationale.md.)

Why it is necessary

  1. The feeder publishes resolved records to the shared MetaCore and writes plugin artwork through its WebDAV endpoint; those targets are created and owned by MetaCore's root-running container.

Security mitigations in place

  • No web UI and no Caddy route: the feeder's configuration page is reached only through the MetaGateway dashboard's proxy, behind the gateway's login.
  • It talks to NNTmux only over NNTmux's Newznab API, with the key of a dedicated metamesh user — it holds no database credential and mounts no NNTmux storage.
  • The API key and the indexer keys are secrets on the feeder's config page (write-only, never echoed back); none has an env seed or a default.
  • cpu_shares and memory caps on all three services; every image pinned.

Alternatives considered and rejected

  • Run the feeder as $PUID:$PGID. Writes into MetaCore's root-owned tree fail.

Data protection

All state — the feeder config, its redb cache, the per-release .nzb cache, the TMDB cache — is under /DATA/AppData/metafeederusenet/. The .nzb cache is re-derivable from NNTmux. No user media directory is mounted.