Product SiteDocumentation Site

1.3. العمليات الداخلية في مشروع دبيان

نتائج مشروع دبيان النهائية الكثيرة تنشأ من عمل مطوري دبيان الخبراء ومن عمل المطورين الفردي أو الجماعي على حزم دبيان، ومن ملاحظات المستخدمين.

1.3.1. مطوّرو دبيان

Debian developers have various responsibilities, and as official project members, they have great influence on the direction the project takes. A Debian developer is generally responsible for at least one package, but according to their available time and desire, they are free to become involved in numerous teams, acquiring, thus, more responsibilities within the project.
Package maintenance is a relatively regimented activity, very documented or even regulated. It must, in effect, comply with all the standards established by the Debian Policy. Fortunately, there are many tools that facilitate the maintainer's work. The developer can, thus, focus on the specifics of their package and on more complex tasks, such as squashing bugs.
The Policy, an essential element of the Debian Project, establishes the norms ensuring both the quality of the packages and perfect interoperability of the distribution. Thanks to this Policy, Debian remains consistent despite its gigantic size. This Policy is not fixed in stone, but continuously evolves thanks to proposals formulated on the mailing list. Amendments that are agreed upon by all interested parties are accepted and applied to the text by a small group of maintainers who have no editorial responsibility (they only include the modifications agreed upon by the Debian developers that are members of the above-mentioned list). You can read current amendment proposals on the bug tracking system:
توفر السياسة تغطية معتبرة لمختلف نواحي عملية التحزيم التقنية. كما يسبب حجم المشروع أيضاً مشاكل تنظيمية؛ يعالج دستور دبيان (Debian Constitution) هذه القضايا. يحدد الدستور نظام وأساليب اتخاذ القرار. بكلمات أخرى، يحدد نظام حكم رسمي.
يُعرِّف هذا الدستور عدداً من الأدوار والمناصب، بالإضافة لمسؤوليات وصلاحيات كل واحد منها. من الجدير بالملاحظة أن مطوري دبيان يملكون دوماً السلطة النهائية في اتخاذ القرار عبر التصويت على استفتاء عام، حيث يجب الحصول على أغلبية مطلقة تبلغ ثلاثة أرباع (75%) الأصوات لإجراء التعديلات الكبيرة (كالتعديلات التي تؤثر على الوثائق المؤسِّسة). لكن المطورين ينتخبون سنوياً ”قائداً“ ليمثلهم في اللقاءات، ويضمن التنظيم الداخلي بين الفرق المختلفة. هذه الانتخابات هي فترة نقاشات محتدمة دائماً. منصب القائد هذا غير معرّف في أي مستند: يقترح المرشحون لهذا المنصب عادة تعريفهم الخاص لهذا الموقع. عملياً، تشمل أدوار القائد العمل كممثل إعلامي للمشروع، والتنسيق بين الفرق ”الداخلية“، وإرشاد المشروع بشكل عام، وذلك بما يرضي المطورين: فآراء قائد دبيان (DPL) تعكس وجهة نظر أغلبية أعضاء المشروع ضمنياً.
يتمتع القائد بسلطة حقيقية؛ فتصويته يرجح كفة التصويتات المتعادلة، ويستطيع اتخاذ أي قرار في أي موضوع لا يقع ضمن صلاحية أحد ويمكنه تفويض جزء من مسؤولياته للآخرين.
Since its inception, the project has been successively led by Ian Murdock, Bruce Perens, Ian Jackson, Wichert Akkerman, Ben Collins, Bdale Garbee, Martin Michlmayr, Branden Robinson, Anthony Towns, Sam Hocevar, Steve McIntyre, Stefano Zacchiroli, Lucas Nussbaum, Mehdi Dogguy and Chris Lamb.
كما يعرف الدستور أيضاً ”لجنة تقنية“. دور هذه اللجنة الرئيسي هو البت في القضايا التقنية عندما لا يصل المطورون أصحاب العلاقة إلى اتفاق فيما بينهم. فيما عدا ذلك، تلعب اللجنة دوراً استشارياً لأي مطور لا يستطيع اتخاذ قرار يقع ضمن مسؤولياته. من المهم أن تلاحظ أنهم يتدخلون فقط عندما يدعوهم أحد أطراف العلاقة إلى التدخل.
أخيراً، يُعِّرف الدستور منصب ”سكرتاريا المشروع“، المسؤول عن تنظيم الأصوات في الانتخابات المختلفة والاستفتاءات العامة.
The “general resolution” procedure is fully detailed in the constitution, from the initial discussion period to the final counting of votes. The most interesting aspect of that process is that when it comes to an actual vote, developers have to rank the different ballot options between them and the winner is selected with a Condorcet method (more specifically, the Schulze method). For further details see:
حتى لو كان هذا الدستور يقيم قواعد الديموقراطية، إلا أن الواقع اليومي يختلف كثيراً: يتبع دبيان طبيعياً قواعد الفعلوقراطية في البرمجيات الحرة: فالذي يفعل الأشياء هو من يقرر طريقة عملها. يمكن هدر وقت طويل في الجدال حول كفاءة الأساليب المختلفة لحل مشكلة ما؛ سيكون الحل الذي يقع عليه الاختيار هو أول حل يعمل بشكل صحيح ومرضٍ... وهذا الحل هو نتيجة الوقت الذي يبذله أحد الأشخاص الفاعلين في العمل.
هذه هي الطريقة الوحيدة للترقي في الرتب: افعل شيئاً مفيداً وأظهر أن عملك جيد. تعمل العديد من فرق دبيان ”الإدارية“ بطريقة الاستقطاب المشترك (co-optation، أي أن الأعضاء الجدد ينضمون بدعوة من الأعضاء الحاليين في الفريق)، حيث يفضل المتطوعون الذين كانت لهم مساهمات فعالة وأثبتوا جدارتهم. العمل الذي تعمله هذه الفرق علني بطبيعته، وهذا يسمح للمساهمين الجدد بالمراقبة والبدء بالمساعدة دون الحاجة لأي امتيازات خاصة. لذلك يوصف دبيان غالباً ”بالميريتوقراطية meritocracy“.
تضمن هذا الطريقة الفعالة في العمل كفاءة المساهمين في فرق دبيان ”المفتاحية“. هذه الطريقة ليست مثالية طبعاً ويظهر أحياناً من يرفض أسلوب العمل هذا. قد يبدو أن اختيار المطورين المقبولين في الفرق كأنه عشوائي قليلاً، أو غير منصف. بالإضافة لذلك، يختلف تعريف الخدمة المتوقعة من هذه الفرق بين الأفراد. بالنسبة لبعض الناس، لا يمكن أبداً أن يقبلوا بالانتظار ثمانية أيام لإضافة حزمة دبيان جديدة، بينما ينتظر آخرون بصبر لثلاثة أسابيع دون أن يشتكوا. لذلك، تظهر شكاوى منتظمة تتذمر من ”جودة خدمة“ بعض الفرق.

1.3.2. الدور الفاعل للمستخدمين

قد يتساءل المرء إذا كان مناسباً أن نذكر المستخدمين بين الناس الذين يعملون ضمن مشروع دبيان، الإجابة هي نعم قطعاً: فهم يلعبون دوراً حاسماً في المشروع. بعيداً عن ”السلبية“، بعض المستخدمون يدعمون النسخ التطويرية من دبيان ويرسلون تقارير عن العلل بشكل منتظم لإظهار المشاكل. وغيرهم يتجاوز ذلك ويرسل أفكاراً لتطويرات، عبر إرسال تقرير علة مستوى خطورته ”wishlist“، أو حتى إرسال تصحيحات على الشفرة المصدرية، التي تدعى ”رقع“ (انظر الملاحظة الجانبية أساسيات الترقيع، طريق إرسال التصحيحات).
Additionally, numerous satisfied users of the service offered by Debian like to make a contribution of their own to the project. As not everyone has appropriate levels of expertise in programming, they may choose to assist with the translation and review of documentation. There are language-specific mailing lists to coordinate this work.
تزداد فعالية هذه الآليات حسب نشاط المستخدمين. فبدلاً من أن يكونوا مجموعة أشخاص معزولين، مستخدمون دبيان يشكلون مجتمعاً حقيقياً تحدث فيه تبدلات كثيرة. نذكر بالأخص النشاط المذهل على قائمة المستخدمين البريدية، (يتحدث فصل 7, حل المشكلات والعثور على المعلومات عنها بتفصيل أكبر).
لا يساعد المستخدمون بعضهم (وغيرهم) على حل المشاكل التقنية التي تؤثر عليهم بشكل مباشر وحسب، بل يناقشون أيضاً أفضل السبل للمساهمة في مشروع دبيان ومساعدته على المسير قدماً — وتنتج عن هذه النقاشات مقترحات لتحسينات في المشروع غالباً.
بما أن دبيان لا ينفق الأموال على أي نوع من حملات الترويج الإعلانية، يلعب مستخدموه دوراً أساسياً في انتشاره، وتزداد شهرته عبر التناقل الشفهي.
تعمل هذه الطريقة بشكل جيد جداً، بما أن معجبي دبيان حاضرون في جمع أنحاء مجتمع البرمجيات الحرة: من حفلات التثبيت (ورشات عمل يساعد فيها المستخدمون المخضرمون المبتدئين على تثبيت النظام) التي تنظمها ”مجموعات مستخدمي لينكس المحلية“ (Linux User Group، أو LUG اختصاراً)، إلى حجرات الجمعيات في المؤتمرات التقنية الكبيرة التي تهتم بلينكس، الخ.
Volunteers make posters, brochures, stickers, and other useful promotional materials for the project, which they make available to everyone, and which Debian provides freely on its website and on its wiki:

