Scroll to navigation

DNF5-MODULARITY(7) dnf5 DNF5-MODULARITY(7)

الاسم

dnf5-modularity - نظرة عامة على الوحداتية

الوصف

الوحداتية هي طريقة بديلة لبناء الحزم وتنظيمها وتسليمها. لمزيد من التفاصيل انظر: <https://docs.pagure.org/modularity/>.

تعريفات

يمكن لكل مستودع أن يحتوي على بيانات وصفية modules مع مستندات modulemd. تحتفظ هذه المستندات ببيانات وصفية حول الوحدات مثل Name أو Stream أو قائمة الحزم.
حزمة (غير وحداتية)
حزمة لا تنتمي إلى وحدة.
حزمة وحداتية
حزمة تنتمي إلى وحدة. تُدرج في modulemd تحت قسم artifacts. يمكن أيضًا التعرف على الحزم الوحداتية من خلال وجود رأس RPM %{modularitylabel} مضبوط.
تيار (الوحدة)
التيار هو مجموعة من الحزم، مستودع افتراضي. يُعرف بـ Name و Stream من modulemd مفصولين بنقطتين، على سبيل المثال "postgresql:9.6".

يمكن أن تكون تيارات الوحدة active أو inactive. active تعني أن حزم RPM من هذا التيار مضمنة في مجموعة الحزم المتاحة. الحزم من التيارات inactive تُصفى. التيارات تكون active إما إذا تم وضع علامة عليها كـ default أو إذا تم enabled صراحةً بإجراء من المستخدم. التيارات التي تلبي تبعيات التيارات default أو enabled تُعتبر أيضًا active. يمكن لتيار واحد فقط من وحدة معينة أن يكون active في وقت معين.


ترشيح الحزم

بدون وحدات، تُستخدم الحزم ذات الإصدار الأعلى مبدئيًا.

يمكن لتيارات الوحدة توزيع حزم بإصدارات أقل من المتاحة في المستودعات المتاحة لنظام التشغيل. لجعل هذه الحزم متاحة للتثبيتات والترقيات، تُصفى الحزم غير الوحداتية عندما يتطابق اسمها أو ما توفره مع اسم حزمة وحداتية من أي تيار مفعل أو مبدئي أو تابع. لن تتسبب حزم المصدر الوحداتية في تصفية الحزم الثنائية غير الوحداتية.

حزم RPM غير وحداتية

تحتوي على أسماء حزم RPM المستبعدة من تصفية الحزم لتيار وحدة معين. عند تعريفها في أحدث وحدة نشطة، ستظهر حزم RPM غير وحداتية بنفس الاسم أو ما توفره والتي تمت تصفيتها سابقًا مرة أخرى.

مستودعات التصحيحات السريعة

في حالات خاصة، يريد المستخدم انتقاء حزم فردية مقدمة خارج تيارات الوحدة وجعلها متاحة مع الحزم من التيارات النشطة. في الظروف العادية، تُصفى هذه الحزم أو تُرفض من الوصول إلى النظام بواسطة آليات Fail-safe. لجعل النظام يستخدم حزمًا من مستودع بغض النظر عن وحداتيتها، حدد module_hotfixes=true في ملف .repo. هذا يحمي المستودع من تصفية الحزم.

يرجى ملاحظة أن حزم التصحيحات السريعة لا تتجاوز حزم الوحدة، بل تصبح فقط جزءًا من مجموعة الحزم المتاحة. إن Epoch و Version و Release للحزمة هي ما يحدد ما إذا كانت الحزمة هي الأحدث.

آليات Fail-safe

المستودعات ذات البيانات الوصفية للوحدة غير متاحة

عندما يكون مستودع ببيانات وصفية للوحدة غير متاح، يجب أن تستمر تصفية الحزم في العمل. يجب أن تظل حزم RPM غير الوحداتية غير متاحة ويجب ألا تصل إلى النظام أبدًا.

يحدث هذا عندما:

  • يعطل المستخدم مستودعًا عبر --disable-repo أو يستخدم --repo
  • يزيل المستخدم ملف .repo من القرص
  • المستودع غير متاح وله skip_if_unavailable=true

يحتفظ DNF5 بنسخ من أحدث modulemd لكل تيار نشط ويستخدمها إذا لم يكن هناك modulemd متاح للتيار. هذا يحافظ على عمل تصفية الحزم بشكل صحيح.

تُنشأ النسخ في أي وقت يتم فيه حل معاملة وبدءها. يشمل ذلك معاملات RPM بالإضافة إلى أي عمليات dnf5 module <enable|disable|reset>.

عند استخدام بيانات الأمان الاحتياطي، يُظهر DNF5 هذه الوحدات كجزء من مستودع @modulefailsafe.

الحزم المعيارية اليتيمة

جميع الحزم المبنية كجزء من وحدة لها رأس RPM مضبوط على %{modularitylabel}. إذا أصبحت هذه الحزمة جزءًا من معاملة RPM ولا يمكن ربطها بأي modulemd متاح، يمنع DNF5 من الحصول عليها على النظام (الحزمة متاحة، لكن لا يمكن تثبيتها أو ترقيتها، إلخ). الحزم من مستودعات التصحيح السريع أو مستودع سطر الأوامر لا تتأثر بآليات الأمان الاحتياطي.

المؤلف

انظر AUTHORS.md في توزيعة مصدر dnf5.

حقوق النسخ

المساهمون في مشروع dnf5.

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

09 مايو 2026