Investigate usage of fully portable app formats like FlatImage or Conty #189
fiftydinar
started this conversation in
Ideas
Replies: 1 comment 2 replies
-
All projects above have what my ArchImage miss: hardware accelleration. For all the rest, they are bloated, being them complete systems/containers into a sort of AppImage. ArchImages can work everywhere too, in particular if bloated (i.e., without removing unneeded stuff). So, the only thing to investigated on here is "how to integrate hardware accelleration in ArchImages?" |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Links
FlatImage:
https://github.com/ruanformigoni/flatimage
Conty:
https://github.com/Kron4ek/Conty
List of experimental FlatImage applications:
https://github.com/flatimage
Explanation
FlatImage & Conty basically pack whole desktop environment, along with application into the compressed binary.
That can be tweaked, as FlatImage supports minimal Alpine base too, where app developer can tweak which packages they want to install, to maintain working app, while retaining acceptable file-size.
One improvement that could be made to these, is to have something akin to standardized flatpak runtimes.
F.e. you would have minimal alpine image as a base & then you would layer runtimes into it, like Mesa GPU runtime, proprietary Nvidia GPU runtime, Gnome (GTK) runtime, KDE (Qt) runtime etc.
That would standardize things much better & make it much easier for developers to test their FlatImage/Conty applications.
Comparison
Compared to AppImages, they would work everywhere, even with Linux distributions which ship musl instead of glibc.
It is known how much of a hassle is to pack complex AppImage applications to work properly.
2nd advantage of those is that they support sandbox & setting permissions using bubblewrap, like flatpaks.
3rd advantage is non-dependency of libfuse (for FlatImage). It requires fusermount only.
Honorable mention
Universal Blue's experimental Bext project:
https://github.com/ublue-os/bext
As far as I know, it is intended for CLI apps only & it requires systemd to be present, as it uses systemd-sysext functionality for mounting images.
This one is too technical for me to understand, so I will update this part of the post when I get more information.
Beta Was this translation helpful? Give feedback.
All reactions