Ga naar inhoud

Configuratie

Installatie

Bouw HolyArrs vanaf de broncode en open het in je browser op poort 6262.

  • Go, in de versie die go.mod noemt.
  • Node 24 en npm.
  • Een terminal in de hoofdmap van de repo.

Je hebt geen C-compiler nodig. Builds gebruiken CGO_ENABLED=0.

  1. Installeer de pakketten van de web-app:

    Terminal window
    npm --prefix app/frontend ci
  2. Bouw de web-app:

    Terminal window
    npm --prefix app/frontend run build

    Je ziet de build afronden en app/frontend/dist vullen met bestanden.

  3. Bouw het programma:

    Terminal window
    go build -o bin/holyarrs ./app/backend/cmd/holyarrs
  4. Draai het met een eigen configuratiemap:

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

    Je ziet de wizard voor de eerste start. Maak het eigenaarsaccount.

-config verwacht een map op een lokale schijf en is standaard /config. -addr wijzigt het luisteradres en is standaard :6262.

Aan de web-app werken

Link naar Aan de web-app werken

Laat het programma draaien. Start in een tweede terminal de dev-server:

Terminal window
npm --prefix app/frontend run dev

De dev-server laadt opnieuw bij het opslaan en stuurt API-aanroepen naar het draaiende programma. Je ziet je wijziging binnen 2 s in de browser.

De Makefile gebruiken

Link naar De Makefile gebruiken
Opdracht Doet
make ui De webpakketten installeren en de web-app bouwen
make build make ui, daarna bin/holyarrs bouwen
make test go test met een time-out van 25 min
make vet go vet ./...
make docker De image bouwen als holyarrs:dev
make e2e De end-to-end-tests uitvoeren

Een uitgestelde functie aanzetten

Link naar Een uitgestelde functie aanzetten

Sommige functies zijn uitgesteld en blijven uit. Noem ze in HOLYARRS_FLAGS, gescheiden door komma’s:

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

De pagina’s verbergen een functie die uit staat, en de routes ervan bestaan niet. Gebruikers lezen erover in Uitgestelde functies.

De bibliotheek vullen met demodata

Link naar De bibliotheek vullen met demodata

De demotool vult een configuratiemap met een democollectie. Hij werkt alleen op een gestopte HolyArrs en alleen op een map die je als lab hebt gemarkeerd. Markeer de map één keer:

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

Daarna voegt seed -config ./config de demobibliotheek toe en verwijdert seed -config ./config -reset-demo alleen wat het zelf heeft toegevoegd. De mediamap moet /data/media zijn, tenzij je -force meegeeft. De dev-tools blijven buiten de image. Zie Dev-tools.

Symptoom. De pagina’s zien er oud uit nadat je de web-app hebt gewijzigd. Oorzaak. Het programma serveert de build die erin is ingebouwd. Oplossing. Voer de webbuild uit, dan de Go-build, en start dan het programma.

Symptoom. go build mislukt door een ontbrekende app/frontend/dist. Oorzaak. De web-app is nog niet gebouwd. Oplossing. Voer eerst stap 2 uit.

Symptoom. Het programma meldt dat de poort in gebruik is. Oorzaak. Een andere HolyArrs of app gebruikt 6262. Oplossing. Geef een ander adres mee: ./bin/holyarrs -config ./config -addr :6263.

Schakelaars voor uitgestelde functies
Schakelaar Functie
plex_watchlists Plex-kijklijsten worden aanvragen
row_title_stats Statistieken bij rijen in Ontdekken voor de eigenaar
trakt_lists Trakt-lijsten
alert_channels_more Meldingskanalen naast Discord en e-mail
subtitle_sites Ondertitelsites en zoeken naar ondertitels
emby_signin Aanmelden met Emby
go_back Stappen om terug te gaan naar de vorige versie

Om er een toe te voegen, registreer je de naam met startup.RegisterFeature en controleer je startup.FeatureOn voordat je de routes registreert. De namen staan in app/backend/internal/core/startup (feature.go).

Dev-tools
Tool Opdracht Doet
Demo go run ./app/backend/tools/demo <command> -config DIR Werkt op een gestopte configuratiemap. Opdrachten: inspect (aantallen), fingerprint, query "SELECT ..." (alleen-lezen), doctor, seed, showcase
Nep-ondertitelsite go run ./app/backend/tools/fakesubs Serveert nep-ondertitelsites voor tests op 127.0.0.1:18727. -addr verplaatst het; -accounts-addr voegt de nepsites met accounts toe
Routelijst go run ./app/backend/tools/apidoc Schrijft API-routes opnieuw
De image bouwen
Terminal window
docker build --file deploy/Dockerfile --tag holyarrs:dev .
docker run -p 6262:6262 -v ./config:/config holyarrs:dev

De image begint FROM scratch en bevat het programma, CA-certificaten en licenties. Hij draait -config /config -addr :6262.

Gerelateerde pagina’s

Link naar Gerelateerde pagina’s

HolyArrs is gratis. Heeft het je tijd bespaard, geef het een ster op GitHub, sponsor het of trakteer me op een kop koffie.