summaryrefslogtreecommitdiff
path: root/cmd/gotosocial/flag/usage.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/gotosocial/flag/usage.go')
-rw-r--r--cmd/gotosocial/flag/usage.go80
1 files changed, 80 insertions, 0 deletions
diff --git a/cmd/gotosocial/flag/usage.go b/cmd/gotosocial/flag/usage.go
new file mode 100644
index 000000000..aa57048c1
--- /dev/null
+++ b/cmd/gotosocial/flag/usage.go
@@ -0,0 +1,80 @@
+/*
+ GoToSocial
+ Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+package flag
+
+import "github.com/superseriousbusiness/gotosocial/internal/config"
+
+var usage = config.KeyNames{
+ LogLevel: "Log level to run at: [trace, debug, info, warn, fatal]",
+ ApplicationName: "Name of the application, used in various places internally",
+ ConfigPath: "Path to a file containing gotosocial configuration. Values set in this file will be overwritten by values set as env vars or arguments",
+ Host: "Hostname to use for the server (eg., example.org, gotosocial.whatever.com). DO NOT change this on a server that's already run!",
+ AccountDomain: "Domain to use in account names (eg., example.org, whatever.com). If not set, will default to the setting for host. DO NOT change this on a server that's already run!",
+ Protocol: "Protocol to use for the REST api of the server (only use http for debugging and tests!)",
+ BindAddress: "Bind address to use for the GoToSocial server (eg., 0.0.0.0, 172.138.0.9, [::], localhost). For ipv6, enclose the address in square brackets, eg [2001:db8::fed1]. Default binds to all interfaces.",
+ Port: "Port to use for GoToSocial. Change this to 443 if you're running the binary directly on the host machine.",
+ TrustedProxies: "Proxies to trust when parsing x-forwarded headers into real IPs.",
+ DbType: "Database type: eg., postgres",
+ DbAddress: "Database ipv4 address, hostname, or filename",
+ DbPort: "Database port",
+ DbUser: "Database username",
+ DbPassword: "Database password",
+ DbDatabase: "Database name",
+ DbTLSMode: "Database tls mode",
+ DbTLSCACert: "Path to CA cert for db tls connection",
+ WebTemplateBaseDir: "Basedir for html templating files for rendering pages and composing emails.",
+ WebAssetBaseDir: "Directory to serve static assets from, accessible at example.org/assets/",
+ AccountsRegistrationOpen: "Allow anyone to submit an account signup request. If false, server will be invite-only.",
+ AccountsApprovalRequired: "Do account signups require approval by an admin or moderator before user can log in? If false, new registrations will be automatically approved.",
+ AccountsReasonRequired: "Do new account signups require a reason to be submitted on registration?",
+ MediaImageMaxSize: "Max size of accepted images in bytes",
+ MediaVideoMaxSize: "Max size of accepted videos in bytes",
+ MediaDescriptionMinChars: "Min required chars for an image description",
+ MediaDescriptionMaxChars: "Max permitted chars for an image description",
+ StorageBackend: "Storage backend to use for media attachments",
+ StorageBasePath: "Full path to an already-created directory where gts should store/retrieve media files. Subfolders will be created within this dir.",
+ StorageServeProtocol: "Protocol to use for serving media attachments (use https if storage is local)",
+ StorageServeHost: "Hostname to serve media attachments from (use the same value as host if storage is local)",
+ StorageServeBasePath: "Path to append to protocol and hostname to create the base path from which media files will be served (default will mostly be fine)",
+ StatusesMaxChars: "Max permitted characters for posted statuses",
+ StatusesCWMaxChars: "Max permitted characters for content/spoiler warnings on statuses",
+ StatusesPollMaxOptions: "Max amount of options permitted on a poll",
+ StatusesPollOptionMaxChars: "Max amount of characters for a poll option",
+ StatusesMediaMaxFiles: "Maximum number of media files/attachments per status",
+ LetsEncryptEnabled: "Enable letsencrypt TLS certs for this server. If set to true, then cert dir also needs to be set (or take the default).",
+ LetsEncryptPort: "Port to listen on for letsencrypt certificate challenges. Must not be the same as the GtS webserver/API port.",
+ LetsEncryptCertDir: "Directory to store acquired letsencrypt certificates.",
+ LetsEncryptEmailAddress: "Email address to use when requesting letsencrypt certs. Will receive updates on cert expiry etc.",
+ OIDCEnabled: "Enabled OIDC authorization for this instance. If set to true, then the other OIDC flags must also be set.",
+ OIDCIdpName: "Name of the OIDC identity provider. Will be shown to the user when logging in.",
+ OIDCSkipVerification: "Skip verification of tokens returned by the OIDC provider. Should only be set to 'true' for testing purposes, never in a production environment!",
+ OIDCIssuer: "Address of the OIDC issuer. Should be the web address, including protocol, at which the issuer can be reached. Eg., 'https://example.org/auth'",
+ OIDCClientID: "ClientID of GoToSocial, as registered with the OIDC provider.",
+ OIDCClientSecret: "ClientSecret of GoToSocial, as registered with the OIDC provider.",
+ OIDCScopes: "OIDC scopes.",
+ SMTPHost: "Host of the smtp server. Eg., 'smtp.eu.mailgun.org'",
+ SMTPPort: "Port of the smtp server. Eg., 587",
+ SMTPUsername: "Username to authenticate with the smtp server as. Eg., 'postmaster@mail.example.org'",
+ SMTPPassword: "Password to pass to the smtp server.",
+ SMTPFrom: "Address to use as the 'from' field of the email. Eg., 'gotosocial@example.org'",
+ AdminAccountUsername: "the username to create/delete/etc",
+ AdminAccountEmail: "the email address of this account",
+ AdminAccountPassword: "the password to set for this account",
+ AdminTransPath: "the path of the file to import from/export to",
+}