pleroma/templates/config.exs.j2

202 lines
5.3 KiB
Django/Jinja

import Config
config :pleroma, Pleroma.Web.Endpoint,
url: [host: "{{ pleroma_link_host }}", scheme: "{{ pleroma_link_scheme }}", port: {{ pleroma_link_port}}],
http: [port: {{ pleroma_port }}, ip: {0, 0, 0, 0}],
secret_key_base: "{{ pleroma_secret_key }}",
secure_cookie_flag: true
config :pleroma, :http_security,
enabled: {{ pleroma_https }},
sts: true,
referrer_policy: "same-origin"
config :pleroma, :instance,
name: "{{ pleroma_instance_name }}",
description: "{{ pleroma_desc }}",
email: "{{ pleroma_admin_email }}",
limit: {{ pleroma_char_limit }},
registrations_open: {{ pleroma_signup_open }},
invites_enabled: {{ pleroma_invites_enabled }},
static_dir: "{{ pleroma_data_dir }}/static/",
allow_relay: {{ pleroma_allow_relay }},
extended_nickname_format: {{ pleroma_nickname_format }},
remote_post_retention_days: "{{ pleroma_remote_post_retention }}"
config :pleroma, Pleroma.Upload,
uploader: Pleroma.Uploaders.Local,
filters: [Pleroma.Upload.Filter.Dedupe]
config :pleroma, Pleroma.Uploaders.Local,
uploads: "{{ pleroma_data_dir }}/uploads/"
config :pleroma, :media_proxy,
enabled: true,
redirect_on_failure: true
config :pleroma, Pleroma.Repo,
adapter: Ecto.Adapters.Postgres,
username: "{{ pleroma_db_user }}",
password: "{{ pleroma_db_passwd }}",
database: "{{ pleroma_db }}",
hostname: "{{ pleroma_db_host }}",
pool_size: 10,
timeout: 60000
config :pleroma, Pleroma.Captcha,
enabled: {{ pleroma_captcha }},
seconds_valid: 300,
method: Pleroma.Captcha.Native
config :logger,
backends: [{ExSyslogger, :ex_syslogger}]
config :logger, :ex_syslogger,
level: {{ pleroma_loglevel }}
config :pleroma, configurable_from_database: {{ pleroma_conf_from_db }}
config :pleroma, Pleroma.Upload, filters: [Pleroma.Upload.Filter.Exiftool, Pleroma.Upload.Filter.AnonymizeFilename, Pleroma.Upload.Filter.Dedupe]
{% if pleroma_smtp == 'true' %}
config :pleroma, Pleroma.Emails.Mailer,
enabled: true,
adapter: Swoosh.Adapters.SMTP,
relay: "{{ pleroma_smtp_host }}",
username: "{{ pleroma_smtp_username }}",
password: "{{ pleroma_smtp_password }}",
port: {{ pleroma_smtp_port }},
ssl: true,
auth: :always
{% endif %}
config :pleroma, Pleroma.Web.Plugs.RemoteIp,
{% if pleroma_remoteip == 'true' %}
enabled: {{ pleroma_remoteip }},
proxies: {{ pleroma_proxies }}
{% else %}
enabled: {{ pleroma_remoteip }}
{% endif %}
config :pleroma, :rate_limit,
authentication: {60_000, 15},
search: [{1000, 10}, {1000, 30}]
{% if pleroma_ldap == 'true' %}
config :pleroma, Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.LDAPAuthenticator
config :pleroma, :ldap,
enabled: true,
host: "{{ pleroma_ldap_host }}",
port: {{ pleroma_ldap_port }},
ssl: "{{ pleroma_ldap_ssl }}",
{% if pleroma_ldap_sslotps is defined %}
sslopts: "{{ pleroma_ldap_sslopts }}",
{% endif %}
tls: "{{ pleroma_ldap_tls }}",
{% if pleroma_ldap_tlsotps is defined %}
sslopts: "{{ pleroma_ldap_tlsopts }}",
{% endif %}
base: "{{ pleroma_ldap_base }}",
uid: "{{ pleroma_ldap_uid }}"
{% endif %}
config :pleroma, :instances_favicons, enabled: {{ pleroma_instance_favicons }}
config :pleroma, :frontends,
{% for item in pleroma_frontends %}
{{ item.conf }}: %{
"name" => "{{ item.name }}",
"ref" => "{{ item.ref }}"
}{% if not loop.last %},
{% endif %}
{% endfor %}
{% if pleroma_mrf_simple == 'true' %}
config :pleroma, :mrf,
policies: [Pleroma.Web.ActivityPub.MRF.SimplePolicy]
config :pleroma, :mrf_simple,
{% if pleroma_mrf_policies is defined %}
{% for item in pleroma_mrf_policies %}
{{ item.policy }}: [
{% for x in item.servers %}
{"{{ x.host }}", "{{ x.reason }}"}{% if not loop.last %},
{% endif %}
{% endfor %}
]{% if not loop.last %},
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% for item in pleroma_frontends %}
{% if item.name == "mangane" %}
config :pleroma, :frontend_configurations,
soapbox_fe: %{
verifiedIcon: "",
authenticatedProfile: {{ mangane_authenticatedProfile }},
linkFooterMessage: "", # this adds a message in the irght column once logged
homeDescription: "{{ mangane_homeDescription }}",
appleAppId: nil,
authProvider: "",
customCss: [],
gdprUrl: "",
customRegUrl: "",
cryptoDonatePanel: %{
limit: 1
},
singleUserModeProfile: "",
extensions: %{},
verifiedCanEditName: false,
quotePosts: true,
singleUserMode: {{ mangane_singleUserMode }},
brandColor: "{{ mangane_brandColor }}",
links: %{},
ads: [],
customRegProvider: "",
banner: "",
defaultSettings: %{},
aboutPages: %{},
navlinks: %{
homeFooter: [
{% for item in mangane_navlinks %}
%{
title: "{{ item.title }}",
url: "{{ item.url }}"
}{% if not loop.last %},
{% endif %}
{% endfor %}
]
},
promoPanel: %{
items: []
},
greentext: false,
allowedEmoji: [
"👍",
"❤️",
"😆",
"😮",
"😢",
"😩",
"👍",
"❤️",
"😆",
"😮",
"😢",
"😩"
],
accentColor: "{{ mangane_accentColor }}",
colors: %{},
logo: "/static/logo.svg",
{% set current_year = now().year %} # Allows to set the current year in copyright!
copyright: "🕶 {{ current_year|string }}. {{ mangane_copyright }}",
logoDarkMode: nil,
cryptoAddresses: [],
displayFqn: true,
mobilePages: %{},
gdpr: false
}
{% endif %}
{% endfor %}