This is kind of a chonker because I went into so many rabbit holes. Foremost this implements a simple “Refresh Artist” button that fetches current artist torrent groups. BUG: the `artist` endpoint torrent struct is shite, it’s missing most info that we get in the `search` endpoint torrent struct, plus it’s organized differently (e.g. the `artists` thingy is in the torrent_group not the torrent). I should switch everything over to fetching the `torrent_group.id`s first and then going through and slowly fetching every torrent group separately … however that might time out very quickly. ugh. There doesn’t seem to be a way of fetching multiple torrent groups. Random other shit & improvements: * intersperse for builders * fix json errors so that the structs don’t get too big (`restrictJson`) * show error messages as json so jaeger displays it with nested UI * color pretty-printed json outpt on command line * add some important integral functions to MyPrelude * add `sintersperse` and `mintersperse` to MyPrelude Change-Id: If8bfcd68dc5c905e118ad86d50d7416962bf55d4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12960 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> |
||
|---|---|---|
| .. | ||
| services | ||
| src | ||
| .gitignore | ||
| build.ninja | ||
| default.nix | ||
| Main.hs | ||
| notes.org | ||
| README.md | ||
| server-notes.org | ||
| whatcd-resolver.cabal | ||
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).