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 مطابق، يُطابق مع التوفيرات.

عند التصفية حسب التوفير [P]، يمكن للمستخدم تحديد قواعد تقييد إضافية لمطابقة الوسائط. يمكن استخدام مقارنات الإصدار الأساسية لهذا الغرض (=, >, <, >=, <=)، مثل <provide> >= <version>، حيث وسيطة <version> تكون بتنسيق [EPOCH:]VERSION[-RELEASE] كما هو محدد في قسم مطابقة NEVRA.

لبناء تعبيرات توفير أكثر تعقيدًا، تُدعم ميزة تبعية غنية. تُحصر دائمًا بين أقواس ويمكن استخدام العوامل المنطقية والتداخل، مثل (<provide1> or (<provide2> and <provide3>)). لمزيد من المعلومات، يُرجى الاطلاع على تبعيات 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 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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