ٻيو ڪجهه: هائيڪو ايپ بنڊل؟

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟

TL، ڊاڪٽر: ڇا هائيڪو ايپليڪيشن پيڪيجز لاءِ مناسب مدد حاصل ڪري سگھي ٿو، جهڙوڪ ايپليڪيشن ڊائريڪٽريز (جهڙوڪ .app Mac تي) ۽/يا ايپليڪيشن تصويرون (لينڪس AppImage)؟ منهنجو خيال آهي ته اهو هڪ قابل اضافو هوندو جيڪو ٻين سسٽم جي ڀيٽ ۾ صحيح طريقي سان لاڳو ڪرڻ آسان آهي ڇو ته گهڻو ڪري بنيادي ڍانچي اڳ ۾ ئي موجود آهي.

هڪ هفتو اڳ مون دريافت ڪيو هائيڪو، هڪ غير متوقع طور تي سٺو سسٽم. خير، ڇاڪاڻ ته مون ڊاريڪٽري ۽ ايپليڪيشن تصويرن ۾ دلچسپي ورتي آهي (ميڪنٽوش جي سادگي کان متاثر ٿي)، اها حيرت جي ڳالهه ناهي ته هڪ خيال منهنجي ذهن ۾ آيو ...

مڪمل سمجھڻ لاءِ، مان آهيان AppImage جو خالق ۽ ليکڪ، هڪ لينڪس ايپليڪيشن ڊسٽري بيوشن فارميٽ جنهن جو مقصد ميڪ سادگي آهي ۽ ايپليڪيشن ليکڪن ۽ آخري استعمال ڪندڙن کي مڪمل ڪنٽرول ڏئي ٿو (جيڪڏهن توهان وڌيڪ ڄاڻڻ چاهيو ٿا ته ڏسو رڪن и دستاويز).

ڇا جيڪڏهن اسان هائيڪو لاءِ ايپ اميج ٺاهيون؟

اچو ته ٿورو سوچيو، خالص نظرياتي طور تي: حاصل ڪرڻ لاء ڇا ڪرڻ جي ضرورت آهي ايپ ٽيجهائيڪو تي، يا ٻيو ڪجهه ساڳيو؟ هن وقت ڪجهه ٺاهڻ ضروري ناهي، ڇاڪاڻ ته هائيڪو ۾ جيڪو سسٽم اڳ ۾ ئي موجود آهي، اهو حيرت انگيز ڪم ڪري ٿو، پر هڪ خيالي تجربو سٺو لڳندو. اهو پڻ لينڪس ڊيسڪ ٽاپ ماحول جي مقابلي ۾، هائيڪو جي نفيس جو مظاهرو ڪري ٿو، جتي اهڙيون شيون تمام ڏکيا آهن (مون کي اهو چوڻ جو حق آهي: مان 10 سالن کان ڊيبگنگ سان جدوجهد ڪري رهيو آهيان).

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
Macintosh سسٽم 1 تي، هر ايپليڪيشن فائنر ۾ هڪ الڳ فائل "منظم" هئي. AppImage استعمال ڪندي مان ڪوشش ڪري رهيو آهيان لينڪس تي ساڳيو صارف تجربو ٻيهر ٺاهڻ.

پهرين، هڪ AppImage ڇا آهي؟ هي ٽئين پارٽي ايپليڪيشنن کي جاري ڪرڻ لاء هڪ سسٽم آهي (مثال طور، الٽيميڪر ڪورا)، ايپليڪيشنن کي جاري ٿيڻ جي اجازت ڏئي ٿي جڏهن ۽ ڪيئن اهي چاهين ٿا: مختلف تقسيم جي وضاحتن کي ڄاڻڻ جي ڪا ضرورت ناهي، پاليسين ٺاهڻ يا انفراسٽرڪچر تعمير ڪرڻ، ڪنهن به سنڀاليندڙ جي مدد جي ضرورت ناهي، ۽ اهي صارفين کي نه ٻڌائيندا آهن ته ڇا (نه) اهي انسٽال ڪري سگهن ٿا. انهن جي ڪمپيوٽرن تي. AppImage کي سمجھڻ گھرجي ھڪڙي ھڪڙي ھڪڙي ميڪ پيڪ وانگر ھڪڙي شڪل ۾ .app ڊسڪ تصوير جي اندر .dmg. بنيادي فرق اهو آهي ته ايپليڪيشنون ڪاپي نه ٿيون ٿين، پر AppImage اندر هميشه لاءِ رهنديون آهن، گهڻو ڪجهه هائيڪو پيڪيجز وانگر. .hpkg نصب ٿيل، ۽ عام معنى ۾ ڪڏهن به نصب نه ڪيو ويو.

وجود جي 10 سالن کان وڌيڪ عرصي دوران، AppImage ڪجهه اپيل ۽ مقبوليت حاصل ڪئي آهي: Linus Torvalds پاڻ عوامي طور تي ان جي تصديق ڪئي، ۽ عام منصوبن (مثال طور، LibreOffice، Krita، Inkscape، Scribus، ImageMagick) ان کي بنيادي طريقي سان اختيار ڪيو. مسلسل يا رات جي تعمير کي ورهائڻ لاء، انسٽال ٿيل يا انسٽال ٿيل صارف ايپليڪيشنن سان مداخلت نه ڪندي. بهرحال، لينڪس ڊيسڪ ٽاپ ماحول ۽ تقسيم گهڻو ڪري اڃا تائين روايتي، مرڪزي سنڀاليندڙ جي بنياد تي ورهائڻ واري ماڊل کي ڇڪيندا آهن ۽ / يا انهن جي پنهنجي ڪاروباري ڪاروبار ۽ / يا انجنيئرنگ پروگرامن جي بنياد تي. فلٽپڪ (RedHat، Fedora، GNOME) ۽ ڏاڍو خوش ٿيو (Canonical، Ubuntu). اهو اچي ٿو مسخري طور.

