MultiMC version: unrelated
Operating System: Linux (distribution independent)
Flatpak provides isolation of programs, which seems like a desirable option for those big chunks of compiled mod code.
For the above mentioned reason I'd be interested in creating a flatpak package for MultiMC. Would that be ok for you, are there certain restrictions I'd have to consider or is that a strict no-go for you (in relation to #1832)?
Flatpak (Wikipedia) is a rather new packaging system for linux, similar to Canonical's snap packages. It's available on many (most) linux distributions (for example arch, gentoo, void, pop os) and supports custom user repositories.
To my knowledge, that would give problems with the Java runtime. You can just bundle a Java 8 runtime (or use the one from the org.freedesktop platform), but then the user is not free to choose any other runtime (like GraalVM), and some old minecraft versions (and maybe even future versions) would simply refuse to work. The JVM from the Linux distribution will most likely have better integration. Just requesting /usr/lib/jvm to be passed through to the flatpak is not portable and makes the flatpak require a java runtime installed system-wide, and again prevents the user from using their own JVM because there is no way to permanently request access to a directory using a file chooser, and if there was, it wouldn't be accessible using operating system functions. I don't see any way to get around this issue.
Flatpak supports Extensions which would essentially allow users to plug-in differnt java versions at runtime. This is also the approach the vanilla-minecraft flatpak chose (https://github.com/flathub/com.mojang.Minecraft/issues/5) to solve this problem.
But I agree that this still is not the same as being able to choose any implementation available on the system itself (though it's possible to statically pass in arbitrary directories to flatpak applications in an UI via flatseal or via commandline with permissions).
There will be no flatpak.
Not appimage. Nor snap. Or whatever other similar thing.