3 * @copyright Copyright (C) 2010-2024, the Friendica project
5 * @license GNU AGPL version 3 or any later version
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Affero General Public License as
9 * published by the Free Software Foundation, either version 3 of the
10 * License, or (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU Affero General Public License for more details.
17 * You should have received a copy of the GNU Affero General Public License
18 * along with this program. If not, see <https://www.gnu.org/licenses/>.
20 * This file declares the default values for the admin settings of Friendica.
22 * These values will be overridden by the admin settings page.
24 * Please don't edit this file directly as its content may change in the upcoming versions.
31 // Plaintext description of this node, used in the /friendica module.
34 // register_policy (Constant)
35 // Your choices are OPEN, APPROVE, or CLOSED.
36 // Be certain to create your own personal account before setting CLOSED.
37 // APPROVE requires you set system.admin_email to the email address of an
38 // already registered person who can authorize and/or approve/deny the request.
39 'register_policy' => \Friendica\Module\Register::CLOSED,
41 // register_text (String)
42 // Will be displayed prominently on the registration page.
43 'register_text' => '',
46 // Displayed server name.
47 'sitename' => 'Friendica Social Network',
50 // account_abandon_days (Integer)
51 // Will not waste system resources polling external sites for abandoned accounts.
52 // Enter 0 for no time limit.
53 'account_abandon_days' => 0,
55 // adjust_poll_frequency (Boolean)
56 // Automatically detect and set the best feed poll frequency.
57 'adjust_poll_frequency' => false,
59 // allow_relay_channels (Boolean)
60 // Allow Users to set remote_self
61 'allow_relay_channels' => true,
63 // allowed_themes (Comma-separated list)
64 // Themes users can change to in their settings.
65 'allowed_themes' => 'frio,vier',
67 // archival_days (Integer)
68 // Number of days that we try to deliver content before we archive a contact.
69 'archival_days' => 32,
71 // banner (HTML string)
72 // HTML snippet of the top navigation banner. Not supported by frio.
73 'banner' => '<a href="https://friendi.ca"><img id="logo-img" width="32" height="32" src="images/friendica.svg" alt="logo" /></a><span id="logo-text"><a href="https://friendi.ca">Friendica</a></span>',
75 // blocked_tags (String)
76 // Comma separated list of hashtags that shouldn't be displayed in the trending tags
79 // cache_contact_avatar (Boolean)
80 // Cache versions of the contact avatars. Uses a lot of storage space
81 'cache_contact_avatar' => true,
83 // cron_interval (Integer)
84 // Minimal period in minutes between two calls of the "Cron" worker job.
87 // curl_timeout (Integer)
88 // Value is in seconds. Set to 0 for unlimited (not recommended).
92 // Remove old remote items, orphaned database records and old content from some other helper tables.
95 // dbclean-expire-days (Integer)
96 // When the database cleanup is enabled, this defines the days after which remote items will be deleted.
97 // Own items, and marked or filed items are always kept. 0 disables this behaviour.
98 'dbclean-expire-days' => 0,
100 // dbclean-expire-unclaimed (Integer)
101 // When the database cleanup is enabled, this defines the days after which unclaimed remote items
102 // (mostly content from the relay) will be deleted. Default value is 90 days. Defaults to the general
103 // lifespan value of remote items if set to 0.
104 'dbclean-expire-unclaimed' => 90,
106 // dbclean_expire_conversation (Integer)
107 // The conversation data is used for ActivityPub and OStatus, as well as for debug purposes.
108 // It should be safe to remove it after 14 days, default is 90 days.
109 'dbclean_expire_conversation' => 90,
111 // debugging (boolean)
112 // Enable/Disable Debugging (logging)
113 'debugging' => false,
115 // decoupled_receiver (Boolean)
116 // Decouple incoming AP posts by doing the processing in the background.
117 'decoupled_receiver' => false,
119 // default_timezone (String)
120 // Choose a default timezone. See https://secure.php.net/manual/en/timezones.php
121 // It only applies to timestamps for anonymous viewers.
122 'default_timezone' => 'UTC',
124 // directory (String)
125 // URL of the global directory.
126 'directory' => 'https://dir.friendica.social',
128 // explicit_content (Boolean)
129 // Set this to announce that your node is used mostly for explicit content that might not be suited for minors.
130 'explicit_content' => false,
132 // forbidden_nicknames (Comma-separated list)
133 // Prevents users from registering the specified nicknames on this node.
134 // Default value comprises classic role names from RFC 2142.
135 'forbidden_nicknames' => 'info, marketing, sales, support, abuse, noc, security, postmaster, hostmaster, usenet, news, webmaster, www, uucp, ftp, root, sysop',
137 // compute_circle_counts (Boolean)
138 // Compute contact circle level when counting unseen network posts.
139 'compute_circle_counts' => true,
141 // itemspage_network (Integer)
142 // default number of items per page in stream pages (network, community, profile/contact statuses, search)
143 'itemspage_network' => 40,
145 // itemspage_network_mobile (Integer)
146 // default number of items per page in stream pages (network, community, profile/contact statuses, search)
147 // on detected mobile devices
148 'itemspage_network_mobile' => 20,
150 // jpeg_quality (Integer)
151 // Sets the ImageMagick quality level for JPEG images. Values ranges from 50 (awful) to 100 (near perfect).
152 'jpeg_quality' => 100,
155 // System default language, including admin-created user default language.
156 // Two-letters ISO 639-1 code.
159 // local_search (Boolean)
160 // Blocks search for users who are not logged in to prevent crawlers from blocking your system.
161 'local_search' => false,
164 // The logfile for storing logs.
165 // Can be a full path or a relative path to the Friendica home directory
166 'logfile' => 'log/friendica.log',
169 // The loglevel for all logs.
170 // Has to be one of these values: emergency, alert, critical, error, warning, notice, info, debug
171 'loglevel' => 'notice',
173 // max_author_posts_community_page (Integer)
174 // The maximum number of posts on the local community page from a single author.
175 'max_author_posts_community_page' => 0,
177 // max_image_length (Integer)
178 // An alternate way of limiting picture upload sizes.
179 // Specify the maximum pixel length that pictures are allowed to be (for non-square pictures, it will apply to the longest side).
180 // Pictures longer than this length will be resized to be this length (on the longest side, the other side will be scaled appropriately).
181 // If you don't want to set a maximum length, set to -1.
182 'max_image_length' => -1,
184 // max_server_posts_community_page (Integer)
185 // The maximum number of posts on the global community page from a single server.
186 'max_server_posts_community_page' => 0,
188 // maximagesize (Integer)
189 // Maximum size in bytes of an uploaded photo.
190 'maximagesize' => 800000,
192 // maxloadavg (Integer)
193 // Maximum system load before delivery and poll processes are deferred.
196 // min_memory (Integer)
197 // Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated).
200 // min_poll_interval (Integer)
201 // minimal distance in minutes between two polls for a contact. Reasonable values are between 1 and 59.
202 'min_poll_interval' => 15,
204 // no_regfullname (Boolean)
205 // Allow users to register with a display name comporting fewer than two parts separated by spaces.
206 'no_regfullname' => true,
208 // no_oembed_rich_content (Boolean)
209 // If enabled, allow OEmbed for all URLs. Disabled by default.
210 'no_oembed_rich_content' => true,
212 // optimize_tables (Boolean)
213 // Periodically (once an hour) run an "optimize table" command for cache tables
214 'optimize_tables' => false,
216 // process_view (Boolean)
217 // Process the "View" activity that is used by Peertube.
218 'process_view' => false,
220 // register_notification (Boolean)
221 // Send a notification mail to the admin for each new registration.
222 'register_notification' => true,
224 // relay_deny_tags (String)
225 // Comma separated list of tags that are rejected.
226 'relay_deny_tags' => '',
228 // relay_deny_undetected_language (Boolean)
229 // Deny undetected languages
230 'relay_deny_undetected_language' => false,
232 // relay_languages (Integer)
233 // Number of languages that are used per post to check for acceptable posts.
234 'relay_languages' => 10,
236 // relay_language_quality (Float)
237 // Minimum value for the language detection quality for relay posts. The value must be between 0 and 1.
238 'relay_language_quality' => 0,
240 // proxify_content (Boolean)
241 // Use the proxy functionality for fetching external content
242 'proxify_content' => true,
244 // relay_directly (Boolean)
245 // Directly transmit content to relay subscribers without using a relay server
246 'relay_directly' => false,
248 // relay_scope (Relay::SCOPE_NONE, Relay::SCOPE_TAGS or Relay::SCOPE_ALL)
249 // Defines the scope of accepted posts from the relay servers
252 // relay_server_tags (String)
253 // Comma separated list of tags for the "tags" subscription.
254 'relay_server_tags' => '',
256 // relay_user_tags (Boolean)
257 // If enabled, the tags from the saved searches will used for the "tags" subscription in addition to the "relay_server_tags".
258 'relay_user_tags' => true,
261 // Custom temporary file directory
265 // System theme name.
268 // update_active_contacts (Boolean)
269 // When activated, only public contacts will be activated regularly that are used for example in items or tags.
270 'update_active_contacts' => false,
273 // The fully-qualified URL of this Friendica node.
274 // Used by the worker in a non-HTTP execution environment.
277 // poco_discovery (Boolean)
278 // If enabled, the system will check for the existance of other contacts and servers
279 'poco_discovery' => false,
281 // poco_requery_days (Integer)
282 // Number of days after which a server is requeried for their contacts and servers it knows of.
283 'poco_requery_days' => 30,
285 // worker_defer_limit (Integer)
286 // Per default the systems tries delivering for 15 times before dropping it.
287 'worker_defer_limit' => 15,
289 // worker_fetch_limit (Integer)
290 // Number of worker tasks that are fetched in a single query.
291 'worker_fetch_limit' => 1,
293 // worker_load_cooldown (Integer)
294 // Maximum load that causes a cooldown before each worker function call.
295 'worker_load_cooldown' => 0,
299 // engagement_hours (Integer)
300 // Maximum age of incoming posts for the engagement table, when the engagement post limit is 0 or hasn't been reached yet.
301 'engagement_hours' => 24,
303 // engagement_post_limit (Integer)
304 // NUmber of posts that are held in the engagement table
305 'engagement_post_limit' => 20000,
307 // interaction_score_days (Integer)
308 // Number of days that are used to calculate the interaction score.
309 'interaction_score_days' => 30,
311 // max_posts_per_author (Integer)
312 // Maixmum number of posts per page by author
313 'max_posts_per_author' => 2,
315 // sharer_interaction_days (Integer)
316 // Number of days of the last interaction that are used to define which sharers are used for the "sharers of sharers" channel.
317 'sharer_interaction_days' => 90,
320 // Used in the admin settings to lock certain features
324 // Storage backend configuration
327 // The name of the current used backend (default is Database)
328 'name' => 'Database',