Update README with manual steps

This commit is contained in:
teutat3s 2024-04-30 00:45:16 +02:00
parent 3be1a3bb0d
commit 85716a9e30
Signed by: teutat3s
GPG key ID: 4FA1D3FA524F22C1

View file

@ -2,28 +2,54 @@
# maunium-stickerpicker-nix # maunium-stickerpicker-nix
Nix wrapper for [maunium/stickerpicker][maunium-stickerpicker] Nix wrapper for [maunium/stickerpicker][maunium-stickerpicker] customized for pub.solar.
## Usage: ## Usage:
Here's an example of a stickerpicker Overview of steps:
1. Download additional stickers manually from signalstickers.org
2. (Optional) Define desired stickers in `flake.nix` as type `chatsticker`
3. (Optional) Build `.#pub-solar-stickers`
4. Create `config.json` with `@stickerbot` Matrix access token
5. Upload stickers to matrix `@stickerbot` user's media and store thumbnail URLs in `*.json` files
6. Include `*.json` files in host config flake, see [example]()
`config.json` example:
```
{
"homeserver": "https://matrix.your.domain",
"user_id": "@stickerbot:matrix.your.domain",
"access_token": "<stickerbot-matrix-access-token>"
}
```
Commands:
```
# Enter nix devshell
nix develop
# Get URL from button on signalstickers.org -> "Add to Signal" -> Right-Click -> "Copy Link"
# Repeat for each signal sticker pack
python -m sigstickers --pack 'https://signal.art/addstickers/#pack_id=7d4893e5bb03ad6ec5f8a5effbdada62&pack_key=fa9893126e26c0d28ed332c08c99f13700497c1fe15980d5069f6c4e48b619ee'
sticker-pack --config config.json --add-to-index ./uploaded-packs/ --title "lindner" downloads/Lindner/png/
# Move images around, json "id" gets set from dirname
for dir in $(ls ./downloads); do mv ./downloads/$dir/png/* ./downloads/$dir/; done
for dir in $(ls ./downloads); do rm -r ./downloads/$dir/gif ./downloads/$dir/png ./downloads/$dir/webp; done
# Upload stickers to matrix and generate json files with thumbnail URLs
for dir in $(ls ./downloads); do sticker-pack --config config.json --add-to-index ./uploaded-packs/ --title "$dir" ./downloads/$dir; done
# Add json files to git, commit and push changes
git add uploaded-packs/
git commit
git push
```
Here's an example of a stickerpicker config in this flake
```nix ```nix
myStickerPicker = createStickerPicker {
homeserver = "https://my.matrix.server";
userId = "@stickerbot:my.matrix.server";
sha256 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
packs = [
{
type = "chatsticker";
name = "pompom-tao3";
}
{
type = "directory";
src = ./myHomemadeStickers;
}
];
};
``` ```
Afterwards, you can easily host it in an nginx config Afterwards, you can easily host it in an nginx config
@ -33,7 +59,9 @@ Afterwards, you can easily host it in an nginx config
{ {
services.nginx.enable = true; services.nginx.enable = true;
services.nginx.virtualHosts."stickers.myhost.org" = { services.nginx.virtualHosts."stickers.myhost.org" = {
root = myStickerPicker; forceSSL = true;
enableACME = true;
root = pkgs.element-stickerpicker;
}; };
} }
``` ```