انتقل إلى المحتوى الرئيسي

مرجع الأدوات

المستوى الأعلى

السكربتالغرض
build.sh [clean] [--preset name] [--production]نقطة دخول البناء؛ يجمع طبقات الضبط، ويدعم الإعدادات المسبقة لـ CMake (ble وst7789)، ويفرض اشتراطات الإنتاج المسبقة
flash.sh [--preset name] [port]idf.py flash، المنفذ الافتراضي /dev/ttyACM0
monitor.sh [--preset name] [port]المنفذ التسلسلي مع فك آثار الانهيار

tools/

السكربتالغرض
prepare_sd_card_data.sh --check|--rename PATHتحقق من بنية بطاقة SD مقابل قواعد المكتبة؛ --rename يصلح الأسماء القابلة للإصلاح في مكانها
import_quran_android_timings.pyتحويل قواعد بيانات توقيت الآيات SQLite من تطبيق قرآن أندرويد وملفات JSON إلى صيغة .atb الثنائية المحسنة وأرشيفاتها
download_reciter.shتنزيل تلاوات كاملة للمصحف (EveryAyah أو mp3quran) في sd_card_data/ مع تجميع توقيتات .atb تلقائياً
generate_https_certs.shشهادة TLS ومفتاح موقعة ذاتياً للتطوير في littlefs_data/certs/ (10 سنوات، CN هو safi.local)
generate_production_certs.shشهادة ومفتاح لكل جهاز، يُكتبان خارج شجرة git (التزويد)
generate_lvgl_fonts.shيعيد توليد خطوط LVGL العربية واللاتينية المدمجة (خط الإنتاج)؛ الناتج C مُودَع في المستودع
nvs_mass_provisioning.pyبيان CSV إلى صور قسم NVS لكل جهاز (التزويد)
provision_device.shجهاز واحد من البداية إلى النهاية: فلاش، بذر، تحقق
production_preflight.shيرفض فلاش الإنتاج ما لم تكن البوابات ومواد المفاتيح سليمة
hil/run_device_tests.sh [port]مشغل اختبارات العتاد في الحلقة: مجموعة Unity على الجهاز، بوابة stdio، استعادة برنامج التطوير الثابت (الاختبار)
font_converter.pyمحول TTF إلى خطوط نقطية قديم محفوظ لتاريخ مكدس العرض قبل LVGL؛ حل محله generate_lvgl_fonts.sh

العتاد

ليست سكربتات بناء، لكنها أسطر الأوامر القابلة للتكرار خلف فصول العتاد.

الأمرالغرض
kicad-cli pcb export gerbers/drill ...، kicad-cli sch export pdf، kicad-cli ... export bomإعادة توليد مخرجات التصنيع (gerbers، الحفر، BOM، CPL، STEP، PDF المخطط) في hardware/pcb/exports/؛ الاستدعاءات الدقيقة في hardware/pcb/README.md
flatpak run --command=freecadcmd org.freecad.FreeCAD hardware/enclosure/safi_enclosure.pyتشغيل FreeCAD بلا واجهة يعيد بناء العلبة القابلة للطباعة بصيغتي STEP وSTL من السكربت البارامتري

موقع الوثائق

الأمرالغرض
cd safi-docs && npm run startتأليف الوثائق مع تحديث حي
npm run buildبناء الإنتاج، باللغتين، الروابط المكسورة قاتلة
npm run diagramsإعادة تصدير مصادر draw.io إلى SVG عبر docker (دليل النمط)
npm run write-translations -- --locale arإعادة توليد JSON ترجمات واجهة الموقع العربية