1.3.3. الفرق والمشاريع الفرعية

دبيان مُنظّم ‒منذ البداية‒ حول مبدأ الحزم المصدرية، ولكل منها مشرف خاص أو مجموعة مشرفين. ظهرت فرق عمل متعددة مع الزمن، تعمل على إدارة البنية التحتية، وإدارة المهام التي لا تتعلق بأي حزمة على وجه التحديد (ضمان الجودة، سياسة دبيان، المُثَبِّت، الخ)، آخرها سلسلة من الفرق التي تنمو حول المشاريع الفرعية.

1.3.3.1. المشاريع الفرعية الحالية

لكل واحد دبيان خاص به! المشروع الفرعي هو مجموعة من المتطوعين المهتمين بتطويع دبيان ليلائم حاجات معينة. وفيما عدا اختيار مجموعة فرعية من البرامج المخصصة لمجال معين (التعليم، الطب، إنشاء الوسائط المتعددة، الخ)، تهتم المشاريع الفرعية أيضاً بتحسين الحزم السابقة، وتحزيم البرامج الناقصة، وتعديل المُثبِّت، وإنشاء وثائق خاصة، وغيرها.
هذه مجموعة صغيرة من المشاريع الفرعية الحالية:
  • Debian-Junior (دبيان-جونيور)، من Ben Armstrong، توفر نظام دبيان جذاب وسهل الاستخدام للأطفال؛
  • Debian-Edu، من Petter Reinholdtsen، يركز على إنشاء توزيعة متخصصة للعالم الأكاديمي؛
  • Debian Med (دبيان طب)، من Andreas Tille، مخصصة للحقل الطبي؛
  • Debian-Multimedia (دبيان ملتيميديا)، التي تتعامل مع إنشاء الوسائط المتعددة؛
  • Debian-Desktop (دبيان المكتبية) التي تركز على سطح المكتب وتنظم الأعمال الفنية الخاصة بالمظهر الافتراضي؛
  • Debian GIS التي تهتم بتطبيقات نظم المعلومات الجغرافية (Geographical Inforamtion Systems) ومستخدميها؛
  • وأخيراً، Debian Accessibility، لتحسين دبيان ليوافق احتياجات ذوي الإعاقة.
ستستمر هذه القائمة بالنمو مع الزمن كما سيزيد إدراك الناس لفوائد مشاريع دبيان الفرعية. تستطيع هذه المشاريع المدعومة بالكامل ببنية دبيان التحتية المتوفرة سابقاً التركيز على العمل الذي يضيف قيمة حقيقية، دون القلق على المزامنة المستمرة مع دبيان، لأنهم أصلاً يتطورون ضمن المشروع.

1.3.3.2. الفرق الإدارية