اهو سڀ ڪيئن ڪم ڪري ٿو

  • هر AppImage ۾ 2 حصا شامل آهن: هڪ ننڍڙو ڊبل ڪلڪ ڪريو ELF (نام نهاد. runtime.c)، بعد ۾ فائيل سسٽم جي تصوير اسڪواش ايف ايس.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟

  • اسڪواش ايف ايس فائيل سسٽم ۾ ايپليڪيشن جو پيل لوڊ ۽ ان کي هلائڻ لاءِ گهربل هر شئي شامل آهي، جيڪا صحيح ذهن ۾ هر تازي ٽارگيٽ سسٽم (لينڪس ڊسٽريبيوشن) لاءِ ڊفالٽ انسٽاليشن جو حصو نه ٿي سمجهي سگهجي. ان ۾ ميٽاداٽا پڻ شامل آھن، جھڙوڪ ايپليڪيشن جو نالو، شبیہیں، MIME قسم، وغيره وغيره.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟

  • جڏهن استعمال ڪندڙ هلائي ٿو، رن ٽائم استعمال ڪري ٿو FUSE ۽ اسڪواش فيوز فائل سسٽم کي مائونٽ ڪرڻ لاءِ، ۽ پوءِ هلندي هلندي ڪجهه انٽري پوائنٽ (اڪا AppRun) کي نصب ٿيل AppImage اندر.
    عمل مڪمل ٿيڻ کان پوءِ فائل سسٽم کي غير نصب ڪيو ويندو.

سڀ ڪجھ سادو لڳي ٿو.

۽ اهي شيون هر شيء کي پيچيده ڪن ٿا:

  • لينڪس جي تقسيم جي اهڙي قسم سان، "صحيح دماغ ۾" ڪجھ به نه سڏيو وڃي ٿو "هر نئين ٽارگيٽ سسٽم لاء ڊفالٽ تنصيب جو حصو." اسان تعمير ڪندي هن مسئلي جي چوڌاري ڪم ڪندا آهيون خارج ڪرڻ وارو، توهان کي اهو طئي ڪرڻ جي اجازت ڏئي ٿي ته ڇا AppImage ۾ پيڪيج ڪيو ويندو ۽ ڇا ڪنهن ٻئي هنڌ وٺڻ جي ضرورت پوندي. ساڳئي وقت، اسان ڪڏهن ڪڏهن ياد ڪندا آهيون، حقيقت جي باوجود، عام طور تي، هر شيء تمام سٺو ڪم ڪري ٿو. انهي سبب لاء، اسان سفارش ڪريون ٿا ته پيڪيج ٺاهيندڙن کي جانچ ڪن AppImages تي سڀني ٽارگيٽ سسٽم (تقسيم).
  • ايپليڪيشن پيل لوڊ فائل سسٽم ۾ منتقل ٿيڻ گهرجي. بدقسمتي سان، ڪيترن ئي ايپليڪيشنن وٽ سخت ڪوڊ ٿيل مطلق رستا آهن، مثال طور، وسيلن ۾ /usr/share. هن کي ڪنهن به طرح مقرر ڪرڻ جي ضرورت آهي. اضافي طور تي، توهان کي يا ته برآمد ڪرڻ گهرجي LD_LIBRARY_PATH، يا درست ڪريو rpath ته جيئن لوڊر لاڳاپيل لائبريريون ڳولي سگهي. پهرين طريقي ۾ ان جي خرابي آهي (جيڪي پيچيده طريقن سان ختم ٿي ويا آهن)، ۽ ٻيو صرف مشڪل آهي.
  • صارفين لاء سڀ کان وڏو UX نقصان اهو آهي قابل عمل بٽ مقرر ڪريو AppImage فائل ڊائون لوڊ ڪرڻ کان پوء. ان تي يقين رکو يا نه، اهو ڪجهه لاء حقيقي رڪاوٽ آهي. executability بٽ مقرر ڪرڻ جي ضرورت مشڪل آهي جيتوڻيڪ تجربيڪار استعمال ڪندڙن لاءِ. ھڪڙي ڪم جي طور تي، اسان ھڪڙي ننڍڙي خدمت کي نصب ڪرڻ جو مشورو ڏنو آھي جيڪو مانيٽر ڪري ٿو AppImage فائلن ۽ انھن جي عملداري بٽ کي سيٽ ڪري ٿو. ان جي خالص روپ ۾، اهو بهترين حل نه آهي، ڇاڪاڻ ته اهو دٻي کان ٻاهر ڪم نه ڪندو. لينڪس ڊويزنون هي خدمت مهيا نه ڪن، تنهن ڪري، صارفين کي دٻي کان ٻاهر خراب تجربو آهي.
  • لينڪس صارفين کي نئين ايپليڪيشن جي توقع آهي ته شروعاتي مينيو ۾ هڪ آئڪن هجي. توھان سسٽم کي نٿا ٻڌائي سگھو: "ڏس، ھڪڙو نئون ايپليڪيشن آھي، اچو ڪم ڪريون." ان جي بدران، XDG وضاحت جي مطابق، توهان کي فائل کي نقل ڪرڻ جي ضرورت آهي .desktop صحيح جڳهه تي /usr سسٽم جي وسيع تنصيب لاء، يا اندر $HOME انفرادي لاءِ. XDG وضاحتن جي مطابق، مخصوص سائزن جا شبیہیں، مخصوص جڳهن ۾ رکڻ جي ضرورت آھي usr يا $HOME، ۽ پوءِ ڪم ڪندڙ ماحول ۾ ڪمانڊز کي آئڪن ڪيش کي اپڊيٽ ڪرڻ لاءِ هلايو، يا اميد رکو ته ڪم ڪندڙ ماحول جو مئنيجر ان جو پتو لڳائيندو ۽ خودڪار طريقي سان هر شيءِ کي ڳوليندو. ساڳيو MIME قسمن سان. هڪ حل جي طور تي، اهو ساڳيو خدمت استعمال ڪرڻ جي تجويز ڏني وئي آهي، جيڪو، عملداري پرچم کي ترتيب ڏيڻ کان علاوه، جيڪڏهن اتي موجود آهن، وغيره. AppImage ۾، انهن کي ڪاپي ڪريو AppImage کان صحيح جڳهن تي XDG مطابق. جڏهن هٽايو ويو يا منتقل ڪيو ويو، خدمت جي اميد آهي ته هر شي کي صاف ڪرڻ. يقينن، هر ڪم ڪندڙ ماحول جي رويي ۾، گرافڪ فائل فارميٽ ۾، انهن جي سائيز، اسٽوريج جڳهن ۽ ڪيچ کي تازه ڪاري ڪرڻ جا طريقا، جيڪي هڪ مسئلو پيدا ڪن ٿا. مختصر ۾، هي طريقو هڪ ڪرچ آهي.
  • جيڪڏهن مٿيان ڪافي نه آهي، اڃا تائين فائل مئنيجر ۾ ڪو به AppImage آئڪن ناهي. لينڪس دنيا اڃا تائين ايلفيڪن کي لاڳو ڪرڻ جو فيصلو نه ڪيو آهي (باوجود بحث и عمل درآمد)، تنهنڪري آئڪن کي سڌو سنئون ايپليڪيشن ۾ شامل ڪرڻ ناممڪن آهي. تنهن ڪري اهو ظاهر ٿئي ٿو ته فائل مئنيجر ۾ ايپليڪيشنون انهن جي پنهنجي آئڪن (ڪو فرق ناهي، AppImage يا ٻيو ڪجهه) نه آهن، اهي صرف شروعاتي مينيو ۾ آهن. ڪم ڪار جي طور تي، اسان ٿمبنيلز استعمال ڪري رهيا آهيون، هڪ ميکانيزم جيڪو اصل ۾ ڊزائين ڪيو ويو هو ته جيئن ڊيسڪ ٽاپ مئنيجرن کي اجازت ڏين ته اهي گرافڪ فائلن جي ٿامبنيل پريويو تصويرون ڏيکارين انهن جي آئڪن جي طور تي. نتيجتاً، ايگزيڪيوٽيبلٽي بٽ کي سيٽ ڪرڻ لاءِ خدمت ”منيٽرائزر“ جي طور تي پڻ ڪم ڪري ٿي، مناسب جڳهن تي آئڪن ٿامب نيل ٺاهڻ ۽ لکڻ. /usr и $HOME. هي خدمت پڻ صاف ڪري ٿي جيڪڏهن AppImage ڊهي يا منتقل ٿي وڃي. انهي حقيقت جي ڪري ته هر ڊيسڪ ٽاپ مئنيجر کي ٿورڙي مختلف طريقي سان عمل ڪري ٿو، مثال طور، ڪهڙي شڪل ۾ اهو آئڪن کي قبول ڪري ٿو، ڪهڙي سائيز يا هنڌن ۾، اهو سڀ ڪجهه دردناڪ آهي.
  • ايپليڪيشن صرف عمل تي حادثو ٿئي ٿي جيڪڏهن غلطيون ٿينديون آهن (مثال طور، هڪ لائبريري آهي جيڪا بنيادي سسٽم جو حصو نه آهي ۽ AppImage ۾ فراهم نه ڪئي وئي آهي)، ۽ ڪو به صارف نه آهي جيڪو GUI ۾ صارف کي ٻڌائي ٿو ته واقعي ڇا ٿي رهيو آهي. اسان استعمال ڪندي هن جي چوڌاري حاصل ڪرڻ شروع ڪيو اطلاعن ڊيسڪ ٽاپ تي، جنهن جو مطلب آهي ته اسان کي ڪمانڊ لائن مان غلطيون پڪڙڻ جي ضرورت آهي، انهن کي پيغامن ۾ تبديل ڪريو جيڪي صارف کي سمجھڻ وارا آهن، جيڪي پوء ڊيسڪ ٽاپ تي ظاهر ٿيڻ گهرجن. ۽ يقينا، هر ڊيسڪ ٽاپ ماحول انهن کي ٿورو مختلف طريقي سان سنڀاليندو آهي.
  • هن وقت (سيپٽمبر 2019 - مترجم جو نوٽ) مون کي سسٽم کي ٻڌائڻ جو ڪو آسان طريقو نه مليو آهي ته فائل 1.png Krita استعمال ڪندي کوليو وڃي، ۽ 2.png - GIMP استعمال ڪندي.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
