דלגו לתוכן

הגדרה ראשונית

הגדרה

בנה את HolyArrs מהקוד ופתח אותו בדפדפן בפורט 6262.

  • Go, בגרסה ש-go.mod מציין.
  • Node 24 ו-npm.
  • טרמינל בשורש הריפו.

אתה לא צריך מהדר C. ה-builds משתמשים ב-CGO_ENABLED=0.

  1. התקן את החבילות של אפליקציית ה-web:

    Terminal window
    npm --prefix app/frontend ci
  2. בנה את אפליקציית ה-web:

    Terminal window
    npm --prefix app/frontend run build

    אתה אמור לראות את ה-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.

לעבוד על אפליקציית ה-web

קישור אל לעבוד על אפליקציית ה-web

השאר את התוכנה רצה. בטרמינל שני, הפעל את שרת הפיתוח:

Terminal window
npm --prefix app/frontend run dev

שרת הפיתוח נטען מחדש בכל שמירה ושולח את קריאות ה-API לתוכנה שרצה. אתה אמור לראות את העריכה שלך בדפדפן תוך 2 שניות.

פקודה עושה
make ui מתקין את חבילות ה-web ובונה את אפליקציית ה-web
make build make ui, ואז בונה את bin/holyarrs
make test go test עם timeout של 25 דקות
make vet go vet ./...
make docker בונה את ה-image בשם holyarrs:dev
make e2e מריץ את בדיקות ה-end-to-end

להפעיל יכולת שמורה

קישור אל להפעיל יכולת שמורה

חלק מהיכולות שמורות ונשארות כבויות. ציין אותן ב-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. כלי הפיתוח לא נכנסים ל-image. ראה כלי פיתוח.

תסמין. הדפים נראים ישנים אחרי ששינית את אפליקציית ה-web. סיבה. התוכנה מגישה את ה-build שהיא הטמיעה. פתרון. הרץ את ה-build של ה-web, אחר כך את ה-build של Go, ואז הפעל את התוכנה.

תסמין. go build נכשל כי חסר app/frontend/dist. סיבה. אפליקציית ה-web עוד לא נבנתה. פתרון. הרץ קודם את שלב 2.

תסמין. התוכנה אומרת שהפורט תפוס. סיבה. HolyArrs אחר או אפליקציה אחרת מחזיקים את 6262. פתרון. העבר כתובת אחרת: ./bin/holyarrs -config ./config -addr :6263.

מתגים של יכולות שמורות
מתג יכולת
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
לבנות את ה-image
Terminal window
docker build --file deploy/Dockerfile --tag holyarrs:dev .
docker run -p 6262:6262 -v ./config:/config holyarrs:dev

ה-image מתחיל מ-FROM scratch ומכיל את התוכנה, תעודות CA ורישיונות. הוא מריץ -config /config -addr :6262.

HolyArrs חינמי. אם זה חסך לך זמן, תן לו כוכב ב-GitHub, תמוך בפרויקט או קנה לי קפה.