aboutsummaryrefslogtreecommitdiffstats
path: root/system
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-12-21 20:29:58 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-12-21 20:29:58 +0100
commitf0122c251abeb2fd5579e0e19c4b20721a35b4f4 (patch)
tree03c430b19f4ea37cf2f02e37d1ccbe395809eb94 /system
parentfix(modules/redlib): Change subdomain to `redlib` (diff)
downloadnixos-server-f0122c251abeb2fd5579e0e19c4b20721a35b4f4.zip
fix(system/services/mastodon): Update char patch to v4.3
Diffstat (limited to 'system')
-rw-r--r--system/services/mastodon/default.nix12
-rw-r--r--system/services/mastodon/patches/0001-feat-treewide-Increase-character-limit-to-5000-in-me.patch40
-rw-r--r--system/services/mastodon/patches/mastodon_v4.2.1-maxchar-5000.patch34
3 files changed, 47 insertions, 39 deletions
diff --git a/system/services/mastodon/default.nix b/system/services/mastodon/default.nix
index 8e2c174..f613bf3 100644
--- a/system/services/mastodon/default.nix
+++ b/system/services/mastodon/default.nix
@@ -4,17 +4,19 @@
...
}: let
emailAddress = "mastodon@vhack.eu";
+ applyPatches = pkg:
+ pkg.overrideAttrs (attrs: {
+ patches = (attrs.patches or []) ++ [./patches/0001-feat-treewide-Increase-character-limit-to-5000-in-me.patch];
+ });
in {
services.mastodon = {
enable = true;
- package = pkgs.mastodon.overrideAttrs (attrs: {
- patches = (attrs.patches or []) ++ [./patches/mastodon_v4.2.1-maxchar-5000.patch];
- });
+ package = applyPatches pkgs.mastodon;
# Unstable Mastodon package, used if
- #security updates aren't backported.
- #package = pkgs-unstable.mastodon;
+ # security updates aren't backported.
+ #package = applyPatches pkgs-unstable.mastodon;
localDomain = "vhack.eu";
smtp = {
diff --git a/system/services/mastodon/patches/0001-feat-treewide-Increase-character-limit-to-5000-in-me.patch b/system/services/mastodon/patches/0001-feat-treewide-Increase-character-limit-to-5000-in-me.patch
new file mode 100644
index 0000000..35dc809
--- /dev/null
+++ b/system/services/mastodon/patches/0001-feat-treewide-Increase-character-limit-to-5000-in-me.patch
@@ -0,0 +1,40 @@
+From ab67426c53d343eee349de501767ecbbf5d211ad Mon Sep 17 00:00:00 2001
+From: Benedikt Peetz <benedikt.peetz@b-peetz.de>
+Date: Sat, 21 Dec 2024 20:07:11 +0100
+Subject: [PATCH] feat(treewide): Increase character limit to 5000 in messages
+
+The default of 500 was just not enough.
+---
+ .../features/compose/containers/compose_form_container.js | 2 +-
+ app/validators/status_length_validator.rb | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/app/javascript/mastodon/features/compose/containers/compose_form_container.js b/app/javascript/mastodon/features/compose/containers/compose_form_container.js
+index bda2edba6..76ac65bf3 100644
+--- a/app/javascript/mastodon/features/compose/containers/compose_form_container.js
++++ b/app/javascript/mastodon/features/compose/containers/compose_form_container.js
+@@ -28,7 +28,7 @@ const mapStateToProps = state => ({
+ anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,
+ isInReply: state.getIn(['compose', 'in_reply_to']) !== null,
+ lang: state.getIn(['compose', 'language']),
+- maxChars: state.getIn(['server', 'server', 'configuration', 'statuses', 'max_characters'], 500),
++ maxChars: state.getIn(['server', 'server', 'configuration', 'statuses', 'max_characters'], 5000),
+ });
+
+ const mapDispatchToProps = (dispatch) => ({
+diff --git a/app/validators/status_length_validator.rb b/app/validators/status_length_validator.rb
+index dc841ded3..9cb1ec94b 100644
+--- a/app/validators/status_length_validator.rb
++++ b/app/validators/status_length_validator.rb
+@@ -1,7 +1,7 @@
+ # frozen_string_literal: true
+
+ class StatusLengthValidator < ActiveModel::Validator
+- MAX_CHARS = 500
++ MAX_CHARS = 5000
+ URL_PLACEHOLDER_CHARS = 23
+ URL_PLACEHOLDER = 'x' * 23
+
+--
+2.47.0
+
diff --git a/system/services/mastodon/patches/mastodon_v4.2.1-maxchar-5000.patch b/system/services/mastodon/patches/mastodon_v4.2.1-maxchar-5000.patch
deleted file mode 100644
index e48a993..0000000
--- a/system/services/mastodon/patches/mastodon_v4.2.1-maxchar-5000.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/app/javascript/mastodon/features/compose/components/compose_form.jsx b/app/javascript/mastodon/features/compose/components/compose_form.jsx
-index 9222b2dc8..962310a28 100644
---- a/app/javascript/mastodon/features/compose/components/compose_form.jsx
-+++ b/app/javascript/mastodon/features/compose/components/compose_form.jsx
-@@ -100,7 +100,7 @@ class ComposeForm extends ImmutablePureComponent {
- const fulltext = this.getFulltextForCharacterCounting();
- const isOnlyWhitespace = fulltext.length !== 0 && fulltext.trim().length === 0;
-
-- return !(isSubmitting || isUploading || isChangingUpload || length(fulltext) > 500 || (isOnlyWhitespace && !anyMedia));
-+ return !(isSubmitting || isUploading || isChangingUpload || length(fulltext) > 5000 || (isOnlyWhitespace && !anyMedia));
- };
-
- handleSubmit = (e) => {
-@@ -297,7 +297,7 @@ class ComposeForm extends ImmutablePureComponent {
- </div>
-
- <div className='character-counter__wrapper'>
-- <CharacterCounter max={500} text={this.getFulltextForCharacterCounting()} />
-+ <CharacterCounter max={5000} text={this.getFulltextForCharacterCounting()} />
- </div>
- </div>
- </div>
-diff --git a/app/validators/status_length_validator.rb b/app/validators/status_length_validator.rb
-index dc841ded3..9cb1ec94b 100644
---- a/app/validators/status_length_validator.rb
-+++ b/app/validators/status_length_validator.rb
-@@ -1,7 +1,7 @@
- # frozen_string_literal: true
-
- class StatusLengthValidator < ActiveModel::Validator
-- MAX_CHARS = 500
-+ MAX_CHARS = 5000
- URL_PLACEHOLDER_CHARS = 23
- URL_PLACEHOLDER = 'x' * 23 \ No newline at end of file