namcap(1) أوامر المستخدم namcap(1)

الاسم

namcap - أداة تحليل الحزم

موجز

namcap [خيارات] <حزمة|PKGBUILD> [حزمة|PKGBUILD] ...

الوصف

namcap هي أداة تحليل حزم تبحث عن مشاكل في حزم آرتش لينكس أو ملفات PKGBUILD الخاصة بها. يمكنها تطبيق قواعد على قائمة الملفات، أو الملفات نفسها، أو ملفات PKGBUILD فردية.

ترجع القواعد قوائم من الرسائل. يمكن أن تكون كل رسالة من ثلاثة أنواع: خطأ، تحذير، أو معلومات (اعتبرهم ملاحظات أو تعليقات). الأخطاء (المشار إليها بـ 'E:') هي أشياء يتأكد namcap بشدة أنها خاطئة وتحتاج إلى إصلاح. التحذيرات (المشار إليها بـ 'W:') هي أشياء يعتقد namcap أنه يجب تغييرها ولكن إذا كنت تعرف ما تفعله فيمكنك تركها. المعلومات (المشار إليها بـ 'I:') تُظهر فقط عند استخدام وسيط المعلومات. رسائل المعلومات تعطي معلومات قد تكون مفيدة ولكنها ليست شيئًا يحتاج إلى تغيير.

الخيارات

لا تشغل قواعد قائمة_قواعد على الحزمة
اعرض رسائل المعلومات
أرجع قائمة بالقواعد الصالحة وأوصافها
اعرض وسوم namcap سهلة التحليل بدلاً من الوصف العادي المقروء للإنسان؛ على سبيل المثال استخدام non-fhs-man-page بدلاً من "تم العثور على صفحة دليل غير FHS (%s). استخدم /usr/share/man بدلاً من ذلك". يمكن العثور على قائمة كاملة بوسوم namcap مع أوصافها المقروءة للإنسان في /usr/share/namcap/tags.
طبق فقط قواعد قائمة_قواعد على الحزمة
قائمة_قواعد هي قائمة بأسماء القواعد مفصولة بفواصل
اطبع الإصدار واخرج

قواعد

مصفوفات
يتحقق من أن متغيرات المصفوفة هي بالفعل مصفوفات وليست سلاسل نصية
نسخ_احتياطية_سيئة
يتحقق من أن إدخالات النسخ الاحتياطي لا تبدأ بـ /
معمارية
يبحث عن مراجع لـ i686 و i586 ويخبرك باستخدام $CARCH بدلاً من ذلك
أسماء_كبيرة
يفحص PKGBUILD للتحقق من أن اسم الحزمة لا يحتوي على أحرف كبيرة
أسماء_كبيرة_حزمة
يفحص حزمة للتحقق من أن اسم الحزمة لا يحتوي على أحرف كبيرة
مجاميع_اختبارية
يتأكد من أن PKGBUILD يتضمن مجاميع اختبارية صالحة
يعتمد_على
تشغل هذه الوحدة ldd على جميع الملفات التنفيذية، وتحصل على التبعيات على مستوى الربط، وتجد أصغر مجموعة فرعية من التبعيات تغطي التبعيات على مستوى الربط، وتقارن تلك القائمة بتبعيات الحزمة. تُرجع رسائل في ثلاث حالات: تبعية مكتشفة وغير مضمنة، تبعية مضمنة ولكنها مستوفاة بالفعل، وتبعية مضمنة وغير ضرورية. هذه الاقتراحات هي مجرد إرشادات ويجب على جميع بناة الحزم أخذها في الاعتبار (أي أنت أذكى من namcap).

