فا نیکسی

10.5. قالب فایل «ATerm» مربوط به Derivation

به دلایل تاریخی، درایویشن‌های انبار روی دیسک با فرمت «Annotated Term» (یا به اختصار ATerm) ذخیره می‌شوند (راهنما، مقاله).

فرمت ATerm استفاده‌شده

درایویشن‌ها در یکی از فرمت‌های زیر سریال‌سازی می‌شوند:

  Derive(...)

برای تمام درایویشن‌های پایدار.

  DrvWithVersion(<version-string>, ...)

تنها version-stringهایی که امروزه استفاده می‌شوند مربوط به ویژگی‌های آزمایشی هستند:

استفاده برای کدگذاری به شیء انبار

هنگامی که یک derivation به یک [شیء انبار] کدگذاری می‌شود، ما انتخاب‌های زیر را انجام می‌دهیم:

  • [نام] مسیر انبار همان نام derivation به همراه پسوند .drv در انتها است.

    در واقع، فرمت ATerm بالا شامل نام derivation نیست، با این فرض که یک مسیر انبار نیز به‌طور جانبی (out-of-band) فراهم خواهد شد.

  • این derivation با استفاده از ["روش متن" (Text)] از آدرس‌دهی محتواییِ derivationها، بر اساس محتوا آدرس‌دهی می‌شود.

در حال حاضر ما همیشه derivationها را با استفاده از فرمت ATerm (و دو انتخاب قبلی) به شیء انبار کدگذاری می‌کنیم، اما این حق را برای خود محفوظ می‌داریم که در آینده انواع جدیدی از derivationها را به‌گونه‌ای متفاوت کدگذاری کنیم.

nix.dev/manual/nix/stable/protocols/derivation-aterm.html

نیکسی · یادداشت‌های فارسی Nix local fonts