%{
key: :versions,
type: {:list, :atom},
- descriptions: "List of TLS version to use",
- suggestions: [:tlsv1, :"tlsv1.1", :"tlsv1.2"]
+ description: "List of TLS version to use",
+ suggestions: [:tlsv1, ":tlsv1.1", ":tlsv1.2"]
}
]
}
Swoosh.Adapters.AmazonSES,
Swoosh.Adapters.Dyn,
Swoosh.Adapters.SocketLabs,
- Swoosh.Adapters.Gmail
+ Swoosh.Adapters.Gmail,
+ Swoosh.Adapters.Local
]
},
%{
}
]
},
+ %{
+ group: :swoosh,
+ type: :group,
+ description: "`Swoosh.Adapters.Local` adapter specific settings",
+ children: [
+ %{
+ group: {:subgroup, Swoosh.Adapters.Local},
+ key: :serve_mailbox,
+ type: :boolean,
+ description: "Run the preview server together as part of your app"
+ },
+ %{
+ group: {:subgroup, Swoosh.Adapters.Local},
+ key: :preview_port,
+ type: :integer,
+ description: "The preview server port",
+ suggestions: [4001]
+ }
+ ]
+ },
%{
group: :pleroma,
key: :uri_schemes,
5_000
]
},
+ %{
+ key: :chat_limit,
+ type: :integer,
+ description: "Character limit of the instance chat messages",
+ suggestions: [
+ 5_000
+ ]
+ },
%{
key: :remote_limit,
type: :integer,
},
%{
key: :federation_incoming_replies_max_depth,
+ label: "Fed. incoming replies max depth",
type: :integer,
description:
"Max. depth of reply-to activities fetching on incoming federation, to prevent out-of-memory situations while" <>
},
%{
key: :federation_reachability_timeout_days,
+ label: "Fed. reachability timeout days",
type: :integer,
description:
"Timeout (in days) of each external federation target being unreachable prior to pausing federating to it",
type: {:list, :string},
description: "MIME-type list of formats allowed to be posted (transformed into HTML)",
suggestions: [
- [
- "text/plain",
- "text/html",
- "text/markdown",
- "text/bbcode"
- ]
+ "text/plain",
+ "text/html",
+ "text/markdown",
+ "text/bbcode"
]
},
%{
false
]
},
- %{
- key: :dynamic_configuration,
- type: :boolean,
- description:
- "Allow transferring configuration to DB with the subsequent customization from Admin api. Defaults to `false`"
- },
%{
key: :max_account_fields,
type: :integer,
%{
key: :versions,
type: {:list, :atom},
- descriptions: "List of TLS version to use",
- suggestions: [:tlsv1, :"tlsv1.1", :"tlsv1.2"]
+ description: "List of TLS version to use",
+ suggestions: [:tlsv1, ":tlsv1.1", ":tlsv1.2"]
}
]
}
%{
key: :private_key,
type: :string,
- description: "VAPID private keyn",
+ description: "VAPID private key",
suggestions: ["Private key"]
}
]
key: :method,
type: :module,
description: "The method/service to use for captcha",
- suggestions: [Pleroma.Captcha.Kocaptcha]
+ suggestions: [Pleroma.Captcha.Kocaptcha, Pleroma.Captcha.Native]
},
%{
key: :seconds_valid,
type: {:keyword, :integer},
description: "Max retry attempts for failed jobs, per `Oban` queue",
suggestions: [
- [
- federator_incoming: 5,
- federator_outgoing: 5
- ]
+ federator_incoming: 5,
+ federator_outgoing: 5
]
}
]
suggestions: [
Pleroma.Web.Metadata.Providers.OpenGraph,
Pleroma.Web.Metadata.Providers.TwitterCard,
- Pleroma.Web.Metadata.Providers.RelMe
+ Pleroma.Web.Metadata.Providers.RelMe,
+ Pleroma.Web.Metadata.Providers.Feed
]
},
%{
"Emojis are ordered in groups (tags). This is an array of key-value pairs where the key is the groupname" <>
" and the value the location or array of locations. * can be used as a wildcard",
suggestions: [
- # Put groups that have higher priority than defaults here. Example in `docs/config/custom_emoji.md`
Custom: ["/emoji/*.png", "/emoji/**/*.png"]
]
},
},
%{
key: :shared_pack_cache_seconds_per_file,
+ label: "Shared pack cache s/file",
type: :integer,
descpiption:
"When an emoji pack is shared, the archive is created and cached in memory" <>
}
]
},
- %{
- group: :pleroma,
- key: Pleroma.Uploaders.MDII,
- description:
- "Uploader for https://github.com/hakaba-hitoyo/minimal-digital-image-infrastructure",
- type: :group,
- children: [
- %{
- key: :cgi,
- type: :string,
- suggestions: ["https://mdii.sakura.ne.jp/mdii-post.cgi"]
- },
- %{
- key: :files,
- type: :string,
- suggestions: ["https://mdii.sakura.ne.jp"]
- }
- ]
- },
%{
group: :pleroma,
key: :http,
key: :send_user_agent,
type: :boolean
},
+ %{
+ key: :user_agent,
+ type: [:string, :atom],
+ description:
+ "What user agent to use. Must be a string or an atom `:default`. Default value is `:default`",
+ suggestions: ["Pleroma", :default]
+ },
%{
key: :adapter,
type: :keyword,
%{
key: :versions,
type: {:list, :atom},
- descriptions: "List of TLS version to use",
- suggestions: [:tlsv1, :"tlsv1.1", :"tlsv1.2"]
+ description: "List of TLS version to use",
+ suggestions: [:tlsv1, ":tlsv1.1", ":tlsv1.2"]
}
]
}
suggestions: [30_000]
}
]
+ },
+ %{
+ group: :pleroma,
+ key: :static_fe,
+ type: :group,
+ description:
+ "Render profiles and posts using server-generated HTML that is viewable without using JavaScript.",
+ children: [
+ %{
+ key: :enabled,
+ type: :boolean,
+ description: "Enables the rendering of static HTML. Defaults to `false`."
+ }
+ ]
+ },
+ %{
+ group: :pleroma,
+ key: :feed,
+ type: :group,
+ description: "Configure feed rendering.",
+ children: [
+ %{
+ key: :post_title,
+ type: :map,
+ description: "Configure title rendering.",
+ children: [
+ %{
+ key: :max_length,
+ type: :integer,
+ description: "Maximum number of characters before truncating title.",
+ suggestions: [100]
+ },
+ %{
+ key: :omission,
+ type: :string,
+ description: "Replacement which will be used after truncating string.",
+ suggestions: ["..."]
+ }
+ ]
+ }
+ ]
+ },
+ %{
+ group: :pleroma,
+ key: :mrf_object_age,
+ type: :group,
+ description: "Rejects or delists posts based on their age when received.",
+ children: [
+ %{
+ key: :threshold,
+ type: :integer,
+ description: "Required age (in seconds) of a post before actions are taken.",
+ suggestions: [172_800]
+ },
+ %{
+ key: :actions,
+ type: {:list, :atom},
+ description:
+ "A list of actions to apply to the post. `:delist` removes the post from public timelines; " <>
+ "`:strip_followers` removes followers from the ActivityPub recipient list, ensuring they won't be delivered to home timelines; " <>
+ "`:reject` rejects the message entirely",
+ suggestions: [:delist, :strip_followers, :reject]
+ }
+ ]
+ },
+ %{
+ group: :pleroma,
+ key: :modules,
+ type: :group,
+ description: "Custom Runtime Modules.",
+ children: [
+ %{
+ key: :runtime_dir,
+ type: :string,
+ description: "A path to custom Elixir modules (such as MRF policies)."
+ }
+ ]
+ },
+ %{
+ group: :pleroma,
+ type: :group,
+ description: "Allow instance configuration from database.",
+ children: [
+ %{
+ key: :configurable_from_database,
+ type: :boolean,
+ description:
+ "Allow transferring configuration to DB with the subsequent customization from Admin api. Defaults to `false`"
+ }
+ ]
}
]