Skip to content
Extraits de code Groupes Projets
Valider fa8f756b rédigé par salixor's avatar salixor
Parcourir les fichiers

update README

parent 87bcf863
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
# Matrix Stickers # Matrix Stickers
Matrix-stickers est un dépôt créé pour regrouper les pack de stickers créés par les IIEns.
Il propose aussi plusieurs tutoriels afin d'installer un meilleur "stickerpicker", d'utiliser des packs de sticker `matrix-stickers` est un dépôt créé pour regrouper les pack de stickers créés par les IIEns.
ainsi que de les créer soi-même.
Salon d'aide : `##sticker:iiens.net` Il propose aussi plusieurs tutoriels afin d'installer un meilleur sélecteur de stickers (*stickerpicker*) que celui fournit par défaut sur Element, d'utiliser ces packs de stickers, ainsi que de les créer soi-même.
**Salon dédié : [https://matrix.to/#/##sticker:iiens.net](##sticker:iiens.net)**
**Table des matières** **Table des matières**
- [Utiliser le stickerpicker d'un ami](#user-content-utiliser-le-stickerpicker-dun-ami) - [Utiliser le stickerpicker d'un ami](#user-content-utiliser-le-stickerpicker-dun-ami)
...@@ -12,24 +14,30 @@ Salon d'aide : `##sticker:iiens.net` ...@@ -12,24 +14,30 @@ Salon d'aide : `##sticker:iiens.net`
- [Utilisation de stpkg](#utilisation-de-stpkg) - [Utilisation de stpkg](#utilisation-de-stpkg)
## Utiliser le stickerpicker d'un ami ## Utiliser le stickerpicker d'un ami
Si vous avez des amis ayant déjà leur propre stickerpicker, il est possible de le réutiliser. Si vous avez des amis ayant déjà leur propre stickerpicker, il est possible de le réutiliser.
Pour cela :
1. Demandez lui l'autorisation (ou non) 1. Demandez-lui l'autorisation (ou non)
2. Récupérez l'adresse sur laquelle il héberge ses stickers. Cette adresse est de la forme : 2. Récupérez l'adresse sur laquelle il héberge ses stickers. Cette adresse est généralement de la forme : `https://nom.iiens.net/stickerpicker/web/`
```bash 3. Sur Element, utilisez la commande `/devtools` dans n'importe quel salon
https://nom.iiens.net/stickerpicker/web/?theme=$theme
``` ![devtools](screenshots/screen_devtools.png)
3. Connectez vous à Element. Utilisez la commande `/devtools`
4. Cliquer sur `Explorer les données du compte` puis sur `m.widgets`. Si absent : 1. Activer le gestionnaire d'intégration. 4. Cliquez sur `Explorer les données du compte` puis sur `m.widgets` - Si `m.widgets` est absent :
`Tout les paramètres -> général -> Gérer les intégrations` 2. Envoyer n'importe quel sticker. 1. Activer le gestionnaire d'intégration : `Tous les paramètres -> Général -> Gérer les intégrations`
5. Cliquer sur `Modifier` et remplacer tout par le code suivant en n'oubliant pas de modifier 2. Envoyer un sticker quelconque
les champs "url" et "sender":
![devtools1](screenshots/devtools.png)
5. Cliquez sur `Modifier` et remplacez tout par le code qui suit - Pensez à modifier les champs `url` et `sender` (remplacer les données entre `{%%}`)
6. Relancez le client
```json ```json
{ {
"stickerpicker": { "stickerpicker": {
"content": { "content": {
"type": "m.stickerpicker", "type": "m.stickerpicker",
"url": "https://{% nom de domaine %}/stickerpicker/web/?theme=$theme", "url": "https://{% nom de domaine %}/stickerpicker/web/",
"name": "Stickerpicker", "name": "Stickerpicker",
"data": {} "data": {}
}, },
...@@ -40,123 +48,81 @@ Pour cela : ...@@ -40,123 +48,81 @@ Pour cela :
} }
} }
``` ```
Il faut remplacer les données entre `{%%}` par ce qu'il correspond à votre compte / installation.
6. Actualiser
## Avoir un meilleur stickerpicker ## Avoir un meilleur stickerpicker
Le stickerpicker de base ne permet pas d'utiliser des stickers personnalisés.
Il faut donc installer notre propre stickerpicker qui pourra les utiliser. Le stickerpicker de base fournit par Element ne permet pas d'utiliser des stickers personnalisés. Il faut donc installer notre propre stickerpicker qui pourra les utiliser. On l'hébergera ici sur votre perso Arise, mais il est bien évidemment possible de l'héberger ailleurs.
Pour cela:
1. Se connecter à son perso ou son site web 1. Se connecter à son perso (ou son site web)
```bash ```bash
ssh nomArise@perso.iiens.net ssh identifiantArise@perso.iiens.net
``` ```
2. Cloner ce dépôt. 2. Cloner le dépôt
```bash ```bash
git clone https://git.iiens.net/Tigriz/matrix-stickers.git git clone https://git.iiens.net/Tigriz/matrix-stickers.git
``` ```
3. Se déplacer dans le dépôt et exécuter le script `stpkg` 3. Se déplacer dans le dossier du dépôt et exécuter le script `stpkg`
```bash ```bash
cd matrix-stickers cd matrix-stickers
./stpkg -install ./stpkg -install
# ou pour une installation avec sshfs (cf "Utilisation de stpkg") # ou pour une installation avec sshfs (cf "Utilisation de stpkg")
./stpkg -install -sshfs nomAAAA@perso.iiens.net -local ~/mnt/perso ./stpkg -install -sshfs nomAAAA@perso.iiens.net -local ~/mnt/perso
``` ```
4. Se connecter à Element. Utiliser la commande `/devtools` dans n'importe quel tchat.
![devtools](screenshots/screen_devtools.png)
5. Cliquer sur `Explorer les données du compte` puis sur `m.widgets`.
- Si `m.widgets` est absent, il faut activer le gestionnaire d'intégration dans `Tout les paramètres -> Général -> Gerer les intégrations`.
Ensuite il faut clicker sur `Envoyer` plutôt que `Modifier` dans le point suivant.
![devtools1](screenshots/devtools.png)
6. Cliquer sur `Modifier` (ou `Modifier`, cf point 5) et remplacer tout par le code suivant en n'oubliant pas de modifier
les champs "url" et "sender" avec les infos correspondantes :
```json
{
"stickerpicker": {
"content": {
"type": "m.stickerpicker",
"url": "https://{% nom de domaine %}/stickerpicker/web/?theme=$theme",
"name": "Stickerpicker",
"data": {}
},
"sender": "@{% id %}:{% homeserver %}",
"state_key": "stickerpicker",
"type": "m.widget",
"id": "stickerpicker"
}
}
```
Il faut remplacer les données entre `{%%}` par ce qu'il correspond à votre compte / installation.
7. Actualiser Element Vous avez maintenant hébergé votre propre stickerpicker. Pour l'utiliser, se référer au [paragraphe précédent](#user-content-utiliser-le-stickerpicker-dun-ami) !
Vous avez maintenant un stickerpicker pouvant envoyer des stickers privacy\_pam.
## Utiliser un pack de sticker ## Utiliser un pack de sticker
Dans le dossier `pack` de ce dépôt sont regroupés tout les packs de sticker créé par des IIEns.
Pour les utiliser, vous devez déjà avoir installé votre propre stickerpicker (étape précédente). Dans le dossier `packs` de ce dépôt sont regroupés tous les packs de stickers créés ou compilés par des IIEns.
Pour en ajouter un dans le stickerpicker, allez voir ce
[tutoriel](https://git.iiens.net/Tigriz/matrix-stickers/-/tree/master/packs). La sélection des packs que vous voulez utiliser nécessite d'[héberger soi-même]((#user-content-avoir-un-meilleur-stickerpicker)) son propre stickerpicker (sinon, vous êtes limités aux choix de la personne qui l'héberge).
Plus d'informations dans le [dossier en question](/packs).
## Créer des packs de stickers ## Créer des packs de stickers
Avec le nouveau stickerpicker installé, il est possible de créer ses propres packs de stickers.
Un pack de stickers se résume à un fichier json possédant des informations précises sur les images téléversées. Un pack de stickers se résume à un fichier `.json` contenant des informations sur des images téléversées sur un serveur Matrix. Il existe deux méthodes pour le faire.
- Note 1 : Il est conseillé de créer un compte secondaire sur matrix.org pour créer les packs de stickers.
Si vous utilisez votre compte Arise, il est possible que vos packs ne soient plus disponibles. En effet Arise Avant de commencer, deux points pour les utilisateurs Arise :
libère de la place aléatoirement quand c'est nécessaire. Pour se créer un compte sur matrix.org, rendez vous - Il est conseillé de créer un compte secondaire sur [`matrix.org`](https://app.element.io/#/register) pour créer les packs de stickers. Arise peut libérer de la place aléatoirement quand c'est nécessaire, et les stickers risquent d'être perdus. L'endroit d'hébergement n'influe pas sur l'utilisation des stickers, et ceux-ci peuvent donc être hébergés sur n'importe quel homeserver.
[ici](https://app.element.io/#/register). Même si vos stickers sont hébergés sur votre compte secondaire, vous - Il est déconseillé de générer les packs sur `perso.iiens.net`, car le paquet "ImageMagick" n'est pas à jour (impossible de le mettre à jour), et casse la transparence de vos images. Préférez le faire sur votre machine, ou bien recompilez le paquet à la main.
pourrez toujours utiliser le stickerpicker et envoyer les stickers avec votre compte Arise.
- Note 2 : Il est déconseillé d'effectuer cette étape sur perso.iiens.net. Préférez le faire sur votre machine car ### Méthode automatique via `stpkg` (À privilégier)
cette étape nécessite le paquet "ImageMagick" qui n'est pas à jour sur perso.iiens.net (impossible de le mettre à jour)
et casse la transparence de vos images. Si vous souhaitez tout de même le faire sur perso.iiens.net, vous pouvez **Requis** : *ImageMagick* (en tant que root : `apt install imagemagick` / `pacman -S imagemagick`)
recompiler à la main le paquet, je vous laisse chercher comment faire.
Ce script suppose que vous avez déjà créé le/les dossiers regroupant les images que vous souhaitez utiliser.
Pour créer ce ficher json et téléverser ses images, il existe deux méthodes :
### Méthode automatique (Recommandé)
**Via stpkg**
**Requis** : *ImageMagick* (en tant que root : `apt install imagemagick`/`pacman -S imagemagick`).
Ce script suppose que vous avez déjà créer un ou plusieurs dossiers regroupant les images que vous souhaitez utiliser en sticker.
Le nom du dossier définira le nom du pack, et les images s'y trouvant deviendront les stickers du pack.
1. Cloner ce dépôt 1. Cloner ce dépôt
```bash ```bash
git clone https://git.iiens.net/Tigriz/matrix-stickers.git git clone https://git.iiens.net/Tigriz/matrix-stickers.git
``` ```
2. Se connecter à Element et récupérer l'**access token** de son compte en allant dans 2. Ajouter `stpkg` à son `PATH` (Optionnel)
`Tout les paramètres` -> `Aide & À propos` -> `Avancé`. Dans la dernière ligne `Jeton d'accès` cliquer pour l'afficher. 3. Se connecter à Element, et récupérer le jeton d'accès de son compte en allant dans `Tous les paramètres -> Aide & À propos -> Avancé -> Jeton d'accès`
3. Utilisez la commande `stpkg pack`, vous devriez avoir `stpkg` dans votre path à ce moment 4. Utiliser la commande `stpkg pack`
```bash ```bash
# on détéctant le nom du pack # En stockant l'access token dans une variable de votre shell
read ACCESS_TOKEN # coller l'acces token puis faire "entrer" read ACCESS_TOKEN # coller l'acces token puis faire "entrer"
stpkg pack -t $ACCESS_TOKEN directory stpkg pack -t $ACCESS_TOKEN [name] <directory> # si [name] n'est pas fourni, le nom du pack sera le nom du dossier par défaut
# ou en spécifiant le nom du pack
read ACCESS_TOKEN # Sans stocker l'access token dans une variable de votre shell
stpkg pack -t $ACCESS_TOKEN name directory stpkg pack [name] <directory>
# ou sans stocker l'access token dans une variable de votre shell
stpkg pack name directory # l'access token vous sera demandé, coller puis faire "entrer"
```
4. Vous pouvez activer le pack créé avec la commande `stpkg add <nom du pack>`.
- Note : Le dossier `directory` correpond au dossier contenant vos images à téléverser.
Le script `stpkg` va créer un dossier dans les packs du repo contenant trois fichiers :
- nomdupack.json : le json des stickers téléversés, rognés, de taille 128x128, sans palette indexée (qui casse la transparence)
- preview.png : une prévisualisation des images en mosaïque avec **ImageMagick**
- README.md: Permet d'afficher les stickers du pack dans git
**Facultatif :** allez dans le dossier du repo des stickers, faites un commits et une merge request pour contribuer.
Pensez à demander l'accès à un fork déjà existant plustôt que de créer
le votre pour économiser de la place, les disques c'est pas gratuit.
**Tips**
```bash
git clone https://git.iiens.net/Tigriz/matrix-stickers
scp matrix-stickers/packs/*/*.json nom0000@perso.iiens.net:html/stickerpicker/web/packs
``` ```
5. Activer le pack créé avec la commande `stpkg add <nom du pack>`
Le script `stpkg` va créer un dossier dans le dossier `packs` du dépôt contenant trois fichiers :
- `nomdupack.json` : le `.json` des stickers téléversés, rognés, de taille 128x128, sans palette indexée (qui casse la transparence)
- `preview.png` : une prévisualisation des images en mosaïque avec **ImageMagick**
- `README.md`: affiche la prévisualisation (pour Gitlab notamment)
### Méthode intermédiaire
En utilisant le [`matrixpack.sh <token> <homeserver> <directory>`](/matrixpack.sh).
### Méthode manuelle ### Méthode manuelle (À éviter)
1. Téléverser une image dans un salon non-chiffré
**Ne le faites pas sur le serveur Matrix d'Arise, les admins peuvent suppriment les images pour libérer de 1. Téléverser une image dans un salon non chiffré
la place, mais ça n'a jamais été fait (source : Nitorac & Kubat)**. De manière générale pensez à compresser 2. Commencer votre fichier `.json` de cette façon :
un peu vos images avant de les upload, les disques c'est pas gratuit.
2. Commencer votre fichier json de cette façon
```json ```json
{ {
"title": "{% titre du pack %}", "title": "{% titre du pack %}",
...@@ -166,36 +132,35 @@ scp matrix-stickers/packs/*/*.json nom0000@perso.iiens.net:html/stickerpicker/we ...@@ -166,36 +132,35 @@ scp matrix-stickers/packs/*/*.json nom0000@perso.iiens.net:html/stickerpicker/we
] ]
} }
``` ```
3. Cliquer sur les ... du message, `Voir source`, copier le code correspondant à celui ci-dessous et le coller entre les crochets du fichier json 3. Cliquer sur les `…` du message puis `Voir source`, pour copier la section `content` de cette source
*Exemple* 4. Le bloc de JSON doit ressembler à ceci, avec le `id` et le `msgtype` modifié par vos soins
```json ```json
{ {
"body": "boom_ni.gif", "body": "boom_ni.gif", // vous pouvez changer cette valeur
"info": { "info": {
"size": 3080290, "mimetype": "image/gif", // dépend du type d'image envoyée
"mimetype": "image/gif", "w": 498, // vous pouvez changer cette valeur
"thumbnail_info": { "h": 498, // vous pouvez changer cette valeur
"w": 498,
"h": 498,
"mimetype": "image/png",
"size": 194660
},
"w": 498,
"h": 498,
"thumbnail_url": "mxc://tedomum.net/LyJmspAoLIOBPHUzqwwEBzmH" "thumbnail_url": "mxc://tedomum.net/LyJmspAoLIOBPHUzqwwEBzmH"
}, },
"msgtype": "m.image", "msgtype": "m.image", // à remplacer en "m.sticker"
"url": "mxc://tedomum.net/LSJhWayzyrbIkntHxnThICKQ" "url": "mxc://tedomum.net/LSJhWayzyrbIkntHxnThICKQ",
"id": "une valeur à définir par vous même" // à définir par vous-même
} }
``` ```
**Attention** : ajouter `"id" : "Ce que vous voulez"` après le champ `url`. Il est important de ne pas l'oublier sinon les stickers de s'enverront pas. 5. Coller ce bloc JSON dans la liste `stickers` du `.json` de l'étape 2
4. Répéter jusqu'à avoir tous les stickers voulu dans le pack 6. Répéter jusqu'à avoir tous les stickers voulu dans le pack
5. Ajouter le json à index.json 7. Ajouter le `.json` à `index.json`
### Contribuer
Vous pouvez maintenant faire un commit avec ces nouveaux fichiers, et une merge request pour contribuer au dépôt !
Pensez à demander l'accès à un fork déjà existant, plutôt que de créer le votre, pour économiser de la place (les disques, c'est pas gratuit).
## Utilisation de stpkg ## Utilisation de stpkg
La commande `stpkg` a besoin des executables `egrep` (ou `grep` si indisponible),
`sponge` et `jq`. Il faut donc les installer ou les recompiler sur votre machine La commande `stpkg` a besoin des executables `egrep` (ou `grep` si indisponible), `sponge` et `jq`. Il faut donc les installer ou les recompiler sur votre machine (`apt install moreutils jq grep`).
(`apt install moreutils jq grep`).
### Utilisation basique ### Utilisation basique
Après avoir utilisé `stpkg -install`, vous pouvez placer le script `stpkg` Après avoir utilisé `stpkg -install`, vous pouvez placer le script `stpkg`
......
screenshots/devtools.png

43,6 ko | W: | H:

screenshots/devtools.png

23,6 ko | W: | H:

screenshots/devtools.png
screenshots/devtools.png
screenshots/devtools.png
screenshots/devtools.png
  • 2-up
  • Swipe
  • Onion skin
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter