Aller au contenu

Configuration

Configuration

Compilez HolyArrs depuis les sources et ouvrez-le dans votre navigateur sur le port 6262.

  • Go, dans la version indiquée par go.mod.
  • Node 24 et npm.
  • Un terminal à la racine du dépôt.

Vous n’avez pas besoin de compilateur C. Les builds utilisent CGO_ENABLED=0.

  1. Installez les paquets de l’application web :

    Terminal window
    npm --prefix app/frontend ci
  2. Compilez l’application web :

    Terminal window
    npm --prefix app/frontend run build

    Vous devriez voir le build se terminer et app/frontend/dist se remplir de fichiers.

  3. Compilez le programme :

    Terminal window
    go build -o bin/holyarrs ./app/backend/cmd/holyarrs
  4. Lancez-le avec votre propre dossier de configuration :

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

    Vous devriez voir l’assistant de premier lancement. Créez le compte propriétaire.

-config prend un dossier sur un disque local et vaut /config par défaut. -addr change l’adresse d’écoute et vaut :6262 par défaut.

Travailler sur l’application web

Lien vers Travailler sur l’application web

Laissez le programme tourner. Dans un deuxième terminal, démarrez le serveur de développement :

Terminal window
npm --prefix app/frontend run dev

Le serveur de développement recharge à chaque enregistrement et envoie les appels d’API au programme en cours d’exécution. Vous devriez voir votre modification dans le navigateur en moins de 2 s.

Utiliser le Makefile

Lien vers Utiliser le Makefile
Commande Ce que ça fait
make ui Installe les paquets web et compile l’application web
make build make ui, puis compile bin/holyarrs
make test go test avec un délai maximal de 25 min
make vet go vet ./...
make docker Construit l’image sous le nom holyarrs:dev
make e2e Lance les tests de bout en bout

Activer une fonctionnalité en réserve

Lien vers Activer une fonctionnalité en réserve

Certaines fonctionnalités sont en réserve et restent désactivées. Nommez-les dans HOLYARRS_FLAGS, séparées par des virgules :

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

Les pages masquent une fonctionnalité désactivée, et ses routes n’existent pas. Les utilisateurs en apprennent plus dans Fonctionnalités en réserve.

Remplir la Bibliothèque avec des données de démo

Lien vers Remplir la Bibliothèque avec des données de démo

L’outil de démo remplit un dossier de configuration avec une collection de démo. Il fonctionne seulement sur un HolyArrs arrêté et seulement sur un dossier que vous avez marqué comme labo. Marquez-le une fois :

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

Ensuite, seed -config ./config ajoute la bibliothèque de démo et seed -config ./config -reset-demo supprime seulement ce qu’il a ajouté. Le dossier multimédia doit être /data/media, sauf si vous passez -force. Les outils de développement restent hors de l’image. Voir Outils de développement.

Si ça ne fonctionne pas

Lien vers Si ça ne fonctionne pas

Symptôme. Les pages ont l’air anciennes après un changement dans l’application web. Cause. Le programme sert le build qu’il a embarqué. Solution. Lancez le build web, puis le build Go, puis démarrez le programme.

Symptôme. go build échoue parce que app/frontend/dist manque. Cause. L’application web n’est pas encore compilée. Solution. Faites d’abord l’étape 2.

Symptôme. Le programme dit que le port est déjà utilisé. Cause. Un autre HolyArrs ou une autre application occupe 6262. Solution. Passez une autre adresse : ./bin/holyarrs -config ./config -addr :6263.

Interrupteurs des fonctionnalités en réserve
Interrupteur Fonctionnalité
plex_watchlists Les watchlists Plex deviennent des demandes
row_title_stats Les statistiques des rangées d’Explore pour le propriétaire
trakt_lists Les listes Trakt
alert_channels_more Des canaux d’alerte en plus de Discord et de l’e-mail
subtitle_sites Les sites de sous-titres et la recherche de sous-titres
emby_signin La connexion avec Emby
go_back Les étapes pour revenir à la version précédente

Pour en ajouter un, enregistrez son nom avec startup.RegisterFeature et vérifiez startup.FeatureOn avant d’enregistrer ses routes. Les noms sont dans app/backend/internal/core/startup (feature.go).

Outils de développement
Outil Commande Ce que ça fait
Démo go run ./app/backend/tools/demo <command> -config DIR Travaille sur un dossier de configuration à l’arrêt. Commandes : inspect (décomptes), fingerprint, query "SELECT ..." (lecture seule), doctor, seed, showcase
Faux site de sous-titres go run ./app/backend/tools/fakesubs Sert de faux sites de sous-titres pour les tests sur 127.0.0.1:18727. -addr le déplace ; -accounts-addr ajoute les faux sites de comptes
Liste des routes go run ./app/backend/tools/apidoc Réécrit Routes de l’API
Construire l'image
Terminal window
docker build --file deploy/Dockerfile --tag holyarrs:dev .
docker run -p 6262:6262 -v ./config:/config holyarrs:dev

L’image part de FROM scratch et contient le programme, les certificats d’autorité et les licences. Elle lance -config /config -addr :6262.

HolyArrs est gratuit. S'il vous a fait gagner du temps, mettez-lui une étoile sur GitHub, sponsorisez-le ou offrez-moi un café.