PluginExpress — менеджер обновлений для плагинов [универсальный плагин]
Добавлено: 17:16, 17.02.2026

⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀PluginExpress
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀v1.0.0 BETA
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀Просто
PluginExpress — вероятно первый универсальный плагин в истории форума CommFort. Работает одновременно на клиенте и сервере. Автоматически проверяет, скачивает и устанавливает обновления для других плагинов - без ручного копирования файлов.
- Требуется CommFort 5.xxx (клиент или сервер)
- Плагин НЕ изменяет .cfplug файлы во время работы - обновления применяются только при перезапуске
- Файлы .rar НЕ поддерживаются (недружелюбный формат)
- Cloudflare-проксирование блокируется по заголовку CF-RAY - базовая защита от MITM
- Все http ссылки блокируются по умолчанию, загрузка осуществляется только по https - базовая защита от утечки данных
- Без наличия HashURL проверка целостности пропускается - вы доверяете источнику загрузки
- LED имеет свойство быстро переключать яркие сигналы и может вызвать приступы эпилепсии
========== ДЛЯ ПОЛЬЗОВАТЕЛЕЙ ==========
Как это работает
- При старте: читает метаданные из Plugins/ИмяПлагина/.имяплагина_metadata
- Сравнивает версию с той что в указанной ссылке из метадаты
- При обнаружении новой версии: скачивает → распаковывает → проверяет целестность файла → готовит к установке
- При закрытии CommFort: копирует обновлённый .cfplug в папку Plugins/. ВАЖНО: нужно перезапустить CommFort, а не только плагин.
- При следующем запуске: плагин уже обновлён
- Таблица плагинов с версиями и статусами
- Кнопка Проверить сейчас для ручного запуска проверки
- Вкладки: Плагины / Настройки / События / Чёрный список / История изменений
- Индикатор LED (6 состояний): простой визуальный статус операций
- Работает на клиенте и сервере одинаково
- Форум: viewtopic.php?t=XXXX - автоматически находит вложения с версиями
- Прямые ссылки: Nextcloud, CDN - надёжнее, но требуют обновления URL при релизе
- Форматы: .zip (встроенный распаковщик) и .7z (7za.exe в комплекте)
Интеграция за 30 секунд
1. Создайте файл Plugins/ВашПлагин/.вашплагин_metadata
2. Укажите поля:
Код: Выделить всё
PluginName=ВашПлагин
Version=1.0.0
URL=https://example.com/download.zip
HashURL=https://example.com/hash.txt # рекомендуетсяКритически важно:
- PluginName должно точно совпадать с именем .cfplug файла (регистр важен на Linux/Wine)
- Если имена не совпадают - плагин будет скачиваться при каждой проверке
- Обнаружение не происходит без метадаты в любой из папок в Plugins
- Имя архива обязательно должно содержать _vX.Y.Z_:
ВашПлагин_v1.0.0_BETA.zip
ВашПлагин_v2.3_ALPHA.7z
ВашПлагин_v3.0.7z
ВашПлагин_3.0.7z → нет префикса версии → игнорируется
ВашПлагин.zip → нет версии → игнорируется
ВашПлагин_v1.0.0.cfplug → сырой бинарник → не скачивается
- Проверка хеша каждого установленного плагина выполняется не чаще одного раза в 24 часа
- Интервал отсчитывается от последней успешной проверки и фиксируется в локальном хранилище (`hash_dates/`)
- При недоступности удалённого хеш-файла используется локальный кэш (`.cfplug.sha256`) если он присутствует у пользователя в /Plugins/ВашПлагин
- Архитектура минимизирует нагрузку на серверы распространения - один запрос в сутки на установленный экземпляр плагина. Исключение: проверка хэша при обновлении.
- PluginExpress НЕ создаёт файлы метаданных - это задача для вашего плагина
- PluginExpress обновляет поле Version после успешной установки обновления
- Ваш плагин может обновлять другие поля (URL, HashURL) по своему усмотрению
- Проверяется хеш извлечённого .cfplug файла, а не архива
- Формат hash.txt:
Код: Выделить всё
a1b2c3d4e5f67890123456789012345678901234567890123456789012345678 myplugin.cfplug - Создать хеш:
Код: Выделить всё
sha256sum ВашПлагин.cfplug > myplugin.cfplug.sha256
Известные ограничения
- Параллельные загрузки не поддерживаются - очередь по одному плагину
- Таймаут запроса: 15 секунд (повтор - кнопкой в GUI)
- Cloudflare-защита базовая - не замена выбору надёжного хостинга
- Фильтрация незащищённых соединений базовая - плагин лишь блокирует установку http-соединения
- Тестировалось с Disroot Nextcloud, форумом CommFort, простым http сервером
- Разработка и тестирование велось на Linux/Wine 8, тестирование на Win10 по остаточному принципу.
PluginExpress распространяется бесплатно по лицензии PolyForm Noncommercial 1.0.0 - для личного и образовательного использования.
Коммерческая лицензия доступна от $50.
В связи с ограничениями на работу с международными платёжными системами, все пожертвования принимаются только в криптовалюте (≥0.003 XMR на 16.11.25):
Monero (XMR)
Код: Выделить всё
86XDziKaoAnGKvmxyzbT5jZjtvxeFLYNfdgPcArWwyVnatZizQNSfuVF18f3YQGTaZDpa3ENxZPPwT94v1miGsscKX8QqPiPluginExpress SHA256:
Код: Выделить всё
03f086f90235db8383175d451f27c12bbfe4a91b2b26188a92010ef58cee4b42Download:
Благодарности
Реализация на Free Pascal и архитектура плагина выполнены при участии Claude (Anthropic). Системный дизайн, логотип и подготовка документации - при содействии Qwen (Alibaba Cloud). Дополнительная помощь в отладке кода и исследовании дополнительных возможностей предоставлена GLM (Zhipu AI). Звуковые эффекты созданы с помощью aidubbing.io.