I created a flatpak package that I host in my own repo. It uses org.winehq.Wine as base package.
How can I get it so that the base package also installs if the user installs my package (similar to the runtime)?
I created a flatpak package that I host in my own repo. It uses org.winehq.Wine as base package.
How can I get it so that the base package also installs if the user installs my package (similar to the runtime)?
It shouldn’t be necessary to install the base package. Your application is based on the base package & therefore includes everything from it, see the flatpak-manifest
manpage.
base (string) Start with the files from the specified application. This can be used to create applications that extend another application.
All the files are just copied. This also means: When there is an update of the base package you must update your application, too.
Yes, that’s what I thought. However, when I install my flatpak package, it won’t work unless I also install the base package.
When I install my flatpak package without installing org.winehq.Wine
and try to run it, it fails with
/app/bin/wine: No such file or directory
But that file exists. ldd /app/bin/wine
gives not a dynamic executable
.
After installing org.winehq.Wine
it suddenly works.
Is this a bug in my manifest file, or in org.winehq.Wine
or flatpak/flatpak-builder? Any help would be appreciated!
/app/bin/wine
could be a script, so ldd on it will produce this.
No, it’s a binary. And after I install org.freedesktop.Platform.Compat.i386
ldd outputs the expected results.
That raises the question: How can I can make it so that org.freedesktop.Platform.Compat.i386
gets automatically installed as a dependency of my flatpak package?
I think you simply set the metadata for the runtime extension, e.g. Steam. It’s probably downloaded as long as it is not no-autodownload
, see Flatpak Metadata, @[Extension NAME].