مرجع الأدوات
المستوى الأعلى
| السكربت | الغرض |
|---|---|
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 ترجمات واجهة الموقع العربية |