# GoToSocial pour YunoHost
[![Niveau d'intégration](https://dash.yunohost.org/integration/gotosocial.svg)](https://dash.yunohost.org/appci/app/gotosocial) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/gotosocial.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/gotosocial.maintain.svg)
[![Installer GoToSocial avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=gotosocial)
*[Read this readme in english.](./README.md)*
> *Ce package vous permet d'installer GoToSocial rapidement et simplement sur un serveur YunoHost.
Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.*
## Vue d'ensemble
Un serveur de réseau social basé sur [ActivityPub](https://activitypub.rocks/) écrit en Golang.
Avec GoToSocial, vous pouvez rester en contact avec vos amis, publier, lire et partager des images et des articles. Tout cela sans être pisté ni subir de publicité !
![Le logo de GoToSocial, une tête de paresseux stylisée](./doc/logo_sloth.png)
Vous pouvez consulter la documentation à l'adresse : [docs.gotosocial.org](https://docs.gotosocial.org).
**Version incluse :** 0.5.2~ynh1
## Captures d'écran
![Capture d'écran de GoToSocial](./doc/screenshots/screenshot.jpg)
## Avertissements / informations importantes
GoToSocial est encore en alpha et **peut etre instable**. Vous pouvez consulter [la roadmap](https://github.com/superseriousbusiness/gotosocial/blob/main/ROADMAP.md) pour vérifier l'avancée des fonctionnalités de GoToSocial.
GoToSocial nécessite un **nom de domaine dédié**, par exemple : gotosocial.domain.tld.
Ce paquet ne fonctionne pas avec l'authentification unique (SSO) ou l'intégration LDAP.
Vous aurez un compte séparé du reste de votre serveur Yunohost, avec potentiellement un nom d'utilisateur et un mot de passe différent.
GoToSocial **ne dispose pas d'une interface utilisateur-ice**.
Vous devrez utiliser un client compatible avec Mastodon comme [Tusky](https://tusky.app/) sur Android ou une instance de [Pinafore](https://pinafore.social/) en Web.
### Choses à savoir
#### Administration
Vous pouvez vous connecter avec votre utilisateur admin (celui créé automatiquement à l'installation) à l'interface d'administration à l'adresse votre-instance.com/**admin** ou sur l'instance publique [gts.superseriousbusiness.org/admin](https://gts.superseriousbusiness.org/admin/) pour administrer votre insance GoToSocial.
[Le code source de cette interface d'administration](https://github.com/superseriousbusiness/gotosocial-admin) est consultable sur github.
[La documentation de l'interface d'administration de GoToSocial](https://docs.gotosocial.org/en/latest/admin/admin_panel/).
Dans cette interface d'administration, vous pouvez paramétrer les choses suivantes :
* Le nom de votre instance
* Sa description
* Votre adresse e-mail de contact
* L'utilisateurice référent-e
* Les domaines bloqués (pour ne pas fédérer avec)
#### Configuration
Vous pouvez configurer votre instance en utilisant le panneau de configuration intégré à YuNohost, vous le trouverez dans l'interface d'administration de votre Yunohost en suivant ces étapes :
`Applications > gotosocial > Configurez cette application (Panneau de configuration)`
Dans ce panneau de configuration, vous pouvez configurer les choses suivantes :
* Configuration des comptes :
* Ouverture des inscriptions ?
* Validation manuelle des inscriptions ?
* Motif d'inscription requis ?
* Configuration des médias
* Taille maximale des images
* Taille maximale des vidéos
* Nombre minimum de caractères pour les descriptions des médias
* Nombre maximum de caractères pour les descriptions des médias
* Nombre de jour de mise en cache des médias
* Configuration des posts
* Nombre maximum de caractères pour un nouveau post
* Nombre maximum de caractères dans un Content Warning / sujet d'un nouveau post
* Nombre maximum d'options pour un sondage
* Nombre maximum de caractères pour une option d'un sondage
* Nombre maximum de médias pouvant etre ajoutés à un post
N.B. : **N'éditez pas** le fichier `config.yaml` à la main. Utilisez toujours ce panneau de configuration à la place. Sinon vos modifications seront effacées à chaque mise à jour !
#### Ligne de commande
Pour utiliser la ligne de commande de GoToSocial, vous devez d'abord vous placer dans le répertoire de votre instance :
`cd /var/www/gotosocial/` ou `cd /var/www/gotosocial__x/` (où `x` est le numéro de votre installation, dans la cas d'une installation de multiples instances)
N'hésitez pas à vous référer à la [documentation de la ligne de commande de GoToSocial](https://docs.gotosocial.org/en/latest/admin/cli/).
#### Création de compte utilisateur
Pour créer un nouveau compte utilisateur, procédez comme suit :
``` bash
./gotosocial --config-path config.yaml admin account create --username nom_dutilisateur --email utilisateur@example.org --password 'UnMotDePasseTrèsComplexe'
./gotosocial --config-path config.yaml admin account confirm --username nom_dutilisateur
```
Et pour promouvoir un compte en tant qu'administrateur de votre instance :
``` bash
./gotosocial --config-path config.yaml admin account promote --username nom_dutilisateur
```
## :red_circle: Fonctions indésirables
* **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability.
## Documentations et ressources
* Site officiel de l'app :
* Documentation officielle utilisateur :
* Documentation officielle de l'admin :
* Dépôt de code officiel de l'app :
* Documentation YunoHost pour cette app :
* Signaler un bug :
## Informations pour les développeurs
Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing).
Pour essayer la branche testing, procédez comme suit.
``` bash
sudo yunohost app install https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing --debug
ou
sudo yunohost app upgrade gotosocial -u https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing --debug
```
**Plus d'infos sur le packaging d'applications :**