3 ms·
Xdg-app was renamed into Flatpak. It is a standard like Snappy probably has a document describing the technical workings. Flatpak (though I like it) is too new,
by bkor 10y ago
Xdg-app was renamed into Flatpak. It is a standard like Snappy probably has a document describing the technical workings. Flatpak (though I like it) is too new, preventing anyone from calling it a de facto standard.
For Flatpak, the scope is limited to just desktop apps. Then to break out of the sandbox it'll provide 'Portals'. They work a bit like Mac OS X / Android / iOS. The goal is to limit the permissions by default. User interaction of portals should be great, you don't really notice the difference. Portal support will only come to GTK as of 3.22 (September 2016), see https://blogs.gnome.org/mclasen/2016/07/08/portals-using-gtk-in-a-flatpak/ https://blogs.gnome.org/mclasen/2016/07/08/portals-using-gtk.... Until Qt/GTK+ supports these portals Flatpak does NOT fully sandbox else you'd have problems using the app. Sandbox is done using standard kernel functionality (namespaces, etc).
Snappy requires AppArmor. Without that, no sandboxing. There's a promise to also support SELinux, though not sure what timeframe they intend. Snappy on distributions without AppArmor (e.g. Fedora) will NOT sandbox the app! Snappy IIRC is not just limited to desktop apps, which IMO limits the sandbox options.
AppImage can do sandboxing using other software (Firejail) which again relies on AppArmor. It seems the AppArmor profile comes with the app, which IMO defeats the security. This as IMO it would be nice to not have to trust the app you just installed.
For all above: any effective sandboxing requires Wayland/Mir, not X11. Noticed someone said you might be able to make X11 secure by putting an app within xephyr/xnest security filtering like program, but IMO that's a blue sky idea (tell me once it works and one of the sandbox solutions provides full integrated support).
- digi_owl 10y agoNot blue sky at all. The reason any "app" (ugh) can read the keyboard is that they share the root (not related to the root account) window. Set each up as having their own root window and the problem vanishes. Some will complain that the solution screws up GPU graphics. But thats only the case because devs could not be assed to hash out a proper channel through X, and instead went straight for the hardware. Never mind that there is a patched xephyr with opengl support out there. BTW, another option is xpra. https://xpra.org/ https://xpra.org/