Product SiteDocumentation Site

5.5. التعايش مع نظم التحزيم الأخرى

حزم دبيان ليست الحزم البرمجية الوحيدة المستخدمة في عالم البرمجيات الحرة. المنافس الرئيسي هي صيغة RPM الخاصة بتوزيعة Red Hat Linux ومشتقاتها العديدة. ريدهات توزيعة تجارية شهيرة جداً، ولذلك من الشائع توفير البرمجيات التي تزودها أطراف خارجية بشكل حزم RPM بدلاً من حزم دبيان.
في هذه الحالة، عليك أن تعرف أن البرنامج rpm، الذي يعالج حزم RPM، متوفر بشكل حزمة دبيان، لذلك يمكن استخدام صيغة الحزم هذه في دبيان. لكن يجب أخذ الحيطة على أي حال، وحصر استخدام هذه الأداة في استخراج المعلومات من الحزمة أو التحقق من سلامتها فقط. في الحقيقة، ليس من المنطق استخدام rpm لتثبيت حزمة RPM على نظام دبيان؛ لأن RPM يستخدم قاعدة بيانات خاصة، منفصلة عن قاعدة بيانات برمجيات دبيان الأصلية (مثل dpkg). ولذلك لا يمكن ضمان تعايش نظامي التحزيم معاً بشكل مستقر.
على صعيد آخر، تستطيع الأداة alien تحويل حزم RPM إلى حزم دبيان، والعكس.
$ fakeroot alien --to-deb phpMyAdmin-5.2.1-2.fc39.src.rpm
[..]
Warning: Skipping conversion of scripts in package phpMyAdmin: postinst
Warning: Use the --scripts parameter to include the scripts.
[..]
phpmyadmin_5.2.1-3_all.deb generated
$ ls -sh phpmyadmin_5.2.1-3_all.deb
  7.2M phpmyadmin_5.2.1-3_all.deb
$ dpkg -c phpmyadmin_5.2.1-3_all.deb
drwxr-xr-x root/root         0 2024-05-21 20:49 ./
-rw-r--r-- root/root   7461668 2023-02-08 01:15 ./phpMyAdmin-5.2.1-all-languages.tar.xz
-rw-r--r-- root/root       833 2023-02-08 01:15 ./phpMyAdmin-5.2.1-all-languages.tar.xz.asc
-rw-r--r-- root/root      1077 2023-07-20 20:00 ./phpMyAdmin-bundled.php
-rw-r--r-- root/root       637 2023-07-20 20:00 ./phpMyAdmin-certs.patch
-rw-r--r-- root/root      1181 2023-07-20 20:00 ./phpMyAdmin.htaccess
-rw-r--r-- root/root       430 2023-07-20 20:00 ./phpMyAdmin.nginx
-rw-r--r-- root/root     38997 2023-07-20 20:00 ./phpMyAdmin.spec
-rw-r--r-- root/root     34198 2023-07-20 20:00 ./phpmyadmin.keyring
drwxr-xr-x root/root         0 2024-05-21 20:49 ./usr/
drwxr-xr-x root/root         0 2024-05-21 20:49 ./usr/share/
drwxr-xr-x root/root         0 2024-05-21 20:49 ./usr/share/doc/
drwxr-xr-x root/root         0 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/
-rw-r--r-- root/root       214 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/changelog.Debian.gz
-rw-r--r-- root/root      1303 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/copyright
[..]
$ dpkg -I phpmyadmin_5.2.1-3_all.deb
 new Debian package, version 2.0.
 size 7500852 bytes: control archive=1092 bytes.
     583 bytes,    15 lines      control
     618 bytes,    10 lines      md5sums
     446 bytes,    11 lines   *  postinst             #!/bin/sh
 Package: phpmyadmin
 Version: 5.2.1-3
 Architecture: all
 Maintainer: debian <debian@debian>
 Installed-Size: 7377
 Section: alien
 Priority: extra
 Description: A web interface for MySQL and MariaDB
  phpMyAdmin is a tool written in PHP intended to handle the administration of
  MySQL over the Web. Currently it can create and drop databases,
  create/drop/alter tables, delete/edit/add fields, execute any SQL statement,
  manage keys on fields, manage privileges,export data into various formats and
  is available in 50 languages
  .
  (Converted from a rpm package by alien version 8.95.6.)
ستجد أن هذه العملية فائقة البساطة. لكن عليك أن تدرك أن الحزمة الناتجة لا تحوي أي معلومات عن الاعتماديات، لعدم وجود تقابل منهجي بين الاعتماديات في هاتين الصيغتين. على مدير النظام إذن أن يضمن يدوياً أن الحزمة المحوّلة ستعمل بشكل صحيح، ولذلك يجب تفادي حزم دبيان المولدة بهذه الطريقة قدر المستطاع. لحسن الحظ، تتمتع دبيان بأكبر مجموعة من الحزم البرمجية من بين كل التوزيعات، والغالب أن ما تبحث عنه – مهما كان – موجود هناك.
بالاطلاع على صفحة الدليل الخاصة بالأمر alien، ستلاحظ أيضاً أن هذا البرنامج يعالج صيغ تحزيم أخرى، خاصة الصيغة التي تعتمدها توزيعة سلاكوير (وهي أرشيفات tar.gz بسيطة).
إن استقرار البرمجيات التي تثبتها الأداة dpkg يسهم في شعبية دبيان. ومجموعة أدوات APT، التي سنشرحها في الفصل التالي، تحفظ هذه الميزة، وتعفي مدير النظام من إدارة حالة الحزم، وهي مهمة لازمة لكنها شاقة.