Files

60 lines
2.1 KiB
Bash

HOST=0.0.0.0
PORT=22
# Playback settings
# Playthroughs before the session is closed (0, unlimited).
MAX_LOOP=5
# Whether to keep looping the same frame set or pick a random one after each
# playthrough. Options: loop | random
PLAYBACK_MODE=random
# Let viewers switch frame sets with arrow keys.
ALLOW_USER_CONTROL=true
# Minimum ms between arrow-key switches
SWITCH_DEBOUNCE_MS=500
# Pause in ms after the fake login before playback starts.
LOGIN_DELAY=3000
# ASCII rendering (applied live)
# CHARSET: detailed | standard | simple | blocks, or a custom ramp string.
CHARSET=blocks
# Pixels darker than this (0-100) render as the darkest ramp character.
BRIGHTNESS_THRESHOLD=40
# Invert the brightness ramp (for light terminal backgrounds).
INVERT=false
# Always render grayscale, even for clients that support color.
FORCE_GRAYSCALE=false
# Max rendered width/height in characters.
MAX_DIMENSION=512
# Max rendered area (columns x rows); larger terminals are scaled down.
MAX_TERMINAL_CELLS=256000
# Memory budget in MB for the rendered-frame cache (0 disables caching).
RENDER_CACHE_MB=256
# Compress cached frames (flate). Cuts cache RAM ~2x but decompresses on every
# cache hit, so CPU rises with concurrent sessions. Off = zero-copy reads.
RENDER_CACHE_COMPRESS=false
# Go soft memory limit; set below your container limit to avoid OOM kills.
GOMEMLIMIT=1GiB
# Docker Compose container memory limit. Leave headroom for mapped frame files.
MEMORY_LIMIT=2g
# Connection limits. New connections over a limit are dropped immediately.
# Max simultaneous connections from a single client IP.
MAX_CONNECTIONS=10
# Max simultaneous connections across all clients combined.
MAX_TOTAL_CONNECTIONS=1000
# Login attempts allowed per connection before it is disconnected.
# (Empty password counts as an attempt.)
MAX_AUTH_ATTEMPTS=3
# SSH handshake deadline in ms (0 to disable).
HANDSHAKE_TIMEOUT=30000
# Maximum session lifetime in ms (0 to disable).
SESSION_TIMEOUT=600000
# Log attempted usernames/passwords.
LOG_CREDENTIALS=true
# Minimum log level to emit: debug | info | warn | error
LOG_LEVEL=info