packages/mastodon/mastodon.install
2024-10-08 16:37:40 +00:00

28 lines
1.2 KiB
Text

post_install() {
echo "To setup Mastodon, enable and start PostgreSQL and Redis:
# systemctl enable --now postgresql redis
Create the Mastodon PostgreSQL user and grant it the ability to create databases with:
# sudo -u postgres createuser -d mastodon
Then, run:
# cd /var/lib/mastodon
# sudo chown mastodon:mastodon -R .
# sudo -u mastodon RAILS_ENV=production NODE_OPTIONS=--openssl-legacy-provider bundle exec rails mastodon:setup
Finally, enable and start all the required services:
# systemctl enable --now mastodon.target"
}
post_upgrade() {
cd /var/lib/mastodon
echo "For the 4.2 to 4.3 update, generate new encryption secrets:
# sudo -u mastodon sh -c \"cd /var/lib/mastodon && RAILS_ENV=production bin/rails db:encryption:init\"
And add them and MASTODON_USE_LIBVIPS=true to /etc/mastodon.conf"
echo "Setting ownership of mastodon files"
find -path ./public/system -prune -o -exec chown -h mastodon:mastodon {} +
echo "Upgrading database schema"
sudo -u mastodon RAILS_ENV=production bundle exec rails db:migrate
echo "Precompiling assets"
sudo -u mastodon corepack enable --install-directory . yarn
sudo -u mastodon RAILS_ENV=production NODE_OPTIONS=--openssl-legacy-provider PATH=$PATH:./ bundle exec rails assets:precompile
}