Ron<p>Uff. Während das Anpassen der erlaubten Zeichenzahl mittlerweile äußert simpel ist, nein, noch nicht so simpel, dass man das einfach in der Administrationsoberfläche machen kann, ist das Aktualisieren auf Mastodon 4.3.0 bzw. 4.3.1 von einer unter 4.3.0 liegenden Version nicht ganz so trivial. Insbesondere wenn man nebenbei auch Node.js, ruby etc. auf eine höhere Version bringen will.</p><p>Auf unserem Server, Illyachan, läuft Debian 11, Bullseye.</p><p>Ich halte die Pakete dabei mit den Bordeigenen Mitteln möglichst aktuell.</p><p>Trotzdem war Node.js und Ruby schon recht alt.</p><p>Die folgenden Schritte habe ich ausgeführt um am Ende bei Mastodon 4.3.1, Ruby 3.3.5p100, Yarn 4.5.1, Node.js 20.18.0 und npm 10.4.0 zu erhalten.<br>(Ich möchte nicht garantieren, dass die untenstehenden Befehle wirklich so bei jedem das Gleiche ergeben werden. Wenn es so einfach wäre, hätte ich inkl. Deinstallationen, Nachlesen und Fehler beseitigen nicht alles in allem 4 h gebraucht. Immerhin hat hier jemand im System herumgestochert, der eigentlich von nix ne Ahnung hat.)</p><p>Das "git stash" war notwendig, weil ich wegen der Zeichenbegrenzung Änderungen am Code vorgenommen hatte.</p><p>```<br>sudo npm install n -g <br>sudo n stable <br>sudo npm install -g npm@10.4.0 </p><p>sudo su mastodon <br>cd /home/mastodon/live <br>which ruby-build <br>ls "$(rbenv root)"/plugins git -C "$(rbenv root)"/plugins/ruby-build pull <br>RUBY_CONFIGURE_OPTS=--with-jemalloc rbenv install 3.3.5 <br>rbenv local 3.3.5 <br>yarn init -2 <br>yarn set version 4.5.1 </p><p>exit<br> <br>sudo reboot </p><p>sudo su mastodon <br> <br>git fetch --tags <br>git stash rm .yarnrc.yml <br>git checkout v4.3.0 <br>yarn install --frozen-lockfile <br>bundle install <br>yarn install --immutable <br>RAILS_ENV=production bin/rails db:encryption:init<br>```</p><p>Die drei ausgegebenen Variablen mit den Werten in die .env.production kopieren. </p><p>```<br>RAILS_ENV=production bundle exec rails assets:precompile<br>SKIP_POST_DEPLOYMENT_MIGRATIONS=true <br>SKIP_POST_DEPLOYMENT_MIGRATIONS=true <br>RAILS_ENV=production bundle exec rails db:migrate <br>RAILS_ENV=production bundle exec <br>rails db:migrate <br> <br>exit </p><p>sudo systemctl restart mastodon-sidekiq <br>sudo systemctl reload mastodon-web <br>sudo systemctl restart mastodon-streaming </p><p>sudo reboot<br>```</p><p>Die Installation war ein "voller Erfolg": Mastodon quittierte jeden Aufruf mit dem sicherlich jedem bekannten Fehlerbild. Ich hab das einfach ignoriert und mit der Installation von 4.3.1 weitergemacht. </p><p>```<br>sudo su mastodon cd /home/mastodon/live <br>git fetch --tags <br>git checkout v4.3.1 <br>bundle install <br>yarn install --frozen-lockfile <br>RAILS_ENV=production bundle exec rails assets:precompile </p><p>exit sudo </p><p>systemctl restart mastodon-sidekiq <br>sudo systemctl reload mastodon-web <br>sudo systemctl restart mastodon-streaming<br>```</p><p>Ein kurzer Test: Huch? Läuft. Dann ging es nur noch an die Aufhebung der Zeichenbegrenzung. Die hat übrigens Johannes Mirus sehr schön auf seiner Seite dokumentiert: <a href="https://1ppm.de/2024/07/zeichenlimit-bei-mastodon-erhoehen/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">1ppm.de/2024/07/zeichenlimit-b</span><span class="invisible">ei-mastodon-erhoehen/</span></a> </p><p>```<br>su - mastodon <br>cd /home/mastodon/live/app/validators/ <br>nano -w status_length_validator.rb<br>```</p><p>--> 3. Zeile: aus 500 mach 50000 (oder halt was anderes)</p><p>```<br>exit <br>sudo systemctl restart mastodon-sidekiq <br>sudo systemctl reload mastodon-web <br>sudo systemctl restart mastodon-streaming<br>```</p><p>So. läuft wieder.</p><p><a href="https://social.amichan.de/tags/mastodon" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mastodon</span></a> <a href="https://social.amichan.de/tags/update" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>update</span></a> <a href="https://social.amichan.de/tags/improvisieren" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>improvisieren</span></a> <a href="https://social.amichan.de/tags/probieren" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>probieren</span></a> <a href="https://social.amichan.de/tags/verzweifeln" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>verzweifeln</span></a> <a href="https://social.amichan.de/tags/schreien" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>schreien</span></a></p>