mirror of
https://github.com/YunoHost-Apps/gotosocial_ynh.git
synced 2024-09-03 19:16:06 +02:00
102 lines
5.1 KiB
Markdown
102 lines
5.1 KiB
Markdown
# Docs of the GoToSocial's package for YunoHost
|
|
|
|
*[Lire cette documentation en français.](./DOCS_fr.md)*
|
|
|
|
## Administration
|
|
|
|
You can login with your admin user (the one automatically created during installation) to your-instance.com/**admin** to administrate your GoToSocial instance.
|
|
[The source code of this administration panel](https://github.com/superseriousbusiness/gotosocial-admin) is available on github.
|
|
[The GTS admin panel documentation](https://docs.gotosocial.org/en/latest/admin/settings/).
|
|
|
|
In this administration interface, you can configure the following things:
|
|
|
|
* The name of your instance and its description
|
|
* Your contact e-mail address
|
|
* The referring user
|
|
* Blocked domains (not to federate with) or allowed domains (for the allowlist federation mode)
|
|
* Custom emojis
|
|
* Moderation reports
|
|
|
|
## Configuration
|
|
|
|
You can configure your instance using the config panel integrated in Yunohost, you will find it in the web admin interface of your Yunohost by following these steps:
|
|
`Applications > GoToSocial > Config Panel`
|
|
|
|
In this control panel you can configure the following things (non-exhaustive list):
|
|
|
|
* Account configuration :
|
|
* Are registrations open?
|
|
* Manual validation of registrations?
|
|
* Required reason for registration?
|
|
* Allow user custom CSS?
|
|
* Custom CSS max length?
|
|
* Media configuration
|
|
* Maximum image size
|
|
* Maximum video size
|
|
* Minimum number of characters for media descriptions
|
|
* Maximum number of characters for media descriptions
|
|
* Number of days media can be cached
|
|
* Post configuration
|
|
* Maximum number of characters for a new post
|
|
* Maximum number of characters in a Content Warning / subject of a new post
|
|
* Maximum number of options for a poll
|
|
* Maximum number of characters for a poll option
|
|
* Maximum number of media that can be added to a post
|
|
* Instance config
|
|
* Federation mode to use for this instance (blocklist / allowlist)
|
|
* Landing page user
|
|
* Exposed API options
|
|
* SMTP config
|
|
* Cache settings
|
|
* Advanced settings
|
|
* SameSite attribute
|
|
* Rate limit
|
|
|
|
Note: **Do NOT edit** the `config.yaml` file by hand. Always use this config panel instead. Otherwise your changes will be deleted at each update!
|
|
|
|
## Command line (CLI)
|
|
|
|
To use the GoToSocial command line, you first need to place yourself in the folder of your instance:
|
|
`cd /var/www/gotosocial/` or `cd /var/www/gotosocial__x/` (where `x` is the installation number of your instance, in the case of multi-installation).
|
|
Feel free to refer to the [GoToSocial command line documentation](https://docs.gotosocial.org/en/latest/admin/cli/).
|
|
|
|
## User creation
|
|
|
|
To create a new user, proceed as follows:
|
|
|
|
```bash
|
|
./gotosocial --config-path config.yaml admin account create --username some_username --email someuser@example.com --password 'SomeLongAndComplicatedPassword'
|
|
```
|
|
|
|
And to promote them as an administrator of your instance:
|
|
|
|
```bash
|
|
./gotosocial --config-path config.yaml admin account promote --username some_username
|
|
```
|
|
|
|
## OpenID Connect
|
|
|
|
This package is not-working with the SSO (single-sign on) or LDAP integration.
|
|
However, it can be configured to use the OpenID Connect protocol and Dex (a program that links LDAP and OpenID Connect) to enable connection with your YunoHost users.
|
|
|
|
You will have a **separate account from the rest of your Yunohost server**, potentially with a different username and password.
|
|
|
|
You can read the [official GoToSocial documentation about OpenID Connect](https://docs.gotosocial.org/en/latest/configuration/oidc/) in support if you want.
|
|
|
|
To use OpenID Connect, the YunoHost admin must:
|
|
|
|
* Install the [Dex](https://apps.yunohost.org/app/dex) package (note that your server must compile it, which can be resource-intensive)
|
|
* Configure Dex properly during the installation (all entered information will be used in the next step, so keep it in a safe place)
|
|
* Domain: as you wish (may be a sub-domain of your GTS instance, like "dex.gts.example.com")
|
|
* Path: only `/` if you wish to install it on a sub-domain of your instance, otherwise as you wish
|
|
* Name of the app: "GoToSocial", "GTS-test", "YNH-GoToSocial" or anything that makes sense to you and does not contain a space (it will be used as "client ID" in the next step)
|
|
* OIDC secret: a long and random password of at least 30 characters
|
|
* Callback URI: `gts.example.com/auth/callback` by replacing the `gts.example.com` by the domain name of your GTS instance (without the `https://`!)
|
|
* Configure GTS using the config panel's OIDC form: `Applications > GoToSocial > Config Panel > OpenID Connect settings`
|
|
* Activate OpenID Connect: `true`
|
|
* Name of the OIDC IDP: "Dex" or any other name that makes sense
|
|
* Skip the normal verification flow of tokens returned: keep on `false` ( **never** change to `true` unless you know what you're doing!)
|
|
* OIDC issuer URI: the domain name to which you assigned Dex in the previous step, with the final slash `/`, e.g. `https://dex.gts.example.com/` (this is **NOT** the URL of your GTS instance)
|
|
* OIDC client ID: the app name defined at the Dex installation step (e.g. "GoToSocial", "GTS-test", "YNH-GoToSocial")
|
|
* OIDC client secret: the long password randomly generated during Dex's installation step
|
|
* Save, wait until GTS reboots and test!
|