3 * @copyright Copyright (C) 2010-2023, 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 // allowed_themes (Comma-separated list)
60 // Themes users can change to in their settings.
61 'allowed_themes' => 'frio,vier',
63 // archival_days (Integer)
64 // Number of days that we try to deliver content before we archive a contact.
65 'archival_days' => 32,
67 // banner (HTML string)
68 // HTML snippet of the top navigation banner. Not supported by frio.
69 '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>',
71 // blocked_tags (String)
72 // Comma separated list of hashtags that shouldn't be displayed in the trending tags
75 // cache_contact_avatar (Boolean)
76 // Cache versions of the contact avatars. Uses a lot of storage space
77 'cache_contact_avatar' => true,
79 // cron_interval (Integer)
80 // Minimal period in minutes between two calls of the "Cron" worker job.
83 // curl_timeout (Integer)
84 // Value is in seconds. Set to 0 for unlimited (not recommended).
88 // Remove old remote items, orphaned database records and old content from some other helper tables.
91 // dbclean-expire-days (Integer)
92 // When the database cleanup is enabled, this defines the days after which remote items will be deleted.
93 // Own items, and marked or filed items are always kept. 0 disables this behaviour.
94 'dbclean-expire-days' => 0,
96 // dbclean-expire-unclaimed (Integer)
97 // When the database cleanup is enabled, this defines the days after which unclaimed remote items
98 // (mostly content from the relay) will be deleted. Default value is 90 days. Defaults to the general
99 // lifespan value of remote items if set to 0.
100 'dbclean-expire-unclaimed' => 90,
102 // dbclean_expire_conversation (Integer)
103 // The conversation data is used for ActivityPub and OStatus, as well as for debug purposes.
104 // It should be safe to remove it after 14 days, default is 90 days.
105 'dbclean_expire_conversation' => 90,
107 // debugging (boolean)
108 // Enable/Disable Debugging (logging)
109 'debugging' => false,
111 // decoupled_receiver (Boolean)
112 // Decouple incoming AP posts by doing the processing in the background.
113 'decoupled_receiver' => false,
115 // default_timezone (String)
116 // Choose a default timezone. See https://secure.php.net/manual/en/timezones.php
117 // It only applies to timestamps for anonymous viewers.
118 'default_timezone' => 'UTC',
120 // directory (String)
121 // URL of the global directory.
122 'directory' => 'https://dir.friendica.social',
124 // explicit_content (Boolean)
125 // Set this to announce that your node is used mostly for explicit content that might not be suited for minors.
126 'explicit_content' => false,
128 // forbidden_nicknames (Comma-separated list)
129 // Prevents users from registering the specified nicknames on this node.
130 // Default value comprises classic role names from RFC 2142.
131 'forbidden_nicknames' => 'info, marketing, sales, support, abuse, noc, security, postmaster, hostmaster, usenet, news, webmaster, www, uucp, ftp, root, sysop',
133 // compute_circle_counts (Boolean)
134 // Compute contact circle level when counting unseen network posts.
135 'compute_circle_counts' => true,
137 // itemspage_network (Integer)
138 // default number of items per page in stream pages (network, community, profile/contact statuses, search)
139 'itemspage_network' => 40,
141 // itemspage_network_mobile (Integer)
142 // default number of items per page in stream pages (network, community, profile/contact statuses, search)
143 // on detected mobile devices
144 'itemspage_network_mobile' => 20,
146 // jpeg_quality (Integer)
147 // Sets the ImageMagick quality level for JPEG images. Values ranges from 50 (awful) to 100 (near perfect).
148 'jpeg_quality' => 100,
151 // System default language, including admin-created user default language.
152 // Two-letters ISO 639-1 code.
155 // local_search (Boolean)
156 // Blocks search for users who are not logged in to prevent crawlers from blocking your system.
157 'local_search' => false,
160 // The logfile for storing logs.
161 // Can be a full path or a relative path to the Friendica home directory
162 'logfile' => 'log/friendica.log',
165 // The loglevel for all logs.
166 // Has to be one of these values: emergency, alert, critical, error, warning, notice, info, debug
167 'loglevel' => 'notice',
169 // max_image_length (Integer)
170 // An alternate way of limiting picture upload sizes.
171 // Specify the maximum pixel length that pictures are allowed to be (for non-square pictures, it will apply to the longest side).
172 // Pictures longer than this length will be resized to be this length (on the longest side, the other side will be scaled appropriately).
173 // If you don't want to set a maximum length, set to -1.
174 'max_image_length' => -1,
176 // maximagesize (Integer)
177 // Maximum size in bytes of an uploaded photo.
178 'maximagesize' => 800000,
180 // maxloadavg (Integer)
181 // Maximum system load before delivery and poll processes are deferred.
184 // min_memory (Integer)
185 // Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated).
188 // min_poll_interval (Integer)
189 // minimal distance in minutes between two polls for a contact. Reasonable values are between 1 and 59.
190 'min_poll_interval' => 15,
192 // no_regfullname (Boolean)
193 // Allow users to register with a display name comporting fewer than two parts separated by spaces.
194 'no_regfullname' => true,
196 // no_oembed_rich_content (Boolean)
197 // If enabled, allow OEmbed for all URLs. Disabled by default.
198 'no_oembed_rich_content' => true,
200 // optimize_tables (Boolean)
201 // Periodically (once an hour) run an "optimize table" command for cache tables
202 'optimize_tables' => false,
204 // process_view (Boolean)
205 // Process the "View" activity that is used by Peertube.
206 'process_view' => false,
208 // register_notification (Boolean)
209 // Send a notification mail to the admin for each new registration.
210 'register_notification' => true,
212 // relay_deny_tags (String)
213 // Comma separated list of tags that are rejected.
214 'relay_deny_tags' => '',
216 // relay_deny_undetected_language (Boolean)
217 // Deny undetected languages
218 'relay_deny_undetected_language' => false,
220 // relay_languages (Integer)
221 // Number of languages that are used per post to check for acceptable posts.
222 'relay_languages' => 10,
224 // relay_language_quality (Float)
225 // Minimum value for the language detection quality for relay posts. The value must be between 0 and 1.
226 'relay_language_quality' => 0,
228 // proxify_content (Boolean)
229 // Use the proxy functionality for fetching external content
230 'proxify_content' => true,
232 // relay_directly (Boolean)
233 // Directly transmit content to relay subscribers without using a relay server
234 'relay_directly' => false,
236 // relay_scope (Relay::SCOPE_NONE, Relay::SCOPE_TAGS or Relay::SCOPE_ALL)
237 // Defines the scope of accepted posts from the relay servers
240 // relay_server_tags (String)
241 // Comma separated list of tags for the "tags" subscription.
242 'relay_server_tags' => '',
244 // relay_user_tags (Boolean)
245 // If enabled, the tags from the saved searches will used for the "tags" subscription in addition to the "relay_server_tags".
246 'relay_user_tags' => true,
249 // Custom temporary file directory
253 // System theme name.
256 // update_active_contacts (Boolean)
257 // When activated, only public contacts will be activated regularly that are used for example in items or tags.
258 'update_active_contacts' => false,
261 // The fully-qualified URL of this Friendica node.
262 // Used by the worker in a non-HTTP execution environment.
265 // poco_discovery (Boolean)
266 // If enabled, the system will check for the existance of other contacts and servers
267 'poco_discovery' => false,
269 // poco_requery_days (Integer)
270 // Number of days after which a server is requeried for their contacts and servers it knows of.
271 'poco_requery_days' => 30,
273 // worker_defer_limit (Integer)
274 // Per default the systems tries delivering for 15 times before dropping it.
275 'worker_defer_limit' => 15,
277 // worker_fetch_limit (Integer)
278 // Number of worker tasks that are fetched in a single query.
279 'worker_fetch_limit' => 1,
281 // worker_load_cooldown (Integer)
282 // Maximum load that causes a cooldown before each worker function call.
283 'worker_load_cooldown' => 0,
287 // engagement_hours (Integer)
288 // Maximum age of incoming posts for the engagement table, when the engagement post limit is 0 or hasn't been reached yet.
289 'engagement_hours' => 24,
291 // engagement_post_limit (Integer)
292 // NUmber of posts that are held in the engagement table
293 'engagement_post_limit' => 20000,
295 // interaction_score_days (Integer)
296 // Number of days that are used to calculate the interaction score.
297 'interaction_score_days' => 30,
299 // max_posts_per_author (Integer)
300 // Maixmum number of posts per page by author
301 'max_posts_per_author' => 2,
303 // sharer_interaction_days (Integer)
304 // Number of days of the last interaction that are used to define which sharers are used for the "sharers of sharers" channel.
305 'sharer_interaction_days' => 90,
308 // Used in the admin settings to lock certain features
312 // Storage backend configuration
315 // The name of the current used backend (default is Database)
316 'name' => 'Database',