Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packaging v2 #399

Merged
merged 46 commits into from
Feb 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
4d58864
Convert to v2 (#383)
Tagadda Feb 22, 2024
b582859
Bump ynh version
Tagadda Jul 23, 2023
c42f188
Auto-update README
Tagadda Feb 22, 2024
cc7b683
Update manifest.toml
Tagadda Jul 24, 2023
77d4ee7
Update doc/PRE_INSTALL.md
Tagadda Jul 24, 2023
6e305ec
Add service setting for app shell
Tagadda Aug 1, 2023
b29a16e
Use logrotate
Tagadda Feb 22, 2024
9cb1a92
smtp config follow-up
Tagadda Aug 1, 2023
bf5c015
Fix mkdir failing if /var/log/mastodon already exists
Tagadda Aug 1, 2023
77ab635
upgrade: Rename database to match packaging v2
Tagadda Aug 1, 2023
9371b29
Bump 4.1.6~ynh2
Tagadda Aug 8, 2023
9d53d00
Auto-update README
Tagadda Feb 22, 2024
bbd5a36
Disable install.private test
Tagadda Aug 8, 2023
9d51788
remove full_domain
ericgaspar Aug 25, 2023
edb127c
4.1.7 (#403)
Tagadda Feb 22, 2024
6e02213
fix
Tagadda Sep 12, 2023
f67bb64
fix
Tagadda Sep 12, 2023
3adaec1
Don't swap when running on a LXC
Tagadda Sep 25, 2023
c8ef7d2
Hardcore the needed RAM
Tagadda Sep 25, 2023
8171b58
Auto-update README
Tagadda Feb 22, 2024
cb63471
Auto-update README
Tagadda Feb 22, 2024
862c509
Update manifest.toml
Tagadda Feb 22, 2024
e442791
Auto-update README
Tagadda Feb 22, 2024
dfa6e7c
Update _common.sh
ericgaspar Dec 17, 2023
c0e2b71
Auto-update README
Tagadda Feb 22, 2024
0d63141
cleaning
ericgaspar Dec 17, 2023
a411047
cleaning
ericgaspar Dec 17, 2023
e560903
Auto-update README
Tagadda Feb 22, 2024
8dcb897
Auto-update README
yunohost-bot Feb 22, 2024
8de398d
Update tests.toml
Tagadda Feb 22, 2024
b0305ff
Fix restore
Tagadda Feb 22, 2024
53bd9c1
Fix manifest.toml
Tagadda Feb 22, 2024
e9685f5
Auto-update README
yunohost-bot Feb 22, 2024
1d3087a
Merge branch 'testing' into v2
OniriCorpe Feb 24, 2024
2b92862
Auto-update README
yunohost-bot Feb 24, 2024
7cebe3a
add `tootctl self-destruct` info
OniriCorpe Feb 24, 2024
499d6dd
format
OniriCorpe Feb 24, 2024
0a878e4
Auto-update README
yunohost-bot Feb 24, 2024
9496f8d
lol autotranslate
OniriCorpe Feb 24, 2024
c2ff8d3
Merge branch 'v2' of https://github.com/YunoHost-Apps/mastodon_ynh in…
OniriCorpe Feb 24, 2024
2caac6b
break line
OniriCorpe Feb 24, 2024
27526bd
break lines
OniriCorpe Feb 24, 2024
9ae5e78
translation from french
OniriCorpe Feb 24, 2024
a944f3b
update version
OniriCorpe Feb 24, 2024
c31d9f3
Auto-update README
yunohost-bot Feb 24, 2024
823e833
Update manifest.toml
Tagadda Feb 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 0 additions & 107 deletions .github/workflows/updater.sh

This file was deleted.

49 changes: 0 additions & 49 deletions .github/workflows/updater.yml

This file was deleted.

46 changes: 2 additions & 44 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in

## Overview

Mastodon is a free, open-source microblogging social network. It is a decentralized alternative to commercial platforms like Twitter and avoids the risks of a single company monopolizing your communication for commercial purposes.
Mastodon is a free, open-source microblogging social network. It is a decentralized alternative to commercial platforms like Twitter and avoids the risks of a single company monopolizing your communication for commercial purposes.


**Shipped version:** 4.2.8~ynh1

Expand All @@ -26,49 +27,6 @@ Mastodon is a free, open-source microblogging social network. It is a decentrali

![Screenshot of Mastodon](./doc/screenshots/mastodon.png)

## Disclaimers / important information

## Important points to read before installing

1. **Mastodon** require a dedicated **root domain**, eg. mastodon.domain.tld
1. The user choosen during the installation is automatically created in Mastodon with admin rights
1. At the end of the installation a mail is sent to the user with the automatically generated password
1. It seems important to close the inscriptions for your Mastodon, so that it remains a private body. We invite you to block remote malicious instances from the administration interface. You can also add text on your home page.

## Configuration

### Install

#### Using *screen* in case of disconnect
```
$ sudo apt-get install screen
$ screen
$ sudo yunohost app install https://github.com/YunoHost-Apps/mastodon_ynh.git
```
Recover after disconnect:
```
$ screen -d
$ screen -r
```

### Update

#### Using *screen* highly recommended

`$ sudo yunohost app upgrade mastodon -u https://github.com/YunoHost-Apps/mastodon_ynh --debug `

### Administrate with tootctl

`$ (cd /var/www/mastodon/live && sudo -u mastodon RAILS_ENV=production PATH=/opt/rbenv/versions/mastodon/bin bin/tootctl --help)`

## YunoHost specific features

#### Multi-users support

LDAP authentication is activated. All YunoHost users can authenticate.

Log-out from YunoHost's portal doesn't log out from Mastodon. See https://github.com/YunoHost/issues/issues/501

## Documentation and resources

* Official app website: <https://joinmastodon.org/>
Expand Down
48 changes: 0 additions & 48 deletions README_fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,54 +27,6 @@ Mastodon est un réseau social de microblog auto-hébergé et open source. C'est

![Capture d’écran de Mastodon](./doc/screenshots/mastodon.png)

## Avertissements / informations importantes

## Points importants à lire avant l'installation

1. **Mastodon** nécessite un **nom de domaine** dédié, par exemple : mastodon.domain.tld
1. L'utilisateur sélectionné pendant l'installation sera créé automatiquement dans Mastodon avec des droits d'administration.
1. À la fin de l'installation, un mail est envoyé à cet utilisateur avec un mot de passe généré automatiquement.
1. Pour que votre instance Mastodon reste privée, il est important de fermer les inscriptions. Nous vous invitons à bloquer les instances distantes indésirables depuis l'interface d'administration. Vous pouvez également ajouter un texte sur votre page d'accueil dans l'administration.

## Captures d'écran

![](https://framalibre.org/sites/default/files/mastodon.png)

## Configuration

### Installation

#### Utilisation de *screen* en cas de déconnection
```
$ sudo apt-get install screen
$ screen
$ sudo yunohost app install https://github.com/YunoHost-Apps/mastodon_ynh.git
```
Récupérer l'installation après une deconnection :
```
$ screen -d
$ screen -r
```
L'utilisateur admin est créé automatiquement comme : user@domain.tld

### Mise à jour

#### Utilisation de *screen* fortement recommandée

`$ sudo yunohost app upgrade mastodon -u https://github.com/YunoHost-Apps/mastodon_ynh --debug `

### Administration avec tootctl

`$ (cd /var/www/mastodon/live && sudo -u mastodon RAILS_ENV=production PATH=/opt/rbenv/versions/mastodon/bin bin/tootctl --help)`

## Caractéristiques spécifiques YunoHost

#### Support multi-utilisateur

L'authentification LDAP est activée. Tous les utilisateurs YunoHost peuvent s'authentifier.

Se déconnecter depuis le portail YunoHost ne vous déconnecte pas de Mastodon. Voir https://github.com/YunoHost/issues/issues/501

## Documentations et ressources

* Site officiel de l’app : <https://joinmastodon.org/>
Expand Down
22 changes: 0 additions & 22 deletions check_process

This file was deleted.

41 changes: 21 additions & 20 deletions conf/.env.production.sample
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,14 @@ DB_NAME=__DB_NAME__
DB_PASS=__DB_PWD__
DB_PORT=5432

# ElasticSearch (optional)
# Elasticsearch (optional)
# ------------------------
# ES_ENABLED=true
# ES_HOST=es
ES_ENABLED=false
# ES_HOST=localhost
# ES_PORT=9200
# Authentication for ES (optional)
# ES_USER=elastic
# ES_PASS=password

# Secrets
# -------
Expand All @@ -54,17 +57,12 @@ VAPID_PUBLIC_KEY=__VAPID_PUBLIC_KEY__
# ------------
SMTP_SERVER=localhost
SMTP_PORT=25
#SMTP_LOGIN=
#SMTP_PASSWORD=
SMTP_FROM_ADDRESS=__ADMIN_MAIL__
#SMTP_REPLY_TO=
#SMTP_DOMAIN= # defaults to LOCAL_DOMAIN
SMTP_DELIVERY_METHOD=sendmail # delivery method can also be smtp
SMTP_AUTH_METHOD=none
#SMTP_CA_FILE=/etc/ssl/certs/ca-certificates.crt
SMTP_LOGIN=__APP__
SMTP_PASSWORD=__MAIL_PWD__
SMTP_FROM_ADDRESS=Mastodon <__APP__@__DOMAIN__>
SMTP_DELIVERY_METHOD=smtp
SMTP_AUTH_METHOD=plain
SMTP_OPENSSL_VERIFY_MODE=none
#SMTP_ENABLE_STARTTLS_AUTO=true
#SMTP_TLS=true

# Registrations
# ------------
Expand All @@ -80,16 +78,13 @@ DEFAULT_LOCALE=__LANGUAGE__

# File storage (optional)
# -----------------------
# S3_ENABLED=true
# S3_BUCKET=
S3_ENABLED=false
# S3_BUCKET=files.example.com
# AWS_ACCESS_KEY_ID=
# AWS_SECRET_ACCESS_KEY=
# S3_REGION=
# S3_PROTOCOL=http
# S3_HOSTNAME=192.168.1.123:9000
# S3_ALIAS_HOST=
# S3_ALIAS_HOST=files.example.com

# LDAP authentication (optional)
# IP and session retention
# -----------------------
LDAP_ENABLED=true
LDAP_HOST=localhost
Expand All @@ -105,3 +100,9 @@ LDAP_UID_CONVERSION_ENABLED=true
LDAP_UID_CONVERSION_SEARCH=., -
LDAP_UID_CONVERSION_REPLACE=_
LDAP_TLS_NO_VERIFY=true

# Make sure to modify the scheduling of ip_cleanup_scheduler in config/sidekiq.yml
# to be less than daily if you lower IP_RETENTION_PERIOD below two days (172800).
# -----------------------
IP_RETENTION_PERIOD=1209600
SESSION_RETENTION_PERIOD=1209600
7 changes: 0 additions & 7 deletions conf/app.src

This file was deleted.

10 changes: 5 additions & 5 deletions conf/cron
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This is a system cron file, see crontab(5)
# m h dom mon dow user command
@daily __APP__ cd __FINAL_PATH__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl media remove
@monthly __APP__ cd __FINAL_PATH__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl media remove-orphans
@monthly __APP__ cd __FINAL_PATH__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl accounts cull
@monthly __APP__ cd __FINAL_PATH__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl statuses remove
@monthly __APP__ cd __FINAL_PATH__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl preview_cards remove
@daily __APP__ cd __INSTALL_DIR__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl media remove
@monthly __APP__ cd __INSTALL_DIR__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl media remove-orphans
@monthly __APP__ cd __INSTALL_DIR__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl accounts cull
@monthly __APP__ cd __INSTALL_DIR__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl statuses remove
@monthly __APP__ cd __INSTALL_DIR__/live && __YNH_RUBY_LOAD_PATH__ __LD_PRELOAD__ RAILS_ENV=production bin/tootctl preview_cards remove
Loading