الإعداد
الإعداد
ابنِ HolyArrs من المصدر وافتحه في المتصفح على المنفذ 6262.
قبل أن تبدأ
رابط إلى قبل أن تبدأ- Go، بالإصدار الذي يسمّيه
go.mod. - Node 24 و npm.
- طرفية مفتوحة في جذر المستودع.
لا تحتاج إلى مترجم C. عمليات البناء تستعمل CGO_ENABLED=0.
البناء والتشغيل
رابط إلى البناء والتشغيل-
ثبّت حزم تطبيق الويب:
Terminal window npm --prefix app/frontend ci -
ابنِ تطبيق الويب:
Terminal window npm --prefix app/frontend run buildسترى البناء ينتهي والمجلد
app/frontend/distيمتلئ بالملفات. -
ابنِ البرنامج:
Terminal window go build -o bin/holyarrs ./app/backend/cmd/holyarrs -
شغّله مع مجلد إعدادات خاص بك:
Terminal window ./bin/holyarrs -config ./config -
افتح
http://localhost:6262.سترى معالج التشغيل الأول. أنشئ حساب المالك.
يأخذ -config مجلدًا على قرص محلي، وقيمته الافتراضية /config. ويغيّر -addr عنوان الاستماع، وقيمته الافتراضية :6262.
العمل على تطبيق الويب
رابط إلى العمل على تطبيق الويبأبقِ البرنامج يعمل. وفي طرفية ثانية، شغّل خادم التطوير:
npm --prefix app/frontend run devيعيد خادم التطوير التحميل عند الحفظ ويرسل نداءات API إلى البرنامج العامل. سترى تعديلك في المتصفح خلال 2 s.
الخيارات
رابط إلى الخياراتاستعمل Makefile
رابط إلى استعمل Makefile| الأمر | عمله |
|---|---|
make ui |
يثبّت حزم الويب ويبني تطبيق الويب |
make build |
make ui، ثم يبني bin/holyarrs |
make test |
go test بمهلة 25 min |
make vet |
go vet ./... |
make docker |
يبني الصورة باسم holyarrs:dev |
make e2e |
يشغّل الاختبارات الشاملة (end-to-end) |
فعّل ميزة محجوبة
رابط إلى فعّل ميزة محجوبةبعض الميزات محجوبة وتبقى مطفأة. سمِّها في HOLYARRS_FLAGS مفصولة بفواصل:
HOLYARRS_FLAGS=subtitle_sites,ai_apps ./bin/holyarrs -config ./configتخفي الصفحات الميزة المطفأة، ومسارات API الخاصة بها غير موجودة. يقرأ المستخدمون عنها في الميزات المحجوبة.
املأ المكتبة ببيانات تجريبية
رابط إلى املأ المكتبة ببيانات تجريبيةتملأ أداة العرض التجريبي مجلد إعدادات بمجموعة تجريبية. تعمل فقط و HolyArrs متوقف، وفقط على مجلد علّمته على أنه مختبر. علّمه مرة واحدة:
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 ./ |
تعمل على مجلد إعدادات متوقف. الأوامر: 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 |
بناء الصورة
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 أو ادعمه ماليًا أو ادعُني إلى فنجان قهوة.