Adding filesystem permissions to flatpak packages

I’m trying to package MultiMC as a flatpak. I created the flatpak (manifest file) with:

flatpak-builder --force-clean --user --install flatpak-build \
    org.multimc.MultiMC.yaml

I can also run the application with flatpak run org.multimc.MultiMC. However I get a window with the following error:

MultiMC couldn’t create a log file - the MultiMC data folder is not writable.
Make sure you have write permissions to the MultiMC data folder.
MultiMC cannot continue until you fix this problem.

I have tried giving additional permissions with different combinations from the following list, but it remains unresolved.

--persist=.local/share
--filesystem=xdg-data:create
--filesystem=xdg-run[/app]
--filesystem=/app[/bin]
--filesystem=host[:create]
--filesystem=home

I looked at a regular build; after I run it for the first time, I see new folders and log files in the install directory (which is why I tried the variations of /app above). I also looked at the source (guided by the result of git grep "data folder"). That led me to the xdg-* variations.

What am I missing? Can someone help?

PS: Is there are a place where I can find the precise meaning of all these options? The flatpak docs are too sparse, it barely goaes beyond the man pages. E.g. there’s no list of sdk extensions available or instructions on how to use them, or how are the buildsystems setup. I had to figure out everything from other manifest files, or trial-and-error.

I’ve built the flatpak locally and when I launch i I see:

$ flatpak run org.multimc.MultiMC 
MultiMC Dir: /app

I’m not sure what it means: if it’s the prefix, fine; but if it’s the datadir then there’s some missing conifgure option?

Anyway, --filesystem=home should be enough. As it doesn’t, my guess is that problem is not flatpak permission, but some build option.

Thanks for trying it out! I think it’s the prefix, I say this based on playing around with command: .... I wish I could see exactly what the cmake build process is doing :frowning:. Your guess might be correct. I’ll try to modify the source and put some debug statements and see what’s going on. Maybe I should also file an issue with MultiMC.