┐─ تحليل الملف ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ┌
│ المطور : مشروع AppImage
│ الفئة : تنفيذي
│ نوع MIME : application/vnd.appimage
│ بايتات : 7F454C46
┘ ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── └
ما هو ملف AppImage؟
AppImage هو صيغة لتوزيع تطبيقات لينكس المحمولة، أنشأها Simon Peter عام 2004 (كانت تُعرف بـ klik ثم PortableLinuxApps). الفكرة مشابهة لـ DMG على ماك أو EXE المحمول على ويندوز: ملف واحد يحتوي على التطبيق بكل تبعياته، يعمل على أي توزيعة لينكس دون تثبيت.
داخلياً، AppImage هو صورة SquashFS (نظام ملفات مضغوط للقراءة فقط) مضمنة في ملف ELF تنفيذي. عند تشغيله، يُركِّب SquashFS مؤقتاً في /tmp ثم ينفذ التطبيق من داخله. يُحل عدم توافق المكتبات المختلفة بين التوزيعات بتضمينها كلها داخل AppImage.
كيفية فتح ملفات AppImage
- منح إذن التنفيذ ثم التشغيل:
chmod +x Application.AppImage ./Application.AppImage - AppImageLauncher (لينكس) — أداة تكامل تُضيف AppImage لقائمة التطبيقات تلقائياً
- مدير الملفات (لينكس) — انقر مرتين إذا كان الإذن التنفيذي مضبوطاً
- مدير AppImages — للمستخدمين المتقدمين الذين يديرون مجموعة من AppImages
المواصفات التقنية
| الخاصية | القيمة |
|---|---|
| البايتات السحرية | 7F 45 4C 46 (ELF) + بايت نوع 0x02 |
| نوع MIME | application/vnd.appimage |
| نظام الملفات الداخلي | SquashFS (مضغوط) |
| معيار الحاوية | ISO 9660 / SquashFS مدمج في ELF |
| التبعيات | مُجمَّعة بالكامل |
| التثبيت | ❌ لا يحتاج |
| صلاحيات الجذر | ❌ لا تحتاج |
| نظام الملفات المطلوب | FUSE (في الغالب متاح) |
الاستخدامات الشائعة
- تطبيقات عبر التوزيعات: نسخة واحدة تعمل على Ubuntu وFedora وArch وDebian وOpenSUSE
- البرمجيات المحمولة: تشغيل التطبيق من USB أو مجلد مشترك بدون تثبيت
- مخرجات CI/CD: مطوّرو البرامج المستقلة يولّدون AppImage في خط الأنابيب للتوزيع الفوري
- اختبار نسخ بيتا: توزيع نسخ تجريبية على المستخدمين المهتمين دون التأثير على حزم النظام
- البرامج المنتهية الصيانة: الحفاظ على تشغيل برامج قديمة حتى مع تحديث مكتبات النظام
AppImage مقابل Flatpak مقابل Snap
| الميزة | AppImage | Flatpak | Snap |
|---|---|---|---|
| التثبيت | ❌ لا يحتاج | متجر | متجر |
| الصندوق الرملي | اختياري | ✅ | ✅ |
| التحديثات التلقائية | محدود | ✅ | ✅ |
| حجم الملف | كبير | متوسط | كبير |
| الدعم في التوزيعات | ✅ عالمي | شائع | Ubuntu أساساً |
| سهولة الاستخدام | ✅ الأبسط | سهل | سهل |
اعتبارات الأمان
# التحقق من التوقيع الرقمي (إذا توفر)
gpg --verify application.AppImage.sig application.AppImage
# فحص المحتوى قبل التشغيل
./Application.AppImage --appimage-extract # يستخرج المحتوى لمجلد squashfs-root
# تشغيل في بيئة معزولة مع Firejail
firejail ./Application.AppImage