Releases And Metadata
Artifact Names
Section titled “Artifact Names”Wine runtime artifacts are produced with a runtime directory, tarball, checksum, and sidecar JSON.
artifacts/wine-$BUILD_NAME/ wine-$BUILD_NAME-build/ wine-$BUILD_NAME-install/ wine-$BUILD_NAME/ wine-$BUILD_NAME.tar.gz wine-$BUILD_NAME.tar.gz.sha256 wine-$BUILD_NAME.jsonCurrent names:
| BUILD_NAME | Release Name |
|---|---|
winehq-11.11 | wine-winehq-11.11 |
winehq-11 | wine-winehq-11 |
crossover-26.1.0 | wine-crossover-26.1.0 |
DXMT is managed as a separate artifact.
artifacts/dxmt-v0.80-builtin.tar.gzartifacts/dxmt-v0.80-builtin.tar.gz.sha256Launcher Metadata
Section titled “Launcher Metadata”The Wine package step writes launcher metadata both inside the runtime and next to the artifact.
<WINE_ROOT>/share/bdhi/launcher-options.jsonartifacts/wine-$BUILD_NAME/wine-$BUILD_NAME.jsonMetadata selection order:
BDHI_LAUNCHER_OPTIONS_FILEmetadata/bdhi-launcher-options.$BUILD_NAME.jsonmetadata/bdhi-launcher-options.$PATCH_SET.jsonmetadata/bdhi-launcher-options.jsonThe launcher should prefer the manifest inside the unpacked runtime. The sidecar JSON can be used to show release information before downloading. When adding a new runtime flavor, create a dedicated metadata file unless it intentionally shares an existing patch-set manifest.
Capabilities
Section titled “Capabilities”capabilities in metadata is an internal launcher contract.
It should not be exposed as a normal user setting.
The process telemetry capability describes the prefix-scoped FIFO used to send Wine server process table events.
{ "protocol": 1, "transport": "fifo", "activationEnvironment": "WINE_BDIH_PROCESS_TELEMETRY", "pipeEnvironment": "WINE_BDIH_PROCESS_PIPE"}Wine only reports process lifecycle facts. The Bob-Ddong-Iri-Hoyo Launcher is responsible for deciding whether a process is an installer, launcher, game, or helper.
WineHQ metadata also declares the HoYoPlay proxy capability. If a declared helper is missing from the artifact, treat the runtime as incomplete and fail clearly.
Process Telemetry Policy
Section titled “Process Telemetry Policy”Process telemetry is not specific to Steam or HoYoPlay. It reports prefix-wide Wine process lifecycle events.
Enable it with:
WINE_BDIH_PROCESS_TELEMETRY=1WINE_BDIH_PROCESS_PIPE=/absolute/native/path/to/process-events.fifoCreate the FIFO with 0600 permissions.
Command lines may contain tokens or user paths, so avoid logging raw payloads.
If there is no reader, the pipe is full, or a write fails, Wine should drop the event.
Telemetry must never delay or fail a Wine process or wineserver.
Licensing And Distribution
Section titled “Licensing And Distribution”Wine runtime archives contain third-party binaries. The repository license and runtime distribution obligations must be handled separately.
The package step writes this license bundle into the runtime.
<WINE_ROOT>/share/licenses/ README.md BUILD-PROVENANCE.txt source/ homebrew/ dwproton/ dxmt/dwproton/ applies when WineHQ Proton extras are bundled.
dxmt/ applies only when DXMT is explicitly bundled.
Multimedia components such as GStreamer, FFmpeg, x264, and x265 can change with Homebrew updates, so recheck their dependency and license set before release.
Release Check
Section titled “Release Check”Before publishing a release:
- Confirm that the same patch set replays after
clean.sh. - Confirm that temporary debug counters, tracing, and local-only patches are not in release sources.
- Confirm that the tarball,
.sha256, and sidecar JSON refer to the same build output. - Confirm that
share/bdhi/launcher-options.jsonmatches the sidecar JSON. - Confirm that
share/licenses/matches the binaries included in the runtime. - Recheck the workloads declared by the runtime, such as Steam, Eternal Return, or the HoYoPlay backend.