۾ استعمال ٿيل ڪراس ڊيسڪ ٽاپ وضاحتن لاءِ اسٽوريج جي جڳھ GNOME, KDE и ٽاسڪ freedesktop.org آهي

هائيڪو جي ڪم جي ماحول ۾ نفيسيت جي سطح کي حاصل ڪرڻ مشڪل آهي، جيڪڏهن ناممڪن نه آهي، وضاحتن جي ڪري. XDG freedesktop.org کان ڪراس-ڊيسڪ ٽاپ لاءِ، گڏوگڏ ڊيسڪ ٽاپ مئنيجرن کي لاڳو ڪرڻ لاءِ انهن وضاحتن جي بنياد تي. مثال طور، اسان هڪ سسٽم-وائڊ فائر فاکس آئڪن کي نقل ڪري سگھون ٿا: بظاهر، XDG جي ليکڪن اهو به نه سوچيو ته صارف هڪ ئي ايپليڪيشن جا ڪيترائي ورجن انسٽال ڪري سگھن ٿا.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
فائر فاڪس جي مختلف ورزن لاءِ آئڪن

مان سوچي رهيو هوس ته لينڪس دنيا Mac OS X کان سکي سگهي ٿي ته سسٽم جي انضمام کي خراب ڪرڻ کان بچڻ لاءِ. جيڪڏهن توهان وٽ وقت آهي ۽ هن ۾ آهيو، اهو ضرور پڙهو ته آرناڊ گرڊول، پهرين Mac OS X انجنيئرن مان هڪ، ڇا چيو:

