Linux Mint idzie na wojnę z Ubuntu i pakietami Snap. O co chodzi w konflikcie Snap vs Flatpak?

Zgodnie z tradycją, na blogu linuxmint.com pojawił się comiesięczny wpis, sporządzony przez „głównodowodzącego” tą prawdopodobnie najbardziej popularną dystrybucją pochodną od Ubuntu.

Tym razem post jest znacznie bardziej elektryzujący niż zwykle.

Clement Lefebvre, znany szerzej jako Clem, w dużej mierze wpis ten poświęcił tematowi pakietów Snap, od kilku lat promowanych przez stojące za Ubuntu Canonical, zapowiadając nawet blokadę automatycznej instalacji snapów za pośrednictwem apt w najnowszym Mint 20 (instalacja będzie możliwa tylko ręcznie i proces ten ma zostać opisany wkrótce).

O co się rozchodzi i skąd ta afera?

Od początku ekipa Minta nie była szczególnie entuzjastycznie nastawiona do Snapów, stawiając na konkurencyjny Flatpak, za którym stoi Red Hat. Canonical coraz mocniej promuje swój format za pośrednictwem Ubuntu, o które oparty jest przecież Mint (i przy okazji jakieś 90% pozostałych dystrybucji…).

Problemem dla Clema i ekipy jest fakt, że Snap jest ściśle połączony z jednym, konkretnym źródłem oprogramowania, kontrolowanym przez Canonical, podczas gdy Flatpak pozwala bez problemu dodać dowolne repozytoria.

Czarę goryczy przelał fakt, że w najnowszym Ubuntu 20.04 standardowy pakiet w APT mający instalować przeglądarkę Chromium jest w rzeczywistości pusty i odsyła do pakietu Snap – Clem nazywa to backdoorem i instalacją za plecami użytkownika. To coś, co Mint „musi zatrzymać i może oznaczać to koniec aktualizacji Chromium i dostępu do Snap Store w Linux Mint”. Przyznajcie, brzmi to dość dramatycznie.

A self-installing Snap Store which overwrites part of our APT package base is a complete NO NO. It’s something we have to stop and it could mean the end of Chromium updates and access to the snap store in Linux Mint.

Clem

Co to w ogóle ten Snap i czemu nie wszyscy go lubią?

W skrócie – Snap to system dystrybucji pakietów (np. aplikacji) pomyślany jako uzupełnienie używanych od dekad APT czy RPM.

Podstawowym problemem tych ostatnich jest fakt, że twórcy aplikacji muszą przygotowywać i sprawdzać swoje programy praktycznie dla każdej dystrybucji osobno, ponieważ mogą one różnić się zainstalowanymi bibliotekami oraz ich wersjami. Proces ten jest czasochłonny i często problematyczny. Posiada on nawet swoją nazwę – piekło zależności (dependency hell).

W związku z powyższym, w mniej więcej tym samym czasie powstały dwa projekty mające m.in ułatwić ten proces – wspomniany Snap od Canonical, oraz Flatpak, za którym stoi RedHat (IBM).

Flathub – najpopularniejsze repozytorium flatpaków

Publikując aplikację w postaci Snapa, twórcy mogą zawrzeć wszystkie zależności wewnątrz paczki, a program powinien działać na wszystkich systemach wspierających Snap (wszystkie wspierane wersje Ubuntu od 14.04 wzwyż oraz dystrybucje o nie oparte). Snap posiada też dodatkowe korzyści dla użytkownika, takie jak możliwość określania uprawnień dla konkretnych aplikacji (dostęp do kamery, mikrofonu czy plików użytkownika) czy możliwość posiadania zainstalowanych kilku różnych wersji tego samego programu (np. Firefox w wersji stabilnej i Firefox Beta).

Podstawową różnicę i oś sporu pomiędzy Snapem i Flatpakiem stanowi fakt, że ten pierwszy jest pod kontrolą Canonical, a drugi jest zdecentralizowany i pozwala każdemu wykorzystać go do rozpowszechniania aplikacji, poprzez dodawanie dowolnych źródeł (domyślnym i najpopularniejszym jest Flathub). Obawy przeciwników Snap jak najbardziej mają swoje podstawy. Wiemy przecież, że wraz z rosnącą popularnością jednego, zamkniętego rozwiązania może zabraknąć miejsca dla alternatyw (patrz Google Play). Z drugiej jednak strony, pewien stopień centralizacji i powstanie „domyślnego” źródła do pobierania aplikacji, skąd można zainstalować oprogramowanie w sposób bezpieczny (pliki weryfikowane i poddawane kontroli przez Canonical) i bezproblemowy, byłby niewątpliwie korzystny z punktu widzenia przeciętnego użytkownika i popularyzacji systemu.

