عن المشروع

devenv يبني بيئات تطوير قابلة للتكرار فوق Nix، ويتم تكوينه عبر devenv.nix وdevenv.yaml. يستهدف التكرار السريع: تخزين مؤقت لتقييم Nix المتزايد، وواجهة طرفية مع تقدم بناء مباشر، وإعادة تحميل أصلية للصدفة تعيد البناء في الخلفية بينما تبقى الصدفة تفاعلية. يوفر خادم LSP مدمجًا قائمًا على nixd للإكمال التلقائي والمستندات عند التمرير والانتقال إلى التعريف لملف devenv.nix. يمكن إنشاء البيئات بشكل مؤقت من سطر الأوامر دون ملفات تكوين، أو سحبها من مستودعات أخرى باستخدام --from، ويمكن تجاوز خيارات التكوين بقيم مكتوبة مثل --option services.postgres.enable:bool true. تشمل التغطية أكثر من 50 لغة مع مترجمات وخوادم LSP ومنسقات ومصححات واختيار إصدارات؛ وأكثر من 100,000 حزمة من Nixpkgs لأنظمة Linux وmacOS وx64 وARM64 بما في ذلك WSL2؛ وأكثر من 40 خدمة مثل PostgreSQL وRedis وMySQL وMongoDB وElasticsearch وCaddy. يدير مدير عمليات أصلي مكتوب بلغة Rust ترتيب التبعيات وسياسات إعادة التشغيل وفحوصات الجاهزية (exec وHTTP وsystemd notify) وتفعيل المقابس ونبضات المراقبة ومراقبة الملفات، بالإضافة إلى التخصيص التلقائي للمنافذ الحرة. تدعم المهام تنفيذًا قائمًا على الرسوم البيانية (DAG) وتخزينًا مؤقتًا وتشغيلًا متوازيًا ومساحات أسماء، وتعمل السكربتات مع الوصول إلى جميع حزم البيئة. تشمل ميزات التعبئة والنشر بناء حاويات OCI من البيئة دون Docker، ومخرجات لتعبئة التطبيقات بأدوات خاصة باللغة، ودعم متعدد المستودعات للإشارة إلى المخرجات والخيارات عبر المستودعات. يتم التعامل مع التركيب عبر الملفات الشخصية والاستيراد والمدخلات المثبتة أو المتجاوزة. تشمل التكاملات SecretSpec لإدارة الأسرار التصريحية، وخطافات git عبر git-hooks.nix، والاختبار باستخدام devenv test الذي يبدأ ويوقف العمليات تلقائيًا، وdirenv للتفعيل التلقائي للصدفة، وخادم MCP لتكامل المساعد الذكي، وتوليد بيئة قائم على الذكاء الاصطناعي من وصف باللغة الطبيعية. تقدم واجهة سطر الأوامر أوامر تشمل init وgenerate وshell وupdate وsearch وinfo وup وprocesses وtasks وtest وcontainer وinputs وchangelogs وrepl وgc وbuild وeval وdirenvrc وversion وmcp وlsp، بالإضافة إلى خيارات لتزامن بناء Nix والعزل والوضع دون اتصال والملفات الشخصية وتخزين التقييم المؤقت وإخراج التتبع.