update mastofe paths (#95)
[akkoma] / config / description.exs
index 9401bed5c506cb60990f3b091b9310d8deeab405..a4f115ce7a38732c0befcd84a8ca5dbe456dd772 100644 (file)
@@ -1689,6 +1689,13 @@ config :pleroma, :config_description, [
         type: :integer,
         description: "Following handshake timeout",
         suggestions: [500]
+      },
+      %{
+        key: :max_collection_objects,
+        type: :integer,
+        description:
+          "The maximum number of items to fetch from a remote collections. Setting this too low can lead to only getting partial collections, but too high and you can end up fetching far too many objects.",
+        suggestions: [50]
       }
     ]
   },
@@ -1972,6 +1979,21 @@ config :pleroma, :config_description, [
       }
     ]
   },
+  %{
+    group: :pleroma,
+    key: Pleroma.Web.Metadata.Providers.Theme,
+    type: :group,
+    description: "Specific provider to hand out themes to instances that scrape index.html",
+    children: [
+      %{
+        key: :theme_color,
+        type: :string,
+        description:
+          "The 'accent color' of the instance, used in places like misskey's instance ticker",
+        suggestions: ["#593196"]
+      }
+    ]
+  },
   %{
     group: :pleroma,
     key: :rich_media,
@@ -2136,104 +2158,6 @@ config :pleroma, :config_description, [
       }
     ]
   },
-  %{
-    group: :pleroma,
-    key: :ldap,
-    label: "LDAP",
-    type: :group,
-    description:
-      "Use LDAP for user authentication. When a user logs in to the Pleroma instance, the name and password" <>
-        " will be verified by trying to authenticate (bind) to a LDAP server." <>
-        " If a user exists in the LDAP directory but there is no account with the same name yet on the" <>
-        " Pleroma instance then a new Pleroma account will be created with the same name as the LDAP user name.",
-    children: [
-      %{
-        key: :enabled,
-        type: :boolean,
-        description: "Enables LDAP authentication"
-      },
-      %{
-        key: :host,
-        type: :string,
-        description: "LDAP server hostname",
-        suggestions: ["localhosts"]
-      },
-      %{
-        key: :port,
-        type: :integer,
-        description: "LDAP port, e.g. 389 or 636",
-        suggestions: [389, 636]
-      },
-      %{
-        key: :ssl,
-        label: "SSL",
-        type: :boolean,
-        description: "Enable to use SSL, usually implies the port 636"
-      },
-      %{
-        key: :sslopts,
-        label: "SSL options",
-        type: :keyword,
-        description: "Additional SSL options",
-        suggestions: [cacertfile: "path/to/file/with/PEM/cacerts", verify: :verify_peer],
-        children: [
-          %{
-            key: :cacertfile,
-            type: :string,
-            description: "Path to file with PEM encoded cacerts",
-            suggestions: ["path/to/file/with/PEM/cacerts"]
-          },
-          %{
-            key: :verify,
-            type: :atom,
-            description: "Type of cert verification",
-            suggestions: [:verify_peer]
-          }
-        ]
-      },
-      %{
-        key: :tls,
-        label: "TLS",
-        type: :boolean,
-        description: "Enable to use STARTTLS, usually implies the port 389"
-      },
-      %{
-        key: :tlsopts,
-        label: "TLS options",
-        type: :keyword,
-        description: "Additional TLS options",
-        suggestions: [cacertfile: "path/to/file/with/PEM/cacerts", verify: :verify_peer],
-        children: [
-          %{
-            key: :cacertfile,
-            type: :string,
-            description: "Path to file with PEM encoded cacerts",
-            suggestions: ["path/to/file/with/PEM/cacerts"]
-          },
-          %{
-            key: :verify,
-            type: :atom,
-            description: "Type of cert verification",
-            suggestions: [:verify_peer]
-          }
-        ]
-      },
-      %{
-        key: :base,
-        type: :string,
-        description: "LDAP base, e.g. \"dc=example,dc=com\"",
-        suggestions: ["dc=example,dc=com"]
-      },
-      %{
-        key: :uid,
-        label: "UID",
-        type: :string,
-        description:
-          "LDAP attribute name to authenticate the user, e.g. when \"cn\", the filter will be \"cn=username,base\"",
-        suggestions: ["cn"]
-      }
-    ]
-  },
   %{
     group: :pleroma,
     key: :auth,
@@ -2618,10 +2542,6 @@ config :pleroma, :config_description, [
         description: "Proxy URL",
         suggestions: ["localhost:9020", {:socks5, :localhost, 3090}]
       },
-      %{
-        key: :send_user_agent,
-        type: :boolean
-      },
       %{
         key: :user_agent,
         type: [:string, :atom],
@@ -2934,147 +2854,6 @@ config :pleroma, :config_description, [
       }
     ]
   },
