1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/gotosocial_ynh.git synced 2024-09-03 19:16:06 +02:00

Merge branch 'testing' into packaging_v2

This commit is contained in:
Éric Gaspar 2023-04-19 18:44:29 +02:00
commit e9cd52755e
18 changed files with 455 additions and 58 deletions

View file

@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Fetch the source code - name: Fetch the source code
uses: actions/checkout@v2 uses: actions/checkout@v3
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
- name: Run the updater script - name: Run the updater script
@ -33,7 +33,7 @@ jobs:
- name: Create Pull Request - name: Create Pull Request
id: cpr id: cpr
if: ${{ env.PROCEED == 'true' }} if: ${{ env.PROCEED == 'true' }}
uses: peter-evans/create-pull-request@v3 uses: peter-evans/create-pull-request@v4
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Update to version ${{ env.VERSION }} commit-message: Update to version ${{ env.VERSION }}

View file

@ -6,6 +6,7 @@ It shall NOT be edited by hand.
# GoToSocial for YunoHost # GoToSocial for YunoHost
[![Integration level](https://dash.yunohost.org/integration/gotosocial.svg)](https://dash.yunohost.org/appci/app/gotosocial) ![Working status](https://ci-apps.yunohost.org/ci/badges/gotosocial.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/gotosocial.maintain.svg) [![Integration level](https://dash.yunohost.org/integration/gotosocial.svg)](https://dash.yunohost.org/appci/app/gotosocial) ![Working status](https://ci-apps.yunohost.org/ci/badges/gotosocial.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/gotosocial.maintain.svg)
[![Install GoToSocial with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=gotosocial) [![Install GoToSocial with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=gotosocial)
*[Lire ce readme en français.](./README_fr.md)* *[Lire ce readme en français.](./README_fr.md)*
@ -24,7 +25,7 @@ With GoToSocial, you can keep in touch with your friends, post, read, and share
Documentation is at [docs.gotosocial.org](https://docs.gotosocial.org). Documentation is at [docs.gotosocial.org](https://docs.gotosocial.org).
**Shipped version:** 0.6.0~ynh1 **Shipped version:** 0.8.1~ynh1
## Screenshots ## Screenshots
@ -96,8 +97,6 @@ To create a new user, proceed as follows:
``` bash ``` bash
./gotosocial --config-path config.yaml admin account create --username some_username --email someuser@example.org --password 'SomeLongAndComplicatedPassword' ./gotosocial --config-path config.yaml admin account create --username some_username --email someuser@example.org --password 'SomeLongAndComplicatedPassword'
./gotosocial --config-path config.yaml admin account confirm --username some_username
``` ```
And to promote them as an administrator of your instance: And to promote them as an administrator of your instance:
@ -112,7 +111,7 @@ And to promote them as an administrator of your instance:
## Documentation and resources ## Documentation and resources
* Official app website: <https://docs.gotosocial.org/> * Official app website: <https://gotosocial.org/>
* Official user documentation: <https://docs.gotosocial.org/en/latest/> * Official user documentation: <https://docs.gotosocial.org/en/latest/>
* Official admin documentation: <https://docs.gotosocial.org/en/latest/> * Official admin documentation: <https://docs.gotosocial.org/en/latest/>
* Upstream app code repository: <https://github.com/superseriousbusiness/gotosocial> * Upstream app code repository: <https://github.com/superseriousbusiness/gotosocial>

View file

@ -6,6 +6,7 @@ It shall NOT be edited by hand.
# GoToSocial pour YunoHost # GoToSocial pour YunoHost
[![Niveau dinté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) [![Niveau dinté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) [![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)* *[Read this readme in english.](./README.md)*
@ -24,7 +25,7 @@ Avec GoToSocial, vous pouvez rester en contact avec vos amis, publier, lire et p
Vous pouvez consulter la documentation à l'adresse : [docs.gotosocial.org](https://docs.gotosocial.org). Vous pouvez consulter la documentation à l'adresse : [docs.gotosocial.org](https://docs.gotosocial.org).
**Version incluse :** 0.6.0~ynh1 **Version incluse :** 0.8.1~ynh1
## Captures décran ## Captures décran
@ -96,8 +97,6 @@ Pour créer un nouveau compte utilisateur, procédez comme suit :
``` bash ``` 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 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 : Et pour promouvoir un compte en tant qu'administrateur de votre instance :
@ -112,7 +111,7 @@ Et pour promouvoir un compte en tant qu'administrateur de votre instance :
## Documentations et ressources ## Documentations et ressources
* Site officiel de lapp : <https://docs.gotosocial.org/> * Site officiel de lapp : <https://gotosocial.org/>
* Documentation officielle utilisateur : <https://docs.gotosocial.org/en/latest/> * Documentation officielle utilisateur : <https://docs.gotosocial.org/en/latest/>
* Documentation officielle de ladmin : <https://docs.gotosocial.org/en/latest/> * Documentation officielle de ladmin : <https://docs.gotosocial.org/en/latest/>
* Dépôt de code officiel de lapp : <https://github.com/superseriousbusiness/gotosocial> * Dépôt de code officiel de lapp : <https://github.com/superseriousbusiness/gotosocial>

View file

@ -5,7 +5,6 @@
;; Test complet ;; Test complet
; Manifest ; Manifest
domain="goto.domain.tld"
admin="xana" admin="xana"
email="user@example.com" email="user@example.com"
password="1Strong-Password" password="1Strong-Password"
@ -21,6 +20,7 @@
upgrade=1 from_commit=29c7d0df5dd6e3d90070f242b74cce980676cd72 upgrade=1 from_commit=29c7d0df5dd6e3d90070f242b74cce980676cd72
upgrade=1 from_commit=5c1c052995a10d899abcb0e4d4fa1c1dc35f84a5 upgrade=1 from_commit=5c1c052995a10d899abcb0e4d4fa1c1dc35f84a5
upgrade=1 from_commit=1b6c1c62e022f04afa02bf128f419e77a72bf1e9 upgrade=1 from_commit=1b6c1c62e022f04afa02bf128f419e77a72bf1e9
upgrade=1 from_commit=9a6d018337c7d83193282830ff9d9e9b0ae3a733
backup_restore=1 backup_restore=1
multi_instance=1 multi_instance=1
port_already_use=1 port_already_use=1
@ -35,3 +35,5 @@ Notification=none
name=v0.4.0~ynh1 name=v0.4.0~ynh1
; commit=1b6c1c62e022f04afa02bf128f419e77a72bf1e9 ; commit=1b6c1c62e022f04afa02bf128f419e77a72bf1e9
name=0.5.2~ynh2 name=0.5.2~ynh2
; commit=9a6d018337c7d83193282830ff9d9e9b0ae3a733
name=0.6.0~ynh1

View file

@ -1,7 +1,7 @@
SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.6.0/gotosocial_0.6.0_linux_arm64.tar.gz SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.8.1/gotosocial_0.8.1_linux_arm64.tar.gz
SOURCE_SUM=a97b3aad81f72b990e9982686e6906599522cc8ec442d1e2d02ebba03b125168 SOURCE_SUM=671d66a6c7cd6b96b7499bf3e6419a1c4cc9278ff532191c0bcecc025fd4a0db
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_EXTRACT=true SOURCE_EXTRACT=true
SOURCE_IN_SUBDIR=false SOURCE_IN_SUBDIR=false
SOURCE_FILENAME=gotosocial_0.6.0_linux_arm64.tar.gz SOURCE_FILENAME=gotosocial_0.8.1_linux_arm64.tar.gz

View file

@ -1,7 +1,7 @@
SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.6.0/gotosocial_0.6.0_linux_armv6.tar.gz SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.8.1/gotosocial_0.8.1_linux_armv6.tar.gz
SOURCE_SUM=10e3d227e738fd58ee6a1dca778667dbbc63933640a168b9cc5fc97203c7f26c SOURCE_SUM=207aed157dd418d6a4a7e4cff74de0724e08b0be24cf7208122988a2d9da44cc
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_EXTRACT=true SOURCE_EXTRACT=true
SOURCE_IN_SUBDIR=false SOURCE_IN_SUBDIR=false
SOURCE_FILENAME=gotosocial_0.6.0_linux_armv6.tar.gz SOURCE_FILENAME=gotosocial_0.8.1_linux_armv6.tar.gz

View file

@ -1,7 +1,7 @@
SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.6.0/gotosocial_0.6.0_linux_armv7.tar.gz SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.8.1/gotosocial_0.8.1_linux_armv7.tar.gz
SOURCE_SUM=e9f1cc03b18faeae2009781c6a2f6f9138c37aa85f4b2c5954c12a4798ed6208 SOURCE_SUM=54117d643829ec0c3a8e47d036d2485747d301299964dd33178308e560e1b265
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_EXTRACT=true SOURCE_EXTRACT=true
SOURCE_IN_SUBDIR=false SOURCE_IN_SUBDIR=false
SOURCE_FILENAME=gotosocial_0.6.0_linux_armv7.tar.gz SOURCE_FILENAME=gotosocial_0.8.1_linux_armv7.tar.gz

View file

@ -1,5 +1,5 @@
# GoToSocial # GoToSocial
# Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org # Copyright (C) 2021-2023 GoToSocial Authors admin@gotosocial.org
# This program is free software: you can redistribute it and/or modify # 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 # it under the terms of the GNU Affero General Public License as published by
@ -55,6 +55,11 @@ host: "__DOMAIN__"
# to "gts.example.org/.well-known/webfinger" so that GtS can handle them properly. # to "gts.example.org/.well-known/webfinger" so that GtS can handle them properly.
# #
# You should also redirect requests at "example.org/.well-known/nodeinfo" in the same way. # You should also redirect requests at "example.org/.well-known/nodeinfo" in the same way.
#
# You should also redirect requests at "example.org/.well-known/host-meta" in the same way. This endpoint
# is used by a number of clients to discover the API endpoint to use when the host and account domain are
# different.
#
# An empty string (ie., not set) means that the same value as 'host' will be used. # An empty string (ie., not set) means that the same value as 'host' will be used.
# #
# DO NOT change this after your server has already run once, or you will break things! # DO NOT change this after your server has already run once, or you will break things!
@ -77,9 +82,11 @@ protocol: "https"
# String. Address to bind the GoToSocial server to. # String. Address to bind the GoToSocial server to.
# This can be an IPv4 address or an IPv6 address (surrounded in square brackets), or a hostname. # This can be an IPv4 address or an IPv6 address (surrounded in square brackets), or a hostname.
# Default value will bind to all interfaces. # The default value will bind to all interfaces, which makes the server
# You probably won't need to change this unless you're setting GoToSocial up in some fancy way or # accessible by other machines. For most setups there is no need to change this.
# you have specific networking requirements. # If you are using GoToSocial in a reverse proxy setup with the proxy running on
# the same machine, you will want to set this to "localhost" or an equivalent,
# so that the proxy can't be bypassed.
# Examples: ["0.0.0.0", "172.128.0.16", "localhost", "[::]", "[2001:db8::fed1]"] # Examples: ["0.0.0.0", "172.128.0.16", "localhost", "[::]", "[2001:db8::fed1]"]
# Default: "0.0.0.0" # Default: "0.0.0.0"
bind-address: "0.0.0.0" bind-address: "0.0.0.0"
@ -163,6 +170,157 @@ db-tls-mode: "disable"
# Default: "" # Default: ""
db-tls-ca-cert: "" db-tls-ca-cert: ""
# Int. Number to multiply by CPU count to set permitted total of open database connections (in-use and idle).
# You can use this setting to tune your database connection behavior, though most admins won't need to touch it.
#
# Example values for multiplier 8:
#
# 1 cpu = 08 open connections
# 2 cpu = 16 open connections
# 4 cpu = 32 open connections
#
# Example values for multiplier 4:
#
# 1 cpu = 04 open connections
# 2 cpu = 08 open connections
# 4 cpu = 16 open connections
#
# A multiplier of 8 is a sensible default, but you may wish to increase this for instances
# running on very performant hardware, or decrease it for instances using v. slow CPUs.
#
# If you set the multiplier to less than 1, only one open connection will be used regardless of cpu count.
#
# PLEASE NOTE!!: This setting currently only applies for Postgres. SQLite will always use 1 connection regardless
# of what is set here. This behavior will change in future when we implement better SQLITE_BUSY handling.
# See https://github.com/superseriousbusiness/gotosocial/issues/1407 for more details.
#
# Examples: [16, 8, 10, 2]
# Default: 8
db-max-open-conns-multiplier: 8
# String. SQLite journaling mode.
# SQLite only -- unused otherwise.
# If set to empty string, the sqlite default will be used.
# See: https://www.sqlite.org/pragma.html#pragma_journal_mode
# Examples: ["DELETE", "TRUNCATE", "PERSIST", "MEMORY", "WAL", "OFF"]
# Default: "WAL"
db-sqlite-journal-mode: "WAL"
# String. SQLite synchronous mode.
# SQLite only -- unused otherwise.
# If set to empty string, the sqlite default will be used.
# See: https://www.sqlite.org/pragma.html#pragma_synchronous
# Examples: ["OFF", "NORMAL", "FULL", "EXTRA"]
# Default: "NORMAL"
db-sqlite-synchronous: "NORMAL"
# Byte size. SQlite cache size.
# SQLite only -- unused otherwise.
# If set to empty string or zero, the sqlite default (2MiB) will be used.
# See: https://www.sqlite.org/pragma.html#pragma_cache_size
# Examples: ["0", "2MiB", "8MiB", "64MiB"]
# Default: "8MiB"
db-sqlite-cache-size: "8MiB"
# Duration. SQlite busy timeout.
# SQLite only -- unused otherwise.
# If set to empty string or zero, the sqlite default will be used.
# See: https://www.sqlite.org/pragma.html#pragma_busy_timeout
# Examples: ["0s", "1s", "30s", "1m", "5m"]
# Default: "5s"
db-sqlite-busy-timeout: "5m"
cache:
# Cache configuration options:
#
# max-size = maximum cached objects count
# ttl = cached object lifetime
# sweep-freq = frequency to look for stale cache objects
# (zero will disable cache sweeping)
#############################
#### VISIBILITY CACHES ######
#############################
#
# Configure Status and account
# visibility cache.
visibility-max-size: 2000
visibility-ttl: "30m"
visibility-sweep-freq: "1m"
gts:
###########################
#### DATABASE CACHES ######
###########################
#
# Configure GTS database
# model caches.
account-max-size: 2000
account-ttl: "30m"
account-sweep-freq: "1m"
block-max-size: 100
block-ttl: "30m"
block-sweep-freq: "1m"
domain-block-max-size: 2000
domain-block-ttl: "24h"
domain-block-sweep-freq: "1m"
emoji-max-size: 2000
emoji-ttl: "30m"
emoji-sweep-freq: "1m"
emoji-category-max-size: 100
emoji-category-ttl: "30m"
emoji-category-sweep-freq: "1m"
follow-max-size: 2000
follow-ttl: "30m"
follow-sweep-freq: "1m"
follow-request-max-size: 2000
follow-request-ttl: "30m"
follow-request-sweep-freq: "1m"
media-max-size: 1000
media-ttl: "30m"
media-sweep-freq: "1m"
mention-max-size: 2000
mention-ttl: "30m"
mention-sweep-freq: "1m"
notification-max-size: 1000
notification-ttl: "30m"
notification-sweep-freq: "1m"
report-max-size: 100
report-ttl: "30m"
report-sweep-freq: "1m"
status-max-size: 2000
status-ttl: "30m"
status-sweep-freq: "1m"
status-fave-max-size: 2000
status-fave-ttl: "30m"
status-fave-sweep-freq: "1m"
tombstone-max-size: 500
tombstone-ttl: "30m"
tombstone-sweep-freq: "1m"
user-max-size: 500
user-ttl: "30m"
user-sweep-freq: "1m"
webfinger-max-size: 250
webfinger-ttl: "24h"
webfinger-sweep-freq: "1m"
###################### ######################
##### WEB CONFIG ##### ##### WEB CONFIG #####
###################### ######################
@ -200,6 +358,12 @@ instance-expose-peers: __INSTANCE_EXPOSE_PEERS__
# Default: false # Default: false
instance-expose-suspended: __INSTANCE_EXPOSE_SUSPENDED__ instance-expose-suspended: __INSTANCE_EXPOSE_SUSPENDED__
# Bool. Allow unauthenticated users to view /about/suspended,
# showing the HTML rendered list of instances that this instance blocks/suspends.
# Options: [true, false]
# Default: false
instance-expose-suspended-web: __INSTANCE_EXPOSE_SUSPENDED_WEB__
# Bool. Allow unauthenticated users to make queries to /api/v1/timelines/public in order # Bool. Allow unauthenticated users to make queries to /api/v1/timelines/public in order
# to see a list of public posts on this server. Even if set to 'false', then authenticated # to see a list of public posts on this server. Even if set to 'false', then authenticated
# users (members of the instance) will still be able to query the endpoint. # users (members of the instance) will still be able to query the endpoint.
@ -332,6 +496,8 @@ storage-local-base-path: "__DATA_DIR__"
# String. API endpoint of the S3 compatible service. # String. API endpoint of the S3 compatible service.
# Only required when running with the s3 storage backend. # Only required when running with the s3 storage backend.
# Examples: ["minio:9000", "s3.nl-ams.scw.cloud", "s3.us-west-002.backblazeb2.com"] # Examples: ["minio:9000", "s3.nl-ams.scw.cloud", "s3.us-west-002.backblazeb2.com"]
# GoToSocial uses "DNS-style" when accessing buckets.
# If you are using Scaleways object storage, please remove the "bucket name" from the endpoint address
# Default: "" # Default: ""
storage-s3-endpoint: "__STORAGE_S3_ENDPOINT__" storage-s3-endpoint: "__STORAGE_S3_ENDPOINT__"
@ -340,6 +506,13 @@ storage-s3-endpoint: "__STORAGE_S3_ENDPOINT__"
# Default: false # Default: false
storage-s3-proxy: __STORAGE_S3_PROXY__ storage-s3-proxy: __STORAGE_S3_PROXY__
# Bool. Use SSL for S3 connections.
#
# Only set this to 'false' when testing locally.
#
# Default: true
storage-s3-use-ssl: true
# String. Access key part of the S3 credentials. # String. Access key part of the S3 credentials.
# Consider setting this value using environment variables to avoid leaking it via the config file # Consider setting this value using environment variables to avoid leaking it via the config file
# Only required when running with the s3 storage backend. # Only required when running with the s3 storage backend.
@ -437,6 +610,22 @@ letsencrypt-cert-dir: "/gotosocial/storage/certs"
# Default: "" # Default: ""
letsencrypt-email-address: "" letsencrypt-email-address: ""
##############################
##### MANUAL TLS CONFIG #####
##############################
# String. Path to a PEM-encoded file on disk that includes the certificate chain
# and the public key
# Examples: ["/gotosocial/storage/certs/chain.pem"]
# Default: ""
tls-certificate-chain: ""
# String. Path to a PEM-encoded file on disk containing the private key for the
# associated tls-certificate-chain
# Examples: ["/gotosocial/storage/certs/private.pem"]
# Default: ""
tls-certificate-key: ""
####################### #######################
##### OIDC CONFIG ##### ##### OIDC CONFIG #####
####################### #######################
@ -482,7 +671,7 @@ oidc-client-secret: ""
# Array of string. Scopes to request from the OIDC provider. The returned values will be used to # Array of string. Scopes to request from the OIDC provider. The returned values will be used to
# populate users created in GtS as a result of the authentication flow. 'openid' and 'email' are required. # populate users created in GtS as a result of the authentication flow. 'openid' and 'email' are required.
# 'profile' is used to extract a username for the newly created user. # 'profile' is used to extract a username for the newly created user.
# 'groups' is optional and can be used to determine if a user is an admin (if they're in the group 'admin' or 'admins'). # 'groups' is optional and can be used to determine if a user is an admin based on oidc-admin-groups.
# Examples: See eg., https://auth0.com/docs/scopes/openid-connect-scopes # Examples: See eg., https://auth0.com/docs/scopes/openid-connect-scopes
# Default: ["openid", "email", "profile", "groups"] # Default: ["openid", "email", "profile", "groups"]
oidc-scopes: oidc-scopes:
@ -491,6 +680,18 @@ oidc-scopes:
- "profile" - "profile"
- "groups" - "groups"
# Bool. Link OIDC authenticated users to existing ones based on their email address.
# This is mostly intended for migration purposes if you were running previous versions of GTS
# which only correlated users with their email address. Should be set to false for most usecases.
# Options: [true, false]
# Default: false
oidc-link-existing: false
# Array of string. If the returned ID token contains a 'groups' claim that matches one of the
# groups in oidc-admin-groups, then this user will be granted admin rights on the GtS instance
# Default: []
oidc-admin-groups: []
####################### #######################
##### SMTP CONFIG ##### ##### SMTP CONFIG #####
####################### #######################
@ -501,30 +702,42 @@ oidc-scopes:
# If this is not set, smtp will not be used to send emails, and you can ignore the other settings. # If this is not set, smtp will not be used to send emails, and you can ignore the other settings.
# Examples: ["mail.example.org", "localhost"] # Examples: ["mail.example.org", "localhost"]
# Default: "" # Default: ""
smtp-host: "localhost" smtp-host: "__SMTP_HOST__"
# Int. Port to use to connect to the smtp server. # Int. Port to use to connect to the smtp server.
# Examples: [] # Examples: []
# Default: 0 # Default: 0
smtp-port: 25 smtp-port: __SMTP_PORT__
# String. Username to use when authenticating with the smtp server. # String. Username to use when authenticating with the smtp server.
# This should have been provided to you by your smtp host. # This should have been provided to you by your smtp host.
# This is often, but not always, an email address. # This is often, but not always, an email address.
# Examples: ["maillord@example.org"] # Examples: ["maillord@example.org"]
# Default: "" # Default: ""
smtp-username: "" smtp-username: "__SMTP_USERNAME__"
# String. Password to use when authenticating with the smtp server. # String. Password to use when authenticating with the smtp server.
# This should have been provided to you by your smtp host. # This should have been provided to you by your smtp host.
# Examples: ["1234", "password"] # Examples: ["1234", "password"]
# Default: "" # Default: ""
smtp-password: "" smtp-password: "__SMTP_PASSWORD__"
# String. 'From' address for sent emails. # String. 'From' address for sent emails.
# Examples: ["mail@example.org"] # Examples: ["mail@example.org"]
# Default: "" # Default: ""
smtp-from: "GoToSocial@__DOMAIN__" smtp-from: "__SMTP_FROM__"
# Bool. If true, when an email is sent that has multiple recipients, each recipient
# will be included in the To field, so that each recipient can see who else got the
# email, and they can 'reply all' to the other recipients if they want to.
#
# If false, email will be sent to Undisclosed Recipients, and each recipient will not
# be able to see who else received the email.
#
# It might be useful to change this setting to 'true' if you want to be able to discuss
# new moderation reports with other admins by 'replying-all' to the notification email.
# Default: false
smtp-disclose-recipients: __SMTP_DISCLOSE_RECIPIENTS__
######################### #########################
##### SYSLOG CONFIG ##### ##### SYSLOG CONFIG #####
@ -578,9 +791,8 @@ syslog-address: "localhost:514"
# Default: "lax" # Default: "lax"
advanced-cookies-samesite: "__ADVANCED_COOKIES_SAMESITE__" advanced-cookies-samesite: "__ADVANCED_COOKIES_SAMESITE__"
# Int. Amount of requests to permit from a single IP address within a span of 5 minutes. # Int. Amount of requests to permit per router grouping from a single IP address within
# If this amount is exceeded, a 429 HTTP error code will be returned. # a span of 5 minutes. 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, # If you find yourself adjusting this limit because it's regularly being exceeded,
# you should first verify that your settings for `trusted-proxies` (above) are correct. # you should first verify that your settings for `trusted-proxies` (above) are correct.
@ -594,3 +806,38 @@ advanced-cookies-samesite: "__ADVANCED_COOKIES_SAMESITE__"
# Examples: [1000, 500, 0] # Examples: [1000, 500, 0]
# Default: 1000 # Default: 1000
advanced-rate-limit-requests: __ADVANCED_RATE_LIMIT_REQUESTS__ advanced-rate-limit-requests: __ADVANCED_RATE_LIMIT_REQUESTS__
# Int. Amount of open requests to permit per CPU, per router grouping, before applying http
# request throttling. Any requests beyond the calculated limit are held in a backlog queue for
# up to 30 seconds before either being processed or timing out. Requests that don't fit in the backlog
# queue will have status 503 returned to them, and the header 'Retry-After' will be set to 30 seconds.
#
# Open request limit is available CPUs * multiplier; backlog queue limit is limit * multiplier.
#
# Example values for multiplier 8:
#
# 1 cpu = 08 open, 064 backlog
# 2 cpu = 16 open, 128 backlog
# 4 cpu = 32 open, 256 backlog
#
# Example values for multiplier 4:
#
# 1 cpu = 04 open, 016 backlog
# 2 cpu = 08 open, 032 backlog
# 4 cpu = 16 open, 064 backlog
#
# A multiplier of 8 is a sensible default, but you may wish to increase this for instances
# running on very performant hardware, or decrease it for instances using v. slow CPUs.
#
# If you set this to 0 or less, http request throttling will be disabled entirely.
#
# Examples: [8, 4, 9, 0]
# Default: 8
advanced-throttling-multiplier: 8
# Duration. Time period to use as the "retry-after" header value in response to throttled requests.
# Minimum resolution is 1 second.
#
# Examples: [30s, 10s, 5s, 1m]
# Default: 30s
advanced-throttling-retry-after: "30s"

View file

@ -1,7 +1,7 @@
SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.6.0/gotosocial_0.6.0_linux_386.tar.gz SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.8.1/gotosocial_0.8.1_linux_386.tar.gz
SOURCE_SUM=228cf5dac5f8fda9a9711963b6834ca782ed553207e78dc6f8132f30c4aa318f SOURCE_SUM=8d1436b1eab293e97f3de3572b3631da1efb12b23dc29ffcdb76b40f8f925a0c
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_EXTRACT=true SOURCE_EXTRACT=true
SOURCE_IN_SUBDIR=false SOURCE_IN_SUBDIR=false
SOURCE_FILENAME=gotosocial_0.6.0_linux_386.tar.gz SOURCE_FILENAME=gotosocial_0.8.1_linux_386.tar.gz

View file

@ -1,4 +1,3 @@
#sub_path_only rewrite ^__PATH__$ __PATH__/ permanent;
location __PATH__/ { location __PATH__/ {
proxy_http_version 1.1; proxy_http_version 1.1;

View file

@ -1,7 +1,7 @@
SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.6.0/gotosocial_0.6.0_linux_amd64.tar.gz SOURCE_URL=https://github.com/superseriousbusiness/gotosocial/releases/download/v0.8.1/gotosocial_0.8.1_linux_amd64.tar.gz
SOURCE_SUM=4d7e2a569b625e5854ff00f5c0574870a3643d74821cfe7f923e0408ff3db2fc SOURCE_SUM=32475bc78db64dbcfadb61b6c9b63542d9687fb9d42fa4c866f8136d86f8cf6d
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_EXTRACT=true SOURCE_EXTRACT=true
SOURCE_IN_SUBDIR=false SOURCE_IN_SUBDIR=false
SOURCE_FILENAME=gotosocial_0.6.0_linux_amd64.tar.gz SOURCE_FILENAME=gotosocial_0.8.1_linux_amd64.tar.gz

View file

@ -19,7 +19,7 @@ name = "Accounts config"
help = "Config pertaining to creation and maintenance of accounts on the server, as well as defaults for new accounts." help = "Config pertaining to creation and maintenance of accounts on the server, as well as defaults for new accounts."
[main.accounts.registration_open] [main.accounts.accounts_registration_open]
ask.en = "Open registrations?" ask.en = "Open registrations?"
ask.fr = "Inscriptions ouvertes ?" ask.fr = "Inscriptions ouvertes ?"
bind = "accounts-registration-open:__FINALPATH__/config.yaml" bind = "accounts-registration-open:__FINALPATH__/config.yaml"
@ -29,7 +29,7 @@ help.en = "Do we want people to be able to just submit sign up requests, or do w
help.fr = "Voulez-vous que les gens puissent simplement envoyer des demandes d'inscription, ou voulez-vous qu'iels doivent être invité-e-s ?" 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" type = "select"
[main.accounts.approval_required] [main.accounts.accounts_approval_required]
ask.en = "Approval required?" ask.en = "Approval required?"
ask.fr = "Validation requise ?" ask.fr = "Validation requise ?"
bind = "accounts-approval-required:__FINALPATH__/config.yaml" bind = "accounts-approval-required:__FINALPATH__/config.yaml"
@ -39,7 +39,7 @@ help.en = "Do sign up requests require approval from an admin/moderator before a
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.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 ?"
type = "select" type = "select"
[main.accounts.reason_required] [main.accounts.accounts_reason_required]
ask.en = "Reason required?" ask.en = "Reason required?"
ask.fr = "Motif requis ?" ask.fr = "Motif requis ?"
bind = "accounts-reason-required:__FINALPATH__/config.yaml" bind = "accounts-reason-required:__FINALPATH__/config.yaml"
@ -49,7 +49,7 @@ help.en = "Are sign up requests required to submit a reason for the request (eg.
help.fr = "Les demandes d'inscription doivent-elles être motivées (par exemple, par une explication de la raison pour laquelle la personne souhaite rejoindre l'instance) ?" help.fr = "Les demandes d'inscription doivent-elles être motivées (par exemple, par une explication de la raison pour laquelle la personne souhaite rejoindre l'instance) ?"
type = "select" type = "select"
[main.accounts.allow_custom_css] [main.accounts.accounts_allow_custom_css]
ask.en = "Allow custom CSS?" ask.en = "Allow custom CSS?"
ask.fr = "Autoriser le CSS personnalisé ?" ask.fr = "Autoriser le CSS personnalisé ?"
bind = "accounts-allow-custom-css:__FINALPATH__/config.yaml" bind = "accounts-allow-custom-css:__FINALPATH__/config.yaml"
@ -245,6 +245,16 @@ help.en = "Allow unauthenticated users to make queries to /api/v1/instance/peers
help.fr = "Permet aux utilisateurs non authentifiés d'effectuer des requêtes API sur /api/v1/instance/peers?filter=suspended afin de voir la liste des instances bloquées ou suspendues par votre instance. Cela permettra également aux utilisateurs non authentifiés de consulter la liste via l'interface Web. Même s'il est défini à 'false', les utilisateurs authentifiés (membres de l'instance) seront toujours en mesure d'interroger l'API." help.fr = "Permet aux utilisateurs non authentifiés d'effectuer des requêtes API sur /api/v1/instance/peers?filter=suspended afin de voir la liste des instances bloquées ou suspendues par votre instance. Cela permettra également aux utilisateurs non authentifiés de consulter la liste via l'interface Web. Même s'il est défini à 'false', les utilisateurs authentifiés (membres de l'instance) seront toujours en mesure d'interroger l'API."
type = "select" type = "select"
[main.instance.instance_expose_suspended_web]
ask.en = "API: Expose suspended on Web (/about/suspended)?"
ask.fr = "API : Exposer les instances bloquées sur le Web (/about/suspended) ?"
bind = "instance-expose-suspended-web:__FINALPATH__/config.yaml"
choices = ["true", "false"]
default = "false"
help.en = "Allow unauthenticated users to view /about/suspended, showing the HTML rendered list of instances that this instance blocks/suspends."
help.fr = "Permet aux utilisateurs non authentifiés d'afficher /about/suspended, montrant la liste rendue en HTML des instances que cette instance bloque ou suspend."
type = "select"
[main.instance.instance_expose_public_timeline] [main.instance.instance_expose_public_timeline]
ask.en = "API: Expose public timeline?" ask.en = "API: Expose public timeline?"
ask.fr = "API : Exposer la timeline publique ?" ask.fr = "API : Exposer la timeline publique ?"
@ -269,6 +279,73 @@ La livraison dans la boîte de réception partagée peut réduire de manière si
Voir : https://www.w3.org/TR/activitypub/#shared-inbox-delivery""" Voir : https://www.w3.org/TR/activitypub/#shared-inbox-delivery"""
type = "select" type = "select"
################
#### SMTP CONFIG
################
[main.smtp]
name = "SMTP config"
help = "Config for sending emails via an smtp server."
[main.smtp.smtp_host]
ask.en = "SMTP Server Hostname"
ask.fr = "Nom d'hôte du serveur SMTP"
bind = "smtp-host:__FINALPATH__/config.yaml"
default = "localhost"
help.en = "The hostname of the SMTP server you want to use. Examples: mail.example.org, localhost"
help.fr = "Le nom d'hôte du serveur SMTP que vous souhaitez utiliser. Exemples: mail.example.org, localhost"
type = "string"
[main.smtp.smtp_port]
ask.en = "SMTP Port"
ask.fr = "Port SMTP"
bind = "smtp-port:__FINALPATH__/config.yaml"
default = "25"
help.en = "Port to use to connect to the SMTP server"
help.fr = "Port à utiliser pour se connecter au serveur SMTP"
type = "number"
[main.smtp.smtp_username]
ask.en = "SMTP Username"
ask.fr = "Nom d'utilisateur SMTP"
bind = "smtp-username:__FINALPATH__/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"
[main.smtp.smtp_password]
ask.en = "SMTP Password"
ask.fr = "Mot de passe SMTP"
bind = "smtp-password:__FINALPATH__/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"
[main.smtp.smtp_from]
ask.en = "SMTP From Address"
ask.fr = "Adresse d'expédition SMTP"
bind = "smtp-from:__FINALPATH__/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"
[main.smtp.smtp_disclose_recipients]
ask.en = "SMTP Disclose Recipients"
ask.fr = "SMTP Divulguer les destinataires"
bind = "smtp-disclose-recipients:__FINALPATH__/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"
#################### ####################
#### ADVANCED SETTINGS #### ADVANCED SETTINGS
#################### ####################
@ -296,8 +373,8 @@ type = "select"
ask.en = "Amount of requests to permit from a single IP address within a span of 5 minutes." 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." 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:__FINALPATH__/config.yaml" bind = "advanced-rate-limit-requests:__FINALPATH__/config.yaml"
default = "1000" default = "300"
help.en = """Default: 1000\ help.en = """Default: 300\
If this amount is exceeded, a 429 HTTP error code will be returned.\ If this amount is exceeded, a 429 HTTP error code will be returned.\
See https://docs.gotosocial.org/en/latest/api/swagger/#rate-limit.\ 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.\ 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.\

View file

@ -62,8 +62,6 @@ To create a new user, proceed as follows:
``` bash ``` bash
./gotosocial --config-path config.yaml admin account create --username some_username --email someuser@example.org --password 'SomeLongAndComplicatedPassword' ./gotosocial --config-path config.yaml admin account create --username some_username --email someuser@example.org --password 'SomeLongAndComplicatedPassword'
./gotosocial --config-path config.yaml admin account confirm --username some_username
``` ```
And to promote them as an administrator of your instance: And to promote them as an administrator of your instance:

View file

@ -62,8 +62,6 @@ Pour créer un nouveau compte utilisateur, procédez comme suit :
``` bash ``` 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 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 : Et pour promouvoir un compte en tant qu'administrateur de votre instance :

View file

@ -6,11 +6,11 @@
"en": "ActivityPub social network server", "en": "ActivityPub social network server",
"fr": "Serveur de réseau social basé sur ActivityPub" "fr": "Serveur de réseau social basé sur ActivityPub"
}, },
"version": "0.6.0~ynh1", "version": "0.8.1~ynh1",
"url": "https://github.com/superseriousbusiness/gotosocial", "url": "https://github.com/superseriousbusiness/gotosocial",
"upstream": { "upstream": {
"license": "AGPL-3.0-only", "license": "AGPL-3.0-only",
"website": "https://docs.gotosocial.org/", "website": "https://gotosocial.org/",
"demo": "", "demo": "",
"admindoc": "https://docs.gotosocial.org/en/latest/", "admindoc": "https://docs.gotosocial.org/en/latest/",
"userdoc": "https://docs.gotosocial.org/en/latest/", "userdoc": "https://docs.gotosocial.org/en/latest/",

View file

@ -34,6 +34,7 @@ accounts_allow_custom_css="false"
instance_expose_peers="false" instance_expose_peers="false"
instance_expose_suspended="false" instance_expose_suspended="false"
instance_expose_suspended_web="false"
instance_expose_public_timeline="false" instance_expose_public_timeline="false"
instance_deliver_to_shared_inboxes="true" instance_deliver_to_shared_inboxes="true"
@ -58,8 +59,15 @@ statuses_poll_max_options="6"
statuses_poll_option_max_chars="50" statuses_poll_option_max_chars="50"
statuses_media_max_files="6" statuses_media_max_files="6"
smtp_host="localhost"
smtp_port="25"
smtp_username=""
smtp_password=""
smtp_from="noreply@$domain"
smtp_disclose_recipients="false"
advanced_cookies_samesite="lax" advanced_cookies_samesite="lax"
advanced_rate_limit_requests="1000" advanced_rate_limit_requests="300"
#================================================= #=================================================
# STORE SETTINGS FROM MANIFEST # STORE SETTINGS FROM MANIFEST
@ -86,6 +94,7 @@ ynh_app_setting_set --app="$app" --key=accounts_allow_custom_css --value="$accou
ynh_app_setting_set --app="$app" --key=instance_expose_peers --value="$instance_expose_peers" ynh_app_setting_set --app="$app" --key=instance_expose_peers --value="$instance_expose_peers"
ynh_app_setting_set --app="$app" --key=instance_expose_suspended --value="$instance_expose_suspended" ynh_app_setting_set --app="$app" --key=instance_expose_suspended --value="$instance_expose_suspended"
ynh_app_setting_set --app="$app" --key=instance_expose_suspended_web --value="$instance_expose_suspended_web"
ynh_app_setting_set --app="$app" --key=instance_expose_public_timeline --value="$instance_expose_public_timeline" ynh_app_setting_set --app="$app" --key=instance_expose_public_timeline --value="$instance_expose_public_timeline"
ynh_app_setting_set --app="$app" --key=instance_deliver_to_shared_inboxes --value="$instance_deliver_to_shared_inboxes" ynh_app_setting_set --app="$app" --key=instance_deliver_to_shared_inboxes --value="$instance_deliver_to_shared_inboxes"
@ -110,6 +119,13 @@ ynh_app_setting_set --app="$app" --key=statuses_poll_max_options --value="$statu
ynh_app_setting_set --app="$app" --key=statuses_poll_option_max_chars --value="$statuses_poll_option_max_chars" ynh_app_setting_set --app="$app" --key=statuses_poll_option_max_chars --value="$statuses_poll_option_max_chars"
ynh_app_setting_set --app="$app" --key=statuses_media_max_files --value="$statuses_media_max_files" ynh_app_setting_set --app="$app" --key=statuses_media_max_files --value="$statuses_media_max_files"
ynh_app_setting_set --app="$app" --key=smtp_host --value="$smtp_host"
ynh_app_setting_set --app="$app" --key=smtp_port --value="$smtp_port"
ynh_app_setting_set --app="$app" --key=smtp_username --value="$smtp_username"
ynh_app_setting_set --app="$app" --key=smtp_password --value="$smtp_password"
ynh_app_setting_set --app="$app" --key=smtp_from --value="$smtp_from"
ynh_app_setting_set --app="$app" --key=smtp_disclose_recipients --value="$smtp_disclose_recipients"
ynh_app_setting_set --app="$app" --key=advanced_cookies_samesite --value="$advanced_cookies_samesite" ynh_app_setting_set --app="$app" --key=advanced_cookies_samesite --value="$advanced_cookies_samesite"
ynh_app_setting_set --app="$app" --key=advanced_rate_limit_requests --value="$advanced_rate_limit_requests" ynh_app_setting_set --app="$app" --key=advanced_rate_limit_requests --value="$advanced_rate_limit_requests"
@ -157,7 +173,7 @@ chown -R "$app:www-data" "$install_dir"
#================================================= #=================================================
ynh_script_progression --message="Configuring NGINX web server..." --weight=1 ynh_script_progression --message="Configuring NGINX web server..." --weight=1
# Create a dedicated NGINX config # Create a dedicated NGINX config for the main domain
ynh_add_nginx_config ynh_add_nginx_config
#================================================= #=================================================

View file

@ -35,7 +35,7 @@ ynh_remove_systemd_config
#================================================= #=================================================
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1 ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
# Remove the dedicated NGINX config # Remove the dedicated NGINX config of the main domain
ynh_remove_nginx_config ynh_remove_nginx_config
#================================================= #=================================================

View file

@ -154,6 +154,68 @@ then
ynh_app_setting_set --app="$app" --key=advanced_rate_limit_requests --value="$advanced_rate_limit_requests" ynh_app_setting_set --app="$app" --key=advanced_rate_limit_requests --value="$advanced_rate_limit_requests"
fi fi
# Upgrade from <0.7.1~ynh1:
if ynh_compare_current_package_version --comparison lt --version 0.7.1~ynh1 || [ -z "$instance_expose_suspended_web" ]
then
# updating parameters
advanced_rate_limit_requests="300"
# declaration of new parameter
instance_expose_suspended_web="false"
# registration of parameters
ynh_app_setting_set --app="$app" --key=advanced_rate_limit_requests --value="$advanced_rate_limit_requests"
ynh_app_setting_set --app="$app" --key=instance_expose_suspended_web --value="$instance_expose_suspended_web"
fi
# Upgrade from <0.8.0~ynh2:
if ynh_compare_current_package_version --comparison lt --version 0.8.0~ynh2 || [ -z "$smtp_host" ]
then
# declaration of new parameter
smtp_host="localhost"
smtp_port="25"
smtp_username=""
smtp_password=""
smtp_from="noreply@$domain"
smtp_disclose_recipients="false"
# registration of parameters
ynh_app_setting_set --app="$app" --key=smtp_host --value="$smtp_host"
ynh_app_setting_set --app="$app" --key=smtp_port --value="$smtp_port"
ynh_app_setting_set --app="$app" --key=smtp_username --value="$smtp_username"
ynh_app_setting_set --app="$app" --key=smtp_password --value="$smtp_password"
ynh_app_setting_set --app="$app" --key=smtp_from --value="$smtp_from"
ynh_app_setting_set --app="$app" --key=smtp_disclose_recipients --value="$smtp_disclose_recipients"
fi
# Upgrade from <0.8.0~ynh3:
if ynh_compare_current_package_version --comparison lt --version 0.8.0~ynh3
then
# get settings from problem key
allow_custom_css=$(ynh_app_setting_get --app="$app" --key=allow_custom_css)
approval_required=$(ynh_app_setting_get --app="$app" --key=approval_required)
reason_required=$(ynh_app_setting_get --app="$app" --key=reason_required)
registration_open=$(ynh_app_setting_get --app="$app" --key=registration_open)
# apply setting to correct key if set on old key
if [ -n "$allow_custom_css" ]
then
ynh_app_setting_set --app="$app" --key=accounts_allow_custom_css --value="$allow_custom_css"
ynh_app_setting_delete --app="$app" --key=allow_custom_css
fi
if [ -n "$approval_required" ]
then
ynh_app_setting_set --app="$app" --key=accounts_approval_required --value="$approval_required"
ynh_app_setting_delete --app="$app" --key=approval_required
fi
if [ -n "$reason_required" ]
then
ynh_app_setting_set --app="$app" --key=accounts_reason_required --value="$reason_required"
ynh_app_setting_delete --app="$app" --key=reason_required
fi
if [ -n "$registration_open" ]
then
ynh_app_setting_set --app="$app" --key=accounts_registration_open --value="$registration_open"
ynh_app_setting_delete --app="$app" --key=registration_open
fi
fi
#================================================= #=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE # DOWNLOAD, CHECK AND UNPACK SOURCE
#================================================= #=================================================
@ -184,7 +246,7 @@ chown -R "$app:www-data" "$install_dir"
#================================================= #=================================================
ynh_script_progression --message="Upgrading NGINX web server configuration..." ynh_script_progression --message="Upgrading NGINX web server configuration..."
# Create a dedicated NGINX config # Create a dedicated NGINX config for the main domain
ynh_add_nginx_config ynh_add_nginx_config
#================================================= #=================================================