بعض الحالات التي يفشل فيها namcap هي dlopen() والروابط الغامضة. لا تظهر المكتبات المحملة عبر dlopen() لأنها تُحمّل في وقت التشغيل: في حالة برنامج يُحمّل الإضافات. الروابط الغامضة هي الحالات التي يحتاج فيها جزء صغير فقط من الحزمة إلى شيء ليعمل؛ عادةً، لن يُصل إلى ذلك الجزء الصغير إلا إذا كان ذلك الشيء مثبتًا (مثل إضافة جافا لمتصفح موزيلا المضمنة في حزمة جافا).

يتحقق من أسماء الدلائل في قائمة ملفات الحزمة للدلائل القياسية (أي /etc، /usr/bin، /usr/lib). تُرجع جميع الملفات في الدلائل غير القياسية.
يُعطي خطأ إذا وجد ملفات ELF (ثنائية) خارج المسارات القياسية (/bin، /usr/bin، إلخ).
يبحث عن دلائل في حزمة لا تحتوي على أي ملفات.
يتحقق من أن المتغيرات الإضافية تبدأ بشرطة سفلية.
يتحقق من التثبيت الصحيح لصفحات المعلومات.
يتحقق من التثبيت الصحيح لصفحات الدليل.
يتحقق من أن جميع الملفات مملوكة لـ root:root وليس لمستخدم أو مجموعة أخرى.
يتحقق من وجود ملفات MIME الخاصة بـ GNOME المولدة.
يتحقق مما إذا كانت خبيئة أيقونات hicolor تُحدّث عندما تُثبّت حزمة ملفات في /usr/share/icons/hicolor.
يتحقق من أن الحزمة لا تحتوي على ملف دليل المعلومات (/usr/share/info/dir).
أي ملفات PKGBUILD تشير إلى ملفات في $startdir غير صحيحة.
يحذر إذا كانت ملفات libtool (*.la) موجودة.
يتحقق من أن متغير التراخيص قد مُلئ في ملف PKGBUILD.
يتحقق من أن متغير التراخيص قد مُلئ في حزمة. بالنسبة للحزم ذات الترخيص المخصص، يتحقق مما إذا كان ملف الترخيص قد ثُبّت في /usr/share/licenses/$pkgname/.
يبحث عن perllocal.pod. perllocal.pod هو ملف مزعج يُضمّن أثناء معظم تثبيتات وحدات perl
يتحقق من صلاحيات الملفات والدلائل الأساسية. يُرجع تحذيرات حول عدم تعيين بتات القراءة للجميع، وتعيين بتات الكتابة للجميع، وعدم تعيين بتات التنفيذ للجميع للدلائل
يُصدر خطأ إذا كان لملف ثنائي RPATH مضبوط على قيمة غير /usr/lib
يُصدر خطأ إذا كان لملف ثنائي RUNPATH مضبوط على قيمة غير /usr/lib أو /usr/lib32
يتحقق من عدم وجود أي أدلة scrollkeeper
يحذر إذا كان PKGBUILD يُنزّل من مرآة sourceforge محددة بدلاً من downloads.sourceforge.net العام
يكتشف الروابط الرمزية والصلبة التي لا تشير إلى مسار صالح في الحزمة
لمسؤولي الحزم، تتحقق هذه الوحدة من تذكرنا إضافة تعليق الصيانة والمساهمة.
يتحقق من تعيين متغير url في PKGBUILD
يتحقق من تعيين متغير url في ملف الحزمة

أمثلة

تطبيق جميع القواعد على foo.pkg.tar.gz
تطبيق قاعدتي depends وsymlink على foo.pkg.tar.gz
تطبيق جميع القواعد المستندة إلى PKGBUILD على الملف PKGBUILD
سرد جميع القواعد المتاحة

حقوق النسخ

حقوق النشر © 2003-2023 مساهمو Namcap، انظر AUTHORS للتفاصيل.

هذا برنامج حر؛ انظر المصدر لشروط النسخ. لا يوجد أي ضمان؛ ولا حتى ضمان قابلية التسويق أو الملاءمة لغرض معين.

ترجمة

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

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

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

24 أغسطس 2025 namcap 3.6.0