New configs

This commit is contained in:
Zed 2020-06-01 02:26:04 +02:00
parent 12c8b2659c
commit e1fff6985b
3 changed files with 39 additions and 9 deletions

View file

@ -1,17 +1,31 @@
[Server] [Server]
address = "0.0.0.0" address = "0.0.0.0"
port = 8080 port = 8080
https = true # disable to enable cookies when not using https https = false # disable to enable cookies when not using https
staticDir = "./public" staticDir = "./public"
title = "nitter" title = "nitter"
hostname = "nitter.net" hostname = "nitter.net"
[Cache] [Cache]
directory = "./tmp" directory = "./tmp"
profileMinutes = 10 # how long to cache profiles listMinutes = 240 # how long to cache list info (not the tweets, so keep it high)
rssMinutes = 10 # how long to cache rss queries
redisHost = "localhost"
redisPort = 6379
redisConnections = 20 # connection pool size
redisMaxConnections = 30
# max, new connections are opened when none are available, but if the pool size
# goes above this, they're closed when released. don't worry about this unless
# you receive tons of requests per second
[Config] [Config]
hmacKey = "secretkey" # for signing video urls hmacKey = "secretkey" # random key for cryptographic signing of video urls
tokenCount = 10
# minimum amount of usable tokens. tokens are used to authorize API requests,
# but they expire after ~1 hour, and have a limit of 187 requests.
# the limit gets reset every 15 minutes, and the pool is filled up so there's
# always at least $tokenCount usable tokens. again, only increase this if
# you receive major bursts all the time
# Change default preferences here, see src/prefs_impl.nim for a complete list # Change default preferences here, see src/prefs_impl.nim for a complete list
[Preferences] [Preferences]

View file

@ -16,14 +16,21 @@ proc getConfig*(path: string): (Config, parseCfg.Config) =
address: cfg.get("Server", "address", "0.0.0.0"), address: cfg.get("Server", "address", "0.0.0.0"),
port: cfg.get("Server", "port", 8080), port: cfg.get("Server", "port", 8080),
useHttps: cfg.get("Server", "https", true), useHttps: cfg.get("Server", "https", true),
staticDir: cfg.get("Server", "staticDir", "./public"),
title: cfg.get("Server", "title", "Nitter"), title: cfg.get("Server", "title", "Nitter"),
hostname: cfg.get("Server", "hostname", "nitter.net"), hostname: cfg.get("Server", "hostname", "nitter.net"),
staticDir: cfg.get("Server", "staticDir", "./public"),
cacheDir: cfg.get("Cache", "directory", "/tmp/nitter"), cacheDir: cfg.get("Cache", "directory", "/tmp/nitter"),
profileCacheTime: cfg.get("Cache", "profileMinutes", 10), listCacheTime: cfg.get("Cache", "listMinutes", 120),
rssCacheTime: cfg.get("Cache", "rssMinutes", 10),
hmacKey: cfg.get("Config", "hmacKey", "secretkey") redisHost: cfg.get("Cache", "redisHost", "localhost"),
redisPort: cfg.get("Cache", "redisPort", 6379),
redisConns: cfg.get("Cache", "redisConnections", 20),
redisMaxConns: cfg.get("Cache", "redisMaxConnections", 30),
hmacKey: cfg.get("Config", "hmacKey", "secretkey"),
minTokens: cfg.get("Config", "tokenCount", 10),
) )
return (conf, cfg) return (conf, cfg)

View file

@ -187,12 +187,21 @@ type
address*: string address*: string
port*: int port*: int
useHttps*: bool useHttps*: bool
staticDir*: string
title*: string title*: string
hostname*: string hostname*: string
cacheDir*: string staticDir*: string
profileCacheTime*: int
hmacKey*: string hmacKey*: string
minTokens*: int
cacheDir*: string
rssCacheTime*: int
listCacheTime*: int
redisHost*: string
redisPort*: int
redisConns*: int
redisMaxConns*: int
proc contains*(thread: Chain; tweet: Tweet): bool = proc contains*(thread: Chain; tweet: Tweet): bool =
thread.content.anyIt(it.id == tweet.id) thread.content.anyIt(it.id == tweet.id)