Установка на Debian и Ubuntu¶
Требования к оборудованию¶
Weblate должен без проблем работать на любом современном оборудовании, ниже приведена минимальная конфигурация, необходимая для запуска Weblate на одном сервере (сам Weblate, база данных и веб-сервер):
2 ГБ оперативной памяти
2-х ядерный процессор
1 ГБ дискового пространства
Чем больше памяти, тем лучше — она используется для кэширования на всех уровнях (на уровне файловой системы, уровне базы данных и уровне Weblate).
Множество одновременно работающих пользователей увеличивают количество необходимых ядер процессора. Для сотен компонентов перевода рекомендуется не менее 4 Гб оперативной памяти.
Типовое использование дискового пространства базой данной находится в районе 300MB на 1 миллион хранимых слов. Пространство необходимое для клонирования репозиториев разнится, хотя Weblate и пытается поддерживать их размер минимальным, делая поверхностные (shallow) копии.
Примечание
Фактические требования к вашей установке Weblate сильно зависят от размера управляемых ею переводов.
Установка¶
Системные требования¶
Установите зависимости, необходимые для сборки модулей Python (смотрите раздел Требования к программному обеспечению):
apt install \
libxml2-dev libxslt-dev libfreetype6-dev libjpeg-dev libz-dev libyaml-dev \
libcairo-dev gir1.2-pango-1.0 libgirepository1.0-dev libacl1-dev libssl-dev \
build-essential python3-gdbm python3-dev python3-pip python3-virtualenv virtualenv git
Установите желаемые необязательные зависимости в зависимости от функций, которые вы собираетесь использовать (смотрите раздел Необязательные зависимости):
apt install tesseract-ocr libtesseract-dev libleptonica-dev
При желании установите программное обеспечение для запуска рабочего сервера, смотрите разделы Запуск сервера, Настройка базы данных для Weblate и Фоновые задачи с использованием Celery. В зависимости от размера вашей установки вы можете захотеть запустить эти компоненты на выделенных серверах.
Инструкции по установке на местах:
# Web server option 1: NGINX and uWSGI
apt install nginx uwsgi uwsgi-plugin-python3
# Web server option 2: Apache with ``mod_wsgi``
apt install apache2 libapache2-mod-wsgi
# Caching backend: Redis
apt install redis-server
# Database server: PostgreSQL
apt install postgresql postgresql-contrib
# SMTP server
apt install exim4
Модули Python¶
Подсказка
Для установки Weblate мы используем виртуальное окружение, предоставляемое пакетом virtualenv, чтобы отделить Weblate от вашей системы. Если вы не знакомы с этим понятием, обратитесь к документации пакета.
Создайте виртуальное окружение для Weblate:
virtualenv --python=python3 ~/weblate-env
Активируйте виртуальное окружение для Weblate:
. ~/weblate-env/bin/activate
Установите Weblate, включая все его зависимости:
pip install Weblate
Установите драйвер базы данных:
pip install psycopg2-binary
Установите желаемые необязательные зависимости в зависимости от функций, которые вы собираетесь использовать (некоторые из них могут потребовать дополнительных системных библиотек, проверьте раздел Необязательные зависимости):
pip install ruamel.yaml aeidon boto3 zeep chardet tesserocr
Настройка Weblate¶
Примечание
Следующие шаги подразумевают, что виртуальное окружение, используемое Weblate’ом, активно (активировать его можно командой . ~/weblate-env/bin/activate
). В случае, если это не так, вам придётся указывать полный путь к команде weblate: ~/weblate-env/bin/weblate
.
Скопируйте файл
~/weblate-env/lib/python3.7/site-packages/weblate/settings_example.py
в~/weblate-env/lib/python3.7/site-packages/weblate/settings.py
.По своему усмотрению подкорректируйте значения в новом файле
settings.py
. Для тестирования вы можете использовать поставляемый пример, но для рабочей среды вы захотите внести в него изменения, смотрите раздел Изменение конфигурации под свои нужды.Создайте базу данных и её структуру для Weblate (пример настройки использует PostgreSQL, для установки в рабочую среду ознакомьтесь разделом Настройка базы данных для Weblate):
weblate migrate
Создайте учётную запись администратора и скопируйте сгенерированный ей пароль в буфер обмена, также сохраните его для дальнейшего использования:
weblate createadmin
Соберите статические файлы для веб-сервера (смотрите разделы Запуск сервера и Обслуживание статических файлов):
weblate collectstatic
Сожмите файлы JavaScript и CSS (необязательно, смотрите раздел Сжатие клиентских ресурсов):
weblate compress
Запустите рабочие процессы Celery. Для целей разработки это делать не обязательно, но настоятельно рекомендуется. Дополнительную информацию смотрите в разделе Фоновые задачи с использованием Celery:
~/weblate-env/lib/python3.7/site-packages/weblate/examples/celery start
Запустите сервер разработки (шаги для запуска рабочего сервера смотрите в разделе Запуск сервера):
weblate runserver
После установки¶
Поздравляем, теперь ваш сервер Weblate запущен и вы можете начать его использовать.
Теперь вы можете получить доступ к Weblate по адресу
http://localhost:8000/
.Войдите в систему с учётными данными администратора, полученными во время установки, или зарегистрируйтесь в качестве нового пользователя.
Теперь при помощи команды weblate и когда активно виртуальное окружение Weblate вы можете запускать его команды, смотрите раздел Команды управления.
Остановить тестовый сервер можно комбинацией Ctrl+C.
Просмотрите список вероятных проблем с вашей установкой или по адресу
/manage/performance/
в URL, или с помощью команды weblate check --deploy; см. также Рабочая среда.
Добавление перевода¶
Откройте интерфейс администратора (
http://localhost:8000/create/project/
) и создайте проект, который вы хотите перевести. Подробнее смотрите в разделе Настройки проекта.Всё, что вам нужно здесь указать — это название проекта и его веб-сайт.
Создайте компонент, который является реальным объектом для перевода — он указывает на репозиторий системы контроля версий и задаёт файлы для перевода. Подробнее смотрите в разделе Настройки компонента.
Здесь важны следующие поля: название компонента, адрес репозитория системы контроля версий и маска для поиска переводимых файлов. Weblate поддерживает широкий спектр форматов, включая PO-файлы gettext, строки ресурсов Android’а, строки свойств iOS, файлы свойств Java или Qt Linguist, подробнее смотрите в разделе Поддерживаемые форматы файлов.
После того, как вышеперечисленные действия будут завершены (это может быть довольно длительный процесс в зависимости от размера вашего репозитория системы контроля версий и количества сообщений для перевода), вы сможете начать перевод.