Releases: Bliss-Bass/GameNative-x64
Release list
v1.2.0-x64.4
GameNative x64 1.2.0-x64.4
GameNative ported to x86_64 (bionic) for Bass:Lineout / ax86 tablets — run Windows games
through Proton/Wine on Intel or AMD Android devices, with hardware Vulkan.
Upstream GameNative targets arm64 and leans on ARM-only pieces (Box64, the Vortek Vulkan
proxy, libredirect-bionic-wx.so). This fork replaces those with a native x86_64 path: no
emulation layer, a real Khronos Vulkan loader with X11 surfaces, and Mesa drivers
cross-compiled for bionic.
Highlights
- Native x86_64 execution — Proton/Wine runs directly, without Box64 translation
- Hardware Vulkan via Mesa ANV (Intel) and RADV (AMD); lavapipe bundled as a software fallback
- Vulkan loader, ICDs, and X11 client stack shipped in-APK and staged on first launch
- PulseAudio wired up for in-game sound
- Trackpad/mouse pointer capture fixes for desktop-style tablets
Experimental. Verified with Half-Life 2 on Intel UHD (Amber Lake / Coffee Lake).
Presentation still uses Mesa's software WSI path, so framerate is below what the GPU can do.
Install
- Download
app-modernX64-release.apkbelow. - Install on an x86_64 Android device (API 26+).
adb install -r app-modernX64-release.apkThe Vulkan payload (~50MB compressed) unpacks on first launch, so the first game start
takes longer than later ones.
Verifying which driver you got
After launching a game, check the DXVK log inside the game's directory:
adb shell "grep -iE 'Device name|Skipping CPU adapter' \
/data/data/app.gamenative/Steam/steamapps/common/*/[a-z]*_d3d9.log"A real GPU name (for example Intel(R) UHD Graphics) means hardware Vulkan. If it reports
llvmpipe, it fell back to software rendering.
Building it yourself
The native libraries are built in a pinned container (podman or docker required), which
keeps the toolchain identical across machines:
./scripts/native-build-container.sh scripts/build-x86_64-bionic-libs.sh
./scripts/native-build-container.sh scripts/build-x86_64-mesa-vulkan.sh
./scripts/provision-x86_64-vulkan.sh tarball
./gradlew :app:assembleModernX64Release -PnoMinify=true-PnoMinify=true is currently required: a minified release ANRs shortly after launch in a
Compose recomposition loop.
What's included
| File | Description |
|---|---|
| app-modernX64-release.apk (~246M) | Signed release build for x86_64 tablets. Use for installs and in-place updates. |
| app-modernX64-debug.apk (~274M) | Debug build with logging enabled. For testing only. |
These are x86_64 builds. They will not install on arm64 devices — use upstream
GameNative for arm64.
Bundled graphics stack
| Field | Value |
|---|---|
| Vulkan payload | vulkan-x86_64-20260828.tzst (~50M compressed) |
| Drivers (ICDs) | intel_icd.x86_64, lvp_icd.x86_64, radeon_icd.x86_64 |
The payload is extracted on first launch and carries hardware Vulkan for Intel
(ANV) and AMD (RADV) plus a software fallback (lavapipe), so no separate Termux
or driver setup is needed.
Automatic updates (Obtainium)
To get notified when new v* tags ship, add this repo in Obtainium:
| Setting | Value |
|---|---|
| Source | GitHub |
| Repository | Bliss-Bass/GameNative-x64 |
| Release filter | v* tags |
| APK filter | app-modernX64-release.apk |
Build info
| Field | Value |
|---|---|
| Release tag | v1.2.0-x64.4 |
| Gradle version | 1.2.0 (code 46) |
| Application ID | app.gamenative |
| Variant | modernX64 (x86_64 only) |
| Minimum Android | API 26+ |
Since v1.2.0-x64.3
Compare on GitHub: v1.2.0-x64.3...v1.2.0-x64.4
Changes in the last 30 days
Since 2026-08-03 · 207 commits
- Bump versionCode to 46 for the x64.4 release. (
8e64f07a) - Make a GTK4 app fill its window, which openbox's rule alone will not (
050cc3e2) - Give a Linux session an owner, a lifetime and a window of its own (
171877ba) - Give a drawer-launched Linux app the app list as its parent (
afbb7626) - Do not refuse a launcher entry over an icon Android cannot decode (
f7ada0f4) - Size the Linux session against Android's UI, not against its DPI number (
53cdc506) - Name the app GameNativeX64 and add the guest command helper (
0f54388d) - Wire the trampoline dex task into lint, not just the asset merge (
4f72fc80) - Measure the presentation path from both ends instead of trusting a guest overlay (
aed3503b) - Record the Half-Life 2 check on the shared-memory present path (
1896d5b2) - Release shared fences and regions when a client disconnects (
b6c19d6d) - Make the shared-memory present path work on x86_64 (
b783f506) - x86_64 shm present: identify the missing capability, not a broken one (
2dcaabbd) - Rule out size in the shared-memory present hang (
585d41f8) - Make the shared-memory present path reproducible without a game (
10ccf08a) - Pad the MIT-SHM version reply, and make the shm path answerable (
54f70382) - Stop the debug build from silencing the parts that explain a failure (
2a2c44de) - Give x86_64 guests real SysV shared memory, and a choice of present path (
c3a0e2c3) - Report a failed ShmAttach instead of accepting it (
b99e3da5) - Bring the port docs up to date, and correct why MIT-SHM is off (
e8a328e8) - Let a user supply their own SteamGridDB key, and use it for launcher icons (
fc7e2cb0) - Find an icon for a game whatever store it came from (
31f3a1e9) - Sign a generated stub with a provider that will take the key (
03f8f57f) - Keep a game's app-list entry in step with the game (
555d8031) - Offer an installed game an entry in Android's app list (
28a5e41d) - Share the launcher-entry machinery instead of reaching into Linux code (
3e1b8d96) - Let a launcher entry stand for a game as well as a Linux app (
543691d7) - Let a Linux app reach Android's files (
74383ebe) - Give the Linux Session a desktop, and an app the display to itself (
6610503b) - Take back the launcher entries a Linux app leaves behind (
6522b3f2) - Name the installer so the package manager will show it to us (
004fdd1a) - Install launcher entries through the ROM's installer when it is there (
95a49649) - Offer a Linux app an entry in Android's app list (
80fb8122) - Build the stub trampoline as an asset, and keep its signing key (
ca526e94) - Stop losing a Linux intent that arrives mid-startup (
8658bdab) - Sign a generated stub on the device it was generated on (
28673ad8) - Generate an installable stub APK without build tools (
3c965862) - Call it a Linux session, not a Linux desktop (
683a2915) - Offer the pin action on the Linux apps list (
f0ef6ccf) - Pin a Linux application to the launcher (
c606016c) - Add a screen for the applications in the Linux userland (
c5652e74) - Find the applications installed in the Linux userland (
d57cbf8c) - Fix the Linux screens reached by intent (
d87f56e8) - Update working notes for the shipped desktop (
91c9c8bb) - Ship a desktop that is usable without setting it up (
a59ef397) - Add an intent entry point for the Linux terminal (
edbaf31d) - Add working notes for the Linux userland work (
1fa04a04) - Add the Linux desktop screen (
5dbab8f6) - Add an RFB client and presenter (
8e1a449b) - Add the graphical session manager (
3c7ccbba) - Log the output of long-lived guest processes (
a294f11a) - Run PRoot without hardlink emulation (
1a8cb53f) - Install the graphical session with the userland (
e3fdb7e4) - Add the release keystore helper (
d60cc5a7) - Add the Linux terminal screen (
cd7fc8a7) - Vendor the Termux terminal emulator and view (
9bd480a1) - Add the Linux userland: rootfs installer and program launcher (
23584cc2) - Build upstream PRoot for bionic x86_64 (
f0530b6b) - Port the vendored PRoot fork to x86_64 (
7ef7bb1e) - Add a boot_to_container launch extra (
7cfc6647) - X server: answer requests Wine never sends (
7b239da9) - Release: don't build twice per tag, and ignore upstream tags in notes (
f0b6f539) - Pin Robolectric to API 34 for the modernX64 flavor (
61f3364d) - CI: survive freedesktop.org 418s and cache each native tree separately (
908ab6b9) - CI: write local.properties, and keep the native cache on failure (
077ad06f) - x64-payload: stop deleting the JDK while freeing disk space (
7fdc6708) - native-build-container: fall back to docker when podman is unusable (
e0a2aa86) - Switch CI to the BumpDesk release pattern (
a956f46e) - Rebuild the bionic libs asset in the container (
eedba2a7) - Build the bionic x86_64 native libs in a pinned container (
d9e87861) - provision-x86_64-vulkan: prune to the loader/ICD closure (
65895ec5) - Stage guest Vulkan stack from a bundled asset (
3a5df2f7) - provision-x86_64-vulkan: fold hardware ICDs into one payload (
d6cfd481) - Add a -PnoMinify escape hatch, and skip the pitches in port builds. (
5a40b846) - Also skip the membership pitches in the x86_64 port builds. (
e8b26ad0) - Skip the membership pitches in debug builds. (
2e3026c3) - Only put the app library dir on the guest path when it is x86_64. (
c3292291) - Handle mouse buttons on the uncaptured pointer path. (
fbfde495) - Capture the pointer as soon as the game window takes focus. (
8bcb7162) - Give the x86_64 guest a library path that resolves libpulse. (
3e9ec008) - Make a swapRB change actually reach the surfaces built before it. (
93d9da5a) - Pass the R/B swap flag the raster helpers have always read. (
1c6bc0ed) - Ship libXrandr in the x86_64 bionic libs asset. (
6e109888) - Build ANV and RADV through to staged ICDs for the x86_64 guest. (
8f44d595) - Make the bionic x86_64 Mesa cross-build get through to a linked ICD. (
406fd7a1) - Add a Mesa cross-build for hardware Vulkan ICDs on bionic x86_64. (
3c39845d) - Det...
v1.2.0-x64.3
GameNative x64 1.2.0-x64.3
GameNative ported to x86_64 (bionic) for Bass:Lineout / ax86 tablets — run Windows games
through Proton/Wine on Intel or AMD Android devices, with hardware Vulkan.
Upstream GameNative targets arm64 and leans on ARM-only pieces (Box64, the Vortek Vulkan
proxy, libredirect-bionic-wx.so). This fork replaces those with a native x86_64 path: no
emulation layer, a real Khronos Vulkan loader with X11 surfaces, and Mesa drivers
cross-compiled for bionic.
Highlights
- Native x86_64 execution — Proton/Wine runs directly, without Box64 translation
- Hardware Vulkan via Mesa ANV (Intel) and RADV (AMD); lavapipe bundled as a software fallback
- Vulkan loader, ICDs, and X11 client stack shipped in-APK and staged on first launch
- PulseAudio wired up for in-game sound
- Trackpad/mouse pointer capture fixes for desktop-style tablets
Experimental. Verified with Half-Life 2 on Intel UHD (Amber Lake / Coffee Lake).
Presentation still uses Mesa's software WSI path, so framerate is below what the GPU can do.
Install
- Download
app-modernX64-release.apkbelow. - Install on an x86_64 Android device (API 26+).
adb install -r app-modernX64-release.apkThe Vulkan payload (~50MB compressed) unpacks on first launch, so the first game start
takes longer than later ones.
Verifying which driver you got
After launching a game, check the DXVK log inside the game's directory:
adb shell "grep -iE 'Device name|Skipping CPU adapter' \
/data/data/app.gamenative/Steam/steamapps/common/*/[a-z]*_d3d9.log"A real GPU name (for example Intel(R) UHD Graphics) means hardware Vulkan. If it reports
llvmpipe, it fell back to software rendering.
Building it yourself
The native libraries are built in a pinned container (podman or docker required), which
keeps the toolchain identical across machines:
./scripts/native-build-container.sh scripts/build-x86_64-bionic-libs.sh
./scripts/native-build-container.sh scripts/build-x86_64-mesa-vulkan.sh
./scripts/provision-x86_64-vulkan.sh tarball
./gradlew :app:assembleModernX64Release -PnoMinify=true-PnoMinify=true is currently required: a minified release ANRs shortly after launch in a
Compose recomposition loop.
What's included
| File | Description |
|---|---|
| app-modernX64-release.apk (~246M) | Signed release build for x86_64 tablets. Use for installs and in-place updates. |
| app-modernX64-debug.apk (~273M) | Debug build with logging enabled. For testing only. |
These are x86_64 builds. They will not install on arm64 devices — use upstream
GameNative for arm64.
Bundled graphics stack
| Field | Value |
|---|---|
| Vulkan payload | vulkan-x86_64-20260828.tzst (~50M compressed) |
| Drivers (ICDs) | intel_icd.x86_64, lvp_icd.x86_64, radeon_icd.x86_64 |
The payload is extracted on first launch and carries hardware Vulkan for Intel
(ANV) and AMD (RADV) plus a software fallback (lavapipe), so no separate Termux
or driver setup is needed.
Automatic updates (Obtainium)
To get notified when new v* tags ship, add this repo in Obtainium:
| Setting | Value |
|---|---|
| Source | GitHub |
| Repository | Bliss-Bass/GameNative-x64 |
| Release filter | v* tags |
| APK filter | app-modernX64-release.apk |
Build info
| Field | Value |
|---|---|
| Release tag | v1.2.0-x64.3 |
| Gradle version | 1.2.0 (code 45) |
| Application ID | app.gamenative |
| Variant | modernX64 (x86_64 only) |
| Minimum Android | API 26+ |
Since v1.2.0-x64.1
Compare on GitHub: v1.2.0-x64.1...v1.2.0-x64.3
Changes in the last 30 days
Since 2026-08-01 · 210 commits
- Name the app GameNativeX64 and add the guest command helper (
0f54388d) - Wire the trampoline dex task into lint, not just the asset merge (
4f72fc80) - Measure the presentation path from both ends instead of trusting a guest overlay (
aed3503b) - Record the Half-Life 2 check on the shared-memory present path (
1896d5b2) - Release shared fences and regions when a client disconnects (
b6c19d6d) - Make the shared-memory present path work on x86_64 (
b783f506) - x86_64 shm present: identify the missing capability, not a broken one (
2dcaabbd) - Rule out size in the shared-memory present hang (
585d41f8) - Make the shared-memory present path reproducible without a game (
10ccf08a) - Pad the MIT-SHM version reply, and make the shm path answerable (
54f70382) - Stop the debug build from silencing the parts that explain a failure (
2a2c44de) - Give x86_64 guests real SysV shared memory, and a choice of present path (
c3a0e2c3) - Report a failed ShmAttach instead of accepting it (
b99e3da5) - Bring the port docs up to date, and correct why MIT-SHM is off (
e8a328e8) - Let a user supply their own SteamGridDB key, and use it for launcher icons (
fc7e2cb0) - Find an icon for a game whatever store it came from (
31f3a1e9) - Sign a generated stub with a provider that will take the key (
03f8f57f) - Keep a game's app-list entry in step with the game (
555d8031) - Offer an installed game an entry in Android's app list (
28a5e41d) - Share the launcher-entry machinery instead of reaching into Linux code (
3e1b8d96) - Let a launcher entry stand for a game as well as a Linux app (
543691d7) - Let a Linux app reach Android's files (
74383ebe) - Give the Linux Session a desktop, and an app the display to itself (
6610503b) - Take back the launcher entries a Linux app leaves behind (
6522b3f2) - Name the installer so the package manager will show it to us (
004fdd1a) - Install launcher entries through the ROM's installer when it is there (
95a49649) - Offer a Linux app an entry in Android's app list (
80fb8122) - Build the stub trampoline as an asset, and keep its signing key (
ca526e94) - Stop losing a Linux intent that arrives mid-startup (
8658bdab) - Sign a generated stub on the device it was generated on (
28673ad8) - Generate an installable stub APK without build tools (
3c965862) - Call it a Linux session, not a Linux desktop (
683a2915) - Offer the pin action on the Linux apps list (
f0ef6ccf) - Pin a Linux application to the launcher (
c606016c) - Add a screen for the applications in the Linux userland (
c5652e74) - Find the applications installed in the Linux userland (
d57cbf8c) - Fix the Linux screens reached by intent (
d87f56e8) - Update working notes for the shipped desktop (
91c9c8bb) - Ship a desktop that is usable without setting it up (
a59ef397) - Add an intent entry point for the Linux terminal (
edbaf31d) - Add working notes for the Linux userland work (
1fa04a04) - Add the Linux desktop screen (
5dbab8f6) - Add an RFB client and presenter (
8e1a449b) - Add the graphical session manager (
3c7ccbba) - Log the output of long-lived guest processes (
a294f11a) - Run PRoot without hardlink emulation (
1a8cb53f) - Install the graphical session with the userland (
e3fdb7e4) - Add the release keystore helper (
d60cc5a7) - Add the Linux terminal screen (
cd7fc8a7) - Vendor the Termux terminal emulator and view (
9bd480a1) - Add the Linux userland: rootfs installer and program launcher (
23584cc2) - Build upstream PRoot for bionic x86_64 (
f0530b6b) - Port the vendored PRoot fork to x86_64 (
7ef7bb1e) - Add a boot_to_container launch extra (
7cfc6647) - X server: answer requests Wine never sends (
7b239da9) - Release: don't build twice per tag, and ignore upstream tags in notes (
f0b6f539) - Pin Robolectric to API 34 for the modernX64 flavor (
61f3364d) - CI: survive freedesktop.org 418s and cache each native tree separately (
908ab6b9) - CI: write local.properties, and keep the native cache on failure (
077ad06f) - x64-payload: stop deleting the JDK while freeing disk space (
7fdc6708) - native-build-container: fall back to docker when podman is unusable (
e0a2aa86) - Switch CI to the BumpDesk release pattern (
a956f46e) - Rebuild the bionic libs asset in the container (
eedba2a7) - Build the bionic x86_64 native libs in a pinned container (
d9e87861) - provision-x86_64-vulkan: prune to the loader/ICD closure (
65895ec5) - Stage guest Vulkan stack from a bundled asset (
3a5df2f7) - provision-x86_64-vulkan: fold hardware ICDs into one payload (
d6cfd481) - Add a -PnoMinify escape hatch, and skip the pitches in port builds. (
5a40b846) - Also skip the membership pitches in the x86_64 port builds. (
e8b26ad0) - Skip the membership pitches in debug builds. (
2e3026c3) - Only put the app library dir on the guest path when it is x86_64. (
c3292291) - Handle mouse buttons on the uncaptured pointer path. (
fbfde495) - Capture the pointer as soon as the game window takes focus. (
8bcb7162) - Give the x86_64 guest a library path that resolves libpulse. (
3e9ec008) - Make a swapRB change actually reach the surfaces built before it. (
93d9da5a) - Pass the R/B swap flag the raster helpers have always read. (
1c6bc0ed) - Ship libXrandr in the x86_64 bionic libs asset. (
6e109888) - Build ANV and RADV through to staged ICDs for the x86_64 guest. (
8f44d595) - Make the bionic x86_64 Mesa cross-build get through to a linked ICD. (
406fd7a1) - Add a Mesa cross-build for hardware Vulkan ICDs on bionic x86_64. (
3c39845d) - Detect the host GPU vendor, and plan the hardware Vulkan path. (
3ea05481) - Keep MIT-SHM out of the x86_64 guest presentation path. (
7e6d3b59) - Log why the X server drops a client. (
aed3ad6d) - Run game sessions fullscreen on desktop-windowing devices. (
bc7e7716) - Automate and document x86_64 guest Vulkan provisioning. (
510f5046) - Give the x86_64 guest a Vulkan driver with X11 surface support. (
5c14b578) - Answer Present QueryCapabilities so Mesa can bu...
v1.2.0-x64.1
GameNative x64 1.2.0-x64.1
GameNative ported to x86_64 (bionic) for Bass:Lineout / ax86 tablets — run Windows games
through Proton/Wine on Intel or AMD Android devices, with hardware Vulkan.
Upstream GameNative targets arm64 and leans on ARM-only pieces (Box64, the Vortek Vulkan
proxy, libredirect-bionic-wx.so). This fork replaces those with a native x86_64 path: no
emulation layer, a real Khronos Vulkan loader with X11 surfaces, and Mesa drivers
cross-compiled for bionic.
Highlights
- Native x86_64 execution — Proton/Wine runs directly, without Box64 translation
- Hardware Vulkan via Mesa ANV (Intel) and RADV (AMD); lavapipe bundled as a software fallback
- Vulkan loader, ICDs, and X11 client stack shipped in-APK and staged on first launch
- PulseAudio wired up for in-game sound
- Trackpad/mouse pointer capture fixes for desktop-style tablets
Experimental. Verified with Half-Life 2 on Intel UHD (Amber Lake / Coffee Lake).
Presentation still uses Mesa's software WSI path, so framerate is below what the GPU can do.
Install
- Download
app-modernX64-release.apkbelow. - Install on an x86_64 Android device (API 26+).
adb install -r app-modernX64-release.apkThe Vulkan payload (~50MB compressed) unpacks on first launch, so the first game start
takes longer than later ones.
Verifying which driver you got
After launching a game, check the DXVK log inside the game's directory:
adb shell "grep -iE 'Device name|Skipping CPU adapter' \
/data/data/app.gamenative/Steam/steamapps/common/*/[a-z]*_d3d9.log"A real GPU name (for example Intel(R) UHD Graphics) means hardware Vulkan. If it reports
llvmpipe, it fell back to software rendering.
Building it yourself
The native libraries are built in a pinned container (podman or docker required), which
keeps the toolchain identical across machines:
./scripts/native-build-container.sh scripts/build-x86_64-bionic-libs.sh
./scripts/native-build-container.sh scripts/build-x86_64-mesa-vulkan.sh
./scripts/provision-x86_64-vulkan.sh tarball
./gradlew :app:assembleModernX64Release -PnoMinify=true-PnoMinify=true is currently required: a minified release ANRs shortly after launch in a
Compose recomposition loop.
What's included
| File | Description |
|---|---|
| app-modernX64-release.apk (~245M) | Signed release build for x86_64 tablets. Use for installs and in-place updates. |
| app-modernX64-debug.apk (~273M) | Debug build with logging enabled. For testing only. |
These are x86_64 builds. They will not install on arm64 devices — use upstream
GameNative for arm64.
Bundled graphics stack
| Field | Value |
|---|---|
| Vulkan payload | vulkan-x86_64-20260828.tzst (~50M compressed) |
| Drivers (ICDs) | intel_icd.x86_64, lvp_icd.x86_64, radeon_icd.x86_64 |
The payload is extracted on first launch and carries hardware Vulkan for Intel
(ANV) and AMD (RADV) plus a software fallback (lavapipe), so no separate Termux
or driver setup is needed.
Automatic updates (Obtainium)
To get notified when new v* tags ship, add this repo in Obtainium:
| Setting | Value |
|---|---|
| Source | GitHub |
| Repository | Bliss-Bass/GameNative-x64 |
| Release filter | v* tags |
| APK filter | app-modernX64-release.apk |
Build info
| Field | Value |
|---|---|
| Release tag | v1.2.0-x64.1 |
| Gradle version | 1.2.0 (code 45) |
| Application ID | app.gamenative |
| Variant | modernX64 (x86_64 only) |
| Minimum Android | API 26+ |
Changes in the last 30 days
Since 2026-07-29 · 164 commits
- Release: don't build twice per tag, and ignore upstream tags in notes (
f0b6f539) - Pin Robolectric to API 34 for the modernX64 flavor (
61f3364d) - CI: survive freedesktop.org 418s and cache each native tree separately (
908ab6b9) - CI: write local.properties, and keep the native cache on failure (
077ad06f) - x64-payload: stop deleting the JDK while freeing disk space (
7fdc6708) - native-build-container: fall back to docker when podman is unusable (
e0a2aa86) - Switch CI to the BumpDesk release pattern (
a956f46e) - Rebuild the bionic libs asset in the container (
eedba2a7) - Build the bionic x86_64 native libs in a pinned container (
d9e87861) - provision-x86_64-vulkan: prune to the loader/ICD closure (
65895ec5) - Stage guest Vulkan stack from a bundled asset (
3a5df2f7) - provision-x86_64-vulkan: fold hardware ICDs into one payload (
d6cfd481) - Add a -PnoMinify escape hatch, and skip the pitches in port builds. (
5a40b846) - Also skip the membership pitches in the x86_64 port builds. (
e8b26ad0) - Skip the membership pitches in debug builds. (
2e3026c3) - Only put the app library dir on the guest path when it is x86_64. (
c3292291) - Handle mouse buttons on the uncaptured pointer path. (
fbfde495) - Capture the pointer as soon as the game window takes focus. (
8bcb7162) - Give the x86_64 guest a library path that resolves libpulse. (
3e9ec008) - Make a swapRB change actually reach the surfaces built before it. (
93d9da5a) - Pass the R/B swap flag the raster helpers have always read. (
1c6bc0ed) - Ship libXrandr in the x86_64 bionic libs asset. (
6e109888) - Build ANV and RADV through to staged ICDs for the x86_64 guest. (
8f44d595) - Make the bionic x86_64 Mesa cross-build get through to a linked ICD. (
406fd7a1) - Add a Mesa cross-build for hardware Vulkan ICDs on bionic x86_64. (
3c39845d) - Detect the host GPU vendor, and plan the hardware Vulkan path. (
3ea05481) - Keep MIT-SHM out of the x86_64 guest presentation path. (
7e6d3b59) - Log why the X server drops a client. (
aed3ad6d) - Run game sessions fullscreen on desktop-windowing devices. (
bc7e7716) - Automate and document x86_64 guest Vulkan provisioning. (
510f5046) - Give the x86_64 guest a Vulkan driver with X11 surface support. (
5c14b578) - Answer Present QueryCapabilities so Mesa can build a swapchain. (
6ba91b01) - Stop the arm64-only Vortek library from killing x86_64 sessions. (
53adcbb6) - Connect x86_64 Wine to the in-app X server without libredirect. (
b9d5ee16) - Fix x86_64 Wine graphics stack for Proton launches on ax86. (
147e9164) - Add x86_64 PulseAudio and bionic font libs for Wine on ax86. (
2096bc15) - Exclude ARM imagefs from x86_64 LD_LIBRARY_PATH for Proton Wine. (
bd1c60da) - Bump versionCode to 24 for ax86 device test drops. (
010f7b63) - Point x86_64 Bionic Wine at Proton ntdll library paths. (
5161b877) - Stage x86_64 libandroid-sysvshm.so for Bionic wine preload. (
3b658541) - Support freeform/desktop window caption bar in app UI. (
1a7d5638) - Fix x86_64 Bionic wine launch loading ARM preload shims. (
becd2084) - Add BLISS_PORT_DEBUG to gate remote telemetry on port builds. (
3f5b719b) - Add x86_64 evshim host stub to fix X server WinHandler crash. (
7300b853) - Build libwinlator_11.so for x86_64 X server drawable and GPU queries. (
2bc43c68) - Default to x86_64 Proton on ax86 hosts and migrate existing containers. (
d1cbf145) - Fix x86_64 libextras GPUInformation JNI by including vulkan.c. (
78c48730) - Stage open-source x86_64 JNI prebuilts and document remaining blockers. (
cf67a04b) - Fix modernX64 Gradle variant packaging. (
bf2cc7a5) - Gate ARM-only Box64, FEX, LSFG, and redirect preload on x86_64 host. (
64922ac7) - Use system Vulkan on x86_64 instead of adrenotools. (
144e90ce) - Add x86_64 JNI build infrastructure for Bliss ax86 port. (
97598f73) - Add Bliss x64 port and ax86 graphics documentation. (
e6f9816b) - Log HostCpu and supported ABIs at application startup. (
0455d0a4) - Skip Box64 on x86_64 host in Bionic and Glibc launchers. (
1ca0d4ce) - Add modernX64 product flavor targeting x86_64 host ABI. (
3b619a7b) - Add HostCpu host ABI detection for x86_64 Android tablets. (
00bc0fe4) - Version bump and README bump (#1857) (
1ad70ae5) - Fix bionic after verify (#1856) (
3491226f) - fix: handle lateinit exception in power manager (#1848) (
504ee734) - Fix Open Container file copy crashes in Wine (#1784) (
fb0207c5) - Added new turnips, new fex, new box64, new wowbox64 (#1847) (
d19cf412) - Immersive mode: fix gamma, raise quad resolution, stop duplicate compositing (#1846) (
12433d92) - remove redundant driver.stop() (
4a8255d8) - stop driver when stopping power control (
8d15b6af) - fix setPowerProfile (
6448790c) - address AI comments and strings (
8fc62c27) - logic fix in setPowerProfile (
ba717b42) - fix AdaptiveFpsCapController and PerformanceMetricsCollector loading (
ecf7e2f3) - addressed AI comments, fix fan controller cannot stop using toggle (
4234360d) - refactor: Add global toggle for in-game power control, fix issues (
7035620f) - Restrict FFP fastpath shim to non-emulated storage volumes (
f300620f) - Disable FFP for custom games on internal storage only (
0ae8047a) - Gate FFP by Android/data path instead of game source (
c5b7e2cc) - Don't enable FFP fastpath shim for custom games (
ecb0793f) - Enable immersive mode on the legacyXr build (
e64965c5) - Allow .bat files in container executable path dropdown (
0979e333) - bumped version for prerelease (
7a15d091) - Simplified changes (removed undo action) (
4a98dc62) - change favorite tab to star, reduced length of favorite action in action bar, reduced diff to master (
816b767a) - Fixes for quest - games can launch in immersive mode and we can use touch controllers as xbox (still some bugs) (#1831) (
58874f8a) - Remove PR media from source (
4b679e5f) - Add PR preview assets (
81b33867) - Refine favorites UX (
2bbb0ada) - Add in-app community config browser (#1782) (
44a8f193) - Add configurable radial menu for controls (#1709) (
9955de49) - feat: add default screen size detection and 960p screen size option (e.g. retroid pocket nova) (#...