table of contents
| DNF5-SPECS(7) | dnf5 | DNF5-SPECS(7) |
الاسم¶
dnf5-specs - مواصفات الأنماط
الوصف¶
عُرّفت قواعد مطابقة أنماط مختلفة للوسائط بصيغة *-spec للعمل مع كل نوع كيان في DNF5. في هذا القسم، وُصفت جميع القواعد وشُرحت بالتفصيل مع أمثلة.
الأنماط العامة (GLOBS)¶
تدعم مواصفات الأنماط نفس مطابقة الأنماط العامة التي تدعمها الصدفة. الأنماط التالية مدعومة:
- *
- يطابق أي عدد من المحارف.
- ?
- يطابق أي محرف مفرد.
- []
- يطابق أي واحد من المحارف المحاطة. زوج من المحارف يفصل بينهما شرطة يشير إلى تعبير نطاق؛ يُطابَق أي محرف يقع بين هذين المحرفين، بما في ذلك هما. إذا كان المحرف الأول الذي يلي [ هو ! أو ^ فسيُطابَق أي محرف غير محاط.
ملاحظة: الأقواس المعقوفة ({}) غير مدعومة. لا يزال بإمكانك استخدامها في الصدفات التي تدعمها وترك الصدفة تقوم بالتوسيع، لكن إذا كانت مقتبسة أو مهربة، فلن يوسعها DNF5.
الحزم¶
تأخذ العديد من الأوامر معامل <package-spec*> يختار حزمة للعملية. اعتمادًا على الأمر، تُطابق وسيطة <package-spec*> مع:
- NEVRA [N] أو NEVRA غير حساس لحالة الأحرف [NI]
- التوفيرات [P]
- توفيرات الملفات [F]
- الملفات الثنائية [B]
بالتوالي حتى يُعثر على تطابق.
على سبيل المثال، يُطابق <package-spec-NP> أولاً مع NEVRAs، وإذا لم يُعثر على NEVRA مطابق، يُطابق مع التوفيرات.
عندما يكون <package-spec> اسم حزمة أو توفيرًا، يمكن للمستخدم تقديم قواعد تقييد إضافية لمطابقة الوسائط. يمكن استخدام مقارنات الإصدار الأساسية لهذا الغرض (=, >, <, >=, <=)، مثل <package-spec> >= <version>، حيث تكون وسيطة <version> بصيغة [EPOCH:]VERSION[-RELEASE] كما هو محدد في قسم مطابقة NEVRA.
لبناء تعبيرات أكثر تعقيدًا، تُدعم أيضًا ميزة التبعيات الغنية، والتي تُحصر دائمًا بين أقواس. يمكن استخدام العوامل المنطقية والتداخل، مثل (<spec1> or (<spec2> and <spec3>)). لمزيد من المعلومات، يُرجى الاطلاع على تبعيات RPM المنطقية.
مطابقة NEVRA¶
يمكن تعريف كل حزمة بشكل فريد بواسطة سلسلة NEVRA. وهي تتكون من 5 أجزاء من المعلومات:
- Name
-
اسم الحزمة.
- Epoch
-
رقم الحقبة. لا يُضمن دائمًا.
يتجاوز رقم الحقبة فحص الإصدارات الأخرى، لذا يمكن استخدامه لفرض ترقية الحزمة على حزمة أخرى.
- Version
-
سلسلة الإصدار. ليست رقمية بالكامل. الغرض منها مطابقة إصدار البرمجية الأصلي (upstream).
- Release
-
سلسلة الطبعة.
إنها معلومات حول بناء حزمة معينة، وعادة ما تكون رقمًا يزداد مع كل بناء أحدث. لا ترتبط بالبرمجية الأصلية.
- Architecture
-
سلسلة البنية المستهدفة. تحدد نوع المعالج الذي يُراد تثبيت الحزمة عليه.
يمكن أن تكون أيضًا حزمة تحتوي على ملفات مصدرية (src) أو حزمة مستقلة عن البنية (noarch).
عند المطابقة ضد NEVRAs، تُدعم المطابقة الجزئية. يحاول DNF5 مطابقة المواصفات مع القائمة التالية من أشكال NEVRA (بترتيب تنازلي للأولوية):
NAME-[EPOCH:]VERSION-RELEASE.ARCH NAME.ARCH NAME NAME-[EPOCH:]VERSION-RELEASE NAME-[EPOCH:]VERSION
لاحظ أن الاسم يمكن أن يحتوي عمومًا على شرطات (مثل package-with-dashes).
يُستخدم النموذج الأول الذي يطابق أي حزم ولا تُجرَّب النماذج المتبقية. إذا لم يطابق أي من النماذج أي حزم، تُجرَى محاولة لمطابقة <package-spec> مقابل NEVRAs الحزم الكاملة. هذا ذو صلة فقط إذا كانت الأنماط العامة (globs) موجودة في <package-spec>.
يمكنك تحديد أنماط المطابقة (globs) كجزء من أي من مكونات NEVRA الخمسة. يمكنك أيضًا تحديد نمط مطابقة لمطابقة مكونات NEVRA المتعددة (بمعنى آخر، للمطابقة عبر فواصل NEVRA). ومع ذلك، في هذه الحالة، ستحتاج إلى كتابة المواصفة للمطابقة مقابل NEVRAs الحزمة الكاملة، حيث لا يمكن تقسيم هذه المواصفة إلى نماذج NEVRA.
مطابقة توفير الملفات¶
إذا بدأ spec إما بـ / أو */، فإنه يُعتبر توفير ملف محتمل.
مطابقة الملفات الثنائية¶
ما إذا كان ينبغي النظر في ثنائيات الحزمة أثناء المطابقة. يتحقق مما إذا كانت spec المعطاة ثنائيًا في /usr/bin/ أو /usr/sbin/.
COMPS¶
<group-spec>``|``<environment-spec> يسمح باختيار المجموعات|البيئات التي يجب أن تعمل عليها عملية معينة. إنها سلسلة غير حساسة لحالة الأحرف (تدعم محارف التوسيع) تُطابق مع معرف المجموعة|البيئة، والاسم القانوني والاسم المترجم إلى اللغة المحلية الحالية LC_MESSAGES (إن أمكن).
تُسبق specs الخاصة بـ Comps بـ @ للأوامر التي تقبل أيضًا specs حزمة. على سبيل المثال انظر dnf5-install(8)، أمر التثبيت <#install-command-ref-label>.
تقبل أوامر المجموعة والبيئة كلاً من <group-spec> و <environment-spec>، ولكنها تفضل فقط نوعها المقابل في حالة تطابق كل من المجموعات والبيئات مع الوسيطة المعطاة. الأوامر الأخرى التي تقبل كلا النوعين تؤثر على كل من المجموعات والبيئات.
الوحدات¶
تسمح <module-spec> للمرء باختيار الوحدات أو التشكيلات التي يجب أن تعمل عليها عملية معينة.
بما أن شكل المطابقة NEVRA غير كافٍ للوحدات، فإنها تُحدد بشكل فريد بواسطة تنسيق NSVCA (NAME:STREAM:VERSION:CONTEXT:ARCH/PROFILE). الأشكال الجزئية المدعومة هي التالية:
NAME NAME:STREAM NAME:STREAM:VERSION NAME:STREAM:VERSION:CONTEXT جميع التجميعات أعلاه مع ::ARCH (مثلاً NAME::ARCH) NAME:STREAM:VERSION:CONTEXT:ARCH جميع التجميعات أعلاه مع /PROFILE (مثلاً NAME/PROFILE)
في حالة عدم تحديد الدفق (stream)، يُستخدم الدفق المُمكّن أو المبدئي، بهذا الترتيب. في حالة عدم تحديد التشكيلة (profile)، تُستخدم تشكيلة النظام المبدئية أو تشكيلة 'default'.
المعاملات¶
يمكن أن تكون <transaction-spec> بأحد عدة أشكال. إذا كانت عددًا صحيحًا، فإنها تحدد معرف المعاملة. تحديد last هو نفسه تحديد معرف أحدث معاملة. الشكل الأخير هو last-<offset>، حيث <offset> عدد صحيح موجب. يحدد المعاملة رقم (الإزاحة) التي تسبق أحدث معاملة.
انظر أيضًا¶
- تبعية RPM المنطقية:
-
<https://rpm-software-management.github.io/rpm/manual/boolean_dependencies.html>
المؤلف¶
انظر AUTHORS.md في توزيعة مصدر dnf5.
حقوق النسخ¶
المساهمون في مشروع dnf5.
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| 19 فبراير 2026 |