
It is developed by JetBrains and is available in two editions, Community and Ultimate. Notably, Google uses IntelliJ IDEA as the base for its Android Studio, an open source Android development IDE for developing Android applications. Both have a permission system, that can control, how the app can interact with other apps or host, though the permissions currently defined may differ.IntelliJ IDEA is an integrated development environment for Java development. Both allows you to target a specific runtime/SDK, so there's no surprise for the app at install or runtime.

There are some things, that are being done, for example font caches are being created, that the unsandboxed apps do not have to do, because the host environment already has them. Things they have in common: both are sandboxed (except classic snaps), that's why the first launch is slower than unsandboxed applications. OSTree is often called git for binaries, it is content-addressable repository with checkouts and pulls. Snap requires AppArmor, but packages with confinement: classic are not sandboxed at all.įlatpak uses OSTree to store the app, framework or addon files. With snap, your mount namespace is polluted with the squashfs mount points.įor sandboxing, Flatpak uses namespaces and secomp, with optional SELinux. This impacts the visibility from outside the sandbox: flatpak uses namespaces, so outside you won't get to see the private bind mounts that the containers use. Snap allows arbitrary applications, including services or cli apps. You can use, ,, maybe in future there will be or even something entirely different.įlatpak focuses on desktop - their main method of app integration are. Flatpak runtimes are decentralized and everyone can make one. This mirrors in the runtime support: snaps have centralized core16 / core18 runtimes or whatever Canonical comes with. This is a huge departure from the way apt/yum repos were managed. They also support update pushing, so users will get updates whether they want them or not.

From the user perspective, there's are no competing snap repos, only the Canonical one.

If you want private snap repo, you must talk to Canonical. Snap is centralized, there's no way to make your private repos fully under your control. The first difference is centralization vs. Flatpak and Snap have some different approaches, both come with pros and cons.
