النقاط الرئيسية
تعتبر Flatpaks طريقة مريحة لتثبيت تطبيقات Linux، بغض النظر عن توزيعها. وبفضل ميزة الحماية من التطبيقات والتبعيات المجمعة، فإنها تتجنب أيضًا جحيم التبعيات. توفر معظم التوزيعات دعم Flatpak، ولكن على Ubuntu، ستحتاج إلى تثبيت إطار عمل Flatpak أولاً.
تعتبر Flatpaks طريقة مستقلة عن التوزيع لتثبيت التطبيقات على جهاز الكمبيوتر الذي يعمل بنظام Linux. ولكن إذا كانت التوزيعة التي تستخدمها تحتوي بالفعل على طريقة أصلية لتثبيت التطبيقات، فلماذا تهتم باستخدام Flatpaks؟
ما هو Flatpak؟
Flatpak هو اسم تنسيق الحزمة المستخدم لتثبيت التطبيقات بسهولة وموثوقية على أي توزيع Linux. تمامًا مثل AppImages وSnaps، تأتي حاويات Flatpaks مع جميع التبعيات المطلوبة، ويمكن للتطبيقات المثبتة كـ Flatpaks تحديث نفسها أيضًا. يمكنك العثور عليها
الكأس المقدسة لإدارة الحزم
تحتاج جميع توزيعات Linux إلى طريقة لتثبيت التطبيقات. ولهذا السبب، هناك أدوات مثل Debian مناسبفيدورا لم يتم الانتهاء، وقوس باك مان إنهم موجودون بالضرورة، فهم جميعًا يفعلون نفس الشيء بطرق مختلفة قليلاً.
تسمح هذه البرامج للمستخدم بتثبيت حزم البرامج من خلال سحب الحزم المغلفة خصيصًا من مستودع. وتتضمن عملية التغليف الخاصة بالحزمة معلومات حول كيفية نسخ الملفات التي تتكون منها الحزمة ـ الملفات القابلة للتنفيذ وملفات البيانات وصفحات الدليل وما إلى ذلك ـ إلى مواقع مختلفة في نظام ملفات Linux، والأذونات التي ينبغي تطبيقها عليها.
من وجهة نظر المطور، فإن تغليف وإصدار نسخة من تطبيقه بكل تنسيق من تنسيقات مدير الحزم المختلفة يعد مهمة كبيرة. حتى إذا قرروا دعم التنسيقات الثلاثة أو الأربعة الأولى فقط، فقد يظل هذا يمثل استنزافًا للتطوير وتكلفة دعم كبيرة.
يفضل المطورون العمل على أكوادهم الخاصة بدلاً من التعامل مع تعقيدات مجموعة من تنسيقات الحزم. وكم سيكون الأمر أفضل إذا كان هناك تنسيق تثبيت عالمي. يمكن للمطورين حزم تطبيقاتهم مرة واحدة، ويمكن لمستخدمي أي توزيع استخدامها.
كان أقرب ما توصلنا إليه من هذا الهدف هو الكود المصدري، وهو النقيض التام للتطبيق المغلف. ويعني هذا أنك تقوم بتنزيل الكود المصدري والمكونات الأخرى للتطبيق، ثم تقوم ببنائه على جهازك الخاص. وباعتباره أسلوبًا ناجحًا، فإنه ليس سريعًا ولا مريحًا بشكل خاص، وتحتاج إلى معرفة ما تفعله. وهذا يجعله بعيدًا عن متناول معظم الوافدين الجدد إلى عالم لينكس.
حقائب مسطحة هي محاولة لإنشاء تنسيق حزمة عالمي. صور التطبيق و اللقطات تتنافس المشاريع ذات الأهداف نفسها. لا تقتصر فائدة Flatpaks على تقليل الضغط على المطورين لدعم تنسيقات حزم متعددة. فهي تحتوي على التطبيق وكل ما يتعلق به، وبالتالي لن يفشل التطبيق في العمل بسبب مكتبة مفقودة أو غير متطابقة، على سبيل المثال. كما تحصل التطبيقات المثبتة على شكل Flatpaks على تحديثات تلقائية.
علاوة على ذلك، تعمل تطبيقات Flatpak في نوع من الحاويات الصغيرة، معزولة عن التطبيقات الأخرى — بما في ذلك الإصدارات الأخرى من نفس التطبيق. يمكنك تثبيت إصدارات متعددة من تطبيق واحد دون أن تتداخل تبعيات إصدار واحد مع بعضها البعض. وهذا يجعل الحياة أسهل للمطور، وأكثر سلاسة للمستخدم.
تثبيت دعم Flatpak على Ubuntu
تحرص شركة Canonical (الشركة التي تقف وراء نظام التشغيل Ubuntu) على دفع مستخدميها نحو Snaps، وهو إصدار خاص بها من المثبت الشامل. لدرجة أنها ألغت الدعم الجاهز لـ Flatpak في Ubuntu 23.04 Lunar Lobster، ووافقت على النكهات البديلة لنظام التشغيل Ubuntu مثل كوبونتو, لوبنتو، و أوبونتو ستوديو أنهم سيقومون بإزالة دعم Flatpak أيضًا.
نظرًا لكون Linux هو نظام التشغيل هذا، يمكنك بالطبع تثبيت دعم Flatpak مرة أخرى في Ubuntu. يتم دعم Flatpak بشكل مباشر بواسطة Manjaro وFedora، لذا إذا كنت تستخدم أحد هذه التوزيعات، فيمكنك الانتقال إلى القسم التالي.
لتثبيت Flatpak على Ubuntu، اكتب:
sudo apt install flatpak
هناك مكون إضافي لـ GNOME يتيح لتطبيق Ubuntu Software تثبيت Flatpaks. ولكن هناك مشكلة. منذ إصدار Ubuntu 20.04، أصبح تطبيق البرنامج نفسه عبارة عن Snap، لذا لن يعمل بشكل جيد مع مكون Flatpak الإضافي. لا يزال بإمكانك تثبيت المكون الإضافي، ولكنه يسحب إصدارًا مختلفًا من تطبيق البرنامج يعتمد على DEB. لذا، ستحصل في النهاية على نسختين من تطبيق البرنامج.
لا تحتاج إلى البرنامج الإضافي إذا كنت ستعمل مع Flatpaks على سطر الأوامر، كما أن سطر أوامر Flatpak بسيط للغاية. ومع ذلك، إذا كنت تريد البرنامج الإضافي، فإن الأمر الذي تحتاجه هو:
sudo apt install gnome-software-plugin-flatpak
نحتاج إلى إخبار نظام Flatpak بالمكان الذي يجب أن يبحث فيه عن حزم Flatpak. يمكننا إضافة مستودع Flathub مع هذا الأمر:
flatpak remote-add --if-not-exists flathub
بعد إعادة تشغيل جهاز الكمبيوتر الخاص بك، يمكنك التأكد من تثبيت Flatpak بشكل صحيح واستجابته عن طريق التحقق من رقم إصداره.
flatpak --version
تثبيت تطبيق Flatpak
يعد تثبيت التطبيق أمرًا بسيطًا، بمجرد معرفة اسم Flatpak للحزمة التي تريدها. هناك طريقتان لاكتشاف ذلك.
البحث عن موقع فلاتهوب بالنسبة للحزمة فهي طريقة واحدة. سنستخدم Discord كمثال.
بمجرد تحديد موقعه، انتقل إلى أسفل الصفحة. سترى الأمر الذي تحتاجه لتثبيت التطبيق.
يستخدم هذا اسم Flatpak المكون من ثلاثة أجزاء للتطبيق. لاحظ أننا لسنا بحاجة إلى تضمين “flathub” في أمرنا (لأننا أضفنا بالفعل مستودع Flathub إلى نظامنا) ولكنك بحاجة إلى استخدام الأجزاء الثلاثة لاسم الحزمة.
يمكننا أيضًا البحث على سطر الأوامر. للبحث عن الحزم المتعلقة بـ Discord، استخدم هذا الأمر:
flatpak search discord
ستظهر لك قائمة بكل الحزم التي تحتوي على مصطلح البحث. من الأفضل القيام بذلك مع توسيع نافذة المحطة الطرفية إلى حجم أكبر من الحجم الطبيعي، بحيث لا يتم اقتطاع إدخالات الجدول.
الآن بعد أن عرفنا اسم الحزمة يمكننا إصدار الأمر لتثبيتها.
flatpak install com.discordapp.Discord
يتم تثبيت أي تبعيات أو متطلبات أخرى مع Flatpak. يوضح شريط التقدم مدى اقتراب عملية التثبيت من الانتهاء.
عند اكتمال التثبيت، سيتم إرجاعك إلى موجه الأوامر. يمكننا الآن تشغيل التطبيق الجديد.
تشغيل تطبيق Flatpak
إن الأمر لتشغيل التطبيق يشبه تمامًا أمر التثبيت مع استبدال كلمة “install” بكلمة “run”.
flatpak run com.discordapp.Discord
يبدأ التطبيق، ويجري Discord عمليات التحقق من الترقية المعتادة.
بعد فترة قصيرة، سترى تطبيق Discord مفتوحًا على سطح المكتب لديك.
في GNOME، بعد أن أطلقنا التطبيق، سيظهر رمزه في لوحة المعلومات. يؤدي النقر بزر الماوس الأيمن على الرمز إلى عرض قائمة. حدد “Pin to Dash” لإنشاء مشغل في لوحة المعلومات.
سيكون بإمكانك تشغيل التطبيق من هنا في المستقبل.
قائمة تطبيقات Flatpak المثبتة
لرؤية التطبيقات التي قمت بتثبيتها باستخدام Flatpak، استخدم list
الخيار. لقد استخدمنا أيضًا --app
خيار بحيث يتم إدراج التطبيقات التي قمنا بتثبيتها فقط.
flatpak list --app
بدون --app
الخيار، يتم أيضًا إدراج جميع وحدات إطار عمل Flatpak والتبعيات.
إلغاء تثبيت تطبيق Flatpak
إن إلغاء تثبيت أحد التطبيقات أمر سهل مثل تشغيله. ما عليك سوى استخدام كلمة “إلغاء التثبيت” مع الأمر flatpak.
flatpak uninstall com.discordapp.Discord
سيتم إزالة التطبيق من نظامك، وسيتم عرض رسالة تأكيد.
هل يجب عليك استخدام Flatpaks؟
إن توفير الحماية للتطبيقات والضمان العملي لتشغيل التطبيق من الخصائص الجذابة لـ Flatpaks. ومع ذلك، نظرًا لأن Flatpak يحتوي على جميع التبعيات التي يحتاجها التطبيق، فإن حجمه أكبر. كما يتم زيادة وقت بدء تشغيل التطبيق قليلاً.
سواء كنت تستخدم Flatpaks أو مدير الحزم الأصلي الذي جاء مع نظام Linux الخاص بك، فقد يعتمد الأمر على ما إذا كانت التطبيقات التي تبحث عنها موجودة في مستودعات التوزيع الخاص بك.
لم أقابل أي شخص يستخدم Flatpaks حصريًا — ولا AppImages أو Snaps، على وجه الخصوص. ربما ستستقر على مزيج من ما يناسبك: مدير الحزم الافتراضي لديك، Flatpaks، Snaps، أو Appimages.
إذا لم يكن تطبيق معين موجودًا في مستودعات التوزيعة الخاصة بك، ولا تريد البناء من المصدر، فربما يكون Flatpak هو الخيار الأفضل لك. أجد أنه أسرع كثيرًا من AppImages أو Snaps.