aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/services/nitter/0001-HACK-allow-non-guest-account.patch26
-rw-r--r--modules/services/nitter/default.nix39
2 files changed, 65 insertions, 0 deletions
diff --git a/modules/services/nitter/0001-HACK-allow-non-guest-account.patch b/modules/services/nitter/0001-HACK-allow-non-guest-account.patch
new file mode 100644
index 0000000..855accb
--- /dev/null
+++ b/modules/services/nitter/0001-HACK-allow-non-guest-account.patch
@@ -0,0 +1,26 @@
+From 197074221a4f6ea58362d8b2523dc4b11705c7b4 Mon Sep 17 00:00:00 2001
+From: sefidel <contact@sefidel.net>
+Date: Fri, 2 Feb 2024 23:32:13 +0900
+Subject: [PATCH] HACK: allow non-guest account
+
+Signed-off-by: sefidel <contact@sefidel.net>
+---
+ src/auth.nim | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/auth.nim b/src/auth.nim
+index b288c50..7acb7c3 100644
+--- a/src/auth.nim
++++ b/src/auth.nim
+@@ -202,7 +202,7 @@ proc initAccountPool*(cfg: Config; path: string) =
+ quit 1
+
+ let accountsPrePurge = accountPool.len
+- accountPool.keepItIf(not it.hasExpired)
++ # accountPool.keepItIf(not it.hasExpired)
+
+ log "Successfully added ", accountPool.len, " valid accounts."
+ if accountsPrePurge > accountPool.len:
+--
+2.43.0
+
diff --git a/modules/services/nitter/default.nix b/modules/services/nitter/default.nix
new file mode 100644
index 0000000..40e8be8
--- /dev/null
+++ b/modules/services/nitter/default.nix
@@ -0,0 +1,39 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+ cfg = config.modules.services.nitter;
+in
+{
+ options.modules.services.nitter = {
+ enable = mkEnableOption "nitter instance";
+
+ title = mkOption { type = types.str; default = "Nitter"; description = "Title of the nitter instance"; };
+
+ domain = mkOption { type = types.str; };
+ realHost = mkOption { type = types.str; default = "nitter.${cfg.domain}"; };
+ secrets = {
+ nitter-guest-accounts = mkOption { type = types.path; description = "path to the JSONL file containing guest accounts"; };
+ };
+ };
+
+ config = mkIf cfg.enable {
+ services.nitter = {
+ enable = true;
+
+ package = pkgs.nitter.overrideAttrs {
+ patches = [
+ ./0001-HACK-allow-non-guest-account.patch
+ ];
+ };
+
+ server = {
+ title = cfg.title;
+ address = "127.0.0.1";
+ port = 4002;
+ hostname = cfg.realHost;
+ };
+ guestAccounts = cfg.secrets.nitter-guest-accounts;
+ };
+ };
+}