I am attempting to create a flatpak for an old development version of Wine, 6.13, but have been running into problems.
I first downloaded the flathub manifest repository for Wine as it existed for version 6.0.2: https://github.com/flathub/org.winehq.Wine/tree/a954b18213547d4acaeb7b6e7f5157205fed45b4
Then, I renamed the yml and xml files as follows:
org.oldbuild.wine-6-13.yml
org.oldbuild.wine-6-13.appdata.xml
In org.oldbuild.wine-6-13.yml
, I changed the ID and the reference to the appdata file, added a line giving host filesystem permissions, and changed the wine version for the download:
id: org.oldbuild.wine-6-13
- --filesystem=host
url: https://dl.winehq.org/wine/source/6.x/wine-6.13.tar.xz
sha256: e03a21a011d45d2ae9f222040fb7690b97156376e7431f861f20073eaf24f28a
path: org.oldbuild.wine-6-13.appdata.xml
Then, in org.oldbuild.wine-6-13.appdata.xml
, I changed the ID and release version lines:
<id>org.oldbuild.wine-6-13</id>
<release version="6.13" date="2021-07-20"/>
I also added the following modules/spirv-headers.json
file:
{
"name": "spirv",
"buildsystem": "cmake-ninja",
"cleanup": [
"/bin",
"/include",
"/lib/cmake",
"/lib/pkgconfig",
"/share/man",
"*.so"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-1.3.236.0.tar.gz",
"sha256": "4d74c685fdd74469eba7c224dd671a0cb27df45fc9aa43cdd90e53bd4f2b2b78"
}
]
}
After doing the above, I tried building it with: flatpak run org.flatpak.Builder wine-6-13 org.oldbuild.wine-6-13.yml
After everything successfully compiled, it gave an error when composing the metadata:
Composing metadata...
Run failed, some data was ignored.
Errors were raised during this compose run:
general
E: filters-but-no-output
org.oldbuild.wine-6-13
E: no-valid-category
Refer to the generated issue report data for details on the individual problems.
Error: ERROR: appstreamcli compose failed: Child process exited with code 1
At this point, I went into the wine-6-13
directory and tried manually creating the metadata
, metadata.debuginfo
, metadata.org.winehq.Wine.gecko
, and metadata.org.winehq.Wine.mono
files. I used a 6.0.2 build for reference, changing things as appropriate.
name=org.oldbuild.wine-6-13
[Extension org.oldbuild.wine-6-13.Debug]
built-extensions=org.oldbuild.wine-6-13.Debug;org.winehq.Wine.gecko;org.winehq.Wine.mono;
[Runtime]
name=name=org.oldbuild.wine-6-13.Debug
[ExtensionOf]
ref=app/org.oldbuild.wine-6-13/x86_64/stable-21.08
[Runtime]
name=org.winehq.Wine.gecko
[ExtensionOf]
ref=app/org.oldbuild.wine-6-13/x86_64/stable-23.08
[Runtime]
name=org.winehq.Wine.mono
[ExtensionOf]
ref=app/org.oldbuild.wine-6-13/x86_64/stable-21.08
After finishing the above, I ran flatpak build-finish wine-6-13
, and then manually placed a wine-6-13/export/share/metainfo/org.oldbuild.wine-6-13.metainfo.xml
file with the same contents as org.oldbuild.wine-6-13.appdata.xml
.
From here, I ran the commands to finish creating a flatpak file and install it:
flatpak build-export export-6-13 wine-6-13
flatpak build-bundle export-6-13 org.oldbuild.wine-6-13.flatpak org.oldbuild.wine-6-13 --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo
flatpak install org.oldbuild.wine-6-13.flatpak
I do not know why the metadata failed to build, but the manually completed flatpak fails to launch wine with the following error.
my_bash_prompt$ flatpak run org.oldbuild.wine-6-13 some_windows_program.exe
bwrap: execvp wine: No such file or directory
Does anyone know what's causing this problem? Thanks in advance!