اسان چاهيون ٿا ته ايپليڪيشن کي انسٽال ڪرڻ آسان بڻائي جيئن توهان جي ڪمپيوٽر ڊرائيو تي ڪنهن هنڌ (سرور، خارجي ڊرائيو) کان ايپليڪيشن آئڪن کي ڇڪڻ. ائين ڪرڻ لاءِ، ايپليڪيشن پيڪيج سڀني معلومات کي ذخيرو ڪري ٿو، بشمول آئڪن، ورزن، فائل جو قسم پروسيس ڪيو پيو وڃي، URL اسڪيمن جو قسم جيڪو سسٽم کي ڄاڻڻ جي ضرورت آهي ايپليڪيشن کي پروسيس ڪرڻ لاء. ھن ۾ پڻ شامل آھي 'مرڪزي اسٽوريج' لاءِ معلومات Icon سروسز ۽ لانچ سروسز ڊيٽابيس ۾. ڪارڪردگي کي سپورٽ ڪرڻ لاءِ، ايپليڪيشنون ڪيترن ئي 'سڃاتل' جڳهن تي 'ڳولا' ڪيون ويون آهن: سسٽم ۽ صارف ايپليڪيشنون ڊاريڪٽريون، ۽ ڪجهه ٻيون خودڪار طور تي جيڪڏهن صارف ڊاريڪٽري ۾ فائنر ڏانهن نيويگيٽ ڪري ٿو جنهن ۾ ايپليڪيشن شامل آهي. عملي طور تي اهو تمام سٺو ڪم ڪيو.

https://youtu.be/qQsnqWJ8D2c
ايپل WWDC 2000 سيشن 144 - Mac OS X: پيڪنگنگ ايپليڪيشنون ۽ پرنٽنگ دستاويز.

لينڪس ڊيسڪ ٽاپ تي هن انفراسٽرڪچر وانگر ڪجھ به ناهي، تنهنڪري اسان AppImage پروجيڪٽ ۾ ساخت جي حدن جي چوڌاري ڪم ڪار جي ڳولا ڪري رهيا آهيون.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
ڇا هائيڪو بچاءُ لاءِ اچي رهيو آهي؟

۽ هڪ ٻي شيءِ: لينڪس پليٽ فارمز جيئن ته ڊيسڪ ٽاپ ماحول جي بنياد تي ايترو گهٽ بيان ڪيو وڃي ٿو ته ڪيتريون ئي شيون جيڪي ڪافي ساديون آهن هڪ جهڙي مڪمل اسٽيڪ سسٽم ۾ مايوسي طور تي ورهايل ۽ پيچيده لينڪس ۾. مون ڊيسڪ ٽاپ ماحول لاءِ لينڪس پليٽ فارم سان لاڳاپيل مسئلن لاءِ هڪ پوري رپورٽ وقف ڪئي (ڄاڻندڙ ڊولپرز تصديق ڪئي ته هر شيءِ گهڻو وقت تائين هن طريقي سان رهندي).

منهنجي رپورٽ لينڪس ڊيسڪ ٽاپ ماحول جي مسئلن تي 2018 ۾

جيتوڻيڪ Linus Torvalds اعتراف ڪيو ته ٽڪراءَ جو ڪارڻ ڪم جي جڳهه جو خيال ناڪام ٿيو.

هائيڪو ڏسي خوشي ٿي!

هائيڪو هر شيءِ کي بلڪل سادو بڻائي ٿو

جڏهن ته هائيڪو ڏانهن AppImage کي ”پورٽ ڪرڻ“ لاءِ سادي طريقي سان صرف ان جي جزن کي ٺاهڻ جي ڪوشش ڪرڻ آهي (بنيادي طور تي runtime.c ۽ سروس) (جيڪا ممڪن ٿي سگهي ٿي!)، اهو هائيڪو کي گهڻو فائدو نه ڏيندو. ڇاڪاڻ ته حقيقت ۾، انهن مان اڪثر مسئلا هائيڪو ۾ حل ڪيا ويا آهن ۽ تصوراتي طور تي آواز آهن. هائيڪو بلڪل مهيا ڪري ٿو سسٽم انفراسٽرڪچر بلڊنگ بلاڪ جيڪي مان ڳولي رهيو آهيان لينڪس ڊيسڪ ٽاپ ماحول ۾ ڪافي عرصي کان ۽ يقين نه ٿو ڪري سگهان اتي موجود نه هئا. يعني:

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
ان تي يقين رکو يا نه، اهو ڪجهه آهي جيڪو ڪيترن ئي لينڪس صارفين تي غالب نه ٿو ڪري سگهي. هائيڪو تي سڀ ڪجهه خودڪار ٿي ويندو آهي!

  • ELF فائلون جن ۾ ايگزيڪيوٽيبلٽي بٽ نه آھي اھي پاڻمرادو حاصل ٿين ٿيون جڏھن فائل مئنيجر ۾ ڊبل ڪلڪ ڪيو وڃي.
  • ايپليڪيشنن ۾ بلٽ ان وسيلا هوندا، جهڙوڪ آئڪن، جيڪي فائل مئنيجر ۾ ڏيکاريا ويندا آهن. تصويرن جو هڪ گروپ نقل ڪرڻ جي ڪا ضرورت ناهي خاص ڊاريڪٽري ۾ آئڪن سان، ۽ تنهنڪري ايپليڪيشن کي حذف ڪرڻ يا منتقل ڪرڻ کان پوء انهن کي صاف ڪرڻ جي ڪا ضرورت ناهي.
  • دستاويزن سان ايپليڪيشنن کي ڳنڍڻ لاء هڪ ڊيٽابيس آهي، ان لاء ڪا به فائلن کي نقل ڪرڻ جي ڪا ضرورت ناهي.
  • lib/ ڊاريڪٽري ۾ executable فائل جي اڳيان، لائبريريون ڊفالٽ طور ڳوليا ويندا آهن.
  • هتي ڪي به ڪيترائي تقسيم ۽ ڊيسڪ ٽاپ ماحول نه آهن؛ جيڪو به ڪم ڪري ٿو، هر جڳهه ڪم ڪري ٿو.
  • هلائڻ لاءِ ڪو به الڳ ماڊل ناهي جيڪو ايپليڪيشن ڊاريڪٽري کان مختلف هجي.
  • ايپليڪيشنن وٽ انهن جي وسيلن لاءِ مڪمل رستا نه هوندا آهن؛ انهن وٽ رن ٽائم تي هنڌ جو تعين ڪرڻ لاءِ خاص ڪم هوندا آهن.
  • compressed فائل سسٽم تصويرن جو خيال متعارف ڪرايو ويو آهي: هي ڪنهن به hpkg پيڪيج آهي. اهي سڀ ڪنييل طرفان نصب ٿيل آهن.
  • هر فائل کوليو ويندو آهي ايپليڪيشن طرفان جنهن ان کي ٺاهيو، جيستائين توهان واضح طور تي ٻي صورت ۾ بيان نه ڪيو. هي ڪيترو ٿڌو آهي!

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
ٻه png فائلون. نوٽ ڪريو مختلف آئڪن جيڪي ظاهر ڪن ٿا ته اهي کوليا ويندا مختلف ايپليڪيشنن طرفان جڏهن ڊبل ڪلڪ ڪيو ويندو. پڻ نوٽ ڪريو "ان سان کوليو:" ڊراپ-ڊائون مينيو جتي صارف انفرادي ايپليڪيشن کي منتخب ڪري سگھن ٿا. ڪيترو سادو!

