Si të përdorni AppImages në Linux


AppImages lejon zhvilluesit e Linux-it të mbështjellin aplikacionet e tyre në një skedar të vetëm që instalohet në çdo shpërndarje Linux. Kjo i thjeshton gjërat jashtëzakonisht. Ja se si t'i përdorni ato dhe t'i integroni në desktopin tuaj.

Instalimi i softuerit në Linux

Instalimi i softuerit duhet të jetë i thjeshtë dhe i përshtatshëm. Sa e thjeshtë dhe sa e përshtatshme rezulton të jetë kjo varet kryesisht nga menaxheri i paketave të shpërndarjes suaj. Menaxherët e paketave janë aplikacione softuerike që ju lejojnë të shkarkoni programe të tjera Linux dhe t'i instaloni ato.

Shpërndarjet derivative Linux priren të përdorin menaxherët e paketave të shpërndarjes së tyre mëmë. Për shembull, shumë variante dhe derivate të Debian përdorin apt, shpërndarjet RedHat dhe Fedora përdorin dnf dhe familja e shpërndarjeve Arch përdorin pacman. Pra, fatmirësisht, nuk ka aq shumë menaxherë paketash sa ka shpërndarje.

Megjithatë, nga këndvështrimi i një zhvilluesi, mbështetja e të gjitha formateve të ndryshme të paketave do të thotë të mbështillni aplikacionin tuaj në një skedar DEB për familjen Debian, në një RPM për familjen RedHat, e kështu me radhë. Kjo është shumë shpenzime shtesë.

Do të thotë gjithashtu që nëse as zhvilluesit dhe as dikush tjetër nuk ka krijuar një paketë instalimi për shpërndarjen tuaj, ju nuk mund ta instaloni atë softuer. Të paktën jo në vendlindje.

Ju mund të jeni në gjendje të lidhni një paketë nga një shpërndarje tjetër në kompjuterin tuaj, por kjo nuk është një metodë pa rrezik dhe as nuk është e garantuar të funksionojë. Nëse e dini se çfarë po bëni, mund të shkarkoni kodin burimor dhe të ndërtoni aplikacionin në kompjuterin tuaj, por kjo është shumë larg të qenit e thjeshtë dhe e përshtatshme.

Projekte të tilla si Snap dhe Flatpak u krijuan për të kapërcyer problemin e mbështjelljes së aplikacioneve për çdo shpërndarje. Nëse mund ta mbështillni një paketë në një skedar të vetëm në mënyrë që të vijë e bashkuar me bibliotekat e duhura dhe çdo varësi tjetër që ka, në mënyrë që të mos bëjë (praktikisht) asnjë kërkesë për sistemin operativ pritës, ai duhet të jetë në gjendje të funksionojë në çdo shpërndarja.

Projekti AppImage është pikërisht një nismë e tillë. AppImage është emri i projektit dhe AppImages është emri për aplikacionet e mbështjella.

Si funksionojnë AppImages

Skedarët AppImage nuk janë instaluar në kuptimin tradicional. Skedarët përbërës që përbëjnë paketën e aplikacionit gjenden të gjithë brenda një skedari të vetëm. Ato nuk shpaketohen dhe ruhen në drejtori të ndryshme në sistemin e skedarëve.

Një aplikacion i instaluar nga menaxheri i paketës suaj do të ketë ekzekutuesin e tij të kopjuar në direktorinë e duhur “/bin”, faqet e tij man do të ruhen në direktorinë “/usr/share/man”, e kështu me radhë. Ky hap i shpaketimit dhe kopjimit nuk ndodh me AppImages.

Ekziston një sistem skedari brenda një AppImage, zakonisht një sistem skedarësh squashFS. Skedarët e nevojshëm për të ekzekutuar aplikacionin ruhen brenda këtij sistemi skedarësh, jo në sistemin kryesor të skedarëve të instalimit tuaj Linux. Kur ekzekutohet AppImage, ai lëshon një nga programet e tij ndihmëse të brendshme që monton sistemin e skedarëve squashFS në /tmp/mount në mënyrë që të jetë i aksesueshëm nga sistemi juaj kryesor i skedarëve. Më pas nis vetë aplikacionin.

Kjo është arsyeja pse nisja e aplikacioneve nga Snaps, Flatpaks dhe AppImages është pak më e ngadaltë sesa ekzekutimi i një aplikacioni të rregullt. Që e gjithë kjo të funksionojë, sistemi i skedarëve pritës duhet të ketë të instaluar diçka të quajtur sistemin e skedarëve në hapësirën e përdoruesit. Kjo është e vetmja varësi që AppImages vendos në host. FUSE zakonisht është para-instaluar në shpërndarjet moderne Linux.

Duke përdorur një skedar AppImage

Gjëja e parë që duhet të bëni është të shkarkoni AppImage për aplikacionin që dëshironi. Këto nuk do të jenë në depon e shpërndarjes suaj. Zakonisht, ato i gjeni në faqen e internetit për vetë aplikacionin.

Ne do të shkarkojmë dhe përdorim FreeCAD, një paketë dizajni 3D me burim të hapur me ndihmën e kompjuterit. Shfleto te faqja e shkarkimit FreeCAD dhe kliko butonin 64-bit AppImage.

Kur të jetë shkarkuar, gjeni skedarin në një dritare terminali. Nëse nuk i keni ndryshuar parazgjedhjet në shfletuesin tuaj të internetit, ndoshta do të jetë në drejtorinë tuaj Shkarkime. Duhet ta bëjmë AppImage të ekzekutueshëm. Ne do të përdorim komandën chmod për të shtuar lejen -x (të ekzekutueshme).

chmod +x FreeCAD-0.20.0-Linux-x86_64.AppImage

Ne kemi shkarkuar skedarin tonë dhe e kemi bërë atë të ekzekutueshëm. Për ta ekzekutuar mund ta thërrasim me emër.

./FreeCAD-0.20.0-Linux-x86_64.AppImage

Kjo është gjithçka që duhej të bënim në Fedora dhe Manjaro. Në Ubuntu 22.04, na u desh të instalonim një skedar bibliotekë. FUSE është instaluar tashmë në Ubuntu 22.04, por është një version më i fundit se ai i përdorur nga shumica e AppImages. Instalimi i skedarit të bibliotekës nuk ndikon në versionin e instaluar të FUSE.

sudo apt install libfuse2

Kjo e zgjidhi problemin menjëherë dhe ne mund të nisnim AppImages pa problem në Ubuntu Jammy Jellyfish 22.04.

E gjithë kjo është e mrekullueshme. Por, çka nëse dëshironi të keni tortën tuaj dhe ta hani atë? Imagjinoni sikur të kishte një mënyrë për të përdorur AppImages që nuk do t'ju kërkonte t'i nisni ato nga një dritare terminali. Do të ishte shumë më e përshtatshme që të mund të hapnit aplikacione AppImage ashtu si aplikacionet e rregullta, vendase.

Ekziston një kontradiktë e dukshme këtu - e gjithë pika e AppImages është se ato nuk instalohen në kuptimin tradicional, duke përfshirë ato nuk integrohen në desktopin tuaj. Por megjithatë është e mundur me AppImageLauncher.

AppImageLauncher

AppImageLauncher monitoron një drejtori të nominuar. Skanon direktorinë, duke kërkuar për skedarët AppImage. Për secilin që gjen, nxjerr ikonën e aplikacionit (nëse ka një të tillë) dhe integron AppImage në desktop, si një aplikacion i rregullt.

Kjo përsëritet për çdo AppImage të re që shtohet në drejtori. Kur zbulon se një AppImage është fshirë, ai heq integrimin. Pra, thjesht duke hedhur skedarët tuaj të shkarkuar AppImage në drejtorinë e monitoruar, ato integrohen në mjedisin tuaj të desktopit.

Nëse jeni duke përdorur Ubuntu ose Fedora, shkoni te faqja e Shkarkimit të AppImageLauncher dhe klikoni në lidhjen Asetet në seksionin Release Build (Latest).

Klikoni në lidhjen appimagelauncher-XXX.x86_64.rpm për Fedora, ose skedarin appimagelauncher_XXX.bionic_arm64.deb për Ubuntu. XXX përfaqëson numrin e versionit të softuerit.

Ki parasysh se ka lidhje për AppImageLauncherLite dhe për AppImageLauncher. Përdorni lidhjet AppImageLauncher.

Navigoni te skedari juaj i shkarkuar dhe klikoni dy herë mbi të për të filluar instalimin. Në GNOME, kjo do të nisë aplikacionin Software.

Në Manjaro, mund të instaloni AppImageLauncher me këtë komandë:

sudo pacman -S appimagelauncher

Mund të nisni AppImageLauncher duke shtypur tastin Super. Në shumicën e tastierave, ai ndodhet midis tasteve Ctrl dhe Alt në të majtë. Shkruani appim në shiritin e kërkimit.

Ikona AppImageLauncher do të shfaqet. Klikoni atë për të nisur aplikacionin.

Ka një konfigurim të vogël për të bërë. Ne duhet t'i tregojmë AppImageLauncher se cilën drejtori duam të monitorojë. Klikoni ikonën dosje dhe shfletoni në drejtorinë ku zakonisht ruani AppImages tuaj. Ne zgjodhëm direktorinë tonë Shkarkime. Nëse dëshironi, mund të zgjidhni një nëndrejtori, ndoshta /Shkarkime/Aplikacione.

Nëse dëshironi që AppImageLauncher të ofrojë zhvendosjen e AppImages që gjen në drejtoritë e tjera në drejtorinë tuaj të monitoruar, sigurohuni që kutia e zgjedhjes Pyet nëse do të zhvendosen skedarët AppImage në drejtorinë e aplikacioneve është zgjedhur. Por nëse AppImageLauncher po monitoron vetëm një direktori të vetme, si do ta gjejë AppImages diku tjetër?

Përgjigja për këtë qëndron në skedën appimagelauncherd. Klikoni në skedën appimagelauncherd dhe do të shihni se është e mundur që AppImage të monitorojë më shumë se një direktori.

Klikoni ikonën e gjelbër Plus për të shtuar më shumë drejtori. Sigurohuni që kutia e kontrollit Auto Start Auto-Integration Daemon është zgjedhur. Klikoni butonin OK kur të keni bërë zgjedhjet tuaja.

Prisni disa minuta, më pas shtypni tastin Super dhe shkruani pjesën e parë të emrit të një AppImage që është në drejtorinë tuaj të monitoruar. Në rastin tonë, ne kemi vetëm një.

Sapo të shkruani falas, duhet të shihni një ikonë për FreeCAD. Duke klikuar mbi të nis aplikacioni. Nëse skedari AppImage nuk përmban një ikonë, përdoret një ikonë e përgjithshme me rrota me dhëmbëza, që ishte rasti me FreeCAD.

Për t'i testuar gjërat më tej, ne shkarkuam skedarin AppImage për aplikacionin Subsurface. Pritëm rreth 30 sekonda për t'u siguruar që ishte zbuluar dhe integruar, më pas shtypëm tastin Super, shtypëm sub dhe u shfaq ikona e aplikacionit. Këtë herë, ikona origjinale për aplikacionin ishte gjetur dhe përdorur.

Klikimi i ikonës hapi aplikacionin. Ne as nuk kishim nevojë të përdornim chmod për ta bërë AppImage të ekzekutueshme.

Një tjetër prekje e bukur është se klikimi me të djathtën mbi ikonën ju lejon të fshini AppImage direkt nga menyja e kontekstit.

Ekziston gjithashtu një opsion për të ngjitur ikonën në lëshuesin tuaj, duke e bërë përdorimin e AppImages po aq të përshtatshëm sa aplikacionet vendase.

AppImages janë në rritje

Në makineritë tona të testimit, aplikacionet e lëshuara nga AppImages ngarkoheshin pak më shpejt se aplikacionet Flatpak dhe shumë më shpejt se aplikacionet Snap. Me AppImages nuk ka asnjë kornizë themelore që duhet të instalohet, kështu që - përveç hapësirës së kërkuar për vetë aplikacionet - gjurma e hard drive-it të përdorimit të AppImages është zero.

Aplikacioni opsional AppImageLauncher shton disa hollësi, por ju mund të përdorni me kënaqësi AppImages pa të.

Gjithnjë e më shumë aplikacione po ofrojnë AppImages. Nëse e gjeni veten duke u përpjekur të instaloni diçka që nuk duket të jetë në depot e shpërndarjes suaj, shikoni faqen e internetit të aplikacionit. Ata mund të kenë një AppImage.