Динамическая тема для Telegram Desktop и AyuGram, которая автоматически подстраивается под цвета твоих обоев через pywal.
После смены обоев тема обновляется сама — перезапускать Telegram не нужно, всё меняется «на лету».
| Пакет | Зачем нужен |
|---|---|
python-pywal |
Генерирует цветовую схему из обоев (colors.json) |
imagemagick |
Опционально: Конвертация GIF-обоев в PNG для фона темы |
- Arch Linux / Manjaro:
sudo pacman -S python-pywal imagemagick
- Ubuntu / Debian:
sudo apt install imagemagick pip install pywal --break-system-packages
- Fedora:
sudo dnf install imagemagick pip install pywal
Помести скрипт в свою локальную папку бинарников и сделай его исполняемым:
cp wal-telegram-theme ~/.local/bin/wal-telegram-theme
chmod +x ~/.local/bin/wal-telegram-theme
Создай файл хука pywal, который будет срабатывать автоматически каждый раз при обновлении палитры:
mkdir -p ~/.config/wal
nano ~/.config/wal/postrun
Вставь туда следующий код:
#!/usr/bin/env bash
~/.local/bin/wal-telegram-theme
Сделай хук исполняемым:
chmod +x ~/.config/wal/postrun
Теперь скрипт будет перезапускаться автоматически при любом вызове wal -i ... (из терминала, ваших скриптов, оконного менеджера и т.д.).
Если цвета уже сгенерированы — просто запусти скрипт напрямую:
~/.local/bin/wal-telegram-theme
Или обнови обои через pywal:
wal -i /путь/к/твоим/обоям.jpg
⚠️ Важно: Это действие нужно выполнить всего один раз, чтобы связать Telegram с файлом темы. В будущем всё будет обновляться автоматически.
- Открой файловый менеджер и перейди в папку темы:
~/.local/share/telegram-theme/. - Перетащи файл
wal.tdesktop-themeмышкой в Telegram/AyuGram (отправь его самому себе в Избранное / Saved Messages). - Кликни по отправленному файлу темы прямо внутри чата Telegram и нажмите «Применить тему» (Apply theme).
Скрипт по умолчанию ищет текущие обои по симлинку ~/wallpapers/current. Если у тебя обои лежат в другом месте или ты используешь сторонние форки Telegram (64gram, Kotatogram и т.д.), просто открой скрипт текстовым редактором и измени пути в самом начале файла в секции Пути:
# Путь к текущим обоям
WALLPAPER_LINK="${HOME}/wallpapers/current"
# Пути к папкам приложений
AYUGRAM_TDATA="${HOME}/.local/share/AyuGram/tdata"
TELEGRAM_TDATA="${HOME}/.local/share/TelegramDesktop/tdata"
Поддерживаемые форматы обоев: .jpg, .png, .gif (для гифок берётся первый кадр).
wal -i <обои>анализирует цвета картинки и сохраняет палитру в~/.cache/wal/colors.json.- Срабатывает скрипт
postrun, который запускаетwal-telegram-theme. - Скрипт читает палитру, упаковывает её вместе с обоями в zip-архив формата
.tdesktop-themeи перезаписывает файлы в папкахtdata. - Telegram/AyuGram мгновенно подхватывают обновлённый файл темы без перезапуска приложения.
Проект распространяется под лицензией MIT.