Remove most finmoji mentions where appropriate
[akkoma] / config / config.exs
index 28867ed4c8e86405d8cf2f03064f56d0f263fb42..5ea4cb899599286c159611469544c737051bc0a4 100644 (file)
@@ -1,3 +1,41 @@
+#                                 .i;;;;i.
+#                               iYcviii;vXY:
+#                             .YXi       .i1c.
+#                            .YC.     .    in7.
+#                           .vc.   ......   ;1c.
+#                           i7,   ..        .;1;
+#                          i7,   .. ...      .Y1i
+#                         ,7v     .6MMM@;     .YX,
+#                        .7;.   ..IMMMMMM1     :t7.
+#                       .;Y.     ;$MMMMMM9.     :tc.
+#                       vY.   .. .nMMM@MMU.      ;1v.
+#                      i7i   ...  .#MM@M@C. .....:71i
+#                     it:   ....   $MMM@9;.,i;;;i,;tti
+#                    :t7.  .....   0MMMWv.,iii:::,,;St.
+#                   .nC.   .....   IMMMQ..,::::::,.,czX.
+#                  .ct:   ....... .ZMMMI..,:::::::,,:76Y.
+#                  c2:   ......,i..Y$M@t..:::::::,,..inZY
+#                 vov   ......:ii..c$MBc..,,,,,,,,,,..iI9i
+#                i9Y   ......iii:..7@MA,..,,,,,,,,,....;AA:
+#               iIS.  ......:ii::..;@MI....,............;Ez.
+#              .I9.  ......:i::::...8M1..................C0z.
+#             .z9;  ......:i::::,.. .i:...................zWX.
+#             vbv  ......,i::::,,.      ................. :AQY
+#            c6Y.  .,...,::::,,..:t0@@QY. ................ :8bi
+#           :6S. ..,,...,:::,,,..EMMMMMMI. ............... .;bZ,
+#          :6o,  .,,,,..:::,,,..i#MMMMMM#v.................  YW2.
+#         .n8i ..,,,,,,,::,,,,.. tMMMMM@C:.................. .1Wn
+#         7Uc. .:::,,,,,::,,,,..   i1t;,..................... .UEi
+#         7C...::::::::::::,,,,..        ....................  vSi.
+#         ;1;...,,::::::,.........       ..................    Yz:
+#          v97,.........                                     .voC.
+#           izAotX7777777777777777777777777777777777777777Y7n92:
+#             .;CoIIIIIUAA666666699999ZZZZZZZZZZZZZZZZZZZZ6ov.
+#
+#                          !!! ATTENTION !!!
+# DO NOT EDIT THIS FILE! THIS FILE CONTAINS THE DEFAULT VALUES FOR THE CON-
+# FIGURATION! EDIT YOUR SECRET FILE (either prod.secret.exs, dev.secret.exs).
+#
 # This file is responsible for configuring your application
 # and its dependencies with the aid of the Mix.Config module.
 #
@@ -8,7 +46,9 @@ use Mix.Config
 # General application configuration
 config :pleroma, ecto_repos: [Pleroma.Repo]
 
-config :pleroma, Pleroma.Repo, types: Pleroma.PostgresTypes
+config :pleroma, Pleroma.Repo,
+  types: Pleroma.PostgresTypes,
+  telemetry_event: [Pleroma.Repo.Instrumenter]
 
 config :pleroma, Pleroma.Captcha,
   enabled: false,
@@ -34,7 +74,7 @@ config :pleroma, Pleroma.Captcha.Kocaptcha, endpoint: "https://captcha.kotobank.
 # Upload configuration
 config :pleroma, Pleroma.Upload,
   uploader: Pleroma.Uploaders.Local,
