مجموعة الموانئ

مجموعات المنافذ (أو أشجار المنافذ ، أو ببساطة المنافذ ) هي مجموعات من ملفات الإنشاء والتصحيحات التي توفرها أنظمة التشغيل المبنية على BSD ، مثل FreeBSD و NetBSD و OpenBSD ، كطريقة بسيطة لتثبيت البرامج أو إنشاء حزم ثنائية. وهي عادةً ما تشكل أساس نظام إدارة الحزم ، حيث تتولى المنافذ إنشاء الحزم، بينما تتولى أدوات إضافية إدارة إزالة الحزم وترقيتها ومهام أخرى. بالإضافة إلى أنظمة BSD، قامت بعض توزيعات لينكس بتطبيق بنية تحتية مماثلة ، بما في ذلك Portage الخاص بـ Gentoo ، و Arch Build System (ABS) الخاص بـ Arch ، و Ports الخاص بـ CRUX ، و Templates الخاص بـ Void Linux .

تتمثل الميزة الرئيسية لنظام المنافذ، مقارنةً بنموذج التوزيع الثنائي، في إمكانية ضبط عملية التثبيت وتحسينها وفقًا للموارد المتاحة. فعلى سبيل المثال، يستطيع مسؤول النظام تثبيت نسخة 32 بت من حزمة برمجية بسهولة إذا لم تكن نسخة 64 بت متوفرة أو غير مُحسَّنة للجهاز. في المقابل، يتمثل العيب الرئيسي في وقت التجميع، الذي قد يكون طويلًا. فعلى سبيل المثال، قد يستغرق تثبيت نظام FreeBSD بالكامل باستخدام المنافذ عدة أيام، وذلك بحسب مواصفات الجهاز.

منافذ FreeBSD

قام جوردان هوبارد بإضافة وحدات الماكرو الخاصة بـ port make إلى مستودع CVS الخاص بنظام FreeBSD في 21 أغسطس 1994. [ 1 ] وكان قد أضاف ملف Makefile الخاص بمجموعة تثبيت الحزم الخاصة به قبل ذلك بعام (26 أغسطس 1993). [ 2 ] في البداية، تولى هوبارد وساتوشي أسامي صيانة إطار عمل المنافذ الأساسي لعدة سنوات. ثم شُكِّل فريق إدارة المنافذ لاحقًا لتولي هذه المهمة.

ملف pkgsrc الخاص بنظام NetBSD

تتميز مجموعة منافذ pkgsrc الخاصة بنظام NetBSD بأنها مصممة لتكون قابلة للنقل والاستخدام على عدد من أنظمة التشغيل إلى جانب NetBSD نفسه، بما في ذلك أنظمة BSD الأخرى، و SmartOS / illumos ، و macOS ، و MINIX 3 ، و Linux ، وأنظمة أخرى شبيهة بنظام Unix . تم إنشاء pkgsrc في أغسطس 1997 استنادًا إلى نظام منافذ FreeBSD الحالي. ويتبع جدول إصدارات ربع سنوي، ويحتوي اعتبارًا من أكتوبر 2018 على أكثر من 22000 حزمة. مع إصدارها 1.4، أعلنت DragonFly BSD أنها ستعتمد pkgsrc كنظام إدارة الحزم الرسمي الخاص بها. [ 5 ] ومع ذلك، قامت DragonFly BSD ببناء تطبيقها الخاص للمنافذ المسمى dports مع الإصدار 3.4 [ 6 ] وانتقلت إليه بالكامل مع الإصدار 3.6. ويتم التطوير عبر نظام Git الخاص بها. [ 7 ]

منافذ OpenBSD

على عكس نظام منافذ FreeBSD ، الذي استند إليه نظام منافذ OpenBSD في الأصل، يُقصد بنظام المنافذ أن يكون مصدرًا يُستخدم لإنشاء المنتج النهائي، أي الحزم : فعملية تثبيت أي منفذ تُنشئ أولًا حزمةً ثم تُثبّتها. تتكون المنافذ من ملف Makefile، وملفات نصية تحتوي على الأوصاف ورسائل التثبيت، وأي تصحيحات مطلوبة لتعديل البرنامج ليعمل على OpenBSD، وقائمة حزم تُدرج الملفات المراد تضمينها في الحزم. يستخدم نظام المنافذ مجموعة من ملفات Makefile القياسية، بعضها مشترك مع شجرة المصدر ، لتوفير الجزء الأكبر من وظائفه؛ وتشمل هذه البنية التحتية المشتركة العديد من وظائف المساعدة لمطوري المنافذ، مما يعني أنه غالبًا ما يُمكن إنشاء المنافذ ببساطة شديدة.