Ubuntu Store w najnowszym Ubuntu 20.04 LTS

Co dalej?

Do niedawna powszechną była sytuacja, że nowe aplikacje lub aktualizacje tych już używanych były dostępne tylko na najnowsze wydania systemu. Użytkownik czasem stawał przed wyborem – aktualizować dobrze działający system aby uzyskać dostęp do takiego programu lub z niego zupełnie zrezygnować. Czasem w sukurs przychodziły zewnętrzne PPA, ale wciąż jeszcze praktykowane dodawanie repozytoriów trzecich nie powinno być nigdy wykonywane przez tzw. „zwykłych: użytkowników z racji na ryzyko z jakim się wiąże – zarówno jeżeli chodzi o stabilność, jak i bezpieczeństwo systemu.

Canonical w pewnym stopniu zmieniło tę sytuację poprzez swoje długo wspierane wydania LTS, a teraz Flatpak oraz Snap idą krok dalej. Niewątpliwie mają swoje problemy, ale nie ulega wątpliwości, że są potrzebne.

Osobiście, choć w pełni rozumiem obawy Clema, uważam że na razie jest jeszcze za wcześnie na panikę i w mojej ocenie dopóki zagrożenie, że Snap Store będzie jedynym źródłem dla niektórych aplikacji na Linuksie nie jest realne, możemy spać spokojnie i używać Snapów gdy jest to dla nas wygodne. Jeżeli odczuję, że grożba tworzenia zamkniętego ekosystemu a’la Google w obrębie Linuksa jest faktyczna, sam bez namysłu dokonam zmiany. Dopóki natomiast istnieje wybór i mamy alternatywne metody instalowania oprogrowania, nie mam nic przeciwko aby Snap Store się rozwijał i stał domyślnym źródłem oprogramowania dla przeciętnego użytkownika Ubuntu. W myśl zasady – tak długo jak mogę odejść, zostaję.

A jakie jest Wasze zdanie na ten temat? Niewątpliwie jest to złożona kwestia i chętnie zapoznam się z opiniami. GeekOrganic to bodaj jedyny blog po polsku, który opisał tę kwestie. Jeżeli chciałbyś więcej takich wpisów, zachęcam do zostawienia polubienia na Facebooku lub dodania strony do subskrybowanych w RSS. Na tym etapie będzie to super pomocne.

3 myśli na temat “Linux Mint idzie na wojnę z Ubuntu i pakietami Snap. O co chodzi w konflikcie Snap vs Flatpak?

  1. Wiele ciekawych rzeczy piszesz. Osobiście uważam, że to użytkownik powinien decydować o tym co i jak chce instalować. Czy Clem ma rację? Uważam, że tak. Czy Canonical ma rację? Również uważam, że po części tak. Nie zapominajmy jednak o jednej rzeczy: pokochaliśmy świat Linuxa właśnie przez brak ograniczeń (a przynajmniej ja) i to zawsze przyświecało mi jako końcowemu userowi. Rozumiem obawy Canonical i skąd taka decyzja, cieszę się z popularyzacji jaką zdobywa Pingwinek, ale bardzo bym nie chciał aby to wszystko zmierzało w stronę chociażby Androida, gdzie ktoś decyduje co mogę, a czego nie. To rodzi ograniczenia moim zdaniem. Teraz mogę dowolnie konfigurować swój system pod siebie i tak mi jest dobrze, więc po co to zmieniać?

    Polubienie

    1. Pełna zgoda, dla mnie również jest to bardzo istotna wartość. Myślę tylko, że jesteśmy jeszcze strasznie daleko od momentu, gdy takie zagrożenie zaistnieje, a na ten moment stworzenie dobrze działającego i bezpiecznego centrum oprogramowania może przysłużyć się nam wszystkim.
      Dodatkowo, w przypadku sklepów z aplikacjami dochodzi jeszcze jeden aspekt – komuś w ich przypadku musimy zaufać. To wyjątkowo newralgiczny element i przeciętny użytkownik musi mieć pewność, że może z niego bez strachu instalować aplikacje – opiekun sklepu jest od dokonywania audytu programów i dopilnowania, by nie było tam malware i wirusów. Powinna być to poważna firma z praktykami bezpieczeństwa na najwyższym poziomie.

      Zaletą Flatpaka jest możliwość dodawania innych, zewnętrznych repozytoriów – z drugiej jednak strony dodawanie zewnętrznych repozytoriów jest koszmarne z punktu widzenia bezpieczeństwa systemu (o czym większość ludzi nie zdaje sobie nadal sprawy) i zwykli użytkownicy nie powinni tego robić

      Najważniejsze, żeby pozostała alternatywa – nie mam problemów z kontrolą Snapa przez Canonical tak długo, jak długo istnieją alternatywy.

      Polubienie

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s