HeadlinesBriefing favicon HeadlinesBriefing.com

ثلاث طرق لتهريب SQLite إلى Nix

Hacker News •
×

يستخدم مشروع nixpkgs-multiverse فهارس JSON (versions.json بحجم 5.3 ميغابايت، history.json بحجم 7.5 ميغابايت) تغطي 305,492 إصدار حزمة عبر 31,904 حزمة. يقوم builtins.fromJSON في Nix بتحليل الملفات بالكامل بشغف، مما يجعل عمليات البحث الفردية تكلف بقدر المسح الكامل.

توجد ثلاث حلول بديلة. builtins.exec (منذ 2017) يشغل SQLite ويحلل مخرجه المنسق لـ Nix، لكنه ينشئ عملية لكل استعلام. builtins.importNative (منذ 2014) يحمل مكتبة مشتركة مع مقابض SQLite مخزنة مؤقتًا، متجنبًا تكلفة بدء التشغيل. كلاهما يتطلب allow-unsafe-native-code-during-evaluation.

يحول نهج ثالث الفهرس إلى ملف Nix بحجم 6.0 ميغابايت، مستفيدًا من التقييم الكسول في Nix للمس السمات المطلوبة فقط. خيار رابع، builtins.wasm (مارس 2026)، يستدعي دوال WebAssembly، مما يمدد Nix دون builtins جديدة.

الكيانات الرئيسية: الشركات: Determinate Systems | الأشخاص: Eelco، rickynils، fmzakari