في أواخر أكتوبر 2007، أعلن نيكولاي ستورم، مطور نظام OpenBSD، أن شجرة المنافذ المستقرة (-stable) يجب اعتبارها غير مدعومة نظرًا لنقص الموارد. وقد أجبر هذا المستخدمين فعليًا على تشغيل شجرة المنافذ/الأساسية الحالية (-current) لمواكبة التحديثات الأمنية. وفي عام 2009، تقرر إعادة إحياء شجرة المنافذ المستقرة (-stable) تحت إشراف روبرت ناجي وجاسبر ليفيس أدريانس. [ 8 ]

توجد ثلاثة مواقع ويب غير رسمية تحتوي على قائمة بمنافذ وحزم OpenBSD:

  • كان موقع OpenPorts.se ، الذي أُعلن عنه في الأصل باسم ports.openbsd.nu عام 2006، [ 9 ] موقعًا إلكترونيًا مُصممًا خصيصًا يقوم بتحليل بنية شجرة المنافذ وتحديثاتها بنفسه، ويتيح تتبع التغييرات في أي منفذ. إلا أنه يعاني من قصور يتمثل في عدم دعمه لبعض منطق ملفات Makefile الأكثر تعقيدًا، وبالتالي يفتقد حوالي 15% من الحزم التي تتطلب معرفة دقيقة ببنية شجرة المنافذ واستخدام الأدوات الرسمية. [ 10 ] توقف المشروع في يناير 2023. [ 11 ]
  • تم الإعلان عن موقع ports.su في فبراير 2013، وهو مبني على قاعدة بيانات sqlports الرسمية، [ 12 ] وبالتالي يحتوي على مجموعة كاملة من جميع الحزم والإصدارات المتاحة لمنصة amd64. وبفضل اعتماده على الأدوات الرسمية، تتوفر الفئات "الافتراضية" (غير الأساسية) بسهولة، وكذلك معلومات حول المكتبات، ومتطلبات البناء، ومتطلبات التشغيل. يعتمد مصدر الموقع بشكل كبير على منفذ ports-readmes، وهو متاح بسهولة على GitHub . لم يعد يتم تحديث المشروع منذ نوفمبر 2018.

انظر أيضاً

مراجع

  1. "سجل CVS للمنافذ/Mk/bsd.port.mk" . مشروع FreeBSD . تم الاسترجاع في 26-05-2018 .{{cite web}}: CS1 maint: deprecated archiveal service ( link )
  2. "سجل CVS لملف src/usr.sbin/pkg_install/Makefile" . مشروع FreeBSD.{{cite web}}: CS1 maint: deprecated archiveal service ( link )
  3. "وثائق حزم جوينت - التثبيت على نظام macOS" . جوينت . مؤرشف من الأصل بتاريخ 2018-10-06 . تم الاطلاع عليه بتاريخ 2018-10-10 .
  4. "وثائق حزم جوينت - التثبيت على لينكس" . جوينت . مؤرشف من الأصل بتاريخ 2018-10-06 . تم الاطلاع عليه بتاريخ 2018-10-10 .
  5. ديلون، ماثيو. "سيتم دعم PKGSRC رسميًا بدءًا من الإصدار القادم" . مؤرشف من الأصل بتاريخ 9 سبتمبر 2015. تم الاطلاع عليه بتاريخ 23 يناير 2008 .
  6. شيريل، جاستن. "تخطيط إصدار DragonFly 3.4" . مؤرشف من الأصل بتاريخ 10 مارس 2016. تم الاطلاع عليه بتاريخ 5 مايو 2016 .
  7. "GitHub - DragonFlyBSD/DPorts: نظام بناء التطبيقات المخصص لنظام DragonFly BSD" . GitHub . مؤرشف من الأصل بتاريخ 11 يونيو 2018. تم الاطلاع عليه بتاريخ 8 يوليو 2014 .
  8. يودلوفسكي، ويليام. "منافذ الإصدار 4.6 المستقرة" . مؤرشف من الأصل بتاريخ 12-06-2011 . تم الاطلاع عليه بتاريخ 29-12-2009 .
  9. "ports.openbsd.nu - واجهة أمامية للمنافذ" . مجلة OpenBSD . 9 أغسطس 2006. مؤرشف من الأصل في 27 مايو 2018. تم الاطلاع عليه في 26 مايو 2018 .
  10. إسباي، مارك (2013-06-07). "ردًا على: لماذا لا يوجد pkg_find(1)؟" . مؤرشف من الأصل بتاريخ 2022-04-10 . تم الاطلاع عليه بتاريخ 2018-05-26 .
  11. "حان وقت الوداع" . 30 يناير 2023. مؤرشف من الأصل في 14 فبراير 2008. تم الاطلاع عليه في 2 نوفمبر 2023 .
  12. "تقديم ports.su — مرآة لملفات قراءة المنافذ وميزة البحث عن المنافذ" . مجلة OpenBSD . 2013-05-02. مؤرشف من الأصل في 2018-05-27 . تم الاطلاع عليه في 2018-05-26 .