اهو ڏسڻ ۾ اچي ٿو ته لينڪس تي AppImage پاران گهربل ڪيتريون ئي ڪچيون ۽ ڪم ڪارون هائيڪو تي غير ضروري ٿي ويون آهن، جنهن جي بنيادي سادگي ۽ نفاست آهي جيڪا هن کي اسان جي تمام گهڻي ضرورتن کي سنڀاليندي آهي.

ڇا هائيڪو کي آخر ايپ پيڪيجز جي ضرورت آهي؟

اهو هڪ وڏو سوال پيدا ڪري ٿو. جيڪڏهن لينڪس جي ڀيٽ ۾ هائيڪو تي AppImage جهڙو سسٽم ٺاهڻ آسانيءَ جو حڪم هجي ها ته ڇا اهو ڪم ڪرڻ جي لائق هوندو؟ يا هائيڪو، پنهنجي hpkg پيڪيج سسٽم سان، اهڙي خيال کي وڌائڻ جي ضرورت کي مؤثر طور تي ختم ڪري ڇڏيو آهي؟ خير، جواب ڏيڻ لاءِ اسان کي ڏسڻ جي ضرورت آهي AppImages جي وجود جي پويان محرڪ.

استعمال ڪندڙ جي نقطه نظر

اچو ته اسان جي آخري استعمال ڪندڙ کي ڏسو:

  • مان ايڊمنسٽريٽر (روٽ) پاس ورڊ جي پڇڻ کان سواءِ ايپليڪيشن انسٽال ڪرڻ چاهيان ٿو. هائيڪو تي ايڊمنسٽريٽر جو ڪو به تصور ناهي، استعمال ڪندڙ کي مڪمل ڪنٽرول هوندو آهي ڇاڪاڻ ته اهو هڪ پرسنل سسٽم آهي! (اصول ۾، توهان هن کي multiplayer موڊ ۾ تصور ڪري سگهو ٿا، مون کي اميد آهي ته ڊولپرز ان کي سادو رکندا آهن)
  • مان ايپليڪيشنن جا جديد ۽ عظيم ترين ورجن حاصل ڪرڻ چاهيان ٿو، انهن جي منهنجي تقسيم ۾ ظاهر ٿيڻ جو انتظار ڪرڻ کان سواءِ (اڪثر ڪري هن جو مطلب آهي ”ڪڏهن به نه“، گهٽ ۾ گهٽ جيستائين آئون پوري آپريٽنگ سسٽم کي اپڊيٽ نه ڪريان). هائيڪو تي اهو سچل رليز سان ”حل“ ٿيل آهي. ان جو مطلب اهو آهي ته ايپليڪيشنن جا جديد ۽ بهترين ورزن حاصل ڪرڻ ممڪن آهي، پر اهو ڪرڻ لاءِ توهان کي باقي سسٽم کي مسلسل اپڊيٽ ڪرڻ جي ضرورت آهي، ان کي مؤثر طريقي سان "هلندڙ ٽارگيٽ" ۾ تبديل ڪرڻ..
  • مان چاهيان ٿو ته ساڳئي ايپليڪيشن جا ڪيترائي ورجن پاسي سان، ڇو ته اهو ڄاڻڻ جو ڪو طريقو ناهي ته تازو ورزن ۾ ڇا ٽوڙيو ويو آهي، يا، چئو، مون کي، هڪ ويب ڊولپر جي حيثيت سان، منهنجي ڪم کي برائوزر جي مختلف ورزن تحت جانچڻ جي ضرورت آهي. هائيڪو پهريون مسئلو حل ڪري ٿو، پر ٻيو نه. تازه ڪاريون واپس ڦريون ويون آهن، پر صرف سڄي سسٽم لاءِ؛ اهو ناممڪن آهي (جيستائين مون کي خبر آهي) هلائڻ، مثال طور، WebPositive يا LibreOffice جا ڪيترائي نسخا ساڳئي وقت.

ڊولپرز مان هڪ لکي ٿو:

