On dev, CommandLineFileOpenPatch works around ProcessCommandLineArguments because SharedStorageAccessManager "doesn't exist in Wine". CanvaSignInPatch adds a paste-URL box because the affinity:// handler "doesn't work under Wine". In my tests the method compiles once the prefix has the right files:
| Prefix |
JIT of ProcessCommandLineArguments |
Wine 10.10, winetricks dotnet48 only |
FileNotFoundException: Windows.Foundation.UniversalApiContract |
Wine 10.10, + WinMetadata |
FileNotFoundException: System.Runtime.WindowsRuntime |
Wine 10.10, + WinMetadata + WinRT facades |
compiles |
| Wine 11.12, + WinRT facades |
TypeLoadException: SharedStorageAccessManager |
Wine 11.12, + WinRT facades + Windows WinMetadata + native wintypes.dll |
compiles |
winetricks dotnet48 does not install the facades. Steps to add them: seapear/AffinityOnLinux#83 (comment).
On Wine 10.10 with these files, a handler that runs Affinity.exe directly completes the sign-in. With APL and WineFix 0.3.0 I only tested forwarding through AffinityHook.exe: the running Affinity stays up, and without the facades it crashes with FileNotFoundException. Tested on Ubuntu 26.04 with Affinity 3.3.0.4850 and ElementalWarrior Wine builds. On Wine 11.12 I only compiled the method. Not tested with the dev patches.
Would it make sense for WineFix to skip these patches when the method compiles, or to point to the facades in the docs?
On
dev, CommandLineFileOpenPatch works aroundProcessCommandLineArgumentsbecauseSharedStorageAccessManager"doesn't exist in Wine". CanvaSignInPatch adds a paste-URL box because theaffinity://handler "doesn't work under Wine". In my tests the method compiles once the prefix has the right files:ProcessCommandLineArgumentswinetricks dotnet48onlyFileNotFoundException:Windows.Foundation.UniversalApiContractWinMetadataFileNotFoundException:System.Runtime.WindowsRuntimeWinMetadata+ WinRT facadesTypeLoadException:SharedStorageAccessManagerWinMetadata+ nativewintypes.dllwinetricks dotnet48does not install the facades. Steps to add them: seapear/AffinityOnLinux#83 (comment).On Wine 10.10 with these files, a handler that runs
Affinity.exedirectly completes the sign-in. With APL and WineFix 0.3.0 I only tested forwarding throughAffinityHook.exe: the running Affinity stays up, and without the facades it crashes withFileNotFoundException. Tested on Ubuntu 26.04 with Affinity 3.3.0.4850 and ElementalWarrior Wine builds. On Wine 11.12 I only compiled the method. Not tested with thedevpatches.Would it make sense for WineFix to skip these patches when the method compiles, or to point to the facades in the docs?