Skip to content

import sticker packs from telegram, to be used at the Maunium sticker picker for Matrix

License

Notifications You must be signed in to change notification settings

LuckyTurtleDev/mstickereditor

Repository files navigation

GitHub actions crates.io License Apache-2.0 Matrix chat AUR package

mstickereditor

Import sticker packs from telegram, to be used at the Maunium sticker picker for Matrix

Features:

  • import Stickerpacks from Telegram (including animated and video stickers)
  • enable Stickerpicker widget for supported Matrix Clients

Client Support for Animated Sticker:

Client gif webp(default) stickerpicker type
Cinny ponies
Element Desktop/Web widget
Element Android no autoplay widget
FluffyChat ponies
Nheko ponies
Schildi Desktop/Web widget
Schildi Android widget
mautrix-telegram-bridge static image only -

Other clients were not tested. (I am not assioted with Schildi, although they also love turtles)

Gif does not support semitransparent pixel, which probably leads to ugly effects, if the background of the client does not match the transparent_color.

Requirements:

Dependencies:

Configuration:

You need to create the following config.toml file (located at ~/.config/mstickereditor/config.toml) and enter your values:

[telegram]
bot_key = "YOUR-TELEGRAM-BOT-KEY"

[matrix]
user = "@user:matrix.org"
homeserver_url = "https://matrix-client.matrix.org"
access_token = "YOUR-MATIRX-ACESSTOKEN"

[sticker]
transparent_color = { r = 0, g = 0, b = 0, a = true }
animation_format = "webp"

The [sticker] section is optional and can be left out.

transparent_color is used as color for semitransparent pixel in gifs. The field has no effect, if the sticker is not animated or will be converted to webp (default). r,g,b must been between 0 and 255 inclusive.

animation_format: is used to convert the animated stickers to, you can either choose webp (default) or gif.

Installation:

For Arch Linux user or user of an Arch based distrubution an aur package is available.

Nix user can use the NUR package nur.repos.linyinfeng.mstickereditor.

Currently, there are no prebuild binaries available. So users of other platforms/distros must build mstickereditor by themselves. See below.

Building:

Install the following packages. (I recommand to use the package managment system of your operating system):

To build and install mstickereditor execute the following command:

cargo install --locked mstickereditor

Make sure that ~/.cargo/bin is listed in the PATH environment variable otherwise, the mstickereditor executable can not be found. Check out rust doc for more information about cargo install.