Product SiteDocumentation Site

5.3. بنية الحزمة المصدرية

5.3.1. الصيغة

تتألف الحزمة المصدرية عادة من ثلاثة ملفات، ملف ‎.dsc، وملف ‎.orig.tar.gz، و ‎.debian.tar.gz (أو ‎.diff.gz). تسمح هذه الملفات بإنشاء حزمة ثنائية (ملف ‎.deb الذي تحدثنا عنه) من الشفرة المصدرية للبرنامج، المكتوبة بإحدى اللغات البرمجية.
ملف ‎.dsc (‏Debian Source Control) هو ملف نصي يحوي ترويسة RFC2822 (مثل ملف control الذي درسناه في قسم 5.2.1, “وصف: الملف control) الذي يصف الحزمة المصدرية ويحدد الملفات الأخرى التي تنتمي إليها. يوقّع المشرف على الحزمة هذا الملف، لضمان سلامته. انظر قسم 6.5, “التحقق من سلامة الحزم” لمزيد من التفاصيل على هذا الموضوع.

مثال 5.1. ملف ‎.dsc

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 3.0 (quilt)
Source: zim
Binary: zim
Architecture: all
Version: 0.62-3
Maintainer: Emfox Zhou <emfox@debian.org>
Uploaders: Raphaël Hertzog <hertzog@debian.org>
Homepage: http://zim-wiki.org
Standards-Version: 3.9.6
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/zim.git
Vcs-Git: git://anonscm.debian.org/collab-maint/zim.git
Build-Depends: debhelper (>= 9), xdg-utils, python (>= 2.6.6-3~), libgtk2.0-0 (>= 2.6), python-gtk2, python-xdg
Package-List:
 zim deb x11 optional arch=all
Checksums-Sha1:
 ad8de170826682323c10195b65b9f1243fd75637 1772246 zim_0.62.orig.tar.gz
 a4f70d6f7fb404022c9cc4870a4e62ea3ca08388 14768 zim_0.62-3.debian.tar.xz
Checksums-Sha256:
 19d62aebd2c1a92d84d80720c6c1dcdb779c39a2120468fed01b7f252511bdc2 1772246 zim_0.62.orig.tar.gz
 fc2e827e83897d5e33f152f124802c46c3c01c5158b75a8275a27833f1f6f1de 14768 zim_0.62-3.debian.tar.xz
Files:
 43419efba07f7086168442e3d698287a 1772246 zim_0.62.orig.tar.gz
 725a69663a6c2961f07673ae541298e4 14768 zim_0.62-3.debian.tar.xz

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
Comment: Signed by Raphael Hertzog

iQEcBAEBCAAGBQJUR2jqAAoJEAOIHavrwpq5WFcH/RsdzCHc1oXXxHitU23hEqMj
T6ok29M1UFDJDowMXW75jQ1nT4WPUtvEGygkCHeoO/PvjEvB0sjU8GQlX+N9ddSB
aHfqfAYmVhADNGxrXQT5inZXUa8qGeeq2Sqf6YcWtsnuD56lDbvxkyf/XYopoIEl
oltfl05z/AI+vYsW482YrCz0fxNAKAvkyuPhDebYI8jnKWeAANoqmKpsNc/HYyvT
+ZiA5o57OiGdOKT6XGy3/FiF3dkHiRY8lXW7xdr1BbIgulwl9UmiUNwuxwOYbQO7
edtjiTJqOaFUA0x1zB/XGv5tHr1MjP8naT+kfVoVHTOox51CDbeu5D3DZY4imcY=
=Wtoa
-----END PGP SIGNATURE-----
لاحظ أن الحزمة المصدرية لها اعتماديات أيضاً (Build-Depends) تختلف تماماً عن اعتماديات الحزم الثنائية، لأن الاعتماديات هنا تُبيّن الأدوات اللازمة لترجمة البرنامج الذي تحويه وبناء حزمته الثنائية.
الملف ‎.orig.tar.gz هو أرشيف يحوي الشفرة المصدرية بالشكل الذي يقدمه المطور الأصلي. يُطلَب من مشرفي حزم دبيان عدم تعديل هذا الأرشيف حتى يمكن التحقق بسهولة من مصدر الملف وسلامته (بمقارنة بسيطة بين شفرات التحقق) ولاحترام رغبات بعض المطورين.
يحوي ‎.debian.tar.gz جميع التعديلات التي يجريها مشرف دبيان، خصوصاً إضافة مجلد debian الذي يحوي التعليمات الواجب تنفيذها لبناء حزمة دبيان.

5.3.2. الاستخدام في دبيان

الحزم المصدرية هي أساس كل شيء في دبيان. جميع الحزم الدبيانية تنشأ من حزم مصدرية، وكل تعديل في حزمة دبيانية هو نتيجة تعديل في الحزمة المصدرية. يتعامل مشرفو دبيان مع الحزم المصدرية، لكن مع معرفة تبعات تعديلاتهم على الحزم الثنائية. فثمرات جهودهم إذن تراها في الحزم المصدرية التي توفرها دبيان: يمكنك الرجوع لها ولكل شيء ينتج عنها بسهولة.
عند وصول نسخة جديدة من الحزمة (حزمة مصدرية وحزمة ثنائية واحدة أو أكثر) إلى مخدم دبيان، الحزمة المصدرية هي الأهم. وفعلاً، سوف تعمل شبكة من الأجهزة ذات المعماريات المختلفة على ترجمتها للمعماريات المتنوعة التي تدعمها دبيان. إن إرسال المطور لحزمة ثنائية واحدة أو أكثر لمعمارية معينة (عادة i386 أو amd64) غير مهم نسبياً، لأنه يمكن توليد هذه الحزم آلياً أيضاً.