-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatibility rework 2 #64
base: main
Are you sure you want to change the base?
Conversation
* WineStartupType (enum) -> IsManagedWine (bool)
* got rid of #if FLATPAK * got rid of #if WINE_XIV_DISTRO for wine packages * added a few UI tweaks
…nd leave custom wine
* Move to CoreEnvironmentSettings so it only gets called once per session
d4df579
to
48ac1d9
Compare
This should fix auto-merging.
Updated for the XL.Common.Unix merge. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Conceptually I find it makes more sense to have OSInfo
live in XIVLauncher.Common
(this also gets rid of passing around that extra Flatpak bool).
Given that XL changes are rather hard though, it might be worth to put it for now into something like XIVLauncher.Common2
, which would also allow to extend the existing interface more easily in the future (including auto-launch features)
Honestly, OSInfo could just be renamed DistroInfo, because that's all it's really doing. Yeah, it has checks for other OSes, but those aren't actually used for anything. It could just as easily be an IsLinux bool instead of an a platform enum. As for the flatpak bool, tbh it's not used for anything either. I mainly added it just in case, but never found any reason to use it in CompatibilityTools. All of the flatpak stuff has to be worked out before it gets passed to CompatibilityTools anyway. |
If the Flatpak bool is truly not needed, then it should probably just be removed honestly. But even as DistroInfo it does make much more sense to have it conceptually there (and could for example greatly simplify In this MR as it is right now, it is used however much more like a more advanced |
Replacement compatibility rework to go with PR goatcorp/FFXIVQuickLauncher#1366.
This allows for the selecting of different wine versions, different dxvk versions, and hud options to all be managed on the XL.Core side. The values are then passed to CompatibilityTools. This primarily allows for updating wine or dxvk without touching XL.Common.Unix.
Replaces #59
Here's a flatpak of the launcher, for testing: https://github.com/rankynbass/XIVLauncher.Core/releases/tag/compatrework-v2