Add docs about emoji stealing (#364)
authortimorl <timorl+akkomadev@disroot.org>
Fri, 30 Dec 2022 02:58:06 +0000 (02:58 +0000)
committerfloatingghost <hannah@coffee-and-dreams.uk>
Fri, 30 Dec 2022 02:58:06 +0000 (02:58 +0000)
I managed to steal some emoji, but I had to figure out the specifics the hard way. This should make it easier for future criminals.

Feel free to close if this documentation was omitted on purpose, I can imagine some reasons for why it might have.

Co-authored-by: timorl <timorl@disroot.org>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/364
Co-authored-by: timorl <timorl+akkomadev@disroot.org>
Co-committed-by: timorl <timorl+akkomadev@disroot.org>
docs/docs/configuration/custom_emoji.md

index a0a40f2946001b8c6b4cddd628c279c962bbdaa2..a883e8bf21c2720c4826b1a4d244e66ffcee32ca 100644 (file)
@@ -67,3 +67,29 @@ Priority of tags assigns in emoji.txt and custom.txt:
 Priority for globs:
 
 `special group setting in config.exs > default setting in config.exs`
+
+## Stealing emoji
+
+Managing your emoji can be hard work, and you just want to have the cool emoji your friends use? As usual, crime comes to the rescue!
+
+You can use the `Pleroma.Web.ActivityPub.MRF.StealEmojiPolicy` [Message Rewrite Facility](../configuration/cheatsheet.md#mrf) to automatically add to your instance emoji that messages from specific servers contain. Note that this happens on message processing, so the emoji will be added only after your instance receives some interaction containing emoji _after_ configuring this.
+
+To activate this you have to [configure](../configuration/cheatsheet.md#mrf_steal_emoji) it in your configuration file. For example if you wanted to steal any emoji that is not related to cinnamon and not larger than about 10K from `coolemoji.space` and `spiceenthusiasts.biz`, you would add the following:
+```elixir
+config :pleroma, :mrf,
+  policies: [
+    Pleroma.Web.ActivityPub.MRF.StealEmojiPolicy
+  ]
+
+config :pleroma, :mrf_steal_emoji,
+  hosts: [
+    "coolemoji.space",
+    "spiceenthusiasts.biz"
+  ],
+  rejected_shortcodes: [
+    ".*cinnamon.*"
+  ],
+  size_limit: 10000
+```
+
+Note that this may not obey emoji licensing restrictions. It's extremely unlikely that anyone will care, but keep this in mind for when Nintendo starts their own instance.