summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/config.exs43
-rw-r--r--config/dev.exs3
-rw-r--r--config/prod.exs7
-rw-r--r--config/releases.exs19
-rw-r--r--config/test.exs18
5 files changed, 76 insertions, 14 deletions
diff --git a/config/config.exs b/config/config.exs
index a3f33cfbb..0d3419102 100644
--- a/config/config.exs
+++ b/config/config.exs
@@ -99,6 +99,7 @@ config :pleroma, Pleroma.Uploaders.MDII,
config :pleroma, :emoji,
shortcode_globs: ["/emoji/custom/**/*.png"],
+ pack_extensions: [".png", ".gif"],
groups: [
# Put groups that have higher priority than defaults here. Example in `docs/config/custom_emoji.md`
Custom: ["/emoji/*.png", "/emoji/**/*.png"]
@@ -139,6 +140,7 @@ config :pleroma, Pleroma.Web.Endpoint,
instrumenters: [Pleroma.Web.Endpoint.Instrumenter],
url: [host: "localhost"],
http: [
+ ip: {127, 0, 0, 1},
dispatch: [
{:_,
[
@@ -167,7 +169,7 @@ config :logger, :console,
config :logger, :ex_syslogger,
level: :debug,
- ident: "Pleroma",
+ ident: "pleroma",
format: "$metadata[$level] $message",
metadata: [:request_id]
@@ -216,6 +218,7 @@ config :pleroma, :instance,
},
registrations_open: true,
federating: true,
+ federation_incoming_replies_max_depth: 100,
federation_reachability_timeout_days: 7,
federation_publisher_modules: [
Pleroma.Web.ActivityPub.Publisher,
@@ -244,9 +247,16 @@ config :pleroma, :instance,
safe_dm_mentions: false,
healthcheck: false,
remote_post_retention_days: 90,
- skip_thread_containment: false
-
-config :pleroma, :app_account_creation, enabled: true, max_requests: 25, interval: 1800
+ skip_thread_containment: true,
+ limit_to_local_content: :unauthenticated,
+ dynamic_configuration: false,
+ external_user_synchronization: [
+ enabled: false,
+ # every 2 hours
+ interval: 60 * 60 * 2,
+ max_retries: 3,
+ limit: 500
+ ]
config :pleroma, :markup,
# XXX - unfortunately, inline images must be enabled by default right now, because
@@ -329,7 +339,10 @@ config :pleroma, :mrf_keyword,
config :pleroma, :mrf_subchain, match_actor: %{}
-config :pleroma, :rich_media, enabled: true
+config :pleroma, :rich_media,
+ enabled: true,
+ ignore_hosts: [],
+ ignore_tld: ["local", "localdomain", "lan"]
config :pleroma, :media_proxy,
enabled: false,
@@ -353,7 +366,11 @@ config :pleroma, :gopher,
port: 9999
config :pleroma, Pleroma.Web.Metadata,
- providers: [Pleroma.Web.Metadata.Providers.RelMe],
+ providers: [
+ Pleroma.Web.Metadata.Providers.OpenGraph,
+ Pleroma.Web.Metadata.Providers.TwitterCard,
+ Pleroma.Web.Metadata.Providers.RelMe
+ ],
unfurl_nsfw: false
config :pleroma, :suggestions,
@@ -361,8 +378,8 @@ config :pleroma, :suggestions,
third_party_engine:
"http://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-suggestions-api.cgi?{{host}}+{{user}}",
timeout: 300_000,
- limit: 23,
- web: "https://vinayaka.distsn.org/?{{host}}+{{user}}"
+ limit: 40,
+ web: "https://vinayaka.distsn.org"
config :pleroma, :http_security,
enabled: true,
@@ -442,6 +459,8 @@ config :auto_linker,
opts: [
scheme: true,
extra: true,
+ # TODO: Set to :no_scheme when it works properly
+ validate_tld: true,
class: false,
strip_prefix: false,
new_window: false,
@@ -482,7 +501,7 @@ config :ueberauth,
config :pleroma, :auth, oauth_consumer_strategies: oauth_consumer_strategies
-config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Sendmail
+config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Sendmail, enabled: false
config :prometheus, Pleroma.Web.Endpoint.MetricsExporter, path: "/api/pleroma/app_metrics"
@@ -499,9 +518,15 @@ config :pleroma, :oauth2,
config :pleroma, :database, rum_enabled: false
+config :pleroma, :env, Mix.env()
+
config :http_signatures,
adapter: Pleroma.Signature
+config :pleroma, :rate_limit,
+ search: [{1000, 10}, {1000, 30}],
+ app_account_creation: {1_800_000, 25}
+
# Import environment specific config. This must remain at the bottom
# of this file so it overrides the configuration defined above.
import_config "#{Mix.env()}.exs"
diff --git a/config/dev.exs b/config/dev.exs
index 0432adce7..7e1e3b4be 100644
--- a/config/dev.exs
+++ b/config/dev.exs
@@ -59,3 +59,6 @@ else
"!!! RUNNING IN LOCALHOST DEV MODE! !!!\nFEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs"
)
end
+
+if File.exists?("./config/dev.exported_from_db.secret.exs"),
+ do: import_config("dev.exported_from_db.secret.exs")
diff --git a/config/prod.exs b/config/prod.exs
index d0cfd1ac2..9c205cbd2 100644
--- a/config/prod.exs
+++ b/config/prod.exs
@@ -17,8 +17,10 @@ config :pleroma, Pleroma.Web.Endpoint,
http: [port: 4000],
protocol: "http"
+config :phoenix, serve_endpoints: true
+
# Do not print debug messages in production
-config :logger, level: :info
+config :logger, level: :warn
# ## SSL Support
#
@@ -61,3 +63,6 @@ config :logger, level: :info
# Finally import the config/prod.secret.exs
# which should be versioned separately.
import_config "prod.secret.exs"
+
+if File.exists?("./config/prod.exported_from_db.secret.exs"),
+ do: import_config("prod.exported_from_db.secret.exs")
diff --git a/config/releases.exs b/config/releases.exs
new file mode 100644
index 000000000..98c5ceccd
--- /dev/null
+++ b/config/releases.exs
@@ -0,0 +1,19 @@
+import Config
+
+config :pleroma, :instance, static_dir: "/var/lib/pleroma/static"
+config :pleroma, Pleroma.Uploaders.Local, uploads: "/var/lib/pleroma/uploads"
+
+config_path = System.get_env("PLEROMA_CONFIG_PATH") || "/etc/pleroma/config.exs"
+
+if File.exists?(config_path) do
+ import_config config_path
+else
+ warning = [
+ IO.ANSI.red(),
+ IO.ANSI.bright(),
+ "!!! #{config_path} not found! Please ensure it exists and that PLEROMA_CONFIG_PATH is unset or points to an existing file",
+ IO.ANSI.reset()
+ ]
+
+ IO.puts(warning)
+end
diff --git a/config/test.exs b/config/test.exs
index 41cddb9bd..19d7cca5f 100644
--- a/config/test.exs
+++ b/config/test.exs
@@ -17,15 +17,19 @@ config :pleroma, Pleroma.Captcha,
# Print only warnings and errors during test
config :logger, level: :warn
+config :pleroma, :auth, oauth_consumer_strategies: []
+
config :pleroma, Pleroma.Upload, filters: [], link_name: false
config :pleroma, Pleroma.Uploaders.Local, uploads: "test/uploads"
-config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Test
+config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Test, enabled: true
config :pleroma, :instance,
email: "admin@example.com",
- notify_email: "noreply@example.com"
+ notify_email: "noreply@example.com",
+ skip_thread_containment: false,
+ federating: false
# Configure your database
config :pleroma, Pleroma.Repo,
@@ -40,7 +44,11 @@ config :pleroma, Pleroma.Repo,
config :pbkdf2_elixir, rounds: 1
config :tesla, adapter: Tesla.Mock
-config :pleroma, :rich_media, enabled: false
+
+config :pleroma, :rich_media,
+ enabled: false,
+ ignore_hosts: [],
+ ignore_tld: ["local", "localdomain", "lan"]
config :web_push_encryption, :vapid_details,
subject: "mailto:administrator@example.com",
@@ -57,7 +65,7 @@ config :pleroma, Pleroma.ScheduledActivity,
total_user_limit: 3,
enabled: false
-config :pleroma, :app_account_creation, max_requests: 5
+config :pleroma, :rate_limit, app_account_creation: {10_000, 5}
config :pleroma, :http_security, report_uri: "https://endpoint.com"
@@ -67,6 +75,8 @@ rum_enabled = System.get_env("RUM_ENABLED") == "true"
config :pleroma, :database, rum_enabled: rum_enabled
IO.puts("RUM enabled: #{rum_enabled}")
+config :pleroma, Pleroma.ReverseProxy.Client, Pleroma.ReverseProxy.ClientMock
+
try do
import_config "test.secret.exs"
rescue