Tyler the Enginigger on Nostr: Thanks to some other fedi admins, moving from rebased backend to pleroma is pretty ...
Thanks to some other fedi admins, moving from rebased backend to pleroma is pretty straightforward.
I'm sure this isn't all encompassing, but you don't need to do any wild shit with database export and backup, you can just swap the backend and ecto migrations will take care of the rest.
# rebased -> stock pleroma backend
# assuming you are on rebased with soapbox fe
# do not run this as a shell script you fucking idiot, read the whole thing and use your brain
mv /opt/pleroma/ /opt/pleroma_rebased
mkdir /opt/pleroma
export FLAVOUR="x86-64"
sudo apt install elixir erlang-dev erlang-nox postgresql-16-rum imagemagick ffmpeg libimage-exiftool-perl
cd /opt/pleroma
chown pleroma .
sudo -Hu pleroma git clone -b stable https://git.pleroma.social/pleroma/pleroma /opt/pleroma
sudo -Hu pleroma mix deps.get
sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen # what you enter here doesn't really matter except for RUM indexing, just copy your config over from nano ../pleroma_rebased/config/prod.secret.exs to config/generated_config.exs
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}
nano config/setup_db.psql # delete the first couple lines making a new user and table with the wrong password
sudo -Hu postgres psql -f config/setup_db.psql
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate --migrations-path priv/repo/optional_migrations/rum_indexing/
sudo -Hu pleroma MIX_ENV=prod mix phx.server # test to make sure the shit works, will be pleroma frontend for now
nano /etc/systemd/system/pleroma.service # edit to make sure you aren't using a wrong erlang in your PATH or whatever. If you want to use the 'latest' you can use asdf version manager and install it in your pleroma directory.
# when redoing your service you'll need to
sudo -Hu pleroma curl -O https://dl.soapbox.pub/main/soapbox.zip
sudo -Hu pleroma busybox unzip soapbox.zip -o -d /opt/pleroma/instance/static # install soapbox frontend (will deletussy pleroma fe)
sudo -Hu pleroma cp -r /opt/pleroma_rebased/instance /opt/pleroma/instance # copy over your old about page and stuff
# I had issues with 404s for some icons like the instance icon, but that was probably either a js ssl issue because I didn't have a valid cert at the time or because I forgot something, idk
I'm sure this isn't all encompassing, but you don't need to do any wild shit with database export and backup, you can just swap the backend and ecto migrations will take care of the rest.
# rebased -> stock pleroma backend
# assuming you are on rebased with soapbox fe
# do not run this as a shell script you fucking idiot, read the whole thing and use your brain
mv /opt/pleroma/ /opt/pleroma_rebased
mkdir /opt/pleroma
export FLAVOUR="x86-64"
sudo apt install elixir erlang-dev erlang-nox postgresql-16-rum imagemagick ffmpeg libimage-exiftool-perl
cd /opt/pleroma
chown pleroma .
sudo -Hu pleroma git clone -b stable https://git.pleroma.social/pleroma/pleroma /opt/pleroma
sudo -Hu pleroma mix deps.get
sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen # what you enter here doesn't really matter except for RUM indexing, just copy your config over from nano ../pleroma_rebased/config/prod.secret.exs to config/generated_config.exs
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}
nano config/setup_db.psql # delete the first couple lines making a new user and table with the wrong password
sudo -Hu postgres psql -f config/setup_db.psql
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate --migrations-path priv/repo/optional_migrations/rum_indexing/
sudo -Hu pleroma MIX_ENV=prod mix phx.server # test to make sure the shit works, will be pleroma frontend for now
nano /etc/systemd/system/pleroma.service # edit to make sure you aren't using a wrong erlang in your PATH or whatever. If you want to use the 'latest' you can use asdf version manager and install it in your pleroma directory.
# when redoing your service you'll need to
sudo -Hu pleroma curl -O https://dl.soapbox.pub/main/soapbox.zip
sudo -Hu pleroma busybox unzip soapbox.zip -o -d /opt/pleroma/instance/static # install soapbox frontend (will deletussy pleroma fe)
sudo -Hu pleroma cp -r /opt/pleroma_rebased/instance /opt/pleroma/instance # copy over your old about page and stuff
# I had issues with 404s for some icons like the instance icon, but that was probably either a js ssl issue because I didn't have a valid cert at the time or because I forgot something, idk