Перейти до вмісту

Налаштування

Налаштування

Збери HolyArrs із джерельного коду й відкрий його в браузері на порту 6262.

  • Go тієї версії, яку називає go.mod.
  • Node 24 і npm.
  • Термінал у корені репозиторію.

Компілятор C не потрібен. Збірки використовують CGO_ENABLED=0.

  1. Встанови пакети вебзастосунку:

    Terminal window
    npm --prefix app/frontend ci
  2. Збери вебзастосунок:

    Terminal window
    npm --prefix app/frontend run build

    Збірка має завершитися, а app/frontend/dist має наповнитися файлами.

  3. Збери програму:

    Terminal window
    go build -o bin/holyarrs ./app/backend/cmd/holyarrs
  4. Запусти її зі своєю текою конфігурації:

    Terminal window
    ./bin/holyarrs -config ./config
  5. Відкрий http://localhost:6262.

    Ти маєш побачити майстер першого запуску. Створи обліковий запис власника.

-config приймає теку на локальному диску, за замовчуванням /config. -addr змінює адресу, на якій програма слухає, за замовчуванням :6262.

Працюй над вебзастосунком

Посилання на Працюй над вебзастосунком

Залиш програму запущеною. У другому терміналі запусти сервер розробки:

Terminal window
npm --prefix app/frontend run dev

Сервер розробки перезавантажується при збереженні й надсилає виклики API до запущеної програми. Свою правку ти маєш побачити в браузері за 2 с.

Команда Що робить
make ui Встановлює пакети вебзастосунку й збирає його
make build make ui, потім збирає bin/holyarrs
make test go test з тайм-аутом 25 хв
make vet go vet ./...
make docker Збирає образ як holyarrs:dev
make e2e Запускає наскрізні тести

Увімкни відкладену функцію

Посилання на Увімкни відкладену функцію

Деякі функції відкладені й лишаються вимкненими. Назви їх у HOLYARRS_FLAGS через кому:

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

Сторінки ховають вимкнену функцію, а її маршрутів не існує. Користувачі читають про них у розділі Відкладені функції.

Наповни бібліотеку демоданими

Посилання на Наповни бібліотеку демоданими

Демоінструмент наповнює теку конфігурації демоколекцією. Він працює лише із зупиненим HolyArrs і лише з текою, яку ти позначив як лабораторну. Познач її один раз:

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

Потім seed -config ./config додає демобібліотеку, а seed -config ./config -reset-demo прибирає лише те, що додав. Тека медіа має бути /data/media, якщо ти не передаєш -force. Інструменти розробки в образ не потрапляють. Дивись Інструменти розробки.

Ознака. Сторінки мають старий вигляд після зміни вебзастосунку. Причина. Програма віддає збірку, яку вбудувала. Рішення. Запусти збірку вебзастосунку, потім збірку Go, потім запусти програму.

Ознака. go build падає через відсутній app/frontend/dist. Причина. Вебзастосунок ще не зібрано. Рішення. Спершу виконай крок 2.

Ознака. Програма пише, що порт зайнятий. Причина. Інший HolyArrs або застосунок займає 6262. Рішення. Передай іншу адресу: ./bin/holyarrs -config ./config -addr :6263.

Перемикачі відкладених функцій
Перемикач Функція
plex_watchlists Списки перегляду Plex стають запитами
row_title_stats Статистика рядків Огляду для власника
trakt_lists Списки Trakt
alert_channels_more Канали сповіщень, окрім Discord і електронної пошти
subtitle_sites Сайти субтитрів і пошук субтитрів
emby_signin Вхід через Emby
go_back Кроки, щоб повернутися до попередньої версії

Щоб додати перемикач, зареєструй його назву через startup.RegisterFeature і перевір startup.FeatureOn, перш ніж реєструвати його маршрути. Назви лежать у app/backend/internal/core/startup (feature.go).

Інструменти розробки
Інструмент Команда Що робить
Демо go run ./app/backend/tools/demo <command> -config DIR Працює із зупиненою текою конфігурації. Команди: inspect (підрахунки), fingerprint, query "SELECT ..." (лише читання), doctor, seed, showcase
Фейковий сайт субтитрів go run ./app/backend/tools/fakesubs Віддає фейкові сайти субтитрів для тестів на 127.0.0.1:18727. -addr переносить його; -accounts-addr додає фейки сайтів з обліковими записами
Список маршрутів go run ./app/backend/tools/apidoc Переписує Маршрути API
Збери образ
Terminal window
docker build --file deploy/Dockerfile --tag holyarrs:dev .
docker run -p 6262:6262 -v ./config:/config holyarrs:dev

Образ починається з FROM scratch і містить програму, сертифікати CA та ліцензії. Він запускає -config /config -addr :6262.

HolyArrs безкоштовний. Якщо він заощадив тобі час, познач його зіркою на GitHub, підтримай проєкт або пригости мене кавою.