コンテンツにスキップ

セットアップ

セットアップ

HolyArrs をソースからビルドし、ブラウザーでポート 6262 を開きます。

  • Go。go.mod に書かれているバージョンを使います。
  • Node 24 と npm。
  • リポジトリのルートで開いたターミナル。

C コンパイラーは不要です。ビルドは CGO_ENABLED=0 で行います。

  1. Web アプリのパッケージをインストールします:

    Terminal window
    npm --prefix app/frontend ci
  2. Web アプリをビルドします:

    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 です。

プログラムは実行したままにします。2 つ目のターミナルで開発サーバーを起動します:

Terminal window
npm --prefix app/frontend run dev

開発サーバーは保存のたびに再読み込みし、API の呼び出しを実行中のプログラムに送ります。編集した内容は 2 秒以内にブラウザーに表示されます。

コマンド 内容
make ui Web のパッケージをインストールし、Web アプリをビルド
make build make ui のあと、bin/holyarrs をビルド
make test タイムアウト 25 分で go test を実行
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 に対してだけ、そしてラボとして印を付けたフォルダーに対してだけ動きます。印は 1 回だけ付けます:

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

そのあと、seed -config ./config でデモ用のライブラリが追加され、seed -config ./config -reset-demo でツールが追加したものだけが削除されます。-force を渡さない限り、メディアフォルダーは /data/media でなければなりません。開発ツールはイメージには入りません。開発ツールを参照してください。

症状。 Web アプリを変更したのに、ページが古いままに見える。 原因。 プログラムは、組み込んだ時点のビルドを提供します。 対処。 Web のビルド、Go のビルドの順に実行してから、プログラムを起動します。

症状。 app/frontend/dist がないために go build が失敗する。 原因。 Web アプリがまだビルドされていません。 対処。 先に手順 2 を実行します。

症状。 ポートが使用中だとプログラムが表示する。 原因。 別の HolyArrs かほかのアプリが 6262 を使っています。 対処。 別のアドレスを渡します: ./bin/holyarrs -config ./config -addr :6263。

既定でオフの機能のスイッチ
スイッチ 機能
plex_watchlists Plex のウォッチリストをリクエストにする
row_title_stats オーナー向けの Explore の行の統計
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 でスターを付ける、スポンサーになる、コーヒーをおごるのいずれかで応援してください。