diff --git a/README.md b/README.md index fa352a0..c985c53 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,18 @@ # Mastodon for YunoHost -[![Latest Version](https://img.shields.io/badge/version-_--_-green.svg?style=flat)](https://github.com/YunoHost-Apps/mastodon_ynh/releases) +[![Latest Version](https://img.shields.io/badge/version-1.4.1-green.svg?style=flat)](https://github.com/YunoHost-Apps/mastodon_ynh/releases) [![Status](https://img.shields.io/badge/status-testing-yellow.svg?style=flat)](https://github.com/YunoHost-Apps/mastodon_ynh/milestones) [![Dependencies](https://img.shields.io/badge/dependencies-includes-lightgrey.svg?style=flat)](https://github.com/YunoHost-Apps/mastodon_ynh#dependencies) [![GitHub license](https://img.shields.io/badge/license-GPLv3-blue.svg?style=flat)](https://raw.githubusercontent.com/YunoHost-Apps/mastodon_ynh/master/LICENSE) [![Yunohost version](https://img.shields.io/badge/yunohost-2.5.6_tested-orange.svg?style=flat)](https://github.com/YunoHost/yunohost) [![GitHub issues](https://img.shields.io/github/issues/YunoHost-Apps/mastodon_ynh.svg?style=flat)](https://github.com/YunoHost-Apps/mastodon_ynh/issues) +:warning: MAJ 05/06/17 :Cette application peut maintenant fonctionner sur ARM, mais l'installation prend plusieurs heures et il faut ajouter un swapfile de 1Go. + :warning: Cette application utilise les packages backports de Debian, nous vous recommendons de ne pas installer cette application directement en production +:warning: UPDATE 05/06/17 :This app can work now on ARM, but installation takes several hours and you must add a swapfile of 1GB. + :warning: This application uses the Debian backports packages, do not install this application directly in production ## Mastodon c'est quoi ? @@ -17,27 +21,35 @@ Mastodon est un réseau social gratuit et open source. Une alternative décentra [Source code](https://github.com/tootsuite/mastodon) +#### Ajout d'un "swapfile" si vous avez moins de 2Go de RAM +``` +sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024000 +sudo chmod 600 /swapfile +sudo mkswap /swapfile +sudo swapon /swapfile +``` +ajouter cette ligne dans /etc/fstab +``` +/swapfile none swap sw 0 0 +``` + ### Installation -`$ sudo yunohost app install https://github.com/YunoHost-Apps/mastodon_ynh.git` - +#### 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écuperer l'installation après une deconnection: +``` +$ screen -d +$ screen -r +``` L'utilisateur admin est crée automatiquement comme: user@domain.tld -Une fois l'installation effectuée, vous pouvez créer un compte manuellement sur Mastodon depuis votre navigateur. Lorsque vous avez crée le premier utilisateur vous pouvez créer l'administrateur de votre Mastodon. Pour celà, il faut impérativement passer par une interface en ligne de commande et taper les commandes suivantes : - -**se connecter en sudo sur l'utilisateur** - -`$ sudo su mastodon` - -**se placer dans le répertoire où est installé Mastodon** - -`$ cd /opt/mastodon/live` - -**lancer la commande de création de l'administrateur** - -`$ RAILS_ENV=production bin/bundle exec rails mastodon:make_admin USERNAME=*Nom de votre utilisateur*` - ### Mise à jour +#### Utilisation de __screen__ fortement recommandé `$ sudo yunohost app upgrade --verbose mastodon -u https://github.com/YunoHost-Apps/mastodon_ynh.git` @@ -53,27 +65,34 @@ Mastodon is a free, open-source social network. A decentralized alternative to c [Source code](https://github.com/tootsuite/mastodon) +#### Adding "swapfile" If you have less than 2Go of RAM +``` +sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024000 +sudo chmod 600 /swapfile +sudo mkswap /swapfile +sudo swapon /swapfile +``` +add this line on /etc/fstab +``` +/swapfile none swap sw 0 0 +``` + ### Install - -`$ sudo yunohost app install https://github.com/YunoHost-Apps/mastodon_ynh.git` - +#### 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 +``` The admin user is automatically created as: user@domain.tld -After installation, you can create an account manually on Mastodon from your browser. When you have created the first user you can create the administrator of your Mastodon. For this, it is imperative to go through a command line and type the following commands: - -**sudo to the user** - -`$ sudo su mastodon` - -**change directory where Mastodon is installed** - -`$ cd /opt/mastodon/live` - -**launch the command to create the administrator** - -`$ RAILS_ENV=production bin/bundle exec rails mastodon:make_admin USERNAME=*username*` - ### Update +#### Using __screen__ highly recommended `$ sudo yunohost app upgrade --verbose mastodon -u https://github.com/YunoHost-Apps/mastodon_ynh.git` diff --git a/manifest.json b/manifest.json index fa2886b..ccf281d 100644 --- a/manifest.json +++ b/manifest.json @@ -9,7 +9,7 @@ "en": "Mastodon is a free, open-source social network.", "fr": "Mastodon est un réseau social gratuit et open source." }, - "version": "1.3.3", + "version": "1.4.7", "url": "https://github.com/tootsuite/mastodon", "license": "AGPL v3.0", "maintainer": { diff --git a/scripts/backup b/scripts/backup index a3971fd..e4a5bba 100644 --- a/scripts/backup +++ b/scripts/backup @@ -43,4 +43,5 @@ sudo su - postgres < mastodon_db.sql COMMANDS ynh_backup "/var/lib/postgresql/${app}_db.sql" "${app}_db.sql" -ynh_secure_remove /var/lib/postgresql/mastodon_db.sql +# Fix backup fail on yunohost 2.6 +#ynh_secure_remove /var/lib/postgresql/mastodon_db.sql diff --git a/scripts/install b/scripts/install index a0267ee..f769a8b 100644 --- a/scripts/install +++ b/scripts/install @@ -52,6 +52,13 @@ ynh_package_install postgresql postgresql-contrib # Install Ruby ynh_package_install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev +# Import debian archive pubkey, need on ARM arch +arch=$(uname -m) +if [[ $arch = arm* ]]; then + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553 + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010 +fi + # Install source.list debian package backports & yarn sudo cp ../conf/backports.list /etc/apt/sources.list.d/ sudo curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - @@ -95,8 +102,7 @@ CLONECOMMANDS # Switch branch to tagged release cd $final_path/live -url=$(curl -s https://api.github.com/repos/tootsuite/mastodon/releases/latest | sort -r | head -1 | cut -d\" -f4) -version=$(echo $url | cut -d/ -f8) +version=$(curl -s https://api.github.com/repos/tootsuite/mastodon/releases/latest | grep tag_name | cut -d\" -f4) sudo su - $app < 1.4.2 migration prepare_for_foreign_keys is needed +RAILS_ENV=production bundle exec rails mastodon:maintenance:prepare_for_foreign_keys RAILS_ENV=production bundle exec rails assets:clean RAILS_ENV=production bundle exec rails assets:precompile RAILS_ENV=production bundle exec rails db:migrate