-  %{
-    group: :pleroma,
-    key: :connections_pool,
-    type: :group,
-    description: "Advanced settings for `Gun` connections pool",
-    children: [
-      %{
-        key: :connection_acquisition_wait,
-        type: :integer,
-        description:
-          "Timeout to acquire a connection from pool. The total max time is this value multiplied by the number of retries. Default: 250ms.",
-        suggestions: [250]
-      },
-      %{
-        key: :connection_acquisition_retries,
-        type: :integer,
-        description:
-          "Number of attempts to acquire the connection from the pool if it is overloaded. Default: 5",
-        suggestions: [5]
-      },
-      %{
-        key: :max_connections,
-        type: :integer,
-        description: "Maximum number of connections in the pool. Default: 250 connections.",
-        suggestions: [250]
-      },
-      %{
-        key: :connect_timeout,
-        type: :integer,
-        description: "Timeout while `gun` will wait until connection is up. Default: 5000ms.",
-        suggestions: [5000]
-      },
-      %{
-        key: :reclaim_multiplier,
-        type: :integer,
-        description:
-          "Multiplier for the number of idle connection to be reclaimed if the pool is full. For example if the pool maxes out at 250 connections and this setting is set to 0.3, the pool will reclaim at most 75 idle connections if it's overloaded. Default: 0.1",
-        suggestions: [0.1]
-      }
-    ]
-  },
-  %{
-    group: :pleroma,
-    key: :pools,
-    type: :group,
-    description: "Advanced settings for `Gun` workers pools",
-    children:
-      Enum.map([:federation, :media, :upload, :default], fn pool_name ->
-        %{
-          key: pool_name,
-          type: :keyword,
-          description: "Settings for #{pool_name} pool.",
-          children: [
-            %{
-              key: :size,
-              type: :integer,
-              description: "Maximum number of concurrent requests in the pool.",
-              suggestions: [50]
-            },
-            %{
-              key: :max_waiting,
-              type: :integer,
-              description:
-                "Maximum number of requests waiting for other requests to finish. After this number is reached, the pool will start returning errrors when a new request is made",
-              suggestions: [10]
-            },
-            %{
-              key: :recv_timeout,
-              type: :integer,
-              description: "Timeout for the pool while gun will wait for response",
-              suggestions: [10_000]
-            }
-          ]
-        }
-      end)
-  },
-  %{
-    group: :pleroma,
-    key: :hackney_pools,
-    type: :group,
-    description: "Advanced settings for `Hackney` connections pools",
-    children: [
-      %{
-        key: :federation,
-        type: :keyword,
-        description: "Settings for federation pool.",
-        children: [
-          %{
-            key: :max_connections,
-            type: :integer,
-            description: "Number workers in the pool.",
-            suggestions: [50]
-          },
-          %{
-            key: :timeout,
-            type: :integer,
-            description: "Timeout while `hackney` will wait for response.",
-            suggestions: [150_000]
-          }
-        ]
-      },
-      %{
-        key: :media,
-        type: :keyword,
-        description: "Settings for media pool.",
-        children: [
-          %{
-            key: :max_connections,
-            type: :integer,
-            description: "Number workers in the pool.",
-            suggestions: [50]
-          },
-          %{
-            key: :timeout,
-            type: :integer,
-            description: "Timeout while `hackney` will wait for response.",
-            suggestions: [150_000]
-          }
-        ]
-      },
-      %{
-        key: :upload,
-        type: :keyword,
-        description: "Settings for upload pool.",
-        children: [
-          %{
-            key: :max_connections,
-            type: :integer,
-            description: "Number workers in the pool.",
-            suggestions: [25]
-          },
-          %{
-            key: :timeout,
-            type: :integer,
-            description: "Timeout while `hackney` will wait for response.",
-            suggestions: [300_000]
-          }
-        ]
-      }
-    ]
-  },
   %{
     group: :pleroma,
     key: :restrict_unauthenticated,
@@ -3212,6 +2991,27 @@ config :pleroma, :config_description, [
         description: "Admin frontend",
         children: installed_frontend_options
       },
+      %{
+        key: :mastodon,
+        type: :map,
+        description: "Mastodon frontend",
+        children: installed_frontend_options
+      },
+      %{
+        key: :swagger,
+        type: :map,
+        description: "Swagger API reference frontend",
+        children:
+          installed_frontend_options ++
+            [
+              %{
+                key: "enabled",
+                label: "Enabled",
+                type: :boolean,
+                description: "Whether to have this enabled at all"
+              }
+            ]
+      },
       %{
         key: :available,
         type: :map,