Zeichenlimit erhöhen
Wir haben bei unserer Instanz das Zeichenlimit eines Tröts von 500 auf 1500 hochgesetzt.
Leider gibt es keine offizielle Möglichkeit dazu. Im Folgenden werden die Änderungen dokumentiert.
Änderungen
Änderungen grundsätzlich nach https://indented.space/2019/07/28/change-max-character-limit-for-mastodon-instance/ (nicht mehr genau 1:1 ausführbar zu neueren Versionen).
Von uns getestet mit Mastodon Version 3.3.0, 3.4.0, 3.4.5, 3.5.0, 3.5.1 und 3.5.3, 4.0.2, 4.1.1, 4.1.2.
Wichtig: Die Änderungen müssen ggf. bei jedem Upgrade ausgeführt werden. Die Zeilennummern haben sich teilweise in den Releases geändert. Aber grundsätzlich funktioniert es weiterhin. Siehe auch die Info zu „2. Datei bearbeiten“ weiter unten.
Zum user mastodon wechseln:
su - mastodon cd /home/mastodon/live
1. Datei bearbeiten
vi app/validators/status_length_validator.rb
Änderung in Zeile 4:
MAX_CHARS = 1500
Ab Mastodon-Version 4.0: Der folgende Teil („2. Datei bearbeiten“) scheint so nicht mehr zu funktionieren, aber auch nicht nötig zu sein. Deshalb weiter mit „3. Datei bearbeiten“.
2. Datei bearbeiten:
vi app/serializers/rest/instance_serializer.rb
Änderung in Zeile 8
:languages, :registrations, :approval_required, :invites_enabled, :max_toot_chars,
Einfügen in Zeile 66 after approval_required block:
def max_toot_chars 1500 end
3. Datei bearbeiten:
vi app/javascript/mastodon/features/compose/components/compose_form.js
Änderung in Zeile 91 (length(fulltext) > 1500):
return !(isSubmitting || isUploading || isChangingUpload || length(fulltext) > 1500 || (isOnlyWhitespace && !anyMedia));
Änderung in Zeile 243 (max={1500}):
<div className='character-counter__wrapper'><CharacterCounter max={1500} text={this.getFulltextForCharacterCounting()} /></div>
Zum Schluss noch ein precompile ausführen und als root Mastodon neustarten:
RAILS_ENV=production bundle exec rails assets:precompile exit # als root systemctl restart mastodon-*