prosody 13.0.6

This commit is contained in:
2026-08-02 19:35:07 +02:00
parent 3861f209d4
commit 8fa78be70a
12 changed files with 93 additions and 91 deletions
+8 -2
View File
@@ -1,3 +1,5 @@
local getenv = Lua.os.getenv
plugin_paths = { "/usr/local/lib/prosody/custom-modules/" };
-- table of enabled modules
@@ -19,6 +21,7 @@ modules_enabled = {
"carbons"; -- Share and sync conversations (XEP-0280)
"csi_simple"; -- Buffer unimportant traffic for simple optimisation for clients using state indication
"limits"; -- Enable bandwidth limiting for XMPP connections
"bookmarks"; -- Converts between old and new ways to store chat room bookmarks
-- Nice to have
"version"; -- Replies to server version requests
@@ -35,10 +38,11 @@ modules_enabled = {
-- HTTP modules
"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
"websocket"; -- Enable mod_websocket
--"http_files"; -- Serve static files from a directory over HTTP
-- Other specific functionality
"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
--"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
--"groups"; -- Shared roster support
"announce"; -- Send announcement to all online users
--"welcome"; -- Welcome users who register accounts
@@ -46,7 +50,9 @@ modules_enabled = {
--"motd"; -- Send a message to users when they log in
--"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
"lastactivity";
"server_contact_info"; -- This module lets you advertise various contact addresses for your XMPP service via XEP-0157.
"server_info"; -- This module lets you advertise various contact addresses for your XMPP service via XEP-0158.
"cloud_notify";
};
-- modules_enabled = mods_enabled;
+9 -7
View File
@@ -1,12 +1,14 @@
local getenv = Lua.os.getenv
default_storage = "sql"
sql = {
driver = os.getenv("DB_DRIVER") or "SQLite3";
database = os.getenv("DB_DATABASE") or "prosody.sqlite";
host = os.getenv("DB_HOST");
port = os.getenv("DB_PORT");
username = os.getenv("DB_USERNAME");
password = os.getenv("DB_PASSWORD");
driver = getenv("DB_DRIVER") or "SQLite3";
database = getenv("DB_DATABASE") or "prosody.sqlite";
host = getenv("DB_HOST");
port = getenv("DB_PORT");
username = getenv("DB_USERNAME");
password = getenv("DB_PASSWORD");
}
-- make 0.10-distributed mod_mam use sql store
@@ -30,4 +32,4 @@ archive_expires_after = "1y"
--};
--}
http_max_content_size = os.getenv("HTTP_MAX_CONTENT_SIZE") or 1024 * 1024 * 10 -- Default is 10MB
http_max_content_size = getenv("HTTP_MAX_CONTENT_SIZE") or 1024 * 1024 * 10 -- Default is 10MB
+5 -4
View File
@@ -1,9 +1,10 @@
local stringy = require "stringy"
local getenv = Lua.os.getenv
local stringy = Lua.require "stringy"
e2e_policy_chat = os.getenv("E2E_POLICY_CHAT") or "required"
e2e_policy_muc = os.getenv("E2E_POLICY_MUC") or "required"
e2e_policy_chat = getenv("E2E_POLICY_CHAT") or "required"
e2e_policy_muc = getenv("E2E_POLICY_MUC") or "required"
local whitelist = os.getenv("E2E_POLICY_WHITELIST") or ""
local whitelist = getenv("E2E_POLICY_WHITELIST") or ""
e2e_policy_whitelist = stringy.split(whitelist, ", ")
e2e_policy_message_optional_chat = "For security reasons, OMEMO, OTR or PGP encryption is STRONGLY recommended for conversations on this server."
-29
View File
@@ -1,29 +0,0 @@
local stringy = require "stringy"
local function _split(s, sep)
if not s then return nil; end
sep = sep or ",";
local parts = {};
for part in s:gmatch("[^"..sep.."]+") do
parts[#parts+1] = part;
end
return parts;
end
local domain = os.getenv("DOMAIN")
local abuse = os.getenv("SERVER_CONTACT_INFO_ABUSE") or "xmpp:abuse@" .. domain
local admin = os.getenv("SERVER_CONTACT_INFO_ADMIN") or "xmpp:admin@" .. domain
local feedback = os.getenv("SERVER_CONTACT_INFO_FEEDBACK") or "xmpp:feedback@" .. domain
local sales = os.getenv("SERVER_CONTACT_INFO_SALES") or "xmpp:sales@" .. domain
local security = os.getenv("SERVER_CONTACT_INFO_SECURITY") or "xmpp:security@" .. domain
local support = os.getenv("SERVER_CONTACT_INFO_SUPPORT") or "xmpp:support@" .. domain
contact_info = {
abuse = _split(abuse, ", ");
admin = _split(admin, ", ");
feedback = _split(feedback, ", ");
sales = _split(sales, ", ");
security = _split(security, ", ");
support = _split(support, ", ");
}
welcome_message = "Kaixo $username, ongi etorri $host IM zerbitzura! Mesedez irakurri itzazu ondorengo <a href='https://lainoa.eus/terms/tos.html'>Erabilpen baldintzak</a>."
+21
View File
@@ -0,0 +1,21 @@
local getenv = Lua.os.getenv
local stringy = Lua.require "stringy"
local domain = getenv("DOMAIN")
local abuse = getenv("SERVER_CONTACT_INFO_ABUSE") or "xmpp:abuse@" .. domain
local admin = getenv("SERVER_CONTACT_INFO_ADMIN") or "xmpp:admin@" .. domain
local feedback = getenv("SERVER_CONTACT_INFO_FEEDBACK") or "xmpp:feedback@" .. domain
local sales = getenv("SERVER_CONTACT_INFO_SALES") or "xmpp:sales@" .. domain
local security = getenv("SERVER_CONTACT_INFO_SECURITY") or "xmpp:security@" .. domain
local support = getenv("SERVER_CONTACT_INFO_SUPPORT") or "xmpp:support@" .. domain
contact_info = {
abuse = stringy.split(abuse, ", ");
admin = stringy.split(admin, ", ");
feedback = stringy.split(feedback, ", ");
sales = stringy.split(sales, ", ");
security = stringy.split(security, ", ");
support = stringy.split(support, ", ");
}
welcome_message = "Kaixo $username, ongi etorri $host IM zerbitzura! Mesedez irakurri itzazu ondorengo <a href='https://lainoa.eus/terms/tos.html'>Erabilpen baldintzak</a>."
+10 -8
View File
@@ -1,8 +1,10 @@
local domain = os.getenv("DOMAIN")
local domain_http_upload = os.getenv("DOMAIN_HTTP_UPLOAD") or "upload." .. domain
local domain_muc = os.getenv("DOMAIN_MUC") or "conference." .. domain
local domain_proxy = os.getenv("DOMAIN_PROXY") or "proxy." .. domain
local domain_pubsub = os.getenv("DOMAIN_PUBSUB") or "pubsub." .. domain
local getenv = Lua.os.getenv
local domain = getenv("DOMAIN")
local domain_http_upload = getenv("DOMAIN_HTTP_UPLOAD") or "upload." .. domain
local domain_muc = getenv("DOMAIN_MUC") or "conference." .. domain
local domain_proxy = getenv("DOMAIN_PROXY") or "proxy." .. domain
local domain_pubsub = getenv("DOMAIN_PUBSUB") or "pubsub." .. domain
-- XEP-0368: SRV records for XMPP over TLS
-- https://compliance.conversations.im/test/xep0368/
c2s_direct_tls_ssl = {
@@ -23,9 +25,9 @@ VirtualHost (domain)
-- Set up a http file upload
Component (domain_http_upload) "http_file_share"
http_file_share_expires_after = 60 * 60 * 24 * 7 -- a week in seconds
local size_limit = os.getenv("HTTP_FILE_SHARE_SIZE_LIMIT") or 10 * 1024 * 1024 -- Default is 10MB
local size_limit = getenv("HTTP_FILE_SHARE_SIZE_LIMIT") or 10 * 1024 * 1024 -- Default is 10MB
http_file_share_size_limit = size_limit
http_file_share_daily_quota = os.getenv("HTTP_FILE_SHARE_DAILY_QUOTA") or 10 * size_limit -- Default is 10x the size limit
http_file_share_daily_quota = getenv("HTTP_FILE_SHARE_DAILY_QUOTA") or 10 * size_limit -- Default is 10x the size limit
Component (domain_muc) "muc"
name = "Prosody Chatrooms"
@@ -33,7 +35,7 @@ Component (domain_muc) "muc"
max_history_messages = 20
modules_enabled = {
"muc_mam",
"vcard_muc"
--"vcard_muc"
}
-- Set up a SOCKS5 bytestream proxy for server-proxied file transfers