KiwiIRC
Обновлено 30 октября 2019
Введение
KiwiIRC - веб-IRC клиент, предоставляющий богатый функционал.
Подготовка LXC-контейнера
Мы рекомендуем выполнить установку KiwiIRC в отдельном контейнере, настроив его согласно инструкции.
Установка системных пакетов
Установите вспомогательное программное обеспечение:
emerge -a sys-apps/yarn dev-lang/go
Создание системного пользователя
Создайте системного пользователя kiwiirc:
mkdir -p /var/calculate/www
useradd -r -s /usr/sbin/nologin -d /var/calculate/www/kiwiirc -m kiwiirc
Залогиньтесь новым пользователем:
su - -s /bin/bash kiwiirc
Сборка KiwiIRC фронтэнда
Получите исходный код KiwiIRC из GitHub:
git clone https://github.com/kiwiirc/kiwiirc
Перейдите в каталог проекта:
cd kiwiirc
Настройте конфигурационный файл для chat.example.org:
{ "windowTitle": "Kiwi IRC - The web IRC client", "startupScreen": "welcome", "kiwiServer": "http://chat.example.org/webirc/kiwiirc/" "restricted": true, "theme": "Default", "themes": [ { "name": "Default", "url": "static/themes/default" }, { "name": "Dark", "url": "static/themes/dark" }, { "name": "Coffee", "url": "static/themes/coffee" }, { "name": "GrayFox", "url": "static/themes/grayfox" }, { "name": "Nightswatch", "url": "static/themes/nightswatch" }, { "name": "Osprey", "url": "static/themes/osprey" }, { "name": "Radioactive", "url": "static/themes/radioactive" }, { "name": "Sky", "url": "static/themes/sky" }, { "name": "Elite", "url": "static/themes/elite" } ], "startupOptions" : { "channel": "#example-channel", "nick": "guest-n?", "server": "irc.freenode.net", "port": 6667, }, "embedly": { "key": "" }, "plugins": [ ] }
При использования ReCaptcha, добавьте ключ сайта в параметры startupOptions в конфигурации:
"startupOptions" : {
"channel": "#example-channel",
"nick": "guest-n?",
"server": "irc.freenode.net",
"port": 6667,
"recaptchaSiteId":"secret"
},
Установите зависимости проекта:
yarn install
Соберите проект:
yarn run build
Установка WebircGateway
Получите исходный код WebircGateway из GitHub:
cd
git clone https://github.com/kiwiirc/webircgateway
Выполните сборку проекта:
cd webircgateway
make
Скопируйте пример конфигурационного файла:
cp config.conf.example config.conf
[server.1] bind = "0.0.0.0" port = 80 [fileserving] enabled = true webroot = /var/calculate/www/kiwiirc/kiwiirc/dist [transports] websocket sockjs kiwiirc [allowed_origins] "*://chat.example.org" # Connections will be sent to a random upstream [upstream.1] hostname = "irc.freenode.net" port = 6667 tls = false [gateway.whitelist] *.freenode.net
При использования ReCaptcha, добавьте следующие параметры в конфигурацию:
[verify] recaptcha_key = "site_id" recaptcha_secret = "secret_id"
Запуск KiwiIRC
Создайте сценарий запуска KiwiIRC сервера:
#!/sbin/openrc-run # Copyright 2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 name="Kiwiirc gateway server" description="Kiwiirc gateway server" command_user=kiwiirc command=/var/calculate/www/kiwiirc/webircgateway/webircgateway command_args="--config /var/calculate/www/kiwiirc/webircgateway/config.conf" directory=/var/calculate/www/kiwiirc/webircgateway pidfile="/run/kiwiirc.pid" command_background=true output_log=/var/log/kiwiirc.log error_log=/var/log/kiwiirc.log depend() { use net } start_pre() { checkpath -f -o kiwiirc -m 0600 /var/log/kiwiirc.log }
Установите права на запуск сервера KiwiIRC:
chmod 0755 /etc/init.d/kiwiirc
Запустите сервер Kiwiirc:
/etc/init.d/kiwiirc start
Добавьте KiwiIRC в автозагрузку:
rc-update add kiwiirc