Skip to content

Update Vortex to 2.10.0 and ship .deb and .rpm packages - #34

Merged
Arkazzae merged 22 commits into
masterfrom
update-vortex-2.10.0
Nov 4, 2026
Merged

Arkazzae merged 22 commits into
masterfrom
update-vortex-2.10.0

Conversation

@Arkazzae

@Arkazzae Arkazzae commented Nov 4, 2026 •

Copy link
Copy Markdown
Owner

Vortex 2.10.0 broke patch 0002 in the nightly update (#33). This ports all 40 patches to 2.10.0 and brings in the deb-package branch, so 2.10.0-1 is the first release with a .deb and an .rpm.

Port:

  • 14 patches regenerated. 2.10.0 does part of our Linux work itself (volume lookup, staging folder suggestion), so 0003 and 0009 shrink.
  • Heroic, Lutris and Bottles stores use native promises, like the rest of 2.10.0's stores.
  • 2.10.0's new deployment backup and manifest code reads paths with node:fs directly, so config files deployed into a Proton prefix lost their .vortex_backup. 0029 maps those paths into the prefix again and records deployment times correctly on Linux.

After review:

  • The UI smoke check accepts 2.10's redesigned pages (id="page-…"); every package test timed out on it before.
  • The package test installs the package alone and checks its libraries before Xvfb, D-Bus and Python go in.
  • The ICU dependency accepts versions up to 99, so published packages keep installing after a distribution moves to ICU 81.
  • Importing an externally changed file no longer leaves .vortex-import in staging, where Vortex saw it as a new mod.
  • Wine processes no longer inherit DOTNET_ROOT pointing at the Linux .NET runtime.
  • Manifests from earlier Linux builds get their times repaired, and a backup named in another case is no longer overwritten.

Also:

  • Game extensions that use Node's fs directly find files in Documents and AppData where vortex-api's fs puts them, in the game's prefix. The Witcher 3 couldn't save mods.settings because of this.
  • The README lists the Linux fixes Vortex 2.10 brings itself.

Fixes #33

Vortex reports a missing .NET in its window, so grepping stdout for it never failed.
One script now builds the .deb and the .rpm from the same staged tree, and the smoke test installs either with apt, dnf or zypper.
The self-test now runs without a display: Wine 11 stalls creating a prefix under Xvfb.
All artifacts are tested in one matrix job, and the release upload takes every downloaded file.
A minimal openSUSE has no fonts, and Vortex then shows an empty window.
Vortex 2.10.0 has its own getVolumePath and moved the game stores to native
promises, so 0003 and 0009 shrink and the Heroic, Lutris and Bottles stores
follow. Its new backup and manifest code reads deployment paths with node:fs
directly; 0029 maps them into the Wine prefix and records turbowalk's Linux
mtimes in milliseconds.
The Games page Vortex 2.10 opens on renders id="page-<id>" instead of
.main-page-inner, so every package smoke test timed out. A page that failed
to render no longer counts as ready.
Xvfb, D-Bus and Python came in the same transaction as the package and could
hide a missing dependency from the ldd check.
The dependency listed ICU 74 to 80, so a published package would stop
installing once a distribution moves to ICU 81. .NET loads newer ICU itself.
Importing a file changed outside Vortex copied it through .vortex-import in
the staging folder and never removed it, so Vortex offered it as a new mod.
The AppImage and the packages set DOTNET_ROOT for Vortex itself, and a Windows
.NET program started through Wine looks there for hostfxr.dll.
Manifests from earlier Linux builds hold times a thousand times too large,
which Vortex 2.10 reads as replaced files. A backup named in another case was
overwritten instead of stopping the deployment.
Repository owner deleted a comment from chatgpt-codex-connector Bot Nov 4, 2026
Repository owner deleted a comment from chatgpt-codex-connector Bot Nov 4, 2026
The Witcher 3 extension writes mods.settings through vortex-api's fs and then
renames it with node:fs/promises, so the file landed in the prefix while the
rename looked for it on the host.
Removed the 'Games tested (confirmed working)' section from the README.
@Arkazzae
Arkazzae merged commit a218475 into master Nov 4, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[CI] Automatic Vortex update failed

1 participant