From 262d01698e5dc285cb2f488b5d410132fe376490 Mon Sep 17 00:00:00 2001 From: YunoHost Bot Date: Fri, 19 Apr 2024 22:38:05 +0200 Subject: [PATCH 01/17] Update translations for manifest.toml (#141) --- manifest.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manifest.toml b/manifest.toml index 4ab6dd7..4579954 100644 --- a/manifest.toml +++ b/manifest.toml @@ -40,7 +40,7 @@ ask.gl = "Nome da usuaria administradora en GoToSocial" ask.ca = "Nom pel compte d'administració de GoToSocial" ask.fr = "Nommez votre compte administrateur pour GoToSocial" help.en = "Must be in lower case and without special characters." -help.gl = "ten que ser con minúsculas e sen caracteres especiais." +help.gl = "Ten que ser con minúsculas e sen caracteres especiais." help.ca = "Ha de ser en minúscules i sense caràcters especials." help.fr = "Doit être en minuscule et sans caractère special." type = "string" @@ -63,6 +63,7 @@ type = "password" [install.accounts_registration_open] ask.en = "Open registration?" +ask.ar = "التسجيلات مفتوحة؟" ask.gl = "Rexistro aberto?" ask.ca = "Registres oberts?" ask.fr = "Inscriptions ouvertes ?" From a2ea27426ef2605b708ce6315b52bd20061e3f1f Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sat, 18 May 2024 15:37:59 +0000 Subject: [PATCH 02/17] Auto-update READMEs --- ALL_README.md | 1 + README.md | 2 +- README_es.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++ README_gl.md | 4 ++-- README_zh_Hans.md | 4 ++-- 5 files changed, 67 insertions(+), 5 deletions(-) create mode 100644 README_es.md diff --git a/ALL_README.md b/ALL_README.md index a01b345..8938aae 100644 --- a/ALL_README.md +++ b/ALL_README.md @@ -1,6 +1,7 @@ # All available README files by language - [Read the README in English](README.md) +- [Lee el README en español](README_es.md) - [Irakurri README euskaraz](README_eu.md) - [Lire le README en français](README_fr.md) - [Le o README en galego](README_gl.md) diff --git a/README.md b/README.md index 06f337e..7707586 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Please note that this package uses the ["i'm so tired" software license 1.0](htt ## :red_circle: Antifeatures - **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. -- **Not totally free package**: The YunoHost package of this app is under an overall free licence, but with clauses that restrict its use. +- **Not totally free package**: The YunoHost package of this app is under an overall free license, but with clauses that may restrict its use. ## Documentation and resources diff --git a/README_es.md b/README_es.md new file mode 100644 index 0000000..d5f875a --- /dev/null +++ b/README_es.md @@ -0,0 +1,61 @@ + + +# GoToSocial para Yunohost + +[![Nivel de integración](https://dash.yunohost.org/integration/gotosocial.svg)](https://dash.yunohost.org/appci/app/gotosocial) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/gotosocial.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/gotosocial.maintain.svg) + +[![Instalar GoToSocial con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=gotosocial) + +*[Leer este README en otros idiomas.](./ALL_README.md)* + +> *Este paquete le permite instalarGoToSocial rapidamente y simplement en un servidor YunoHost.* +> *Si no tiene YunoHost, visita [the guide](https://yunohost.org/install) para aprender como instalarla.* + +## Descripción general + +GoToSocial is a fast [ActivityPub](https://activitypub.rocks/) social network server, written in Golang. + +With GoToSocial, you can keep in touch with your friends, post, read, and share images and articles. All without being tracked or advertised to! + +The official documentation is at [docs.gotosocial.org](https://docs.gotosocial.org). +The documentation for this YunoHost package [can be read here](./doc/DOCS.md) and the admin is **strongly encouraged to read it**! + +Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. + + +**Versión actual:** 0.15.0~ynh2 + +## Capturas + +![Captura de GoToSocial](./doc/screenshots/screenshot.png) + +## :red_circle: funcionalidades no deseadas + +- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. +- **Not totally free package**: The YunoHost package of this app is under an overall free license, but with clauses that may restrict its use. + +## Documentaciones y recursos + +- Sitio web oficial: +- Documentación usuario oficial: +- Documentación administrador oficial: +- Repositorio del código fuente oficial de la aplicación : +- Catálogo YunoHost: +- Reportar un error: + +## Información para desarrolladores + +Por favor enviar sus correcciones a la [`branch testing`](https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing + +Para probar la rama `testing`, sigue asÍ: + +```bash +sudo yunohost app install https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing --debug +o +sudo yunohost app upgrade gotosocial -u https://github.com/YunoHost-Apps/gotosocial_ynh/tree/testing --debug +``` + +**Mas informaciones sobre el empaquetado de aplicaciones:** diff --git a/README_gl.md b/README_gl.md index c7b5340..8305c73 100644 --- a/README_gl.md +++ b/README_gl.md @@ -32,10 +32,10 @@ Please note that this package uses the ["i'm so tired" software license 1.0](htt ![Captura de pantalla de GoToSocial](./doc/screenshots/screenshot.png) -## :red_circle: Caraterísticas cuestionables +## :red_circle: Debes considerar - **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. -- **Not totally free package**: The YunoHost package of this app is under an overall free licence, but with clauses that restrict its use. +- **Not totally free package**: The YunoHost package of this app is under an overall free license, but with clauses that may restrict its use. ## Documentación e recursos diff --git a/README_zh_Hans.md b/README_zh_Hans.md index 6987096..2b3e759 100644 --- a/README_zh_Hans.md +++ b/README_zh_Hans.md @@ -3,7 +3,7 @@ 请勿手动编辑。 --> -# YunoHost 的 GoToSocial +# YunoHost 上的 GoToSocial [![集成程度](https://dash.yunohost.org/integration/gotosocial.svg)](https://dash.yunohost.org/appci/app/gotosocial) ![工作状态](https://ci-apps.yunohost.org/ci/badges/gotosocial.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/gotosocial.maintain.svg) @@ -35,7 +35,7 @@ Please note that this package uses the ["i'm so tired" software license 1.0](htt ## :red_circle: 负面特征 - **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. -- **Not totally free package**: The YunoHost package of this app is under an overall free licence, but with clauses that restrict its use. +- **Not totally free package**: The YunoHost package of this app is under an overall free license, but with clauses that may restrict its use. ## 文档与资源 From fa899be613b6ac8b287e7f5a5fbd01d3814b01f1 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Tue, 21 May 2024 21:41:51 +0200 Subject: [PATCH 03/17] add codeowners file --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..2a2fe54 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +@OniriCorpe From e1c05d3a1bfd0bc430119cec772857c94ed94652 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Tue, 21 May 2024 19:41:56 +0000 Subject: [PATCH 04/17] Auto-update READMEs --- ALL_README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ALL_README.md b/ALL_README.md index 8938aae..152f2e7 100644 --- a/ALL_README.md +++ b/ALL_README.md @@ -1,7 +1,7 @@ # All available README files by language - [Read the README in English](README.md) -- [Lee el README en español](README_es.md) +- [Lea el README en español](README_es.md) - [Irakurri README euskaraz](README_eu.md) - [Lire le README en français](README_fr.md) - [Le o README en galego](README_gl.md) From 499d6f8ab09e92f35b9dbc5a76b8af1d25493640 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com> Date: Fri, 14 Jun 2024 22:59:41 +0200 Subject: [PATCH 05/17] Update config_panel.toml: fix stupid toml parsing issue for foo.bar = '''content'''' with multi-line content (breaking bookworm) (#142) Co-authored-by: yunohost-bot Co-authored-by: OniriCorpe Co-authored-by: OniriCorpe --- README_eu.md | 2 +- config_panel.toml | 102 ++++++++++++++++++++++++---------------------- 2 files changed, 54 insertions(+), 50 deletions(-) diff --git a/README_eu.md b/README_eu.md index f55dae2..8333550 100644 --- a/README_eu.md +++ b/README_eu.md @@ -34,7 +34,7 @@ Please note that this package uses the ["i'm so tired" software license 1.0](htt ## :red_circle: Ezaugarri zalantzagarriak -- **Alfa softwarea**: Garapenaren hasierako fasean dago. Ezaugarri aldakor edo ezegonkorrak, erroreak eta segurtasuneko arazoak izan ditzazke. +- **Alfa softwarea**: Garapenaren hasierako fasean dago. Ezaugarri aldakor edo ezegonkorrak, erroreak eta segurtasun-arazoak izan ditzazke. - **Paketea ez da erabat librea**: Aplikazio honen YunoHost paketeak lizentzia librea du orokorrean, baina bere erabilera mugatzen duten klausulekin. ## Dokumentazioa eta baliabideak diff --git a/config_panel.toml b/config_panel.toml index 459f636..2819488 100644 --- a/config_panel.toml +++ b/config_panel.toml @@ -55,15 +55,16 @@ help = "Here you can easily configure some things about your GoToSocial instance bind = "accounts-allow-custom-css:__INSTALL_DIR__/config.yaml" choices = [ "true", "false" ] default = "false" - help.en = """Allow accounts on this instance to set custom CSS for their profile pages and statuses.\ + type = "select" + [main.accounts.accounts_allow_custom_css.help] + en = """Allow accounts on this instance to set custom CSS for their profile pages and statuses.\ Enabling this setting will allow accounts to upload custom CSS via the /user settings page, which will then be rendered on the web view of the account's profile and statuses.\ For instances with public sign ups, it is **HIGHLY RECOMMENDED** to leave this setting on 'false', since setting it to true allows malicious accounts to make their profile pages misleading, unusable or even dangerous to visitors. In other words, you should only enable this setting if you trust the users on your instance not to produce harmful CSS.\ Regardless of what this value is set to, any uploaded CSS will not be federated to other instances, it will only be shown on profiles and statuses on *this* instance.""" - help.fr = """Autoriser les comptes de cette instance à définir un CSS personnalisé pour leurs pages de profil et leurs statuts.\ + fr = """Autoriser les comptes de cette instance à définir un CSS personnalisé pour leurs pages de profil et leurs statuts.\ En activant ce paramètre, les comptes pourront télécharger des feuilles de style CSS personnalisées via la page de configuration de l'utilisateur-ice /user, qui seront ensuite affichées sur la page Web du profil et des statuts du compte.\ Pour les instances avec des inscriptions publiques, il est **HAUTEMENT RECOMMANDÉ** de laisser ce paramètre sur "false", car le mettre sur "true" permet aux comptes malveillants de rendre leurs pages de profil trompeuses, inutilisables ou même dangereuses pour les visiteurs. En d'autres termes, vous ne devez activer ce paramètre que si vous avez confiance dans le fait que les utilisateurs de votre instance ne produisent pas de CSS dangereux.\ Quelle que soit la valeur de ce paramètre, tout CSS téléchargé ne sera pas fédéré à d'autres instances, il ne sera affiché que sur les profils et les statuts de *cette* instance.""" - type = "select" [main.accounts.accounts_custom_css_length] ask.en = "Custom CSS max length?" @@ -128,47 +129,51 @@ help = "Config pertaining to user media uploads (videos, image, image descriptio ask.fr = "Nombre de jours de mise en cache des médias des instances distantes avant qu'ils ne soient retirés du cache." bind = "media-remote-cache-days:__INSTALL_DIR__/config.yaml" default = "30" - help.en = """Default: 30\ + type = "number" + [main.media.media_remote_cache_days.help] + en = """Default: 30\ A job will run every day at midnight to clean up any remote media older than the given amount of days. \ When remote media is removed from the cache, it is deleted from storage but the database entries for the media are kept so that it can be fetched again if requested by a user.\ If this is set to 0, then media from remote instances will be cached indefinitely.\ """ - help.fr = """Valeur par défaut : 30\ + fr = """Valeur par défaut : 30\ Une tâche est exécutée tous les soirs à minuit pour nettoyer les médias distants datant de plus d'un certain nombre de jours.\ Lorsque le média distant est supprimé du cache, il est supprimé du stockage mais les entrées de la base de données pour le média sont conservées afin qu'il puisse être récupéré si un utilisateur le demande.\ Si la valeur 0 est attribuée à ce paramètre, les médias des instances distantes sont mis en cache indéfiniment.\ """ - type = "number" [main.media.media_emoji_local_max_size] ask.en = "Max size in bytes of emojis uploaded to this instance via the admin API." ask.fr = "Taille maximale en octets des emojis téléchargés vers cette instance via l'API d'administration." bind = "media-emoji-local-max-size:__INSTALL_DIR__/config.yaml" default = "50KiB" - help.en = """Default: 50KiB (51200 bytes)\ -The default is the same as the Mastodon size limit for emojis (50kb), which allows for good interoperability.\ -Raising this limit may cause issues with federation of your emojis to other instances, so beware.""" - help.fr = """Valeur par défaut : 50KiB (51200 octets)\ -La valeur par défaut est la même que la limite de taille des emojis de Mastodon (50 ko), ce qui permet une bonne interopérabilité.\ -Si vous augmentez cette limite, vous risquez d'avoir des problèmes avec la fédération de vos emojis à d'autres instances, alors faites preuve de prudence.""" type = "string" pattern.regexp = "^[0-9]*(KB|KiB|MB|MiB)?$" pattern.error = "Should be a number with or without the following unit marker: KB, KiB, MB, MiB." + [main.media.media_emoji_local_max_size.help] + en = """Default: 50KiB (51200 bytes)\ +The default is the same as the Mastodon size limit for emojis (50kb), which allows for good interoperability.\ +Raising this limit may cause issues with federation of your emojis to other instances, so beware.""" + fr = """Valeur par défaut : 50KiB (51200 octets)\ +La valeur par défaut est la même que la limite de taille des emojis de Mastodon (50 ko), ce qui permet une bonne interopérabilité.\ +Si vous augmentez cette limite, vous risquez d'avoir des problèmes avec la fédération de vos emojis à d'autres instances, alors faites preuve de prudence.""" + [main.media.media_emoji_remote_max_size] ask.en = "Max size in bytes of emojis to download from other instances." ask.fr = "Taille maximale en octets des emojis téléchargeables à partir d'autres instances." bind = "media-emoji-remote-max-size:__INSTALL_DIR__/config.yaml" default = "100KiB" - help.en = """Default: 100KiB\ -By default this is 100kb, or twice the size of the default for media-emoji-local-max-size.\ -This strikes a good balance between decent interoperability with instances that have higher emoji size limits, and not taking up too much space in storage.""" - help.fr = """Valeur par défaut : 100KiB\ -Par défaut, cette taille est de 100 Ko, soit le double de la taille par défaut de media-emoji-local-max-size (le paramètre précédent).\ -Cette valeur représente un bon équilibre entre une interopérabilité décente avec les instances qui ont des limites de taille d'emoji plus élevées et le fait de ne pas prendre trop d'espace de stockage.""" type = "string" pattern.regexp = "^[0-9]*(KB|KiB|MB|MiB)?$" - pattern.error = "Should be a number with or without the following unit marker: KB, KiB, MB, MiB." + pattern.error = "Should be a number with or without the following unit marker: KB, KiB, MB, MiB." + [main.media.media_emoji_remote_max_size.help] + en = """Default: 100KiB\ +By default this is 100kb, or twice the size of the default for media-emoji-local-max-size.\ +This strikes a good balance between decent interoperability with instances that have higher emoji size limits, and not taking up too much space in storage.""" + fr = """Valeur par défaut : 100KiB\ +Par défaut, cette taille est de 100 Ko, soit le double de la taille par défaut de media-emoji-local-max-size (le paramètre précédent).\ +Cette valeur représente un bon équilibre entre une interopérabilité décente avec les instances qui ont des limites de taille d'emoji plus élevées et le fait de ne pas prendre trop d'espace de stockage.""" ################### ### STATUSES CONFIG @@ -231,11 +236,12 @@ help = "Config pertaining to instance federation settings, pages to hide/expose, bind = "instance-federation-mode:__INSTALL_DIR__/config.yaml" choices = [ "blocklist", "allowlist" ] default = "blocklist" - help.en = """blocklist: open federation by default. Only instances that are explicitly blocked will be denied (unless they are also explicitly allowed).\ -allowlist: closed federation by default. Only instances that are explicitly allowed will be able to interact with this instance.""" - help.fr = """blocklist : fédération ouverte par défaut. Seules les instances explicitement bloquées seront exclues (à moins qu'elles ne soient également explicitement autorisées).\ -allowlist : fédération fermée par défaut. Seules les instances explicitement autorisées pourront interagir avec cette instance.""" type = "select" + [main.instance.instance_federation_mode.help] + en = """blocklist: open federation by default. Only instances that are explicitly blocked will be denied (unless they are also explicitly allowed).\ +allowlist: closed federation by default. Only instances that are explicitly allowed will be able to interact with this instance.""" + fr = """blocklist : fédération ouverte par défaut. Seules les instances explicitement bloquées seront exclues (à moins qu'elles ne soient également explicitement autorisées).\ +allowlist : fédération fermée par défaut. Seules les instances explicitement autorisées pourront interagir avec cette instance.""" [main.instance.landing_page_user] ask.en = "Landing page user" @@ -291,13 +297,14 @@ allowlist : fédération fermée par défaut. Seules les instances explicitement bind = "instance-deliver-to-shared-inboxes:__INSTALL_DIR__/config.yaml" choices = [ "true", "false" ] default = "true" - help.en = """This flag tweaks whether GoToSocial will deliver ActivityPub messages to the shared inbox of a recipient, if one is available, instead of delivering each message to each actor who should receive a message individually.\ + type = "select" + [main.instance.instance_deliver_to_shared_inboxes.help] + en = """This flag tweaks whether GoToSocial will deliver ActivityPub messages to the shared inbox of a recipient, if one is available, instead of delivering each message to each actor who should receive a message individually.\ Shared inbox delivery can significantly reduce network load when delivering to multiple recipients share an inbox (eg., on large Mastodon instances).\ See: https://www.w3.org/TR/activitypub/#shared-inbox-delivery""" - help.fr = """Ce paramètre détermine si GoToSocial livrera les messages ActivityPub à la boîte de réception partagée d'un destinataire, si une boîte de réception est disponible, au lieu de livrer chaque message à chaque acteur qui devrait recevoir un message individuellement.\ + fr = """Ce paramètre détermine si GoToSocial livrera les messages ActivityPub à la boîte de réception partagée d'un destinataire, si une boîte de réception est disponible, au lieu de livrer chaque message à chaque acteur qui devrait recevoir un message individuellement.\ La livraison dans la boîte de réception partagée peut réduire de manière significative la charge du réseau lorsque la livraison à plusieurs destinataires partagent une boîte de réception (par exemple, sur les grandes instances Mastodon).\ Voir : https://www.w3.org/TR/activitypub/#shared-inbox-delivery""" - type = "select" [main.instance.instance_inject_mastodon_version] ask.en = "Inject Mastodon version?" @@ -305,15 +312,17 @@ Voir : https://www.w3.org/TR/activitypub/#shared-inbox-delivery""" bind = "instance-inject-mastodon-version:__INSTALL_DIR__/config.yaml" choices = [ "true", "false" ] default = "false" - help.en = """This flag will inject a Mastodon version into the version field that is included in /api/v1/instance.\ + type = "select" + [main.instance.instance_inject_mastodon_version.help] + en = """This flag will inject a Mastodon version into the version field that is included in /api/v1/instance.\ This version is often used by Mastodon clients to do API feature detection.\ By injecting a Mastodon compatible version, it is possible to cajole those clients to behave correctly with GoToSocial.\ Default: false""" - help.fr = """Ce paramètre injecte une version de Mastodon dans le champ version qui est inclus dans /api/v1/instance.\ + fr = """Ce paramètre injecte une version de Mastodon dans le champ version qui est inclus dans /api/v1/instance.\ Cette version est souvent utilisée par les clients Mastodon pour détecter les caractéristiques de l'API.\ En injectant une version compatible avec Mastodon, il est possible d'inciter ces clients à se comporter correctement avec GoToSocial. Par défautl : false""" - type = "select" + ################ #### SMTP CONFIG @@ -347,7 +356,6 @@ help = "Config for sending emails via an smtp server." ask.en = "SMTP Username" ask.fr = "Nom d'utilisateur SMTP" bind = "smtp-username:__INSTALL_DIR__/config.yaml" - default = "" help.en = "Username to use when authenticating with the SMTP server" help.fr = "Nom d'utilisateur à utiliser lors de l'authentification avec le serveur SMTP" type = "string" @@ -356,7 +364,6 @@ help = "Config for sending emails via an smtp server." ask.en = "SMTP Password" ask.fr = "Mot de passe SMTP" bind = "smtp-password:__INSTALL_DIR__/config.yaml" - default = "" help.en = "Password to use when authenticating with the SMTP server" help.fr = "Mot de passe à utiliser lors de l'authentification avec le serveur SMTP" type = "password" @@ -365,7 +372,6 @@ help = "Config for sending emails via an smtp server." ask.en = "SMTP From Address" ask.fr = "Adresse d'expédition SMTP" bind = "smtp-from:__INSTALL_DIR__/config.yaml" - default = "GoToSocial@__DOMAIN__" help.en = "From address for sent emails" help.fr = "L'adresse utilisée pour les e-mails envoyés" type = "email" @@ -376,11 +382,12 @@ help = "Config for sending emails via an smtp server." bind = "smtp-disclose-recipients:__INSTALL_DIR__/config.yaml" choices = [ "true", "false" ] default = "false" - help.en = """true: Disclose all recipients in the To field\ -false: Email will be sent to Undisclosed Recipients""" - help.fr = """true : divulguer tous les destinataires dans le champ À\ -false : l'e-mail sera envoyé sans divulguer les destinataires""" type = "select" + [main.smtp.smtp_disclose_recipients.help] + en = """true: Disclose all recipients in the To field\ +false: Email will be sent to Undisclosed Recipients""" + fr = """true : divulguer tous les destinataires dans le champ À\ +false : l'e-mail sera envoyé sans divulguer les destinataires""" #################### #### CACHE SETTINGS @@ -397,13 +404,14 @@ help = "Settings pertaining to... the cache" ask.fr = "Valeur du niveau de cache" bind = "memory-target:__INSTALL_DIR__/config.yaml" default = "100MiB" - help.en = """Sets a target limit that the application will try to keep it's caches within.\ + type = "string" + [main.cache.cache_memory_target.help] + en = """Sets a target limit that the application will try to keep it's caches within.\ This is based on estimated sizes of in-memory objects, and so NOT AT ALL EXACT. Examples: 100MiB, 200MiB, 500MiB, 1GiB; Default: 100MiB""" - help.fr = """Définit une limite cible que l'application essaiera de ne pas dépasser pour ses caches.\ + fr = """Définit une limite cible que l'application essaiera de ne pas dépasser pour ses caches.\ Cette limite est basée sur des estimations de la taille des objets en mémoire et N'EST DONC PAS DU TOUT EXACTE. Exemples : 100MiB, 200MiB, 500MiB, 1GiB; Par défaut : 100MiB""" - type = "string" #################### #### OIDC SETTINGS @@ -429,7 +437,6 @@ help = "Settings pertaining to... OpenID Connect" ask.en = "Name of the OIDC IDP (identity provider)" ask.fr = "Nom de l'OIDC IDP (identity provider)" bind = "oidc-idp-name:__INSTALL_DIR__/config.yaml" - default = "" help.en = "This will be shown to users when they log in. Examples: \"Dex\" or \"YunoHost\"" help.fr = "Sera affiché aux utilisateurices lros de leur connexion. Exemples: \"Dex\" ou \"YunoHost\"" type = "string" @@ -448,7 +455,6 @@ help = "Settings pertaining to... OpenID Connect" ask.en = "The OIDC issuer URI." ask.fr = "URI du fournisseur OIDC" bind = "oidc-issuer:__INSTALL_DIR__/config.yaml" - default = "" help.en = "This is where GtS will redirect users to for login. Typically this will look like a standard web URL. Examples: \"https://auth.example.org\", \"https://example.org/auth\"" help.fr = "C'est l'endroit où GtS redirigera les utilisateurs pour qu'ils se connectent. En règle générale, il s'agit d'une URL web standard. Exemples : \"https://auth.example.org\", \"https://example.org/auth\"" type = "string" @@ -457,7 +463,6 @@ help = "Settings pertaining to... OpenID Connect" ask.en = "OIDC client ID" ask.fr = "Client ID du fournisseur OIDC" bind = "oidc-client-id:__INSTALL_DIR__/config.yaml" - default = "" help.en = "The ID for this client as registered with the OIDC provider." help.fr = "L'identifiant pour ce client tel qu'enregistré auprès du fournisseur OIDC" type = "string" @@ -466,7 +471,6 @@ help = "Settings pertaining to... OpenID Connect" ask.en = "OIDC client secret (password)" ask.fr = "Client secret (mot de passe) du fournisseur OIDC" bind = "oidc-client-secret:__INSTALL_DIR__/config.yaml" - default = "" help.en = "The secret for this client as registered with the OIDC provider." help.fr = "Le secret pour ce client tel qu'enregistré auprès du fournisseur OIDC" type = "string" @@ -497,24 +501,24 @@ help = "Settings pertaining to http timeouts, security, cookies, and more. ⚠ bind = "advanced-cookies-samesite:__INSTALL_DIR__/config.yaml" choices = [ "lax", "strict" ] default = "lax" - help.en = """Defaults to 'lax' to ensure that the OIDC flow does not break, which is fine in most cases.\ + type = "select" + [main.advanced.advanced_cookies_samesite.help] + en = """Defaults to 'lax' to ensure that the OIDC flow does not break, which is fine in most cases.\ If you want to harden your instance against CSRF attacks and don't mind if some login-related things might break, you can set this to 'strict' instead.\ For an overview of what this does, see:\ https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite""" - help.fr = "" - type = "select" [main.advanced.advanced_rate_limit_requests] ask.en = "Amount of requests to permit from a single IP address within a span of 5 minutes." ask.fr = "Nombre de requêtes autorisées à partir d'une seule adresse IP dans un délai de 5 minutes." bind = "advanced-rate-limit-requests:__INSTALL_DIR__/config.yaml" default = "300" - help.en = """Default: 300\ + type = "number" + [main.advanced.advanced_rate_limit_requests.help] + en = """Default: 300\ If this amount is exceeded, a 429 HTTP error code will be returned.\ See https://docs.gotosocial.org/en/latest/api/swagger/#rate-limit.\ If you find yourself adjusting this limit because it's regularly being exceeded, you should first verify that your settings for `trusted-proxies` are correct.\ In many cases, when the rate limit is exceeded it is because your instance sees all incoming requests as coming from the *same IP address* (you can verify this by looking at the client IPs in your instance logs).\ If this is the case, try adding that IP address to your `trusted-proxies` *BEFORE* you go adjusting this rate limit setting!\ If you set this to 0 or less, rate limiting will be disabled entirely.""" - help.fr = "Valeur par défaut : 1000" - type = "number" From 14bded21a132d4e18bd38c404db1cc8495a77c86 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:08:27 +0200 Subject: [PATCH 06/17] update feditext link --- doc/PRE_INSTALL.md | 2 +- doc/PRE_INSTALL_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/PRE_INSTALL.md b/doc/PRE_INSTALL.md index 14cb323..e5d1d0d 100644 --- a/doc/PRE_INSTALL.md +++ b/doc/PRE_INSTALL.md @@ -6,6 +6,6 @@ Please note the following points: - If you uninstall GoToSocial, you will no longer be able to use this domain name with another federated software installation, as it will be impossible to reuse the keys used to secure the federation. - GoToSocial **does not provide a user interface**. -You will need to use a Mastodon-compatible client such as [Tusky](https://tusky.app/) on Android, [Feditext](https://fedi.software/@Feditext) for iOS or an instance of [Semaphore](https://semaphore.social/) on the Web. +You will need to use a Mastodon-compatible client such as [Tusky](https://tusky.app/) on Android, [Feditext](https://github.com/feditext/feditext/blob/develop/README.md) for iOS or an instance of [Semaphore](https://semaphore.social/) on the Web. Also this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. diff --git a/doc/PRE_INSTALL_fr.md b/doc/PRE_INSTALL_fr.md index 1fe8413..0291062 100644 --- a/doc/PRE_INSTALL_fr.md +++ b/doc/PRE_INSTALL_fr.md @@ -6,6 +6,6 @@ Veuillez noter les points suivant : - Vous ne pourrez plus utiliser ce nom de domaine avec une autre installation d'un logiciel de fédivers si vous désinstallez GoToSocial, en raison de l'impossibilité de réutiliser les clés servant à sécuriser la fédération. - GoToSocial **ne dispose pas d'une interface utilisateur-ice**. -Vous devrez utiliser un client compatible avec Mastodon comme [Tusky](https://tusky.app/) sur Android, [Feditext](https://fedi.software/@Feditext) sur iOS ou une instance de [Semaphore](https://semaphore.social/) en Web. +Vous devrez utiliser un client compatible avec Mastodon comme [Tusky](https://tusky.app/) sur Android, [Feditext](https://github.com/feditext/feditext/blob/develop/README.md) sur iOS ou une instance de [Semaphore](https://semaphore.social/) en Web. Aussi, ce paquet utilise la ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), veuillez la lire et l'accepter avant de procéder à l'installation. From 25c04cfe19b2c410d1eaf4bf2016520b0359c7d6 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:11:32 +0200 Subject: [PATCH 07/17] pre_upgrade french translation --- doc/PRE_UPGRADE_fr.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 doc/PRE_UPGRADE_fr.md diff --git a/doc/PRE_UPGRADE_fr.md b/doc/PRE_UPGRADE_fr.md new file mode 100644 index 0000000..8ee7a6e --- /dev/null +++ b/doc/PRE_UPGRADE_fr.md @@ -0,0 +1,2 @@ +GoToSocial prend un certain temps (de quelques secondes à plusieurs minutes) après chaque mise à jour afin de réaliser diverses choses, telles que les migrations ou des mises à jour dans la base de donnée. +Si votre instance est innaccessible, s'il vous plaît, faites preuve de patience et **ne le redémarrez pas** au risque de tout casser ! From 32c381f9a01c7157c7fc6a7cf7514a583d61f482 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:15:59 +0200 Subject: [PATCH 08/17] use 'armhf' instead of 'armv6/7' (#147) Co-authored-by: yunohost-bot Co-authored-by: rosbeef andino --- manifest.toml | 9 +++------ scripts/_common.sh | 20 -------------------- scripts/install | 3 --- scripts/restore | 3 --- scripts/upgrade | 3 --- 5 files changed, 3 insertions(+), 35 deletions(-) diff --git a/manifest.toml b/manifest.toml index 4579954..1254ec3 100644 --- a/manifest.toml +++ b/manifest.toml @@ -105,17 +105,14 @@ i386.url = "https://github.com/superseriousbusiness/gotosocial/releases/download i386.sha256 = "7c5158f010b752a559aa3446bf28920bb8d9542109ba94c2a33cf907b3058504" amd64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_amd64.tar.gz" amd64.sha256 = "7819586a54869b2bfa2b27fbb2746f97e7eaa06f19fd154c7f2ad34aea3188d3" -armv6.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_armv6.tar.gz" -armv6.sha256 = "dadce2162d336b61b84da7ca137a5bc8c613f2f982dcb3f68a50112ca582b117" -armv7.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_armv7.tar.gz" -armv7.sha256 = "50bb887000f98030c0fa1aab60cd11ceaa986e3debd315ddb5a8dfdee2b502d2" +armhf.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_armv7.tar.gz" +armhf.sha256 = "50bb887000f98030c0fa1aab60cd11ceaa986e3debd315ddb5a8dfdee2b502d2" arm64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_arm64.tar.gz" arm64.sha256 = "6c9f49da974bdad6d40a269e43cbfd8a62f6d8b3c8497d35b1c2a41128b523c0" autoupdate.asset.i386 = "gotosocial_.*linux_386.tar.gz$" autoupdate.asset.amd64 = "gotosocial_.*linux_amd64.tar.gz$" -autoupdate.asset.armv6 = "gotosocial_.*linux_armv6.tar.gz$" -autoupdate.asset.armv7 = "gotosocial_.*linux_armv7.tar.gz$" +autoupdate.asset.armhf = "gotosocial_.*linux_armv7.tar.gz$" autoupdate.asset.arm64 = "gotosocial_.*linux_arm64.tar.gz$" autoupdate.strategy = "latest_github_release" diff --git a/scripts/_common.sh b/scripts/_common.sh index a8bdbb9..ebb9161 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -8,26 +8,6 @@ # PERSONAL HELPERS #================================================= -# custom function to detect armv6 and armv7 -# ($YNH_ARCH returns armhf for both...) -detect_arch(){ - local architecture - if uname -m | grep -q -E "arm64|aarch64" ; then - architecture="arm64" - elif uname -m | grep -q "64" ; then - architecture="amd64" - elif uname -m | grep -q "86" ; then - architecture="i386" - elif uname -m | grep -q "armv6" ; then - architecture="armv6" - elif uname -m | grep -q "armv7" ; then - architecture="armv7" - else - ynh_die --message="The script can't identify a valid architecture. Please report this error." - fi - echo $architecture -} - # custom function to change bash bool 0/1 to false/true convert_bool(){ (("$1")) && echo "true" || echo "false" diff --git a/scripts/install b/scripts/install index 980c26e..7ecfe6e 100755 --- a/scripts/install +++ b/scripts/install @@ -157,9 +157,6 @@ ynh_script_progression --message="Setting up source files..." --weight=1 ### downloaded from an upstream source, like a git repository. ### `ynh_setup_source` use the file conf/app.src -# detect_arch comes from _common.sh / personnal helpers -architecture=$(detect_arch) - # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" diff --git a/scripts/restore b/scripts/restore index b6c8bee..2170b88 100755 --- a/scripts/restore +++ b/scripts/restore @@ -67,9 +67,6 @@ ynh_psql_connect_as --user="$db_user" --password="$db_pwd" --database="$db_name" #================================================= ynh_script_progression --message="Setting up source files..." --weight=1 -# detect_arch comes from _common.sh / personnal helpers -architecture="$(detect_arch)" - # compare if the system arch is different from the binary arch # if so, download the correct binary if [ "$architecture" != "$(file "$install_dir"/gotosocial | cut -d ',' -f 2 | tr -d ' ')" ] diff --git a/scripts/upgrade b/scripts/upgrade index 759b680..7dd22f2 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -287,9 +287,6 @@ fi if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Upgrading source files..." - - # detect_arch comes from _common.sh / personnal helpers - architecture=$(detect_arch) # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" --full_replace=1 --keep="config.yaml" From 21f9d26280d4b42eb3d2488869e98ac843909a48 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:18:24 +0200 Subject: [PATCH 09/17] preparations for V0.16.0 (#146) Co-authored-by: yunohost-bot --- conf/config.yaml | 25 +++++++++-------------- config_panel.toml | 14 ++----------- doc/PRE_UPGRADE.d/0.16.0~ynh1.md | 10 ++++++++++ manifest.toml | 34 +++++++++++--------------------- scripts/install | 2 -- scripts/upgrade | 7 +++++++ tests.toml | 3 +-- 7 files changed, 40 insertions(+), 55 deletions(-) create mode 100644 doc/PRE_UPGRADE.d/0.16.0~ynh1.md diff --git a/conf/config.yaml b/conf/config.yaml index b09aeac..aabc557 100644 --- a/conf/config.yaml +++ b/conf/config.yaml @@ -416,16 +416,12 @@ instance-inject-mastodon-version: __INSTANCE_INJECT_MASTODON_VERSION__ # Config pertaining to creation and maintenance of accounts on the server, as well as defaults for new accounts. -# Bool. Do we want people to be able to just submit sign up requests, or do we want invite only? +# Bool. Allow people to submit new sign-up / registration requests via the form at /signup. +# # Options: [true, false] -# Default: true +# Default: false accounts-registration-open: __ACCOUNTS_REGISTRATION_OPEN__ -# Bool. Do sign up requests require approval from an admin/moderator before an account can sign in/use the server? -# Options: [true, false] -# Default: true -accounts-approval-required: __ACCOUNTS_APPROVAL_REQUIRED__ - # Bool. Are sign up requests required to submit a reason for the request (eg., an explanation of why they want to join the instance)? # Options: [true, false] # Default: true @@ -1049,15 +1045,10 @@ advanced-throttling-multiplier: 8 # Default: "30s" advanced-throttling-retry-after: "30s" -# Int. CPU multiplier for the amount of goroutines to spawn in order to send messages via ActivityPub. -# Messages will be batched so that at most multiplier * CPU count messages will be sent out at once. -# This can be tuned to limit concurrent POSTing to remote inboxes, preventing your instance CPU -# usage from skyrocketing when an account with many followers posts a new status. -# -# Messages are split among available senders, and each sender processes its assigned messages in serial. -# For example, say a user with 1000 followers is on an instance with 2 CPUs. With the default multiplier -# of 2, this means 4 senders would be in process at once on this instance. When the user creates a new post, -# each sender would end up iterating through about 250 Create messages + delivering them to remote instances. +# Int. CPU multiplier for the fixed number of goroutines to spawn in order to send messages via ActivityPub. +# Messages will be batched and pushed to a singular queue, from which multiplier * CPU count goroutines will +# pull and attempt deliveries. This can be tuned to limit concurrent posting to remote inboxes, preventing +# your instance CPU usage skyrocketing when accounts with many followers post statuses. # # If you set this to 0 or less, only 1 sender will be used regardless of CPU count. This may be # useful in cases where you are working with very tight network or CPU constraints. @@ -1106,6 +1097,8 @@ advanced-csp-extra-uris: [] # # "allow" -- only requests that are explicitly allowed by header filters # will be accepted (unless they are also explicitly blocked). +# This mode is considered experimental and will almost certainly +# break access to your instance unless you are very careful. # # "" -- request header filtering disabled. # diff --git a/config_panel.toml b/config_panel.toml index 2819488..40fa7bb 100644 --- a/config_panel.toml +++ b/config_panel.toml @@ -25,18 +25,8 @@ help = "Here you can easily configure some things about your GoToSocial instance bind = "accounts-registration-open:__INSTALL_DIR__/config.yaml" choices = [ "true", "false" ] default = "false" - help.en = "Do we want people to be able to just submit sign up requests, or do we want invite only?" - help.fr = "Voulez-vous que les gens puissent simplement envoyer des demandes d'inscription, ou voulez-vous qu'iels doivent être invité-e-s ?" - type = "select" - - [main.accounts.accounts_approval_required] - ask.en = "Approval required?" - ask.fr = "Validation requise ?" - bind = "accounts-approval-required:__INSTALL_DIR__/config.yaml" - choices = [ "true", "false" ] - default = "true" - help.en = "Do sign up requests require approval from an admin/moderator before an account can sign in/use the server?" - help.fr = "Les demandes d'inscription doivent-elles être approuvées par un-e administrateur-ice/modérateur-ice avant qu'un compte puisse se connecter/utiliser le serveur ?" + help.en = "Allow people to submit new sign-up / registration requests via the form at `/signup`." + help.fr = "Permettre aux personnes de déposer de nouvelles demandes d'inscription via le formulaire à l'adresse `/signup`." type = "select" [main.accounts.accounts_reason_required] diff --git a/doc/PRE_UPGRADE.d/0.16.0~ynh1.md b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md new file mode 100644 index 0000000..c9de3a4 --- /dev/null +++ b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md @@ -0,0 +1,10 @@ +⚠️ Stating with this 0.16.0 version, GoToSocial offers a registration page. +Please be sure you deactivated registrations if you don't want to. + +Relevant changelog quote: +> **Sign up / registration**: In this release, you can open your instance to new registrations (aka sign-ups) via the new signup page at `https://__DOMAIN__/signup`. No more manually creating new users via the CLI :) +> Documentation here: +> +> **Accounts overview for moderators**: To support the new sign-up feature, and help instance admins to moderate, we made a new section in the settings panel where admins + moderators can get an overview of accounts, and filter by instance, status, and more. You'll find this new accounts view in the settings panel. + +[Read the full changelog.](https://github.com/superseriousbusiness/gotosocial/releases/tag/v0.16.0) diff --git a/manifest.toml b/manifest.toml index 1254ec3..d2dbb19 100644 --- a/manifest.toml +++ b/manifest.toml @@ -27,7 +27,7 @@ multi_instance = true ldap = false sso = false disk = "50M" -ram.build = "100M" +ram.build = "200M" ram.runtime = "100M" [install] @@ -67,25 +67,13 @@ ask.ar = "التسجيلات مفتوحة؟" ask.gl = "Rexistro aberto?" ask.ca = "Registres oberts?" ask.fr = "Inscriptions ouvertes ?" -help.en = "Do you want people to be able to just submit sign up requests (true), or do you want invite only (false)?" +help.en = "Allow people to submit new sign-up / registration requests via the form at `/signup`." help.gl = "Queres permitir que calquera poida solicitar unha conta (verdadeiro), ou queres que só sexa a través de convite (falso)?" help.ca = "Voleu que la gent puguin enviar peticions de registre (true), o voleu que les registres es facin únicament per invitació (false)?" -help.fr = "Voulez-vous que les gens puissent envoyer des demandes d'inscription (true) ou voulez-vous que les inscriptions soient uniquement sur invitation (false) ?" +help.fr = "Permettre aux personnes de déposer de nouvelles demandes d'inscription via le formulaire à l'adresse `/signup`." type = "boolean" default = false -[install.accounts_approval_required] -ask.en = "Registration approval?" -ask.gl = "Aprobar novas contas?" -ask.ca = "Verificació manual dels registres?" -ask.fr = "Vérification manuelle des inscriptions ?" -help.en = "Do sign up requests require approval from an admin/moderator before an account can sign in/use the server?" -help.gl = "Para indicar se, após crear unha conta, esta debe ser aprobada pola administración antes de poder usar o servidor" -help.ca = "Ha d'aprovar manualment un administrador/moderador el registre abans que el compte pugui iniciar sessió al servidor?" -help.fr = "Les demandes d'inscription doivent-elles être approuvées par un-e administrateur-ice/modérateur-ice avant qu'un compte puisse se connecter et utiliser le serveur ?" -type = "boolean" -default = true - [install.accounts_reason_required] ask.en = "Request registration reason?" ask.gl = "Requerir razón para crear conta?" @@ -101,14 +89,14 @@ default = true [resources] [resources.sources.main] in_subdir = false -i386.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_386.tar.gz" -i386.sha256 = "7c5158f010b752a559aa3446bf28920bb8d9542109ba94c2a33cf907b3058504" -amd64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_amd64.tar.gz" -amd64.sha256 = "7819586a54869b2bfa2b27fbb2746f97e7eaa06f19fd154c7f2ad34aea3188d3" -armhf.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_armv7.tar.gz" -armhf.sha256 = "50bb887000f98030c0fa1aab60cd11ceaa986e3debd315ddb5a8dfdee2b502d2" -arm64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.15.0/gotosocial_0.15.0_linux_arm64.tar.gz" -arm64.sha256 = "6c9f49da974bdad6d40a269e43cbfd8a62f6d8b3c8497d35b1c2a41128b523c0" +i386.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_386.tar.gz" +i386.sha256 = "7755365763749148e6278ec728aa9cb0827537735ca142165ffda901118354b2" +amd64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_amd64.tar.gz" +amd64.sha256 = "49ebdf55af3aaaf8eb48a5d877a75acdf9f46154cdf960e39805c564a9f91b1c" +armhf.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_armv7.tar.gz" +armhf.sha256 = "24d631f2dc46dc73617d0c8db0cb4754d6cb8068112fa35ced2804e57069b1c0" +arm64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_arm64.tar.gz" +arm64.sha256 = "3a56ddb9babb6726e0980dec21b85859442b8247822e4388d3249c833aa3a830" autoupdate.asset.i386 = "gotosocial_.*linux_386.tar.gz$" autoupdate.asset.amd64 = "gotosocial_.*linux_amd64.tar.gz$" diff --git a/scripts/install b/scripts/install index 7ecfe6e..778b7c9 100755 --- a/scripts/install +++ b/scripts/install @@ -25,7 +25,6 @@ client_max_body_size="100M" cache_memory_target="100MiB" accounts_registration_open=$(convert_bool "$YNH_APP_ARG_ACCOUNTS_REGISTRATION_OPEN") -accounts_approval_required=$(convert_bool "$YNH_APP_ARG_ACCOUNTS_APPROVAL_REQUIRED") accounts_reason_required=$(convert_bool "$YNH_APP_ARG_ACCOUNTS_REASON_REQUIRED") accounts_allow_custom_css="false" accounts_custom_css_length="10000" @@ -97,7 +96,6 @@ ynh_app_setting_set --app="$app" --key=password --value="$password" ynh_app_setting_set --app="$app" --key=cache_memory_target --value="$cache_memory_target" ynh_app_setting_set --app="$app" --key=accounts_registration_open --value="$accounts_registration_open" -ynh_app_setting_set --app="$app" --key=accounts_approval_required --value="$accounts_approval_required" ynh_app_setting_set --app="$app" --key=accounts_reason_required --value="$accounts_reason_required" ynh_app_setting_set --app="$app" --key=accounts_allow_custom_css --value="$accounts_allow_custom_css" ynh_app_setting_set --app="$app" --key=accounts_custom_css_length --value="$accounts_custom_css_length" diff --git a/scripts/upgrade b/scripts/upgrade index 7dd22f2..960449c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -280,6 +280,13 @@ then ynh_app_setting_delete --app="$app" --key=statuses_cw_max_chars fi +# Upgrade from <0.16.0~ynh1: +if ynh_compare_current_package_version --comparison lt --version 0.16.0~ynh1 || [ -n "${accounts_approval_required:-}" ] +then + # parameter removal + ynh_app_setting_delete --app="$app" --key=accounts_approval_required +fi + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= diff --git a/tests.toml b/tests.toml index 9c5745d..a849f61 100644 --- a/tests.toml +++ b/tests.toml @@ -3,7 +3,7 @@ test_format = 1.0 [default] # GTS don't support it -exclude = "change_url" +exclude = [ "change_url" ] # ------------------------------- # Default args to use for install @@ -15,7 +15,6 @@ args.password = "vYh8io7r*@P&zyo!6ZhBqQQ%8M5D4M" # false by default args.accounts_registration_open = 1 # true by default -args.accounts_approval_required = 0 args.accounts_reason_required = 0 # ------------------------------- From 94fcafbdc6c9a0005a05af6fb9c8fa2db90c68bf Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:19:59 +0200 Subject: [PATCH 10/17] typi --- doc/PRE_UPGRADE.d/0.16.0~ynh1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/PRE_UPGRADE.d/0.16.0~ynh1.md b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md index c9de3a4..6edbb87 100644 --- a/doc/PRE_UPGRADE.d/0.16.0~ynh1.md +++ b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md @@ -1,4 +1,4 @@ -⚠️ Stating with this 0.16.0 version, GoToSocial offers a registration page. +⚠️ Starting with this 0.16.0 version, GoToSocial offers a registration page. Please be sure you deactivated registrations if you don't want to. Relevant changelog quote: From 98df0f4478385a88adcbe01edadaea5489a603cd Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:20:26 +0200 Subject: [PATCH 11/17] typo --- doc/PRE_UPGRADE_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/PRE_UPGRADE_fr.md b/doc/PRE_UPGRADE_fr.md index 8ee7a6e..a713c7b 100644 --- a/doc/PRE_UPGRADE_fr.md +++ b/doc/PRE_UPGRADE_fr.md @@ -1,2 +1,2 @@ GoToSocial prend un certain temps (de quelques secondes à plusieurs minutes) après chaque mise à jour afin de réaliser diverses choses, telles que les migrations ou des mises à jour dans la base de donnée. -Si votre instance est innaccessible, s'il vous plaît, faites preuve de patience et **ne le redémarrez pas** au risque de tout casser ! +Si votre instance est inaccessible, s'il vous plaît, faites preuve de patience et **ne le redémarrez pas** au risque de tout casser ! From 6aeedc76bd92990de66c5261a4d8176ccd282a28 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Fri, 14 Jun 2024 23:59:12 +0200 Subject: [PATCH 12/17] fix arch detection (broken since arch custom helper has been removed) --- scripts/restore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/restore b/scripts/restore index 2170b88..70cb023 100755 --- a/scripts/restore +++ b/scripts/restore @@ -69,7 +69,7 @@ ynh_script_progression --message="Setting up source files..." --weight=1 # compare if the system arch is different from the binary arch # if so, download the correct binary -if [ "$architecture" != "$(file "$install_dir"/gotosocial | cut -d ',' -f 2 | tr -d ' ')" ] +if [ "$YNH_ARCH" != "$(file "$install_dir"/gotosocial | cut -d ',' -f 2 | tr -d ' ')" ] then ynh_script_progression --message="Migrating binary architecture..." From 06a77c8bedfa9ebbf881be944880e55ff8f36158 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Sat, 15 Jun 2024 01:24:35 +0200 Subject: [PATCH 13/17] add the command to configure the 'accounts_registration_open' setting --- doc/PRE_UPGRADE.d/0.16.0~ynh1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/PRE_UPGRADE.d/0.16.0~ynh1.md b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md index 6edbb87..f0d1899 100644 --- a/doc/PRE_UPGRADE.d/0.16.0~ynh1.md +++ b/doc/PRE_UPGRADE.d/0.16.0~ynh1.md @@ -1,5 +1,5 @@ ⚠️ Starting with this 0.16.0 version, GoToSocial offers a registration page. -Please be sure you deactivated registrations if you don't want to. +Please be sure you deactivated registrations if you don't want to: `yunohost app config set gotosocial__2 main.accounts.accounts_registration_open` Relevant changelog quote: > **Sign up / registration**: In this release, you can open your instance to new registrations (aka sign-ups) via the new signup page at `https://__DOMAIN__/signup`. No more manually creating new users via the CLI :) From dc5edf6155dcfdd6150037fd589da0b06ce88c05 Mon Sep 17 00:00:00 2001 From: eric_G <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 15 Jun 2024 03:53:23 +0200 Subject: [PATCH 14/17] Remove technical stuff from description (#143) Co-authored-by: yunohost-bot Co-authored-by: OniriCorpe --- manifest.toml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/manifest.toml b/manifest.toml index d2dbb19..db47c4e 100644 --- a/manifest.toml +++ b/manifest.toml @@ -4,10 +4,10 @@ packaging_format = 2 id = "gotosocial" name = "GoToSocial" -description.en = "Fast ActivityPub social network server written in Go" -description.gl = "Un servidor áxil para a rede social ActivityPub escrito en Go" -description.ca = "Un servidor de xarxa social basat en ActivityPub escrit en GO" -description.fr = "Serveur de réseau social véloce basé sur ActivityPub écrit en Go" +description.en = "Fast ActivityPub social network server" +description.gl = "Un servidor áxil para a rede social ActivityPub" +description.ca = "Un servidor de xarxa social basat en ActivityPub" +description.fr = "Serveur de réseau social véloce basé sur ActivityPub" version = "0.15.0~ynh2" From dec1e8b938ce0acb0b51f1797aeacef96281e256 Mon Sep 17 00:00:00 2001 From: OniriCorpe Date: Mon, 17 Jun 2024 01:24:47 +0200 Subject: [PATCH 15/17] put the final 0.16.0 release binaries --- manifest.toml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/manifest.toml b/manifest.toml index db47c4e..1ff5728 100644 --- a/manifest.toml +++ b/manifest.toml @@ -9,7 +9,7 @@ description.gl = "Un servidor áxil para a rede social ActivityPub" description.ca = "Un servidor de xarxa social basat en ActivityPub" description.fr = "Serveur de réseau social véloce basé sur ActivityPub" -version = "0.15.0~ynh2" +version = "0.16.0~ynh1" maintainers = [ "OniriCorpe" ] @@ -89,14 +89,14 @@ default = true [resources] [resources.sources.main] in_subdir = false -i386.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_386.tar.gz" -i386.sha256 = "7755365763749148e6278ec728aa9cb0827537735ca142165ffda901118354b2" -amd64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_amd64.tar.gz" -amd64.sha256 = "49ebdf55af3aaaf8eb48a5d877a75acdf9f46154cdf960e39805c564a9f91b1c" -armhf.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_armv7.tar.gz" -armhf.sha256 = "24d631f2dc46dc73617d0c8db0cb4754d6cb8068112fa35ced2804e57069b1c0" -arm64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0-rc3/gotosocial_0.16.0-rc3_linux_arm64.tar.gz" -arm64.sha256 = "3a56ddb9babb6726e0980dec21b85859442b8247822e4388d3249c833aa3a830" +i386.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0/gotosocial_0.16.0_linux_386.tar.gz" +i386.sha256 = "185298e63b14159121ac92b8016afc52eb8c183ec0a82554d958a8f2ffea51cb" +amd64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0/gotosocial_0.16.0_linux_amd64.tar.gz" +amd64.sha256 = "73d1bd9a3a99777a2b67a69fa5f90e802cdaea3f39ddd76ff5d79c354a20dd7a" +armhf.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0/gotosocial_0.16.0_linux_armv7.tar.gz" +armhf.sha256 = "912406bd91fe0095ad01831529c4fd2fc4181d3fb6c40b0265607c15b98463df" +arm64.url = "https://github.com/superseriousbusiness/gotosocial/releases/download/v0.16.0/gotosocial_0.16.0_linux_arm64.tar.gz" +arm64.sha256 = "21de0f335f8f55fd966bfc2531fc69e874ec35967e74653ce522ee6ba817b179" autoupdate.asset.i386 = "gotosocial_.*linux_386.tar.gz$" autoupdate.asset.amd64 = "gotosocial_.*linux_amd64.tar.gz$" From 0fa169dbf5706b3541cd99d238270139bf3e654b Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sun, 16 Jun 2024 23:24:51 +0000 Subject: [PATCH 16/17] Auto-update READMEs --- README.md | 2 +- README_es.md | 2 +- README_eu.md | 2 +- README_fr.md | 2 +- README_gl.md | 2 +- README_zh_Hans.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 7707586..33d13b8 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ The documentation for this YunoHost package [can be read here](./doc/DOCS.md) an Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. -**Shipped version:** 0.15.0~ynh2 +**Shipped version:** 0.16.0~ynh1 ## Screenshots diff --git a/README_es.md b/README_es.md index d5f875a..224f772 100644 --- a/README_es.md +++ b/README_es.md @@ -26,7 +26,7 @@ The documentation for this YunoHost package [can be read here](./doc/DOCS.md) an Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. -**Versión actual:** 0.15.0~ynh2 +**Versión actual:** 0.16.0~ynh1 ## Capturas diff --git a/README_eu.md b/README_eu.md index 8333550..496f18f 100644 --- a/README_eu.md +++ b/README_eu.md @@ -26,7 +26,7 @@ The documentation for this YunoHost package [can be read here](./doc/DOCS.md) an Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. -**Paketatutako bertsioa:** 0.15.0~ynh2 +**Paketatutako bertsioa:** 0.16.0~ynh1 ## Pantaila-argazkiak diff --git a/README_fr.md b/README_fr.md index 573541c..284bbf2 100644 --- a/README_fr.md +++ b/README_fr.md @@ -26,7 +26,7 @@ La documentation de ce paquet YunoHost [est lisible ici](./doc/DOCS_fr.md) et l' Veuillez noter que ce paquet utilise la ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), veuillez la lire et l'accepter avant de procéder à l'installation. -**Version incluse :** 0.15.0~ynh2 +**Version incluse :** 0.16.0~ynh1 ## Captures d’écran diff --git a/README_gl.md b/README_gl.md index 8305c73..7f66899 100644 --- a/README_gl.md +++ b/README_gl.md @@ -26,7 +26,7 @@ The documentation for this YunoHost package [can be read here](./doc/DOCS.md) an Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. -**Versión proporcionada:** 0.15.0~ynh2 +**Versión proporcionada:** 0.16.0~ynh1 ## Capturas de pantalla diff --git a/README_zh_Hans.md b/README_zh_Hans.md index 2b3e759..ef81ee2 100644 --- a/README_zh_Hans.md +++ b/README_zh_Hans.md @@ -26,7 +26,7 @@ The documentation for this YunoHost package [can be read here](./doc/DOCS.md) an Please note that this package uses the ["i'm so tired" software license 1.0](https://github.com/YunoHost-Apps/gotosocial_ynh/blob/master/LICENSE), please read it and accept it before proceeding with installation. -**分发版本:** 0.15.0~ynh2 +**分发版本:** 0.16.0~ynh1 ## 截图 From 566bf5d1f53e69df432924e90147eaac30373356 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Pi=C3=A9dallu?= Date: Sun, 23 Jun 2024 13:31:28 +0200 Subject: [PATCH 17/17] Update READMEs --- README_es.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README_es.md b/README_es.md index 224f772..8d14b0b 100644 --- a/README_es.md +++ b/README_es.md @@ -32,7 +32,7 @@ Please note that this package uses the ["i'm so tired" software license 1.0](htt ![Captura de GoToSocial](./doc/screenshots/screenshot.png) -## :red_circle: funcionalidades no deseadas +## :red_circle: Características no deseables - **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. - **Not totally free package**: The YunoHost package of this app is under an overall free license, but with clauses that may restrict its use.