بنيادي طور تي دليل هي آهي: استعمال جو ڪيس ايترو ناياب آهي ته ان کي بهتر ڪرڻ جو ڪو به مطلب ناهي؛ هائيڪو پورٽس ۾ ان کي هڪ خاص صورت طور علاج ڪرڻ قابل قبول لڳي ٿو.

  • مون کي ائپس رکڻ جي ضرورت آهي جتي آئون انهن کي پسند ڪريان، منهنجي شروعاتي ڊرائيو تي نه. مان اڪثر ڪري ڊسڪ اسپيس کان ٻاهر هلندو آهيان، تنهنڪري مون کي ايپليڪيشنن کي ذخيرو ڪرڻ لاء هڪ خارجي ڊرائيو يا نيٽ ورڪ ڊاريڪٽري کي ڳنڍڻ جي ضرورت آهي (سڀني نسخن جيڪي مون ڊائون لوڊ ڪيا آهن). جيڪڏهن مان هڪ اهڙي ڊرائيو کي ڳنڍيندو آهيان، مون کي ايپليڪيشنن کي شروع ڪرڻ جي ضرورت آهي ڊبل ڪلڪ ڪندي. هائيڪو پيڪيجز جا پراڻا ورجن محفوظ ڪري ٿو، پر مون کي خبر ناهي ته انهن کي خارجي ڊرائيو ۾ ڪيئن منتقل ڪجي، يا پوءِ اتان کان ايپليڪيشن ڪيئن لانچ ڪجي.

ڊولپر تبصرو:

ٽيڪنيڪل طور تي، اهو اڳ ۾ ئي ممڪن آهي mount command سان. يقينن، اسان ان لاءِ هڪ GUI ٺاهينداسين جيئن اسان وٽ ڪافي دلچسپي وارا صارف آهن.

  • مون کي فائل سسٽم ۾ پکڙيل لکين فائلن جي ضرورت ناهي جيڪي مان پاڻ کي منظم نه ڪري سگهان. مون کي هر ايپليڪيشن لاءِ هڪ فائل گهرجي جنهن کي مان آساني سان ڊائون لوڊ ڪري سگهان، منتقل ڪري، حذف ڪري سگهان. هائيڪو تي اهو مسئلو پيڪيجز ذريعي حل ڪيو ويندو آهي .hpkg، جيڪو منتقل ڪري ٿو، مثال طور، python، هزارين فائلن مان هڪ ۾. پر جيڪڏهن اتي آهي، مثال طور، Scribus python استعمال ڪندي، پوء مون کي گهٽ ۾ گهٽ ٻن فائلن سان معاملو ڪرڻو پوندو. ۽ مون کي خيال رکڻو پوندو ته انهن جا نسخا رکو جيڪي هڪ ٻئي سان ڪم ڪن.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
AppImages جا گھڻا ورجن ھڪ ئي لينڪس تي پاسي کان ھلندڙ آھن

ايپليڪيشن ڊولپر جو نظريو

اچو ته هڪ ايپليڪيشن ڊولپر جي نقطي نظر کان ڏسو:

  • مان سڄي صارف جي تجربي کي ڪنٽرول ڪرڻ چاهيان ٿو. مان ڪنهن آپريٽنگ سسٽم تي ڀروسو نٿو ڪرڻ چاهيان ته مون کي ٻڌايو ته مون کي ايپليڪيشنون ڪڏهن ۽ ڪيئن ڇڏڻ گهرجن. هائيڪو ڊولپرز کي انهن جي پنهنجي hpkg جي ذخيرن سان ڪم ڪرڻ جي اجازت ڏئي ٿو، پر هن جو مطلب آهي ته صارفين کي انهن کي دستي طور تي ترتيب ڏيڻو پوندو، جيڪو خيال کي "گهٽ پرڪشش" بڻائي ٿو.
  • مون وٽ منهنجي ويب سائيٽ تي هڪ ڊائون لوڊ صفحو آهي جتي آئون تقسيم ڪريان ٿو .exe ونڊوز لاء، .dmg Mac لاء ۽ .AppImage لينڪس لاء. يا ٿي سگهي ٿو ته مان هن صفحي تائين رسائي حاصل ڪرڻ چاهيان ٿو، ڪجهه به ممڪن آهي؟ هائيڪو لاءِ اتي ڇا رکڻ گهرجي؟ فائل ڪافي آهي .hpkg صرف هائيڪو پورٽس جي انحصار سان
  • منهنجو سافٽ ويئر ٻين سافٽ ويئر جي مخصوص ورزن جي ضرورت آهي. مثال طور، اهو معلوم ٿئي ٿو ته ڪريتا کي Qt ​​جو هڪ پيچ ٿيل ورزن جي ضرورت آهي، يا Qt جيڪو ڪريتا جي مخصوص ورزن سان ٺيڪ ٺهيو آهي، گهٽ ۾ گهٽ جيستائين پيچ کي واپس Qt ۾ نه ڌڪيو وڃي. توهان هڪ پيڪيج ۾ توهان جي اپليڪيشن لاء پنهنجي Qt پيڪيج ڪري سگهو ٿا .hpkg، پر گهڻو ڪري اهو خوش آمديد ناهي.

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
باقاعده ايپليڪيشن ڊائون لوڊ صفحو. هائيڪو لاءِ هتي ڇا پوسٽ ڪرڻ گهرجي؟

وِل بنڊل (موجوده ايپليڪيشن ڊاريڪٽريز جهڙوڪ AppDir يا .app ايپل انداز ۾) ۽/يا تصويرون (گهڻي تبديل ٿيل AppImages جي صورت ۾ يا .dmg ايپل کان) ايپليڪيشنون هائيڪو ڊيسڪ ٽاپ ماحول ۾ هڪ مفيد اضافو؟ يا ڇا اهو سڄي تصوير کي خراب ڪري ڇڏيندو ۽ ٽڪرا ٽڪرا ٿي ويندو، ۽ تنهنڪري پيچيدگي شامل ڪندو؟ مان ٽٽي ويو آهيان: هڪ طرف، هائيڪو جي خوبصورتي ۽ نفيس حقيقت تي ٻڌل آهي ته عام طور تي ڪجهه ڪرڻ جو هڪ طريقو آهي، بلڪه ڪيترن ئي کان. ٻئي طرف، فهرستن ۽/يا ايپليڪيشن سوٽ لاءِ بنيادي ڍانچي جو گهڻو حصو اڳ ۾ ئي موجود آهي، تنهن ڪري سسٽم باقي ڪجهه سيڪڙو جي جاءِ تي اچڻ لاءِ روئي ٿو.

ڊولپر جي مطابق مسٽر waddlesplash

لينڪس تي اهي (ڪيٽلاگ ۽ ايپليڪيشن ڪٽ، - تقريبن. مترجم) گهڻو ڪري سسٽماتي مسئلن لاء ٽيڪنيڪل حل آهن. هائيڪو ۾ اسان صرف سسٽم جي مسئلن کي حل ڪرڻ چاهيندا آهيون.

توهان ڇا ٿا سمجهو؟

جواب ڏيڻ کان اڳ...

انتظار ڪريو، اچو ته تڪڙو حقيقت جي جانچ ڪريون: حقيقت ۾ اپليڪيشن ڊاريڪٽري - اڳ ۾ ئي هائيڪو جو حصو:

ٻيو ڪجهه: هائيڪو ايپ بنڊل؟
ايپليڪيشن ڊاريڪٽريون ھائيڪو تي اڳ ۾ ئي موجود آھن، پر اڃا تائين فائل مئنيجر ۾ سپورٽ ناھي

اهي صرف ايترو سهڪار نه آهن جيئن، چون ٿا، Macintosh Finder. اهو ڪيترو سٺو هوندو جيڪڏهن QtCreator ڊاريڪٽري ۾ هڪ "QtCreator" نالو ۽ آئڪن مٿي کاٻي ڪنڊ ۾ هجي جيڪو ايپليڪيشن کي لانچ ڪيو جڏهن ڊبل ڪلڪ ڪيو؟

ٿورڙو اڳي ئي مان پڇيو:

ڇا توهان کي پڪ آهي ته توهان اڄ پنهنجي ڏهاڪن کان پراڻي ايپس هلائي سگهو ٿا جڏهن سڀئي ايپ اسٽورز ۽ ڊسٽريبيوشن ريپوزٽريز انهن ۽ انهن جي انحصار کي وساري ڇڏيون آهن؟ ڇا توهان کي يقين آهي ته توهان اڃا تائين مستقبل ۾ پنهنجي موجوده نوڪري تائين رسائي حاصل ڪري سگهندا؟

ڇا ھائيڪو کان اڳ ۾ ئي ڪو جواب آھي، يا ڪيٽلاگ ۽ ايپليڪيشن بنڊل ھتي مدد ڪري سگھن ٿا؟ منهنجو خيال آهي ته اهي ڪري سگهن ٿا.

بقول مسٽر. waddlesplash:

ها، اسان وٽ سوال جو جواب آهي: اسان صرف انهن ايپليڪيشنن کي سپورٽ ڪنداسين جيستائين ضروري هجي جيستائين ڪو ماڻهو انهن جي فائل فارميٽ کي صحيح طريقي سان پڙهي سگهي يا هڪ کان هڪ ڪارڪردگي مهيا ڪري. هائيڪو تي BeOS R5 ايپس کي سپورٽ ڪرڻ جو اسان جو عزم ان جو ثبوت آهي...

اها پڪ آهي!

هائيڪو کي ڪهڙو قدم کڻڻ گهرجي؟

مان hpkg، ڊائريڪٽريز ۽ ايپليڪيشن تصويرن جي پرامن گڏيل وجود جو تصور ڪري سگهان ٿو:

  • سسٽم سافٽ ويئر استعمال ڪري ٿو .hpkg
  • اڪثر استعمال ٿيل سافٽ ويئر لاءِ (خاص طور تي جن کي رولنگ رليز کي شيڊول ڪرڻ جي ضرورت آهي)، استعمال ڪريو .hpkg (تقريبن 80٪ سڀني ڪيسن جو)
  • ڪجھ ذريعي نصب ٿيل .hpkg, ايپليڪيشنن کي ايپليڪيشن ڊاريڪٽري انفراسٽرڪچر (مثال طور QtCreator) ڏانهن منتقل ڪرڻ کان فائدو حاصل ٿيندو: اهي ورهايا ويندا .hpkg، اڳ وانگر.

مسٽر waddlesplash لکي ٿو:

جيڪڏهن توهان سڀني کي ضرورت آهي ته ايپليڪيشنن کي ڏسڻ لاء /system/apps، بجاءِ اسان کي ڊيسڪبار ۾ ڊائريڪٽرن کي استعمال ڪندڙن لاءِ وڌيڪ انتظام ڪرڻ گهرجي /system/apps استعمال ڪندڙن طرفان باقاعده کولڻ ۽ ڏسڻ جو ارادو نه آهي (ميڪ او ايس جي برعڪس). اهڙين حالتن لاءِ، هائيڪو جو هڪ مختلف نمونو آهي، پر هي اختيار، نظريي ۾، قابل قبول آهي.

  • هائيڪو ايپليڪيشن تصويرن کي هلائڻ لاءِ انفراسٽرڪچر حاصل ڪري ٿو، سافٽ ويئر جي رات جو، لڳاتار ۽ ٽيسٽ بلڊنگز، ۽ انهي سان گڏ انهن ڪيسن لاءِ جڏهن صارف ”ان کي وقت ۾ منجمد ڪرڻ“ چاهي ٿو، پرائيويٽ ۽ اندروني سافٽ ويئر لاءِ، ۽ ٻين خاص استعمال جي ڪيسن (اٽڪل 20٪) سڀني جو). انهن تصويرن ۾ ايپليڪيشن کي هلائڻ لاءِ ضروري فائلون شامل آهن .hpkg, سسٽم طرفان نصب ٿيل، ۽ ايپليڪيشن مڪمل ٿيڻ کان پوء - غير نصب ٿيل. (شايد هڪ فائيل مئنيجر فائلون رکي سگهي ٿو .hpkg ايپليڪيشن تصويرن ۾، خودڪار طور تي يا صارف جي درخواست تي - سٺو، جهڙوڪ جڏهن توهان هڪ ايپليڪيشن کي نيٽ ورڪ ڊاريڪٽري يا خارجي ڊرائيو ڏانهن ڇڪيو. اهو صرف هڪ گيت آهي! يا بلڪه، شاعري - هائيڪو.) ٻئي طرف، صارف شايد تصوير جي مواد کي فائلن جي صورت ۾ انسٽال ڪرڻ چاهي ٿو..hpkg، جنهن کان پوءِ انهن کي اپڊيٽ ڪيو ويندو ۽ ساڳئي طريقي سان پروسيس ڪيو ويندو ڄڻ ته اهي هائيڪو ڊپو ذريعي نصب ڪيا ويا آهن... اسان کي دماغي ڪم ڪرڻ جي ضرورت آهي).

مسٽر کان اقتباس. waddlesplash:

خارجي ڊرائيو يا نيٽ ورڪ ڊاريڪٽري مان ايپليڪيشنون هلائڻ ممڪن طور مفيد ٿي سگھن ٿيون. ۽ pkgman لاءِ وڌيڪ ”زون“ ترتيب ڏيڻ جي صلاحيت شامل ڪرڻ يقيناً هڪ سٺي خاصيت هوندي.

اهڙو سسٽم hpkg، ڊائريڪٽري، ۽ ايپليڪيشن تصويرون جو فائدو وٺندو. اهي انفرادي طور تي سٺا آهن، پر گڏو گڏ اهي ناقابل تسخير بڻجي ويندا.

ٿڪل

هائيڪو وٽ ھڪڙو فريم ورڪ آھي جيڪو پي سي لاءِ ھڪڙو سادو ۽ نفيس استعمال ڪندڙ تجربو مهيا ڪري ٿو، ۽ اھو گھڻو پري آھي جيڪو عام طور تي لينڪس پي سي لاءِ مهيا ڪيو ويندو آھي. پيڪيج سسٽم .hpkg هڪ اهڙو مثال آهي، پر باقي سسٽم پڻ نفيس سان ڀريل آهي. بهرحال، هائيڪو کي مناسب ڊاريڪٽري ۽ ايپليڪيشن تصويري مدد مان فائدو حاصل ٿيندو. اهو ڪيئن بهتر آهي انهن ماڻهن سان بحث ڪرڻ جي قابل آهي جيڪي هائيڪو، ان جي فلسفي ۽ فن تعمير کي مون کان گهڻو بهتر ڄاڻن ٿا. آخرڪار، مان هائيڪو استعمال ڪري رهيو آهيان هڪ هفتي کان ٿورو وڌيڪ. تنهن هوندي به، مان سمجهان ٿو ته هائيڪو جا ڊزائنر، ڊولپر ۽ آرڪيٽيڪٽس هن تازي نقطه نظر مان فائدو وٺندا. گهٽ ۾ گهٽ، مان خوش ٿيندس ته انهن جو ”سنگهڻ پارٽنر“. مون وٽ 10 سالن کان مٿي جو تجربو آهي لينڪس ايپليڪيشن ڪيٽلاگ ۽ بنڊلز سان، ۽ مان انهن لاءِ هائيڪو ۾ استعمال ڳولڻ چاهيان ٿو، جنهن لاءِ مان سمجهان ٿو ته اهي مناسب آهن. مون جيڪي امڪاني حل تجويز ڪيا آهن، اهي ڪنهن به لحاظ کان صرف انهن مسئلن لاءِ صحيح نه آهن، جيڪي مون بيان ڪيا آهن، ۽ جيڪڏهن هائيڪو ٽيم فيصلو ڪري ته ٻيا، وڌيڪ خوبصورت حل ڳولي، ته مان ان لاءِ سڀ ڪجهه آهيان. بنيادي طور تي، مان اڳ ۾ ئي سوچي رهيو آهيان ته سسٽم ڪيئن ٺاهيو hpkg اڃا به وڌيڪ حيرت انگيز طريقي سان تبديل ڪرڻ کان سواء. اهو ظاهر ٿئي ٿو ته هائيڪو ٽيم هڪ ڊگهي وقت تائين ايپليڪيشن بنڊل بابت سوچي رهي هئي جڏهن هڪ پيڪيج مئنيجمينٽ سسٽم لاڳو ڪيو ويو، پر بدقسمتي سان (منهنجو خيال آهي) اهو خيال "متروڪ" ٿي ويو. ٿي سگهي ٿو اهو ان کي بحال ڪرڻ جو وقت آهي؟

ان کي پاڻ ڪوشش! آخرڪار، هائيڪو پروجيڪٽ ٺاهيل ڊي وي ڊي يا يو ايس بي مان بوٽنگ لاءِ تصويرون مهيا ڪري ٿو روزاني.
ڇا توھان وٽ ڪو سوال آھي؟ اسان توهان کي دعوت ڏيون ٿا روسي ڳالهائڻ وارا ٽيليگرام چينل.

غلطي جو جائزو: سي ۽ سي ++ ۾ پيرن ۾ پاڻ کي ڪيئن گوليو. هائيڪو او ايس ترڪيب جو مجموعو

کان ليکڪ ترجمو: هي هائيڪو بابت سيريز جو اٺون ۽ آخري مضمون آهي.

مضمونن جي فهرست: پهرين ٻيو ٽيون چوٿون پنجون ڇهون ستون

صرف رجسٽرڊ استعمال ڪندڙ سروي ۾ حصو وٺي سگهن ٿا. سائن ان ڪريو، توهان جي مهرباني.

ڇا اهو احساس آهي ته hpkg سسٽم کي لينڪس ڏانهن پورٽ ڪرڻ؟

  • ته

  • نه

  • اڳ ۾ ئي لاڳو، مان تبصرن ۾ لکندس

20 صارفين ووٽ ڏنو. 5 استعمال ڪندڙن کي روڪيو ويو.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو