Instalando no Debian e Ubuntu

Requisitos de hardware

O Weblate deve funcionar em qualquer hardware contemporâneo sem problemas. A seguir está a configuração mínima necessária para executar o Weblate num único host (Weblate, banco de dados e servidor web):

  • 2 GB de RAM

  • 2 núcleos de CPU

  • 1 GB de espaço de armazenamento

Quanto mais memória melhor – ele é usada para cache em todos os níveis (sistema de ficheiros, banco de dados e Weblate).

Muitos utilizadores simultâneos aumentam a quantidade de núcleos de CPU necessários. Para centenas de componentes de tradução é recomendado pelo menos 4 GB de RAM.

O uso típico de armazenamento de banco de dados é de cerca de 300 MB por 1 milhão de palavras hospedadas. O espaço de armazenamento necessário para repositórios clonados varia, mas o Weblate tenta manter o tamanho mínimo deles a fazer clones rasos.

Nota

Os requisitos reais para a sua instalação do Weblate variam fortemente com base no tamanho das traduções geridas nele.

Instalação

Requisitos do sistema

Instale as dependências necessárias para construir os módulos Python (veja Requisitos de software):

apt install \
   libxml2-dev libxslt-dev libfreetype6-dev libjpeg-dev libz-dev libyaml-dev \
   libffi-dev libcairo-dev gir1.2-pango-1.0 libgirepository1.0-dev \
   libacl1-dev libssl-dev libpq-dev libjpeg62-turbo-dev build-essential \
   python3-gdbm python3-dev python3-pip python3-virtualenv virtualenv git

Instale as dependências opcionais desejadas, a depender dos recursos que pretende usar (veja Dependências opcionais):

apt install tesseract-ocr libtesseract-dev libleptonica-dev
apt install libldap2-dev libldap-common libsasl2-dev
apt install libxmlsec1-dev

Opcionalmente, instale o software para executar o servidor de produção, veja Executar o servidor, Configuração de banco de dados para o Weblate, Tarefas de fundo a usar o Celery. Dependendo do tamanho da sua instalação, poderá executar esses componentes em servidores dedicados.

As instruções de instalação local:

# 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-py3

# Caching backend: Redis
apt install redis-server

# Database server: PostgreSQL
apt install postgresql postgresql-contrib

# SMTP server
apt install exim4

Módulos do Python

Dica

Estamos a usar o virtualenv para instalar o Weblate num ambiente separado do seu sistema. Se não estiver familiarizado com ele, verifique virtualenv venv: user_guide.

  1. Crie o virtualenv para Weblate:

    virtualenv --python=python3 ~/weblate-env
    
  2. Ative o virtualenv para Weblate:

    . ~/weblate-env/bin/activate
    
  3. Instale o Weblate incluindo todas as dependências opcionais:

    pip install "Weblate[all]"
    

    Confira Dependências opcionais para o ajuste fino das dependências opcionais.

    Nota

    On some Linux distributions running Weblate fails with libffi error:

    ffi_prep_closure(): bad user_data (it seems that the version of the libffi library seen at runtime is different from the 'ffi.h' file seen at compile-time)
    

    This is caused by incompatibility of binary packages distributed via PyPI with the distribution. To address this, you need to rebuild the package on your system:

    pip install --force-reinstall --no-binary :all: cffi
    

Configurando o Weblate

Nota

Os passos seguintes assumem que o virtualenv usado pelo Weblate está ativo (o que pode ser feito por . ~/weblate-env/bin/activate). Caso isso não seja verdade, terá que especificar o caminho completo para o comando weblate como ~/weblate-env/bin/weblate.

  1. Copie o ficheiro ~/weblate-env/lib/python3.7/site-packages/weblate/settings_example.py para ~/weblate-env/lib/python3.7/site-packages/weblate/settings.py.

  2. Ajuste os valores no novo ficheiro settings.py de acordo com a sua preferência. Vai precisar fornecer pelo menos as credenciais de banco de dados e a chave secreta Django, mas vai querer fazer mais mudanças para configuração de produção, veja Ajustar a configuração.

  3. Crie o banco de dados e a estrutura dele para Weblate (as configurações de exemplo usam PostgreSQL, confira Configuração de banco de dados para o Weblate para configuração pronta para produção):

    weblate migrate
    
  4. Crie a conta de utilizador do administrador e copie a palavra-passe de saída para a área de transferência e salve-a para uso posterior:

    weblate createadmin
    
  5. Colete ficheiros estáticos para o servidor web (veja Executar o servidor e Servir ficheiros estáticos):

    weblate collectstatic
    
  6. Compactar ficheiros JavaScript e CSS (opcional, veja Comprimir os ativos do cliente):

    weblate compress
    
  7. Inicie workers de Celery. Isso não é necessário para fins de desenvolvimento, mas é altamente recomendado caso contrário. Veja Tarefas de fundo a usar o Celery para mais informações:

    ~/weblate-env/lib/python3.7/site-packages/weblate/examples/celery start
    
  8. Inicie o servidor de desenvolvimento (veja Executar o servidor para configuração de produção):

    weblate runserver
    

Após a instalação

Parabéns, o seu servidor Weblate agora está a funcionar e pode começar a usá-lo.

  • Agora pode acessar o Weblate em http://localhost:8000/.

  • Sign in with admin credentials obtained during installation or register with new users.

  • Agora pode executar comandos Weblate a usar o comando weblate quando virtualenv do Weblate está ativo, veja Comandos de gerência.

  • Pode parar o servidor de teste com Ctrl+C.

  • Revise os possíveis problemas com a sua instalação na URL /manage/performance/ (veja Interface de gestão) ou a usar weblate check --deploy, veja Configuração de produção.

Adicionando tradução

  1. Abra a interface de administração (http://localhost:8000/create/project/) e crie o projeto que deseja traduzir. Veja Configuração de projeto para mais detalhes.

    Tudo que precisa especificar aqui é o nome do projeto e seu site.

  2. Crie um componente que é o objeto real para tradução – ele aponta ao repositório VCS e seleciona quais ficheiros traduzir. Veja Configuração de componente para mais detalhes.

    The important fields here are: Nome do componente, Repositório do código-fonte, and Máscara de ficheiros for finding translatable files. Weblate supports a wide range of formats including GNU gettext, Recurso de cadeias de Android, Cadeias de Apple iOS, Propriedades Java, Formato stringsdict or Formato Fluent, see Formatos de ficheiros suportados for more details.

  3. Depois que o acima for concluído (pode ser um processo demorado a depender do tamanho do seu repositório VCS e da quantidade de mensagens a serem traduzidas), pode começar a traduzir.