snix/users/Profpatsch/whatcd-resolver
Profpatsch 17f5b55066 feat(users/Profpatsch/whatcd-resolver): locally serve resources
Proxy the resources through our server instead of always requesting
them from the CDN, leaking lots of usage data.

This prefetches the resources at server startup (instead of e.g.
adding them to the build environment statically), which is a nice
compromise I think. It will also keep the integrity verification in
place, but that is still done in the client.

Adds `rel=preload` as well, so we start fetching asap.

No caching (yet). We could easily add a hash over the content though
so the client never has to re-request the resources.

Change-Id: I9aac80cfb1ded09e578ba2a70dcf982bf5322ff6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13215
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2025-03-07 15:22:58 +00:00
..
services fix(users/Profpatsch/whatcd-resolver/services): dont unset builders 2024-09-13 11:13:59 +00:00
src feat(users/Profpatsch/whatcd-resolver): locally serve resources 2025-03-07 15:22:58 +00:00
.gitignore chore(users/Profpatsch/whatcd-resolver): ignore .ninja 2024-09-13 11:13:59 +00:00
build.ninja feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
default.nix feat(users/Profpatsch/whatcd-resolver): add a simple torrent parser 2025-03-06 23:41:43 +00:00
Main.hs feat(users/Profpatsch/whatcd-resolver): add executable 2023-09-17 18:05:42 +00:00
notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
README.md feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
server-notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
whatcd-resolver.cabal feat(users/Profpatsch/whatcd-resolver): add a simple torrent parser 2025-03-06 23:41:43 +00:00

whatcd-resolver

To run:

ninja run-services

in one terminal (starts the background tasks)

ninja run

to start the server. It runs on 9092.

You need to be in the nix-shell in ./...

You need to set the pass key internet/redacted/api-keys/whatcd-resolver to an API key for RED.

You need to have a transmission-rpc-daemon listening on port 9091 (no auth, try ssh port forwarding lol).