Moetwemoji: Легкие анимированные эмодзи (AVIF) — оживите ваш форум

Хорошо, пожалуйста, попробуйте Ручную установку

Руководство по ручной установке (Версия с переопределением)

Это руководство объясняет, как вручную установить и применить плагин discourse-moetwemoji-twemoji-fakepng-override внутри работающего контейнера Discourse, а также разъясняет, почему полная пересборка не является строго необходимой для версии с переопределением.


1. Вход в контейнер Discourse

На вашем сервере перейдите в директорию Docker для Discourse (обычно /var/discourse) и войдите в работающий контейнер:

cd /var/discourse
./launcher enter app

Теперь вы должны находиться внутри оболочки контейнера.


2. Ручное клонирование плагина с переопределением

Перейдите в директорию плагинов и клонируйте репозиторий:

cd /var/www/discourse/plugins
git clone https://github.com/constansino/discourse-moetwemoji-twemoji-fakepng-override.git

Проверьте существование директории:

ls discourse-moetwemoji-twemoji-fakepng-override


3. Применение переопределения эмодзи

Вернитесь в корневую директорию Discourse:

su - discourse
cd /var/www/discourse

Проверьте текущий статус (необязательно, но рекомендуется):

RAILS_ENV=production bundle exec rake moetwemoji_twemoji:status

Примените переопределение:

RAILS_ENV=production bundle exec rake moetwemoji_twemoji:apply

Если команда завершится без ошибок, файлы PNG Twemoji будут заменены на Moetwemoji.


4. Важные примечания о пересборке (Сохранение изменений)

:red_exclamation_mark: Пересборка не требуется для работы переопределения

Эта версия с переопределением работает путем прямой замены файлов внутри работающего контейнера.
Следовательно:

  • :white_check_mark: Вам НЕ нужно запускать ./launcher rebuild app

  • :white_check_mark: Изменения вступают в силу сразу после выполнения задачи rake

:warning: Но изменения НЕ сохраняются

Поскольку это делается в файловой системе контейнера:

  • Любая будущая команда ./launcher rebuild app

  • Или пересоздание/обновление контейнера

удалит изменения, и переопределение эмодзи будет утеряно.

:backhand_index_pointing_right: Если вам нужна сохраняемость изменений при пересборках, вы должны установить плагин через хуки в файле app.yml и выполнить правильную пересборку.


5. Очистка кэша CDN и браузера (Очень важно)

После применения переопределения эмодзи могут оставаться неизменными из-за кэширования.

5.1 Очистка кэша CDN (например, Cloudflare)

Если вы используете CDN, например Cloudflare:

  • Очистите кэш для:

    • /images/emoji/*

    • или выполните полную очистку кэша, если это необходимо

В противном случае могут продолжать отдаваться старые файлы PNG Twemoji.

5.2 Очистка кэша браузера

На стороне клиента:

  • Выполните жесткую перезагрузку страницы (Ctrl + F5 / Cmd + Shift + R)

  • Или очистите кэш браузера

  • Или протестируйте в режиме инкогнито/приватном окне

Пока не будут очищены как кэш CDN, так и кэш браузера, изменения эмодзи могут быть не видны.


6. Резюме

  • Этот плагин с переопределением можно установить и применить без пересборки

  • Ручная установка полезна для:

    • Тестирования

    • Временного использования

    • Отладки

  • Недостатком является отсутствие сохраняемости изменений

  • Всегда очищайте кэш CDN + кэш браузера после применения переопределений эмодзи