Pular para o conteúdo

Configuração

Configuração

Compila o HolyArrs a partir do código e abre-o no navegador na porta 6262.

  • Go, na versão que o go.mod indica.
  • Node 24 e npm.
  • Um terminal na raiz do repositório.

Não precisas de compilador de C. As compilações usam CGO_ENABLED=0.

  1. Instala os pacotes da app web:

    Terminal window
    npm --prefix app/frontend ci
  2. Compila a app web:

    Terminal window
    npm --prefix app/frontend run build

    Deves ver a compilação terminar e app/frontend/dist ficar cheia de ficheiros.

  3. Compila o programa:

    Terminal window
    go build -o bin/holyarrs ./app/backend/cmd/holyarrs
  4. Executa-o com uma pasta de configuração tua:

    Terminal window
    ./bin/holyarrs -config ./config
  5. Abre http://localhost:6262.

    Deves ver o assistente da primeira execução. Cria a conta de proprietário.

O -config aceita uma pasta no disco local e por predefinição é /config. O -addr muda o endereço de escuta e por predefinição é :6262.

Deixa o programa a correr. Num segundo terminal, inicia o servidor de desenvolvimento:

Terminal window
npm --prefix app/frontend run dev

O servidor de desenvolvimento recarrega ao guardares e envia as chamadas de API para o programa em execução. Deves ver a tua alteração no navegador em menos de 2 s.

Comando Faz
make ui Instala os pacotes web e compila a app web
make build make ui e depois compila bin/holyarrs
make test go test com limite de 25 min
make vet go vet ./...
make docker Compila a imagem como holyarrs:dev
make e2e Executa os testes de ponta a ponta

Ativar uma funcionalidade retida

Ligação para Ativar uma funcionalidade retida

Algumas funcionalidades estão retidas e ficam desativadas. Indica-as em HOLYARRS_FLAGS, separadas por vírgulas:

Terminal window
HOLYARRS_FLAGS=subtitle_sites,ai_apps ./bin/holyarrs -config ./config

As páginas escondem uma funcionalidade desativada e as rotas dela não existem. Os utilizadores leem sobre elas em Funcionalidades retidas.

Encher a Biblioteca com dados de demonstração

Ligação para Encher a Biblioteca com dados de demonstração

A ferramenta de demonstração enche uma pasta de configuração com uma coleção de demonstração. Só funciona com o HolyArrs parado e só numa pasta que marcaste como laboratório. Marca-a uma vez:

Terminal window
go run ./app/backend/tools/demo seed -config ./config -init-lab

Depois, seed -config ./config acrescenta a Biblioteca de demonstração e seed -config ./config -reset-demo remove só o que ela acrescentou. A pasta multimédia tem de ser /data/media, a não ser que uses -force. As ferramentas de desenvolvimento ficam fora da imagem. Vê Ferramentas de desenvolvimento.

Sintoma. As páginas parecem antigas depois de mudares a app web. Causa. O programa serve a compilação que tem incluída. Solução. Executa a compilação web, depois a compilação Go, e arranca o programa.

Sintoma. O go build falha por falta de app/frontend/dist. Causa. A app web ainda não está compilada. Solução. Executa primeiro o passo 2.

Sintoma. O programa diz que a porta está em uso. Causa. Outro HolyArrs ou outra app ocupa a 6262. Solução. Passa outro endereço: ./bin/holyarrs -config ./config -addr :6263.

Interruptores de funcionalidades retidas
Interruptor Funcionalidade
row_title_stats Estatísticas das linhas de Explorar para o proprietário
trakt_lists Listas do Trakt
alert_channels_more Canais de avisos além do Discord e do email
subtitle_sites Sites de legendas e pesquisa de legendas
emby_signin Iniciar sessão com o Emby
go_back Passos para voltar à versão anterior

Para acrescentar um, regista o nome com startup.RegisterFeature e verifica startup.FeatureOn antes de registares as rotas dele. Os nomes ficam em app/backend/internal/core/startup (feature.go).

Ferramentas de desenvolvimento
Ferramenta Comando Faz
Demo go run ./app/backend/tools/demo <command> -config DIR Funciona numa pasta de configuração parada. Comandos: inspect (contagens), fingerprint, query "SELECT ..." (só de leitura), doctor, seed, showcase
Site de legendas falso go run ./app/backend/tools/fakesubs Serve sites de legendas falsos para testes em 127.0.0.1:18727. O -addr muda-o; o -accounts-addr acrescenta os falsos de sites com conta
Lista de rotas go run ./app/backend/tools/apidoc Reescreve as Rotas da API
Compilar a imagem
Terminal window
docker build --file deploy/Dockerfile --tag holyarrs:dev .
docker run -p 6262:6262 -v ./config:/config holyarrs:dev

A imagem parte de FROM scratch e contém o programa, os certificados CA e as licenças. Executa -config /config -addr :6262.

O HolyArrs é gratuito. Se te poupou tempo, dá-lhe uma estrela no GitHub, patrocina-o ou oferece-me um café.