2023-10-16 05:34:07 +02:00
|
|
|
[database]
|
|
|
|
|
host = "localhost"
|
|
|
|
|
port = 48654
|
|
|
|
|
username = "lysand"
|
|
|
|
|
password = "password123"
|
|
|
|
|
database = "lysand"
|
|
|
|
|
|
|
|
|
|
[http]
|
|
|
|
|
base_url = "https://lysand.social"
|
|
|
|
|
bind = "http://localhost"
|
|
|
|
|
bind_port = "8080"
|
|
|
|
|
|
|
|
|
|
# Bans IPv4 or IPv6 IPs (wildcards, networks and ranges are supported)
|
|
|
|
|
banned_ips = []
|
|
|
|
|
|
2023-10-16 08:04:03 +02:00
|
|
|
[smtp]
|
|
|
|
|
# SMTP server to use for sending emails
|
|
|
|
|
server = "smtp.example.com"
|
|
|
|
|
port = 465
|
|
|
|
|
username = "test@example.com"
|
|
|
|
|
password = "password123"
|
|
|
|
|
tls = true
|
|
|
|
|
|
|
|
|
|
[email]
|
|
|
|
|
# Sends an email to moderators when a report is received
|
|
|
|
|
# NOT IMPLEMENTED
|
|
|
|
|
send_on_report = false
|
|
|
|
|
# Sends an email to moderators when a user is suspended
|
|
|
|
|
# NOT IMPLEMENTED
|
|
|
|
|
send_on_suspend = false
|
|
|
|
|
# Sends an email to moderators when a user is unsuspended
|
|
|
|
|
# NOT IMPLEMENTED
|
|
|
|
|
send_on_unsuspend = false
|
|
|
|
|
|
2023-10-16 05:34:07 +02:00
|
|
|
[validation]
|
|
|
|
|
# Self explanatory
|
|
|
|
|
max_displayname_size = 50
|
|
|
|
|
max_bio_size = 160
|
|
|
|
|
max_note_size = 5000
|
|
|
|
|
max_avatar_size = 5_000_000
|
|
|
|
|
max_header_size = 5_000_000
|
2023-10-16 08:04:03 +02:00
|
|
|
max_media_size = 40_000_000 # MEDIA NOT IMPLEMENTED
|
|
|
|
|
max_media_attachments = 4 # MEDIA NOT IMPLEMENTED
|
|
|
|
|
max_media_description_size = 1000 # MEDIA NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
max_username_size = 30
|
|
|
|
|
# An array of strings, defaults are from Akkoma
|
|
|
|
|
username_blacklist = [ ".well-known", "~", "about", "activities" , "api",
|
|
|
|
|
"auth", "dev", "inbox", "internal", "main", "media", "nodeinfo", "notice",
|
|
|
|
|
"oauth", "objects", "proxy", "push", "registration", "relay", "settings",
|
|
|
|
|
"status", "tag", "users", "web", "search", "mfa" ]
|
|
|
|
|
# Whether to blacklist known temporary email providers
|
|
|
|
|
blacklist_tempmail = false
|
|
|
|
|
# Additional email providers to blacklist
|
|
|
|
|
email_blacklist = []
|
|
|
|
|
# Valid URL schemes, otherwise the URL is parsed as text
|
|
|
|
|
url_scheme_whitelist = [ "http", "https", "ftp", "dat", "dweb", "gopher", "hyper",
|
|
|
|
|
"ipfs", "ipns", "irc", "xmpp", "ircs", "magnet", "mailto", "mumble", "ssb",
|
2023-10-16 08:04:03 +02:00
|
|
|
"gemini" ] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
allowed_mime_types = [ "image/jpeg", "image/png", "image/gif", "image/heic", "image/heif",
|
|
|
|
|
"image/webp", "image/avif", "video/webm", "video/mp4", "video/quicktime", "video/ogg",
|
|
|
|
|
"audio/wave", "audio/wav", "audio/x-wav", "audio/x-pn-wave", "audio/vnd.wave",
|
|
|
|
|
"audio/ogg", "audio/vorbis", "audio/mpeg", "audio/mp3", "audio/webm", "audio/flac",
|
2023-10-16 08:04:03 +02:00
|
|
|
"audio/aac", "audio/m4a", "audio/x-m4a", "audio/mp4", "audio/3gpp", "video/x-ms-asf" ] # MEDIA NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
|
|
|
|
|
[defaults]
|
|
|
|
|
# Default visibility for new notes
|
|
|
|
|
visibility = "public"
|
|
|
|
|
# Default language for new notes
|
|
|
|
|
language = "en"
|
|
|
|
|
# Default avatar, must be a valid URL or ""
|
|
|
|
|
avatar = ""
|
|
|
|
|
# Default header, must be a valid URL or ""
|
|
|
|
|
header = ""
|
|
|
|
|
|
|
|
|
|
[activitypub]
|
|
|
|
|
# Use ActivityPub Tombstones instead of deleting objects
|
|
|
|
|
use_tombstones = true
|
|
|
|
|
# Fetch all members of collections (followers, following, etc) when receiving them
|
|
|
|
|
# WARNING: This can be a lot of data, and is not recommended
|
2023-10-16 08:04:03 +02:00
|
|
|
fetch_all_collection_members = false # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
|
|
|
|
|
# The following values must be instance domain names without "https" or glob patterns
|
2023-10-16 08:04:03 +02:00
|
|
|
# Rejects all activities from these instances (fediblocking)
|
2023-10-16 05:34:07 +02:00
|
|
|
reject_activities = []
|
|
|
|
|
# Force posts from this instance to be followers only
|
2023-10-16 08:04:03 +02:00
|
|
|
force_followers_only = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
# Discard all reports from these instances
|
2023-10-16 08:04:03 +02:00
|
|
|
discard_reports = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
# Discard all deletes from these instances
|
|
|
|
|
discard_deletes = []
|
2023-10-16 08:04:03 +02:00
|
|
|
# Discard all updates (edits) from these instances
|
|
|
|
|
discard_updates = []
|
2023-10-16 05:34:07 +02:00
|
|
|
# Discard all banners from these instances
|
2023-10-16 08:04:03 +02:00
|
|
|
discard_banners = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
# Discard all avatars from these instances
|
2023-10-16 08:04:03 +02:00
|
|
|
discard_avatars = [] # NOT IMPLEMENTED
|
|
|
|
|
# Discard all follow requests from these instances
|
|
|
|
|
discard_follows = []
|
2023-10-16 05:34:07 +02:00
|
|
|
# Force set these instances' media as sensitive
|
2023-10-16 08:04:03 +02:00
|
|
|
force_sensitive = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
# Remove theses instances' media
|
2023-10-16 08:04:03 +02:00
|
|
|
remove_media = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
|
2023-10-16 08:07:39 +02:00
|
|
|
# Whether to verify HTTP signatures for every request (warning: can slow down your server
|
|
|
|
|
# significantly depending on processing power)
|
|
|
|
|
authorized_fetch = false
|
|
|
|
|
|
2023-10-16 05:34:07 +02:00
|
|
|
|
|
|
|
|
[filters]
|
|
|
|
|
# Drop notes with these regex filters (only applies to new activities)
|
|
|
|
|
note_filters = [
|
|
|
|
|
# "(https?://)?(www\\.)?youtube\\.com/watch\\?v=[a-zA-Z0-9_-]+",
|
|
|
|
|
# "(https?://)?(www\\.)?youtu\\.be/[a-zA-Z0-9_-]+",
|
|
|
|
|
]
|
|
|
|
|
# Drop users with these regex filters (only applies to new activities)
|
|
|
|
|
username_filters = []
|
|
|
|
|
# Drop users with these regex filters (only applies to new activities)
|
|
|
|
|
displayname_filters = []
|
|
|
|
|
# Drop users with these regex filters (only applies to new activities)
|
|
|
|
|
bio_filters = []
|
2023-10-16 08:04:03 +02:00
|
|
|
emoji_filters = [] # NOT IMPLEMENTED
|
2023-10-16 05:34:07 +02:00
|
|
|
|
|
|
|
|
[logging]
|
|
|
|
|
# Log all requests (warning: this is a lot of data)
|
|
|
|
|
log_requests = true
|
|
|
|
|
# Log request and their contents (warning: this is a lot of data)
|
|
|
|
|
log_requests_verbose = false
|
|
|
|
|
|
|
|
|
|
# Log all filtered objects
|
|
|
|
|
log_filters = true
|
|
|
|
|
|
|
|
|
|
[ratelimits]
|
|
|
|
|
# Amount to multiply every route's duration by
|
|
|
|
|
duration_coeff = 1.0
|
|
|
|
|
# Amount to multiply every route's max by
|
|
|
|
|
max_coeff = 1.0
|
|
|
|
|
|
|
|
|
|
[custom_ratelimits]
|
|
|
|
|
# Add in any API route in this style here
|
|
|
|
|
"/api/v1/timelines/public" = { duration = 60, max = 200 }
|