X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=config%2Fdescription.exs;h=807c945e00ca990b3f44bdecf0e77b6f2f40f154;hb=d67b8a96c77c5c3a9b3fe2e5f3b344f19af16ce8;hp=7fac1e5611a2c6766371e4ef73baf6e8fecd3fd5;hpb=bb5d0eafa437c9d32cdd8ccdb92b2eabb8ccccf1;p=akkoma diff --git a/config/description.exs b/config/description.exs index 7fac1e561..807c945e0 100644 --- a/config/description.exs +++ b/config/description.exs @@ -28,7 +28,8 @@ config :pleroma, :config_description, [ %{ key: :filters, type: {:list, :module}, - description: "List of filter modules for uploads", + description: + "List of filter modules for uploads. Module names are shortened (removed leading `Pleroma.Upload.Filter.` part), but on adding custom module you need to use full name.", suggestions: Generator.list_modules_in_dir( "lib/pleroma/upload/filter", @@ -118,6 +119,11 @@ config :pleroma, :config_description, [ ] } ] + }, + %{ + key: :filename_display_max_length, + type: :integer, + description: "Set max length of a filename to display. 0 = no limit. Default: 30" } ] }, @@ -678,14 +684,6 @@ config :pleroma, :config_description, [ 7 ] }, - %{ - key: :federation_publisher_modules, - type: {:list, :module}, - description: "List of modules for federation publishing", - suggestions: [ - Pleroma.Web.ActivityPub.Publisher - ] - }, %{ key: :allow_relay, type: :boolean, @@ -694,7 +692,8 @@ config :pleroma, :config_description, [ %{ key: :rewrite_policy, type: [:module, {:list, :module}], - description: "A list of MRF policies enabled", + description: + "A list of enabled MRF policies. Module names are shortened (removed leading `Pleroma.Web.ActivityPub.MRF.` part), but on adding custom module you need to use full name.", suggestions: Generator.list_modules_in_dir( "lib/pleroma/web/activity_pub/mrf", @@ -712,7 +711,7 @@ config :pleroma, :config_description, [ key: :quarantined_instances, type: {:list, :string}, description: - "List of ActivityPub instances where private (DMs, followers-only) activities will not be send", + "List of ActivityPub instances where private (DMs, followers-only) activities will not be sent", suggestions: [ "quarantined.com", "*.quarantined.com" @@ -919,6 +918,69 @@ config :pleroma, :config_description, [ key: :external_user_synchronization, type: :boolean, description: "Enabling following/followers counters synchronization for external users" + }, + %{ + key: :multi_factor_authentication, + type: :keyword, + description: "Multi-factor authentication settings", + suggestions: [ + [ + totp: [digits: 6, period: 30], + backup_codes: [number: 5, length: 16] + ] + ], + children: [ + %{ + key: :totp, + type: :keyword, + description: "TOTP settings", + suggestions: [digits: 6, period: 30], + children: [ + %{ + key: :digits, + type: :integer, + suggestions: [6], + description: + "Determines the length of a one-time pass-code, in characters. Defaults to 6 characters." + }, + %{ + key: :period, + type: :integer, + suggestions: [30], + description: + "a period for which the TOTP code will be valid, in seconds. Defaults to 30 seconds." + } + ] + }, + %{ + key: :backup_codes, + type: :keyword, + description: "MFA backup codes settings", + suggestions: [number: 5, length: 16], + children: [ + %{ + key: :number, + type: :integer, + suggestions: [5], + description: "number of backup codes to generate." + }, + %{ + key: :length, + type: :integer, + suggestions: [16], + description: + "Determines the length of backup one-time pass-codes, in characters. Defaults to 16 characters." + } + ] + } + ] + }, + %{ + key: :instance_thumbnail, + type: :string, + description: + "The instance thumbnail image. It will appear in [Pleroma Instances](http://distsn.org/pleroma-instances.html)", + suggestions: ["/instance/thumbnail.jpeg"] } ] }, @@ -1046,38 +1108,41 @@ config :pleroma, :config_description, [ description: "Settings for Pleroma FE", suggestions: [ %{ - theme: "pleroma-dark", - logo: "/static/logo.png", - background: "/images/city.jpg", - redirectRootNoLogin: "/main/all", - redirectRootLogin: "/main/friends", - showInstanceSpecificPanel: true, - scopeOptionsEnabled: false, - formattingOptionsEnabled: false, + alwaysShowSubjectInput: true, + background: "/static/aurora_borealis.jpg", collapseMessageWithSubject: false, + disableChat: false, + greentext: false, + hideFilteredStatuses: false, + hideMutedPosts: false, hidePostStats: false, + hideSitename: false, hideUserStats: false, + loginMethod: "password", + logo: "/static/logo.png", + logoMargin: ".1em", + logoMask: true, + minimalScopesMode: false, + noAttachmentLinks: false, + nsfwCensorImage: "/static/img/nsfw.74818f9.png", + postContentType: "text/plain", + redirectRootLogin: "/main/friends", + redirectRootNoLogin: "/main/all", scopeCopy: true, + sidebarRight: false, + showFeaturesPanel: true, + showInstanceSpecificPanel: false, subjectLineBehavior: "email", - alwaysShowSubjectInput: true, - logoMask: false, - logoMargin: ".1em", - stickers: false, - enableEmojiPicker: false + theme: "pleroma-dark", + webPushNotifications: false } ], children: [ %{ - key: :theme, - type: :string, - description: "Which theme to use, they are defined in styles.json", - suggestions: ["pleroma-dark"] - }, - %{ - key: :logo, - type: :string, - description: "URL of the logo, defaults to Pleroma's logo", - suggestions: ["/static/logo.png"] + key: :alwaysShowSubjectInput, + label: "Always show subject input", + type: :boolean, + description: "When disabled, auto-hide the subject field if it's empty" }, %{ key: :background, @@ -1087,46 +1152,35 @@ config :pleroma, :config_description, [ suggestions: ["/images/city.jpg"] }, %{ - key: :redirectRootNoLogin, - label: "Redirect root no login", - type: :string, - description: - "Relative URL which indicates where to redirect when a user isn't logged in", - suggestions: ["/main/all"] - }, - %{ - key: :redirectRootLogin, - label: "Redirect root login", - type: :string, + key: :collapseMessageWithSubject, + label: "Collapse message with subject", + type: :boolean, description: - "Relative URL which indicates where to redirect when a user is logged in", - suggestions: ["/main/friends"] + "When a message has a subject (aka Content Warning), collapse it by default" }, %{ - key: :showInstanceSpecificPanel, - label: "Show instance specific panel", + key: :disableChat, + label: "PleromaFE Chat", type: :boolean, - description: "Whenether to show the instance's specific panel" + description: "Disables PleromaFE Chat component" }, %{ - key: :scopeOptionsEnabled, - label: "Scope options enabled", + key: :greentext, + label: "Greentext", type: :boolean, - description: "Enable setting a notice visibility and subject/CW when posting" + description: "Enables green text on lines prefixed with the > character." }, %{ - key: :formattingOptionsEnabled, - label: "Formatting options enabled", + key: :hideFilteredStatuses, + label: "Hide Filtered Statuses", type: :boolean, - description: - "Enable setting a formatting different than plain-text (ie. HTML, Markdown) when posting, relates to `:instance`, `allowed_post_formats`" + description: "Hides filtered statuses from timelines." }, %{ - key: :collapseMessageWithSubject, - label: "Collapse message with subject", + key: :hideMutedPosts, + label: "Hide Muted Posts", type: :boolean, - description: - "When a message has a subject (aka Content Warning), collapse it by default" + description: "Hides muted statuses from timelines." }, %{ key: :hidePostStats, @@ -1134,6 +1188,12 @@ config :pleroma, :config_description, [ type: :boolean, description: "Hide notices statistics (repeats, favorites, ...)" }, + %{ + key: :hideSitename, + label: "Hide Sitename", + type: :boolean, + description: "Hides instance name from PleromaFE banner." + }, %{ key: :hideUserStats, label: "Hide user stats", @@ -1142,26 +1202,19 @@ config :pleroma, :config_description, [ "Hide profile statistics (posts, posts per day, followers, followings, ...)" }, %{ - key: :scopeCopy, - label: "Scope copy", - type: :boolean, - description: "Copy the scope (private/unlisted/public) in replies to posts by default" - }, - %{ - key: :subjectLineBehavior, - label: "Subject line behavior", + key: :logo, type: :string, - description: "Allows changing the default behaviour of subject lines in replies. - `email`: copy and preprend re:, as in email, - `masto`: copy verbatim, as in Mastodon, - `noop`: don't copy the subject.", - suggestions: ["email", "masto", "noop"] + description: "URL of the logo, defaults to Pleroma's logo", + suggestions: ["/static/logo.png"] }, %{ - key: :alwaysShowSubjectInput, - label: "Always show subject input", - type: :boolean, - description: "When disabled, auto-hide the subject field if it's empty" + key: :logoMargin, + label: "Logo margin", + type: :string, + description: + "Allows you to adjust vertical margins between logo boundary and navbar borders. " <> + "The idea is that to have logo's image without any extra margins and instead adjust them to your need in layout.", + suggestions: [".1em"] }, %{ key: :logoMask, @@ -1172,24 +1225,84 @@ config :pleroma, :config_description, [ "If you want a colorful logo you must disable logoMask." }, %{ - key: :logoMargin, - label: "Logo margin", + key: :minimalScopesMode, + label: "Minimal scopes mode", + type: :boolean, + description: + "Limit scope selection to Direct, User default, and Scope of post replying to. " <> + "Also prevents replying to a DM with a public post from PleromaFE." + }, + %{ + key: :nsfwCensorImage, + label: "NSFW Censor Image", type: :string, description: - "Allows you to adjust vertical margins between logo boundary and navbar borders. " <> - "The idea is that to have logo's image without any extra margins and instead adjust them to your need in layout.", - suggestions: [".1em"] + "URL of the image to use for hiding NSFW media attachments in the timeline.", + suggestions: ["/static/img/nsfw.74818f9.png"] + }, + %{ + key: :postContentType, + label: "Post Content Type", + type: {:dropdown, :atom}, + description: "Default post formatting option.", + suggestions: ["text/plain", "text/html", "text/markdown", "text/bbcode"] }, %{ - key: :stickers, + key: :redirectRootNoLogin, + label: "Redirect root no login", + type: :string, + description: + "Relative URL which indicates where to redirect when a user isn't logged in", + suggestions: ["/main/all"] + }, + %{ + key: :redirectRootLogin, + label: "Redirect root login", + type: :string, + description: + "Relative URL which indicates where to redirect when a user is logged in", + suggestions: ["/main/friends"] + }, + %{ + key: :scopeCopy, + label: "Scope copy", type: :boolean, - description: "Enables stickers." + description: "Copy the scope (private/unlisted/public) in replies to posts by default" }, %{ - key: :enableEmojiPicker, - label: "Emoji picker", + key: :sidebarRight, + label: "Sidebar on Right", type: :boolean, - description: "Enables emoji picker." + description: "Change alignment of sidebar and panels to the right." + }, + %{ + key: :showFeaturesPanel, + label: "Show instance features panel", + type: :boolean, + description: + "Enables panel displaying functionality of the instance on the About page." + }, + %{ + key: :showInstanceSpecificPanel, + label: "Show instance specific panel", + type: :boolean, + description: "Whether to show the instance's custom panel" + }, + %{ + key: :subjectLineBehavior, + label: "Subject line behavior", + type: :string, + description: "Allows changing the default behaviour of subject lines in replies. + `email`: copy and preprend re:, as in email, + `masto`: copy verbatim, as in Mastodon, + `noop`: don't copy the subject.", + suggestions: ["email", "masto", "noop"] + }, + %{ + key: :theme, + type: :string, + description: "Which theme to use. Available themes are defined in styles.json", + suggestions: ["pleroma-dark"] } ] }, @@ -1245,6 +1358,12 @@ config :pleroma, :config_description, [ suggestions: [ :pleroma_fox_tan ] + }, + %{ + key: :default_user_avatar, + type: :string, + description: "URL of the default user avatar.", + suggestions: ["/images/avi.png"] } ] }, @@ -1799,12 +1918,6 @@ config :pleroma, :config_description, [ (see https://github.com/sorentwo/oban/issues/52). """, children: [ - %{ - key: :repo, - type: :module, - description: "Application's Ecto repo", - suggestions: [Pleroma.Repo] - }, %{ key: :verbose, type: {:dropdown, :atom}, @@ -1975,7 +2088,8 @@ config :pleroma, :config_description, [ %{ key: :parsers, type: {:list, :module}, - description: "List of Rich Media parsers.", + description: + "List of Rich Media parsers. Module names are shortened (removed leading `Pleroma.Web.RichMedia.Parsers.` part), but on adding custom module you need to use full name.", suggestions: [ Pleroma.Web.RichMedia.Parsers.MetaTagsParser, Pleroma.Web.RichMedia.Parsers.OEmbed, @@ -1987,7 +2101,8 @@ config :pleroma, :config_description, [ key: :ttl_setters, label: "TTL setters", type: {:list, :module}, - description: "List of rich media TTL setters.", + description: + "List of rich media TTL setters. Module names are shortened (removed leading `Pleroma.Web.RichMedia.Parser.` part), but on adding custom module you need to use full name.", suggestions: [ Pleroma.Web.RichMedia.Parser.TTL.AwsSignedUrl ] @@ -2247,6 +2362,7 @@ config :pleroma, :config_description, [ children: [ %{ key: :active, + label: "Enabled", type: :boolean, description: "Globally enable or disable digest emails" }, @@ -2273,20 +2389,6 @@ config :pleroma, :config_description, [ } ] }, - %{ - group: :pleroma, - key: :notifications, - type: :group, - description: "Notification settings", - children: [ - %{ - key: :enable_follow_request_notifications, - type: :boolean, - description: - "Enables notifications on new follow requests (causes issues with older PleromaFE versions)." - } - ] - }, %{ group: :pleroma, key: Pleroma.Emails.UserEmail, @@ -2590,18 +2692,6 @@ config :pleroma, :config_description, [ } ] }, - %{ - group: :http_signatures, - type: :group, - description: "HTTP Signatures settings", - children: [ - %{ - key: :adapter, - type: :module, - suggestions: [Pleroma.Signature] - } - ] - }, %{ group: :pleroma, key: :http, @@ -2674,6 +2764,8 @@ config :pleroma, :config_description, [ %{ key: :scrub_policy, type: {:list, :module}, + description: + "Module names are shortened (removed leading `Pleroma.HTML.` part), but on adding custom module you need to use full name.", suggestions: [Pleroma.HTML.Transform.MediaProxy, Pleroma.HTML.Scrubber.Default] } ] @@ -3208,5 +3300,19 @@ config :pleroma, :config_description, [ ] } ] + }, + %{ + group: :pleroma, + key: Pleroma.Web.ApiSpec.CastAndValidate, + type: :group, + children: [ + %{ + key: :strict, + type: :boolean, + description: + "Enables strict input validation (useful in development, not recommended in production)", + suggestions: [false] + } + ] } ]