معظم الفرق الإدارية مغلقة ولا تعين أحداً جديداً إلا عبر الاستقطاب المشترك. أفضل السبل للانضمام إلى أحدها هو مساعدة أحد الأعضاء الحاليين بذكاء، موضحاً أنك تفهم أهدافهم وأساليبهم في العمل.
ftpmasters مسؤولون عن أرشيف حزم دبيان الرسمي. يتولى هذا الفريق صيانة البرنامج الذي يستقبل الحزم التي يرسلها المطورون ويخزنها آلياً على المخدم المرجعي (ftp-master.debian.org)، بعد إجراء بعض الفحوصات.
كما يعملون أيضاً على التحقق من رخص الحزم الجديدة، حتى يتأكدوا أن دبيان يستطيع توزيعها قبل إضافتها إلى مجموعة الحزم السابقة. عندما يرغب أحد المطورين بإزالة حزمة، عليه مراسلة هذا الفريق عبر نظام تتبع العلل و”الحزمة-الكاذبة“ (pseudo-package)‏ ftp.debian.org.
فريق Debian System Administrators (مديرو نظم دبيان، DSA)‏ ()، كما هو واضح، مسؤول عن إدارة العديد من المخدمات التي يستخدمها المشروع. يضمن هذا الفريق العمل الأفضل لكل الخدمات الأساسية (DNS، وب، بريد إلكتروني، صَدَفات أوامر، الخ)، وتثبيت البرمجيات التي يطلبها مطورو دبيان، ويتخذون بكل الاحتياطات الأمنية.
يدير listmasters مخدم البريد الإلكتروني الذي يدير القوائم البريدية. ينشئ هذا الفريق القوائم الجديدة، يعالج الإرتدادات (إشعارات فشل الإرسال)، ويتابع مرشحات الرسائل الدعائية (الرسائل غير المرغوبة).
Each specific service has its own administration team, generally composed of volunteers who have installed it (and also frequently programmed the corresponding tools themselves). This is the case of the bug tracking system (BTS), the package tracker, salsa.debian.org (GitLab server, see sidebar TOOL GitLab, Git repository hosting and much more), the services available on qa.debian.org, lintian.debian.org, buildd.debian.org, cdimage.debian.org, etc.

1.3.3.3. فرق التطوير، فرق عابرة

بعكس الفرق الإدارية، تكون فرق التطوير مفتوحة على مصراعيها، حتى للمساهمين الخارجيين. حتى لو يكن دور دبيان إنشاء البرمجيات، إلا أن المشروع يحتاج لبعض البرامج الخاصة لتحقيق أهدافه. تستخدم هذه الأدوات طبعاً الأساليب المُجرّبة في أماكن أخرى في عالم البرمجيات الحرة، وتُطوّر تحت رخص حرة.
طوَّر دبيان بعض البرمجيات الخاصة به، لكن بعض البرامج أخذت أدواراً رئيسية وامتدت شهرتها خارج نطاق المشروع. من الأمثلة الجيدة dpkg، برنامج إدارة حزم دبيان (اسمه في الواقع اختصار للعبارة Debian PacKaGe، ويلفظ عموماً ”dee-package“)، وapt، أداة تثبيت آلية لأي حزمة دبيان، مع اعتمادياتها، وضمان تماسك النظام بعد الترقية (اسمها اختصار للعبارة Advanced Package Tool). إلا أن فرق هذه الأدوات أصغر بكثير على أي حال، بسبب الحاجة لمستوى عالٍ نسبياً في البرمجة لفهم عمليات هذا النوع من البرامج بشكل كامل.
لعل أهم فريق هو الفريق المسؤول عن برنامج تثبيت دبيان، debian-installer، فقد بذل جهوداً جبارة منذ تأسيسه في 2001. لقد احتاج الفريق لمساهمين كثر، لأن كتابة برنامج واحد يستطيع تثبيت دبيان على دزينة معماريات مختلفة ليست سهلة. لكل معمارية طريقتها الخاصة في الإقلاع ومحمّل إقلاع خاص بها. يُنظّم كل هذا العمل على القائمة البريدية ، تحت قيادة Cyril Brulebois.
فريق برنامج debian-cd (الصغير جداً) له هدف معتدل أكثر لكثير: هناك مساهمين ”صغار“ كثر كل منه مسؤول عن معماريته، لأن المطور الرئيسي لا يمكن أن يُلمَّ بجميع التعقيدات الصغيرة، ولا يعرف بدقة طريقة بدء المُثبِّت من القرص الليزري على كل معمارية.
هناك عدد من الفرق تحتاج أن تتعاون مع غيرها في عملية التحزيم: تحاول مثلاً، ضمان الجودة على كل المستويات في مشروع دبيان. وتطور قائمة سياسة دبيان اعتماداً على المقترحات التي ترد من كل مكان. يُترجم كل فريق مسؤول عن معمارية ما () كل الحزم، ويعدلها بما يناسب معماريته الخاصة، إذا اقتضى الأمر.
بينما تعمل فرق أخرى على إدارة أهم الحزم حتى تضمن صيانتها دون إلقاء مسؤوليات ثقيلة جداً على الأكتاف نفسها؛ هذه حالة مكتبة C والقائمة ، ومترجم C على القائمة ، أو Xorg على (تعرف هذه المجموعة باسم X Strike Force).