Skip to content

[UX] Add proton-cachyos to the wine manager#5463

Open
arielj wants to merge 3 commits intomainfrom
add-proton-cachyos
Open

[UX] Add proton-cachyos to the wine manager#5463
arielj wants to merge 3 commits intomainfrom
add-proton-cachyos

Conversation

@arielj
Copy link
Copy Markdown
Collaborator

@arielj arielj commented Apr 5, 2026

This PR adds proton-cachyos as an option to download in the Wine Manager, this replaces #5424

The benefits of proton-cachyos are:

  • it updates more often
  • it includes DXVK alternatives though env variables (dxvk-sarek, d7vk, dxvk-low-latency)
  • it has more users in general since it's the default in cachyos, so issues are identified faster

I updated the releases-info repo to also check cachyos https://github.com/Heroic-Games-Launcher/releases-info/blob/main/release-data.json#L34

I'll add some extra notes in the diff

I think we can later add some feature for users to enable the DXVK alternatives from the UI without the need of env variables, but I think that would be out of the scope of this PR, we can instruct users to use the env variable.


Use the following Checklist if you have changed something on the Backend or Frontend:

  • Tested the feature and it's working on a current and clean install.
  • Tested the main App features and they are still working on a current and clean install. (Login, Install, Play, Uninstall, Move games, etc.)
  • Created / Updated Tests (If necessary)
  • Created / Updated documentation (If necessary)

@arielj arielj requested review from a team, CommandMC, Etaash-mathamsetty and flavioislima and removed request for a team April 5, 2026 13:43
@arielj arielj added the pr:ready-for-review Feature-complete, ready for the grind! :P label Apr 5, 2026
@arielj arielj requested review from biliesilva and imLinguin April 5, 2026 13:43
release_data.download = asset.browser_download_url
release_data.downsize = asset.size
// for proton-cachyos we want to always get the main x86 asset,
// the other logic sometimes gets the V3, V4 or arm asset incorrectly
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

proton-cachyos releases has many assets (arm and different x86 versions). The recommendation is to not use the V3/V4 assets since they may be less stable, we have to ensure we install the stable asset for x86


const configStore = new TypeCheckedStoreFrontend('wineManagerConfigStore', {
cwd: 'store'
})
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had to remove the use of this electron store because there's no way to update its stored value and it ignores new repositories added.

I understand this was saved in a store to not have to loop through the other OS repositories when rendering the tabs? but it's not really helping

@arielj arielj mentioned this pull request Apr 5, 2026
4 tasks
@tuananh
Copy link
Copy Markdown

tuananh commented Apr 7, 2026

@arielj from user's perspective, everything seems to work fine when testing.

  • on first load, when select proton-cachyos, the list doesn't seeem to automatically populated. i have to click refresh button.

}
if (any_gpu_supports_version([1, 1, 0])) {
logInfo(
'The GPU(s) in this system only support Vulkan 1.1/1.2, falling back to DXVK 1.10.3',
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This route shouldnt be called when using Proton. What's the intention here?
Do we want a separate feature for enabling this automatically for Proton CachyOS?

Copy link
Copy Markdown
Collaborator Author

@arielj arielj Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are calling DXVK.getLatest() when heroic opens (and it calls this internally), independent of what we have configured for a game, this prints in the general logs information for the user to know they have a GPU that does not support Vulkan 1.3+.

Then if they see that in the logs they know they have to use proton-cachyos instead of ge-proton.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is also called when running a game with wine I think when it installs DXVK, but I'm adding this information for that use case of the DXVK update when heroic is started

Copy link
Copy Markdown
Collaborator Author

@arielj arielj Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do think we should have something automated in another PR, yes, and make this more visible for the user, I opened an issue here #5425

We could even use this information to default to proton-cachyos with the dxvk-sarek env variable instead of ge-proton if the gpu does not support vulkan 1.3+, but I think all that would be a different feature (would mean moving this check somewhere more global to check once and reuse in other places and also the frontend)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:ready-for-review Feature-complete, ready for the grind! :P

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants