Snap, Flatpak i Appimage. Uniwersalne formaty pakietów dla systemu Linux

Formaty programów

W świecie technologii istnieje stary żart, że za każdym razem, gdy ktoś próbuje stworzyć format, który łączy to, co najlepsze ze wszystkich innych, aby uniknąć rozproszenia, jedyną rzeczą, jaką robią, jest dodanie nowego do listy. Część z nich jest związana z próbami stworzenia formatu pakietu, który będzie działał we wszystkich dystrybucjach Linuksa bez modyfikacji. Jak dotąd w tym stuleciu mieliśmy już trzy lata.

Snap, Flatpak i Appimage. Różnice w stosunku do tradycyjnych formatów

Główna różnica między natywnymi formatami pakietów a samodzielnymi formatami pakietów polega na tym, że te pierwsze współdzielą zależności z innymi programami zainstalowanymi w systemie operacyjnym. Innymi słowy, jeśli program Y wymaga zależności 1 i ta zależność została zainstalowana przez program X, który również jej potrzebuje, ta zależność nie zostanie zainstalowana ponownie.

Programy spakowane w osobnych formatach zawierają wszystkie zależności, których potrzebują do działania. Innymi słowy, zależność 1 będzie instalowana za każdym razem, gdy instalowany jest program, który jej potrzebuje.

Druga różnica polega na tym, że tradycyjne formaty pakietów muszą być budowane zgodnie ze specyfikacjami każdej dystrybucji.. Dlatego chociaż Ubuntu jest dystrybucją wywodzącą się z Debiana, różnice są na tyle istotne, że repozytoria pierwszej nie mogą być używane w drugiej.

Trzecia różnica polega na tym jakakolwiek modyfikacja zależności od tradycyjnych pakietów może wpłynąć na działanie wszystkich innych, które tego potrzebują. Z drugiej strony modyfikacje programu w niezależnym formacie nie wpłyną na resztę systemu.

W zależności od specyfiki każdej dystrybucji możliwe jest zainstalowanie aplikacji w niezależnych formatach z menedżera pakietów i zautomatyzowanie ich aktualizacji z odpowiedzialnym za nie menedżerem.

W Ubuntu Centrum oprogramowania pozwala zainstalować oba programy w tradycyjnych formatach, takich jak Snap, dając pierwszeństwo temu drugiemu. Chociaż istnieje wtyczka, która umożliwia Centrum oprogramowania GNOME (z którego pochodzi Ubuntu), nie działa z tą dystrybucją.

W przypadku Ubuntu Studio możliwe jest włączenie opcji używania pakietów Snap, podczas gdy KDE Neon i Manjaro mogą pracować z obydwoma formatami.

Snap

Jest to najnowszy z niezależnych formatów od początku jego rozwoju w 2014 roku.  Jest przeznaczony nie tylko do użytku w dystrybucjach Linuksa na komputery stacjonarne, ale także w Internecie rzeczy, urządzeniach mobilnych i serwerach. DOChociaż możliwe jest tworzenie oddzielnych sklepów z aplikacjami, obecnie jest tylko jeden obsługiwany przez firmę Canonical, Snapcraft.

Chociaż Snapcraft ma asortyment najpopularniejszych aplikacji typu open source, Jego siłą są programy opracowane przez prywatnych twórców oprogramowania i dostawców usług w chmurze.

Flatpak

Chociaż Flatpak został oficjalnie uruchomiony w 2015 roku, jest kontynuacją innego projektu w uniwersalnym formacie, znanego jako xdg-app. Ten projekt narodził się z myślą o móc uruchamiać aplikacje w bezpiecznej wirtualnej piaskownicy, która nie wymaga uprawnień roota ani nie stanowi zagrożenia dla systemu.

Flatpak koncentruje się na dystrybucjach komputerów stacjonarnych również wykorzystuje koncepcję istnienia sklepu z aplikacjami Flathub najlepiej znany.

Zaletą Flathuba jest to zazwyczaj zawiera najbardziej aktualne wersje głównych aplikacji open source.

Appimage

AppImage to najstarszy z samodzielnych formatów pakietów, ponieważ został wydany po raz pierwszy w 2004 roku.

Był to pierwszy format zgodny z paradygmatem „Jedna aplikacja - jeden plik”. Oznacza to, że za każdym razem, gdy pobieramy plik Appimage, pobieramy aplikację i wszystko, czego potrzebuje do działania. Jeśli chcemy korzystać z aplikacji, wystarczy nadać jej uprawnienia do wykonywania i dwukrotnie kliknąć ikonę, która ją identyfikuje.

Appimage nie korzysta z systemu App Store, ale siano stronę internetową w którym możemy znaleźć listę wszystkich dostępnych tytułów. 

Aby zaktualizować Appimage, możemy użyć to narzędzie.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Satyna powiedział

    Tęsknię za tym, że nie wspomniano o ekstremalnie rosnącej powolności snapu podczas instalowania aplikacji, ponieważ potrzebuje on wirtualnej jednostki dla każdej z nich.

  2.   satyna powiedział

    Tęsknię za tym, że nie wspomniano o ekstremalnie rosnącej powolności snapu podczas instalowania aplikacji, ponieważ potrzebuje on wirtualnej jednostki dla każdej z nich.

    1.    Diego German Gonzalez powiedział

      Dzięki za komentarz. Zapamiętam to.

  3.   Claudio Joffre powiedział

    Osobiście uważam, że problemy niezależnego pakowania oprogramowania to nic innego jak odzwierciedlenie znacznie głębszego konfliktu, który ma związek ze stopniem zgodności ze standardami LSB i FSH przez różne dystrybucje.
    Jedną z podstaw tworzenia pakietów jest implementacja standardowych bibliotek, z zachowaniem zarówno miejsca, jak i lokalizacji oprogramowania, a także plików konfiguracyjnych. W ten sposób unikanie konfliktów bibliotecznych. Coś, co jest powszechne w innych systemach operacyjnych i co niestety, z powodu braku zgodności ze standardami, utrudnia utrzymanie i aktualizację oprogramowania, nie mówiąc już o migracji oprogramowania z jednej dystrybucji do drugiej. Zła praktyka ręcznych kompilacji, wykonywana wielokrotnie z howto, bez analizy zgodności ze standardami w jej implementacji, kończy się ogromnym bólem głowy dla administratorów systemu. Zwłaszcza, gdy ktoś musi przejąć serwer produkcyjny zainstalowany przez innego poprzedniego administratora.
    Niezależne opakowanie w taki czy inny sposób ostatecznie przyczynia się do tej filozofii, promując coś więcej niż niezależność, zależność od określonego formatu lub firmy. Wielokrotnie sprawia, że ​​migracja platformy jest prawie niemożliwym zadaniem. Myślenie bardziej krótkoterminowo niż długoterminowo. Sytuacja, której może doświadczyć każdy poważny administrator z ponad 15-letnim doświadczeniem. I mówię tę liczbę celowo, ponieważ w tamtym okresie pojawiło się wystarczająco dużo dystrybucji, aby zdać sobie sprawę, że prędzej czy później projekty lub usługi będą zmuszone z tego czy innego powodu do migracji z platformy. Sytuacja, która rzadko wchodzi w procesy oceny podczas realizacji projektu. Najłatwiejsze do migracji są właśnie platformy najlepiej zgodne z wyżej wymienionymi standardami. Będąc tymi niezależnymi pakietami, tymi, które są najbardziej oddalone od tych standardów.

    1.    Diego German Gonzalez powiedział

      Interesujący wkład, nie przyszło mi do głowy, żeby o tym pomyśleć

  4.   Rafael Użytkownik Linuksa powiedział

    Narzędzie do aktualizacji plików AppImage jest praktycznie bezużyteczne. Spośród 7 plików AppImage, które wypróbowałem (między innymi Inkscape, Olive, KSnip, MuseScore, OpenShot) próbował tylko pracować z jednym, kończąc się na „Brak podpisu weryfikacyjnego” i dlatego też go nie aktualizuje. Oznacza to, że NIE JEST UŻYWANY DO NIC, możesz usunąć odniesienie. Ponadto nie był aktualizowany od miesięcy.

    1.    Diego German Gonzalez powiedział

      Dzięki za komentarz