Vlákno názorů k článku
Ubuntu přestane nabízet Flatpak od K> - "Snap je prý nejlepší volbou z hlediska funkčnosti...

  • Článek je starý, nové názory již nelze přidávat.
  • 23. 2. 2023 16:13

    K>

    "Snap je prý nejlepší volbou z hlediska funkčnosti i bezpečnosti."
    A je? Neboli je nekde nejake poradne nezavisle srovnani?

  • 24. 2. 2023 4:54

    klokan

    O žádném takovém nezávislém srovnání nevím. Osobně se domnívám, že to není jednoznačné. Nespornou bezpečnostní výhodou Snapu patří možnost snadno instalovat citlivé software jako izolovaný sandbox, což u serverového software nebo obecně negrafických aplikací Flatpak neumožňuje. Příklady viz Nextcloud, Postgres, openHAB atd. Dále je izolace u Snapu těsnější, než u Flatpaku.

    Naopak výhoda Flatpaku je, že umožňuje jemné nastavení oprávnění a sandboxu jednotlivých aplikací, což ve Snapu nejde. Navíc Flatpak umožňuje lepší a snažší kontrolu nad aktualizacemi jednotlivých balíků. Ve Snapu se aktualizace provédějí v podstatě samovolně a to může být problém.

    Z hlediska funkčnosti pro uživatele má Flatpak nespornou výhodu v tom, že dovoluje i neprivilegovaným uživatelům, aby si instalovali vlatsní aplikace, a možnost "přenosných" instalací. Pro vývojáře a baliče mi zase snap připadá snažší, byť otravnější.

  • 24. 2. 2023 9:32

    Uncaught ReferenceError:

    nejsem moc příznivcem snapu, vadí mi, že se chlubí bezpečností, přitom to je obal nad cgroups, apparmor a seccomp, řeší hlavně OS level isolation (jaký je český překlad) a neřeší izolaci HW, stejně tak neřeší co je obsahem samotného snapu nebo nepoužívá namespaces.

    Vadí mi, že navozuje milný dojem a neřeší ty temnější části. Bere s sebou nevýhodu neprůhledných aktualizací a dalšího stromu závislostí, které je nutné někým udržovat.

    Rozumím kam s tím Ubuntu míří, pro uživatele s desktopem to je pokrok, pro mě spíše překážka.

  • 24. 2. 2023 12:12

    Jiří Eischmann

    Já bych ještě doplnil, že v mnoha distribucích je sandbox Snapu úplně vypnutý, takže aplikace nejsou izolované nijak. Lidi z Canonicalu nám slibovali už před 5 lety, že to ve Fedoře vyřeší, a doteď to není a myslím si, že už asi ani nikdy nebude.
    Navrhovali to jako distribuční formát pro Ubuntu, pak to z toho udělali multidistribuční formát, aby podpořili adopci vývojáři aplikací, to se moc nechytlo, tak teď to zase postupně směřuje k tomu, že to bude jen pro Ubuntu.

  • 24. 2. 2023 12:18

    Uncaught ReferenceError:

    aj, to je pěkný facepalm, vím, že snap podporuje i RH distribuce, ale naprosto jsem netušil, že vlastně jen na půl a všechna ta povídání v dokumentace kolem bezpečnosti tam nejedou.

    Díky za info, to mě ani nenapadlo testovat. Naštěstí je zaměří primárně na uživatele a nás z headless serverů to nechává klidný.

  • 24. 2. 2023 15:44

    k3dAR

    mozna je to o tom ze Fedora ma specialni pozadavky, protoze treba na Arch Wiki: https://wiki.archlinux.org/title/Snap vidim:
    Snaps can be confined using AppArmor which is now enabled in the default kernel. Consult relevant wiki pages to find steps for enabling AppArmor in your system.

    na https://wiki.archlinux.org/title/AppArmor pak:
    Ubuntu, SUSE and a number of other distributions use it by default. RHEL (and its variants) use SELinux which requires good userspace integration to work properly.

  • 24. 2. 2023 16:24

    Jiří Eischmann

    My nemáme speciální požadavky, my prostě používáme SELinux. Ale i to se dá řešit, lidi z Canonicalu nám předložili plán, jak to vyřešit, ale bohužel zůstalo jen u něj. Co jsem slyšel, tak v Snap týmu byly tyhle věci deprioritizované. Mají teď prostě jiné priority, než pracovat na tom, aby snap fungoval dobře v jiných distribucích. Nemám jim to za zlé, nakonec není to charita, ale byznys, který si na sebe musí vydělat.

  • 25. 2. 2023 0:15

    klokan

    Tak ono to není v "mnoha" distribucích, ono je to prostě v Red Hat distribucích, protože jak říkáte, ty používají SELinux a ne AppArmor. Na druhou stranu tady platí obecné pravidlo open source: když někdo něco chce, je na něm, aby se postaral, že se to implementuje. Neboli Red Hat klidně mohl podporu SELinuxu pro snap implementovat sám. Taky vám nijak nevytýkám, že jste to neudělali, máte jiné priority, ale je přece jenom licoměrné v tom případě vinit Canonical.

  • 25. 2. 2023 7:46

    Jiří Eischmann

    SELinux nepoužívají jenom naše distribuce. Pokud navrhuji multidistribuční formát, který má fungovat pokud možno všude, navrhnu ho tak, aby používal technologie, které jsou opravdu všude. My jsme si taky původně hráli s myšlenkou, že budeme ve Flatpaku používat SELinux, ale nepoužili jsme ho právě proto, že řada distribucí ho nepoužívá. BTW ono to nebylo jen o SELinuxu, několik let se čekalo i na to, až se dostanou patche pro AppArmor, které Snap vyžaduje, do mainline Linuxu.
    Jinak máte pravdu, že je to primárně o motivaci, ale pokud chcete dostat něco do distribuce, tak je primárně na vás, abyste se přizpůsobil distribuci, ne distribuce vám. Snad nepovažujete za rozumné, aby distribuce kvůli jednomu novému balíčku kompletně změnila security model, který používá 20 let. Když jsme Flatpak dělali, tak jsme se my snažili, aby výborně fungoval v Ubuntu. Alex sám spravoval PPA s nejnovější verzí, přizpůsobovat se feedbacku, když to šlo v Debianu přes review, rozhodně jsme nečekali, že by pro nás ostatní distribuce dělaly zásadní ústupky v tom, jak věci dělají.

  • 25. 2. 2023 8:52

    klokan

    S názorem, že se mají používat jenom funkcionality, které jsou opravdu všude, celkem nesouhlasím. Je to ta stará redukce na nejmenšího možného jmenovatele, která dlouho držela vývoj zpátky a ve velké míře ho stále ještě drží (i když už naštěstí aspoň není "zakázané" používat moderní featury linuxového jádra, a ne se nábožně držet POSIXu).

    Jinak ale nikdo samozřejmě po Red Hatu nechce, aby změnil bezpečnostní model. Jde o to, že přizpůsobení snapu bezpečnostnímu modelu Red Hatu nemusel nutně dělat automaticky Canonical, mohl to udělat i Red Hat. Nemyslím si totiž, že Canonicalu někdy nějak kór šlo o to, aby snap fungoval i v ostatních distrech. Koneckonců jde o přidanou hodnotu jejich vlastní distribuce. Ale kdybyste to vy v Red Hatu byli implementovali, byl by to přínos pro uživatele vašich dister, protože by pak mohli snadno používat hodnotné software jako např. LXD, které se distribuuje formou snapu a oficiálně dneska na RH distribucích není podporované vůbec (neoficiálně/ne­podporovaně to jde do jisté míry, ale je to hrozný opruz).

  • 25. 2. 2023 18:15

    Jiří Eischmann

    S názorem, že se mají používat jenom funkcionality, které jsou opravdu všude, celkem nesouhlasím.

    No, s tím samozřejmě nemusíte souhlasit, ale to je realita multidistribučních řešení. Čím víc to postavíte na věcech, které nejsou samozřejmostí v každé aspoň trochu nové distribuci, tím větší problémy potom budete mít.

    Ale kdybyste to vy v Red Hatu byli implementovali, byl by to přínos pro uživatele vašich dister, protože by pak mohli snadno používat hodnotné software jako např. LXD, které se distribuuje formou snapu a oficiálně dneska na RH distribucích není podporované vůbec

    To je pěkné, ale my opravdu nemáme vývojáře, kteří jen čekají, až někdo s něčím dojde, aby s tím pohnuli a dostali to v požadované kvalitě do distra. Víte, kolik takových věcí dnes je? Kdybyste viděl naše issue trackery... Když kernel přešel na cgroups2, tak Docker šel (dočasně) z Fedory, protože prostě nemáme zdroje na to, abychom tomu projektu pomáhali je implementovat. A to Docker je významem úplně někde jinde než LXD. Realizovat můžeme tak 2 věci z 10, které by se nám líbilo udělat. A takhle to mají ve všech distribucích, práce je hromada. Nikde vás nečekají s otevřenou náručí, že to dodělají za vás. Buď to udělá sám autor nebo někdo z komunity, komu záleží na tom, aby to v distru bylo. U Snapu ve Fedoře nakonec neplatilo ani jedno.

    Nemyslím si totiž, že Canonicalu někdy nějak kór šlo o to, aby snap fungoval i v ostatních distrech.

    Původně jim o to nešlo. Pak ale zjistili, že pokud má Snap uspět, nemůže být Ubuntu only, a začali podporu napříč distribucemi hodně řešit. Objíždět konference, přesvědčovat, slibovat. Zjistili ale, že to udržování kvalitní podpory v jiných distribucích je dost obtížné, protože původní návrh na to moc nebral ohled, a taky celkově přijetí v linuxové komunitě bylo chladné kvůli věcem jako proprietární distribuční kanál a CLA, tak ta podpora ostatních distribucí šla na druhou kolej, což jak už jsem psal, jim nemám za zlé. Je to prostě byznys a teď se jim spíš vrátí prostředky, které vloží do snapu pro IoT přímo na Ubuntu.

  • 26. 2. 2023 20:35

    Uncaught ReferenceError:

    ale přece z redhatu jsou tady spousty dalších klonů (alma, rocky, oracle atd.), nemluvě o velké rozšířennosti v cloudech (vmware nad tím má konzoli, amazon ami linux atd. atd.).