Wine 6.13の以前の開発バージョン用のフラットパックを作成しようとしたときに問題が発生しました。bwrap: execvp wine: No such file or directory
コンパイルは成功しましたが、flatpakを実行しようとするとエラーが発生します。わずかに最新バージョンの6.16が利用可能でしたが、以前のバージョンのWineで実行されていない一部のソフトウェアを実行するには、この特定の以前のバージョンが必要です。残念ながら、6.16までは修正されていないバグのため、以前のランタイムセットを使用する必要がありました。私が試した詳細な方法は次のとおりです。
バージョン6.0.2に存在するWineのflathubマニフェストリポジトリを最初にダウンロードしました。 https://github.com/plathub/org.winehq.Wine/tree/a954b18213547d4acaeb7b6e7f5157205fed45b4
次に、ymlファイルとxmlファイルの名前を次のように変更しました。
org.oldbuild.wine-6-13.yml
org.oldbuild.wine-6-13.appdata.xml
でorg.oldbuild.wine-6-13.yml
appdataファイルへのIDと参照を変更し、ホストファイルシステム権限を提供する行を追加し、ダウンロードしたワインのバージョンを変更しました。
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
その後、org.oldbuild.wine-6-13.appdata.xml
IDとリリースバージョンの行を変更しました。
<id>org.oldbuild.wine-6-13</id>
<release version="6.13" date="2021-07-20"/>
次のmodules/spirv-headers.json
ファイルも追加しました。
{
"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"
}
]
}
上記の操作を実行した後、次のコマンドを使用してビルドしようとしました。flatpak run org.flatpak.Builder wine-6-13 org.oldbuild.wine-6-13.yml
すべてが正常にコンパイルされた後、メタデータの作成中にエラーが発生します。
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
wine-6-13
この時点でディレクトリに移動し、metadata
ファイルを手動で作成してみます。バージョン6.0.2を参照として使用し、必要に応じて変更しています。metadata.debuginfo
metadata.org.winehq.Wine.gecko
metadata.org.winehq.Wine.mono
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
上記のタスクを実行した後に実行し、flatpak build-finish wine-6-13
手動wine-6-13/export/share/metainfo/org.oldbuild.wine-6-13.metainfo.xml
でorg.oldbuild.wine-6-13.appdata.xml
。
ここで、次のコマンドを実行してflatpakファイルの生成を完了してインストールします。
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
なぜメタデータが構築されないのかわかりませんが、手動で実行したflatpakは次のエラーでワインを開始できません。
my_bash_prompt$ flatpak run org.oldbuild.wine-6-13 some_windows_program.exe
bwrap: execvp wine: No such file or directory
この問題の原因を知っている人はいますか?この問題を解決するには、どこから始めるべきかわかりません。よろしくお願いします!