Update README with manual steps
This commit is contained in:
parent
3be1a3bb0d
commit
85716a9e30
64
README.md
64
README.md
|
@ -2,28 +2,54 @@
|
|||
|
||||
# maunium-stickerpicker-nix
|
||||
|
||||
Nix wrapper for [maunium/stickerpicker][maunium-stickerpicker]
|
||||
Nix wrapper for [maunium/stickerpicker][maunium-stickerpicker] customized for pub.solar.
|
||||
|
||||
## 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
|
||||
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
|
||||
|
@ -33,7 +59,9 @@ Afterwards, you can easily host it in an nginx config
|
|||
{
|
||||
services.nginx.enable = true;
|
||||
services.nginx.virtualHosts."stickers.myhost.org" = {
|
||||
root = myStickerPicker;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
root = pkgs.element-stickerpicker;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue