Skip to content

Releases: volcmen/forza-motorsport-linux

v0.3.0-preview.1 — composed Proton and SteamOS test preview

Choose a tag to compare

@volcmen volcmen released this 15 Oct 09:40
5d0dbac

Experimental preview for controlled testing. Physical Steam Deck gameplay, real account sign-in and Steam's actual Forza handoff have not been validated. Preserve an existing working setup.

This preview fixes the fresh-install packaging design: Prepare publishes a complete custom GE-Proton11-3-FM, with its Wine/controller/storage changes already built in. Finish installs the licensed prefix DLL and user integration without changing that tool. Plans, exact hashes, recovery records and launcher checks keep the stages tied to the reviewed inputs.

Use the Install guide, SteamOS status and Recovery guide. The target is Arch Linux or SteamOS x86_64 with native Steam and one unambiguous primary/additional game library. Flatpak Steam is unsupported. The older v0.2 fresh-download path stays blocked; this preview does not migrate an existing managed installation.

Downloads

  • GE-Proton11-3-FM-composed-preview.tar.gz: complete custom compatibility tool. Let setup composed prepare verify and stage it.
  • forza-composed-user-bundle-v1.tar.zst: matching security-updated Xodus binaries and verified runtime evidence for the user-only installer.
  • forza-xodus-preview.flatpak: SteamOS login and overlay app, with a pinned GNOME 50 runtime requirement. Keep SteamOS read-only; no second credential daemon is needed.
  • GE-Proton11-3-FM-prepared-source.tar.gz: prepared GE/Wine source and submodules, including applied changes.
  • Forza-preview-source-supplements-v2.tar.gz: exact Xodus source and vendored dependencies, Wine Mono, Gecko, Xalia and unzip source inputs.
  • SHA256SUMS: hashes for all five archives/packages.

No Microsoft DLL, game, account data or synthetic test DLL is included. Supply your own licensed Microsoft threading runtime. Check the guide's hashes before extracting inputs.

What was validated

  • All six published assets were downloaded without GitHub credentials and matched their SHA-256 checksums. The release tag points to tested main commit 5d0dbacad609cc6274b8d4588266d2d9e84c5d62.
  • Repository gate: 1002 Python tests passed, one optional Docker skip, plus shell, lint, unit syntax, license and policy checks. PR verification and CodeQL passed before merge.
  • Installed SteamOS 3.8.14 QEMU guest: Prepare, Finish, status, Doctor and rollback passed with synthetic game/private-DLL fixtures. Doctor warned below 100 GiB free; the tool remained unchanged and OS read-only remained enabled.
  • Actual installed launcher/native-service/packaged-Proton path: 26 Wine API checks passed, one optional invite-relay skip; 18 storage checks passed.
  • New Flatpak rendered Microsoft sign-in and the overlay. No account was entered. A recreated service socket requires closing/reopening the overlay; this was verified and documented.
  • Xodus: 88 source tests passed, seven live-service tests ignored, plus 11 optimized GLib tests. Exact-head CI passed in the owned fork.

See the build/source identities and qualification record. The build is traceable; independently reproduced archive bytes are not claimed.

Security and remaining limits

TLS/XML/PKCS#11/OpenSSL dependencies were updated and GLib's affected iterator received a tested backport. The RSA timing advisory still exists in the dependency graph; private signing now uses OpenSSL. A compile-time maintenance advisory also remains. Read the scoped dependency review. This is not a full Proton/OS vulnerability certification.

The Flatpak has network, graphics, input-device, Secret Service and Xodus socket access. Its socket's read-only mount still permits protocol requests. App/runtime revisions and permission overrides are checked; a runtime update requires requalification rather than a forced downgrade.

READY_TO_ATTEMPT is an installer result. Real Steam/account/gameplay, wallet persistence/cancellation, Gaming Mode, physical controllers, microSD, suspend/resume, graphics/performance and explicit Invite/Join still require testing. Incoming invite notifications remain unsupported. Historical v0.1 gameplay results are not relabeled as preview results.

v0.2.0 — prerelease (fresh installs blocked)

Choose a tag to compare

@volcmen volcmen released this 04 Sep 21:04

Maintenance update — 2026-10-15: fresh installations from this tag remain blocked.
This tag uses an incomplete stock Proton base and predates the current transaction and Xodus dependency/security fixes. Preserve an existing working installation and its recovery records; the old tag and binaries have not been rewritten.

The separate v0.3.0-preview.1 experimental release supplies a complete custom tool, user-only Finish/recovery, and SteamOS Flatpak GUI. Its controlled SteamOS VM checks passed; real account/game handoff and physical Steam Deck gameplay remain unverified. It is for fresh test environments and does not migrate this release.

Read Install, SteamOS status, and the dependency security review. Reports #7 and #8 remain open.

Original prerelease notes — historical reference

v0.2.0 — an easier setup, ready for testing

This release is about making setup less of a project in itself. Instead of
building and arranging every open-source component by hand, you can download
the bundle and let ./setup bootstrap walk you through the installation.
If you stop partway through, you can resume it.

This is still an experimental prerelease. The older v0.1 setup worked in
the game on one machine. These rebuilt binaries haven't completed those game
tests yet. Build, download, and recovery checks have passed, but that's not the
same as testing a race or joining a friend. Keep your working setup for now.

Try it

You'll need Arch Linux x86_64, native Steam, your Steam copy of Forza Motorsport,
and a Microsoft threading DLL from a source you're licensed to use. That DLL
is not included. Downloads don't require a GitHub login.

Start in a separate checkout (do not replace a working installation blindly):

git clone --branch v0.2.0 --depth 1 https://github.com/volcmen/forza-motorsport-linux.git forza-motorsport-linux-v0.2.0
cd forza-motorsport-linux-v0.2.0
./setup bootstrap --check
./setup bootstrap

The immutable tag retains its prepublication candidate documentation. These
release notes record the later publication and public-download verification.

What's easier now

  • Setup downloads the selected GE-Proton version through ProtonUp and prepares
    a separate GE-Proton11-3-FM tool, leaving your other Proton tools alone.
  • The Xodus/XGameRuntime bundle is checked against its expected hashes before use.
  • Controller and AP702 fixes are applied only to the exact supported builds.
  • Setup keeps backups and recovery records so you can resume or undo the work.
  • Prefer to build from source? The optional Docker build compiles offline.

What remains manual

Steam must create the game's prefix, and you must supply your own licensed
Microsoft threading runtime. That proprietary DLL is not distributed here.
Bootstrap does not edit Steam launch options, launch the game, install system
packages, or log into Microsoft. Use the generated Steam launch line.

KDE Wallet can provide Secret Service; GNOME Keyring is not required. Xodus
starts when you play and stops with that game session. You can open the social
picker to Invite or Join; automatic incoming invite notifications aren't supported.

Evidence and limits

Two clean builds produced the same bundle. We also downloaded the public
release without signing in and verified it against the shipped manifest.
Bundle SHA-256:
68d7fc9e70a665c575f34432a5136e22bc07c840a028a52ec83b06f889c2b9b1.

The build verification record documents the
real offline compilation, repeated archive comparison, binary loader/CLI smoke
test, and synthetic clean-start/recovery checks. Immutable release identities
are recorded in manifests/bootstrap-v1.toml; do not use the earlier local
candidate hash as a release checksum.

Read the bootstrap guide before installation. Keep recovery
journals and backups. ./setup bootstrap --rollback reverses the composed
bootstrap; ./setup rollback retains its older runtime-only meaning.

Before treating the rebuilt stack as accepted, verify two Steam launches,
online content/profile, controller driving and hotplug, AP702 absence,
Invite/Join with keyboard and controller navigation, and clean service exit.
Automated checks cannot prove those game or account behaviors.

Forza Motorsport Linux tools v0.1.0

Choose a tag to compare

@volcmen volcmen released this 03 Sep 13:27

v0.1.0 release evidence

Forza Motorsport Linux tools
v0.1.0 is the experimental, source-only setup I used to get the Steam edition
of Forza Motorsport (AppID 2440510) playing on Linux with GE-Proton11-3-FM.
It worked on my machine, including playing with a friend on Windows. It is
not ordinary upstream Proton support, and results on other systems may differ.

Looking for the newer installer? See the
v0.2.0 prerelease.
Its rebuilt components still need in-game testing; the results here apply only
to the older v0.1 setup.

Verified on the tested system

The exact legacy-v0.1 profile passed the complete two-launch matrix on
2026-09-02:

  • cold launch with Xodus initially stopped;
  • online profile and content download;
  • controller menu navigation, driving, disconnect, and reconnect;
  • no AP702 HDD/SSD warning;
  • explicit Microsoft/Xbox Invite from Linux to Windows;
  • explicit Join from Linux to a compatible Windows activity;
  • keyboard and controller operation in the social picker;
  • clean service, socket, and ownership-token removal after exit; and
  • a second successful launch without a system reboot.

The redacted observation and installed open-source artifact hashes are recorded
in the v0.1 test record.

Source revisions

Component Revision Release role
Xodus legacy 7b236772297b3475ea4f3cb830feb5b224f3064a Reviewed v0.1 service, CLI, and social overlay
XGameRuntime legacy a1548b1cf57371715d10b608bc81a77a188e40d4 Reviewed v0.1 bridge
Wine controller source ddd302d97c6008d79ea4f3e3ad56014cb548e514 Experimental source proposal; not installed directly
Wine storage source a7719bd8d0719e5ea6061387db020fa6a6b39d27 Experimental compatibility source; not installed directly

The immutable v0.1.0 tag identifies the integration-repository revision.
The newer WineGDK/Xodus protocol pair is rejected live and is not part of this
profile.

Known limitations

  • Automatic incoming Xbox invite notifications are not supported. Invite and
    Join are explicit actions in the opened social picker.
  • Results are bound to the exact source revisions, locally recorded artifact
    hashes, game AppID, compatibility-tool layout, and tested system.
  • The standalone controller and storage Wine branches have green source
    compile/link evidence, but their PE tests remain blocked before dispatch by
    the known build-prefix initialization failure.
  • The storage branch reports a fixed compatibility capability; it is not a
    canonical host-device TRIM detector.
  • Future game, Microsoft service, Xodus, Wine, Proton, driver, or distribution
    changes can invalidate the result.

Installation boundary

This v0.1 release contains source and setup tools, not compiled components.
You build the open-source parts yourself and supply the Microsoft threading
runtime from a source you're licensed to use. No Microsoft DLL or game files
are included. This version's tools don't read, hash, copy, publish, or download
that separately supplied DLL.

Install as your regular user. Setup asks you to confirm the exact installation
plan before applying it. Xodus runs for the game session, not permanently in the
background. KDE Wallet works through Secret Service; GNOME Keyring isn't needed.

Rollback

Before acceptance, scripts/install-runtime-components rollback restores every
destination from the transaction journal. After acceptance,
scripts/install-runtime-components restore-runtime restores only the legacy
XGameRuntime pair while preserving the accepted user-local integration files.
See the manual install guide
for the commands and when to use them. Keep the journals and backups until
you've checked the installation; deleting them can prevent recovery.