summaryrefslogtreecommitdiff
path: root/hostnix
diff options
context:
space:
mode:
Diffstat (limited to 'hostnix')
-rw-r--r--hostnix/elmo/privacy-frontends.nix42
1 files changed, 4 insertions, 38 deletions
diff --git a/hostnix/elmo/privacy-frontends.nix b/hostnix/elmo/privacy-frontends.nix
index 3838e19..ecaf8c8 100644
--- a/hostnix/elmo/privacy-frontends.nix
+++ b/hostnix/elmo/privacy-frontends.nix
@@ -28,46 +28,12 @@
"d /var/secrets/nitter 0750 root wheel"
];
- systemd.services.nitter-refresh-guest-account-token = {
- serviceConfig = {
- Type = "oneshot";
- };
- path = [ pkgs.curl pkgs.jq ];
- # Lightly edited from https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment
- script = ''
- set -e
-
- guest_token=$(curl -s -XPOST https://api.twitter.com/1.1/guest/activate.json -H 'Authorization: Bearer AAAAAAAAAAAAAAAAAAAAAFXzAwAAAAAAMHCxpeSDG1gLNLghVe8d74hl6k4%3DRUMF4xAQLsbeBhTSRrCiQpJtxoGWeyHrDb5te2jpGskWDFW82F' | jq -r '.guest_token')
-
- flow_token=$(curl -s -XPOST 'https://api.twitter.com/1.1/onboarding/task.json?flow_name=welcome' \
- -H 'Authorization: Bearer AAAAAAAAAAAAAAAAAAAAAFXzAwAAAAAAMHCxpeSDG1gLNLghVe8d74hl6k4%3DRUMF4xAQLsbeBhTSRrCiQpJtxoGWeyHrDb5te2jpGskWDFW82F' \
- -H 'Content-Type: application/json' \
- -H "User-Agent: TwitterAndroid/10.10.0" \
- -H "X-Guest-Token: $guest_token" \
- -d '{"flow_token":null,"input_flow_data":{"flow_context":{"start_location":{"location":"splash_screen"}}}}' | jq -r .flow_token)
-
- umask 077
- exec > /var/secrets/nitter/guest-accounts.jsonl
- curl -s -XPOST 'https://api.twitter.com/1.1/onboarding/task.json' \
- -H 'Authorization: Bearer AAAAAAAAAAAAAAAAAAAAAFXzAwAAAAAAMHCxpeSDG1gLNLghVe8d74hl6k4%3DRUMF4xAQLsbeBhTSRrCiQpJtxoGWeyHrDb5te2jpGskWDFW82F' \
- -H 'Content-Type: application/json' \
- -H "User-Agent: TwitterAndroid/10.10.0" \
- -H "X-Guest-Token: $guest_token" \
- -d "{\"flow_token\":\"$flow_token\",\"subtask_inputs\":[{\"open_link\":{\"link\":\"next_link\"},\"subtask_id\":\"NextTaskOpenLink\"}]}" | jq -c -r '.subtasks[0]|if(.open_account) then {oauth_token: .open_account.oauth_token, oauth_token_secret: .open_account.oauth_token_secret} else empty end'
- '';
- };
-
services.nitter = {
enable = true;
- # Enable stack traces per https://github.com/zedeus/nitter/issues/541#issuecomment-1036031286
- package = pkgs.nitter.overrideAttrs (old: {
- nimFlags = old.nimFlags ++ [
- "--excessiveStackTrace:on"
- "--stackTrace:on"
- "--lineTrace:on"
- "--lineDir:on"
- ];
- });
+ # This must be populated manually as per
+ # https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment
+ # Alternatively it can use logged in account tokens with
+ # https://github.com/PrivacyDevel/nitter/blob/master/twitter_oauth.sh
guestAccounts = "/var/secrets/nitter/guest-accounts.jsonl";
server = {
port = 7873;