منصوبے کے بارے میں

Graft ایک ابتدائی الفا پروجیکٹ ہے جو چھوٹے کنٹینر ورک لوڈز کو ٹائپڈ TOML میں بیان کرنے اور انہیں Nix، Podman Quadlet، اور systemd کے ذریعے حقیقت میں لانے کے لیے استعمال ہوتا ہے۔ دستاویزی فلو یہ ہے: TOML ارادہ -> تصدیق شدہ resolved JSON -> Nix سے بنایا گیا rootfs -> Quadlet .container فائل -> systemd سروس -> Podman کنٹینر۔ یہ Dockerfile، رن ٹائم پیکیج انسٹالیشن، اور ہاتھ سے لکھی گئی Quadlet فائلوں سے بچنے کا ارادہ رکھتا ہے، کیونکہ یہ متبادل طور پر arbitrary Podman، Quadlet، systemd، یا Nix ٹکڑوں کو قبول کرنے کے بجائے حمایت شدہ ورک لوڈ تصورات کی توثیق کرتا ہے۔ ریپوزیٹری دو اسکوپس کے لیے rootfs-store بیک اینڈ کی وضاحت کرتا ہے: NixOS سسٹم/rootful کنٹینرز اور Home Manager user-manager کنٹینرز۔ رپورٹ کردہ حمایت شدہ فیچرز میں شامل ہیں: پیکیجز، argv کمانڈز، شناخت، ورکنگ ڈائریکٹری، ماحول (environment)، طویل چلنے والی سروسز، محدود نوکریاں (finite jobs)، سیٹ اپ نوکریاں، واضح اسٹارٹ اپ، ٹائپڈ ورک لوڈ انحصار (dependencies)، منتخب کردہ کنٹینر نیٹ ورکنگ، بطور ڈیفالٹ رڈ اونلی بائنڈز، منیجڈ والیومز، محدود tmpfs ماؤنٹس، qualified CDI ریسورس ریفرنسز، ٹائپڈ ہارڈننگ کنٹرولز، جنریٹڈ اسکیما توثیق، اور محفوظ (reserved) فیلڈز کی fail-closed ردی۔ دستاویزات configuration reference میں قبول شدہ TOML کو موجودہ، منصوبہ بند، مؤخر، اور ممنوعہ رویے کو کور کرنے والی authoritative capability status سے الگ کرتی ہیں۔ سیکیورٹی ڈیفالٹس میں رڈ اونلی rootfs، dropped runtime capabilities، اور no-new-privileges شامل ہیں، جس میں نرمیوں کو واضح رکھا گیا ہے۔ Graft کوئی default autostart یا restart policy شامل نہیں کرتا، اور یہ خاموشی سے Podman، rootless overlay support، systemd user linger، اکاؤنٹس، فائر وال رولز، یا DNS پالیسی کو ترتیب نہیں دیتا۔ کنٹینرز host kernel شیئر کرتے ہیں اور انہیں VM-equivalent سیکیورٹی باؤنڈری کے طور پر پیش نہیں کیا جاتا۔ موجودہ بیک اینڈ صرف ہر ورک لوڈ کے realised Nix runtime closure کو لازمی read-only store mounts کے ذریعے ظاہر کرتا ہے، جس میں کوئی complete-store fallback نہیں ہے۔ README Graft کو چھوٹے Nix-native سروسز اور ڈویلپمنٹ ورک لوڈز کے لیے پیش کرتا ہے جو reviewable TOML اور systemd ownership سے فائدہ اٹھاتے ہیں۔ یہ مختلف ضروریات کے لیے متبادل کی فہرست بناتا ہے: مکمل upstream option کوریج کے لیے direct Quadlet، OCI/Compose workflows کے لیے Compose ٹولنگ، یا جب ورک لوڈز host kernel شیئر نہ کر سکیں تو VM باؤنڈری۔ Quickstarts، roadmap، vision، security policy، contribution guide، اور development checks کے لنکس دیے گئے ہیں، اور پروجیکٹ Apache-2.0 لائسنس کے تحت ہے۔