-  filters: [],
+  filters: [Pleroma.Upload.Filter.Dedupe],
   link_name: true,
   proxy_remote: false,
   proxy_opts: [
@@ -56,7 +96,13 @@ config :pleroma, Pleroma.Uploaders.MDII,
   cgi: "https://mdii.sakura.ne.jp/mdii-post.cgi",
   files: "https://mdii.sakura.ne.jp"
 
-config :pleroma, :emoji, shortcode_globs: ["/emoji/custom/**/*.png"]
+config :pleroma, :emoji,
+  shortcode_globs: ["/emoji/custom/**/*.png"],
+  groups: [
+    # Put groups that have higher priority than defaults here. Example in `docs/config/custom_emoji.md`
+    Custom: ["/emoji/*.png", "/emoji/**/*.png"]
+  ],
+  default_manifest: "https://git.pleroma.social/vaartis/emoji-index/raw/master/index.json"
 
 config :pleroma, :uri_schemes,
   valid_schemes: [
@@ -89,6 +135,7 @@ websocket_config = [
 
 # Configures the endpoint
 config :pleroma, Pleroma.Web.Endpoint,
+  instrumenters: [Pleroma.Web.Endpoint.Instrumenter],
   url: [host: "localhost"],
   http: [
     dispatch: [
@@ -107,7 +154,10 @@ config :pleroma, Pleroma.Web.Endpoint,
   signing_salt: "CqaoopA2",
   render_errors: [view: Pleroma.Web.ErrorView, accepts: ~w(json)],
   pubsub: [name: Pleroma.PubSub, adapter: Phoenix.PubSub.PG2],
-  secure_cookie_flag: true
+  secure_cookie_flag: true,
+  extra_cookie_attrs: [
+    "SameSite=Lax"
+  ]
 
 # Configures Elixir's Logger
 config :logger, :console,
@@ -120,6 +170,11 @@ config :logger, :ex_syslogger,
   format: "$metadata[$level] $message",
   metadata: [:request_id]
 
+config :quack,
+  level: :warn,
+  meta: [:all],
+  webhook_url: "https://hooks.slack.com/services/YOUR-KEY-HERE"
+
 config :mime, :types, %{
   "application/xml" => ["xml"],
   "application/xrd+xml" => ["xrd+xml"],
@@ -146,6 +201,7 @@ config :pleroma, :http,
 config :pleroma, :instance,
   name: "Pleroma",
   email: "example@example.com",
+  notify_email: "noreply@example.com",
   description: "A Pleroma instance, an alternative fediverse server",
   limit: 5_000,
   remote_limit: 100_000,
@@ -167,14 +223,14 @@ config :pleroma, :instance,
     "text/html",
     "text/markdown"
   ],
-  finmoji_enabled: true,
   mrf_transparency: true,
   autofollowed_nicknames: [],
   max_pinned_statuses: 1,
   no_attachment_links: false,
   welcome_user_nickname: nil,
   welcome_message: nil,
-  max_report_comment_size: 1000
+  max_report_comment_size: 1000,
+  safe_dm_mentions: false
 
 config :pleroma, :markup,
   # XXX - unfortunately, inline images must be enabled by default right now, because
@@ -273,8 +329,6 @@ config :pleroma, :media_proxy,
 
 config :pleroma, :chat, enabled: true
 
-config :ecto, json_library: Jason
-
 config :phoenix, :format_encoders, json: Jason
 
 config :pleroma, :gopher,
@@ -282,7 +336,9 @@ config :pleroma, :gopher,
   ip: {0, 0, 0, 0},
   port: 9999
 
-config :pleroma, Pleroma.Web.Metadata, providers: [], unfurl_nsfw: false
+config :pleroma, Pleroma.Web.Metadata,
+  providers: [Pleroma.Web.Metadata.Providers.RelMe],
+  unfurl_nsfw: false
 
 config :pleroma, :suggestions,
   enabled: false,
@@ -351,10 +407,13 @@ config :pleroma, Pleroma.Web.Federator.RetryQueue,
   initial_timeout: 30,
   max_retries: 5
 
-config :pleroma, Pleroma.Jobs,
-  federator_incoming: [max_jobs: 50],
-  federator_outgoing: [max_jobs: 50],
-  mailer: [max_jobs: 10]
+config :pleroma_job_queue, :queues,
+  federator_incoming: 50,
+  federator_outgoing: 50,
+  web_push: 50,
+  mailer: 10,
+  transmogrifier: 20,
+  scheduled_activities: 10
 
 config :pleroma, :fetch_initial_posts,
   enabled: false,
@@ -370,20 +429,41 @@ config :auto_linker,
     rel: false
   ]
 
-config :pleroma, :auth, oauth_consumer_enabled: false
+config :pleroma, :ldap,
+  enabled: System.get_env("LDAP_ENABLED") == "true",
+  host: System.get_env("LDAP_HOST") || "localhost",
+  port: String.to_integer(System.get_env("LDAP_PORT") || "389"),
+  ssl: System.get_env("LDAP_SSL") == "true",
+  sslopts: [],
+  tls: System.get_env("LDAP_TLS") == "true",
+  tlsopts: [],
+  base: System.get_env("LDAP_BASE") || "dc=example,dc=com",
+  uid: System.get_env("LDAP_UID") || "cn"
+
+oauth_consumer_strategies = String.split(System.get_env("OAUTH_CONSUMER_STRATEGIES") || "")
+
+ueberauth_providers =
+  for strategy <- oauth_consumer_strategies do
+    strategy_module_name = "Elixir.Ueberauth.Strategy.#{String.capitalize(strategy)}"
+    strategy_module = String.to_atom(strategy_module_name)
+    {String.to_atom(strategy), {strategy_module, [callback_params: ["state"]]}}
+  end
 
 config :ueberauth,
        Ueberauth,
        base_path: "/oauth",
-       providers: [
-         twitter:
-           {Ueberauth.Strategy.Twitter,
-            [callback_params: ~w[client_id redirect_uri scope scopes]]}
-       ]
-
-config :ueberauth, Ueberauth.Strategy.Twitter.OAuth,
-  consumer_key: System.get_env("TWITTER_CONSUMER_KEY"),
-  consumer_secret: System.get_env("TWITTER_CONSUMER_SECRET")
+       providers: ueberauth_providers
+
+config :pleroma, :auth, oauth_consumer_strategies: oauth_consumer_strategies
+
+config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Sendmail
+
+config :prometheus, Pleroma.Web.Endpoint.MetricsExporter, path: "/api/pleroma/app_metrics"
+
+config :pleroma, Pleroma.ScheduledActivity,
+  daily_user_limit: 25,
+  total_user_limit: 300,
+  enabled: true
 
 # Import environment specific config. This must remain at the bottom
 # of this file so it overrides the configuration defined above.