Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The article mentions that Flatpack is not suitable for servers because it uses desktop features.

Does anyone know what those features are or have more details?

Linux generally draws a thin line between server and desktop, having “desktop only” dependencies is unusual less it’s something like needing the KDE or Gnome GUI libraries?



This may refer to xdg-desktop-portal[1], which is usable without Flatpak, but Flatpak forces you to go through it to access anything outside the app’s private sandbox. In particular, access to user files is mediated through a powerbox (trusted file dialog) [2] provided by the desktop environment. In a sense, Flatpak apps are normal Linux apps to about the same extent that WinRT/UWP apps are normal Windows apps—close, but more limited, and you’re going to need significant porting in either direction.

(This has also made an otherwise nice music player[3] unusable to me other than by dragging and dropping individual files from the file manager, as all of my music lives in git-annex, and accesses through git-annex symlinks are indistinguishable from sandbox escape attempts. On one hand, understandable; on the other, again, the software is effectively useless because of this.)

[1] https://wiki.archlinux.org/title/XDG_Desktop_Portal

[2] https://wiki.c2.com/?PowerBox

[3] https://apps.gnome.org/Amberol


> On one hand, understandable; on the other, again, the software is effectively useless because of this.

Just in case you didn't already know, you can use Flatseal[1] to add the symlinked paths outside of those in the default whitelisted paths.

I think it's a good thing Flatpak have followed a security permissions system similar to Android, as I think it's great for security, but I definitely think they need to make this process more integrated and user friendly.

[1] https://flathub.org/apps/com.github.tchx84.Flatseal


I can change those permission directly in the KDE settings, with the need to download flatseal, others DE need to implement their own


You can allow an application complete access to a folder or your home directory, use flatseal for that


AFAIK it cannot do CLI applications at all.


It can, but because the Flatpak system depends on APIs like D-Bus getting those to work in headless environments (SSH, framebuffer console, raw TTY) is a pain.

Flatpak will even helpfully link binaries you install to a directory you can add to your $PATH to make command line invocation easy.


It assumes that you have a DE running and depends on features like D-Bus. So it's not designed to run headless except for building flatpak packages.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: