https://bugs.winehq.org/show_bug.cgi?id=56914
Bug ID: 56914 Summary: PowerToys 0.82.0 fails to install Product: Wine Version: 9.12 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: alexhenrie24@gmail.com Distribution: ---
Created attachment 76734 --> https://bugs.winehq.org/attachment.cgi?id=76734 Terminal output
The PowerToys installer displays "Processing: Microsoft Edge WebView2" for about a minute, then says "0x80070643 - Installation failure."
In the terminal output, Wine prints errors about several missing WinRT libraries:
Windows.System.Diagnostics.Telemetry.PlatformTelemetryClient Windows.System.UserProfile.AssignedAccessSettings Windows.Data.Json.JsonObject
I'm guessing that the lack of Windows.Data.Json.JsonObject is the problem.
$ sha256sum PowerToysSetup-0.82.0-x64.exe 01b59c00bb43c25befef274755875717ab4deab57c0354ab96cf5b1da4837c9a
https://bugs.winehq.org/show_bug.cgi?id=56914
Alex Henrie alexhenrie24@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://github.com/microsof | |t/PowerToys/releases/downlo | |ad/v0.82.0/PowerToysSetup-0 | |.82.0-x64.exe Keywords| |download, source
https://bugs.winehq.org/show_bug.cgi?id=56914
Alex Henrie alexhenrie24@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|PowerToys 0.82.0 fails to |PowerToys 0.82.0 fails to |install |install (missing WinRT | |class | |Windows.Data.Json.JsonObjec | |t)
https://bugs.winehq.org/show_bug.cgi?id=56914
Mohamad Al-Jaf mowinebugs@mail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mowinebugs@mail.com
--- Comment #1 from Mohamad Al-Jaf mowinebugs@mail.com --- Created attachment 76739 --> https://bugs.winehq.org/attachment.cgi?id=76739 Implement Windows.Data.Json.JsonObject
Hi Alex,
Thanks for the instructions. Yeah, it requires Windows.Data.Json.JsonObject. FWIW, this is also needed by Adobe Premiere Pro 2024.
I've added a patch that lets it successfully install. It's probably not the right way of doing it, but I'll fix it up later and create an MR.
https://bugs.winehq.org/show_bug.cgi?id=56914
--- Comment #2 from Mohamad Al-Jaf mowinebugs@mail.com --- (In reply to Mohamad Al-Jaf from comment #1)
Thanks for the instructions.
Whoops, never mind that, I got confused between this and https://bugs.winehq.org/show_bug.cgi?id=56916. lol
https://bugs.winehq.org/show_bug.cgi?id=56914
--- Comment #3 from Alex Henrie alexhenrie24@gmail.com --- (In reply to Mohamad Al-Jaf from comment #1)
I've added a patch that lets it successfully install. It's probably not the right way of doing it, but I'll fix it up later and create an MR.
Wow, that was fast, thank you! I find writing WinRT classes daunting because they require so much boilerplate code. Do you have a tool to generate the boilerplate code automatically?
https://bugs.winehq.org/show_bug.cgi?id=56914
--- Comment #4 from Mohamad Al-Jaf mowinebugs@mail.com --- In this case, I was already familiar with the header and its housing DLL because I was looking to implement it for Adobe Premiere Pro. Testing it out with this small program is much faster though, so that helped speed up the process, thanks for that.
I thought about writing a tool to generate the boilerplate code, but I never got around to it. Though, just searching and replacing is fast enough for me. Also, for me, the most daunting part are the headers. They often have multiple dependencies, which can get quite tedious. Automating this part would save most of the time.
MR: https://gitlab.winehq.org/wine/wine/-/merge_requests/5992
https://bugs.winehq.org/show_bug.cgi?id=56914
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
--- Comment #5 from Fabian Maurer dark.shadow4@web.de --- MR is merged, is this fixed now?
https://bugs.winehq.org/show_bug.cgi?id=56914
--- Comment #6 from Alex Henrie alexhenrie24@gmail.com --- (In reply to Fabian Maurer from comment #5)
MR is merged, is this fixed now?
No, merge request !5992, large as it was, did not include all of the necessary patches. There are still several attached to this bug that need to be cleaned up and submitted.
https://bugs.winehq.org/show_bug.cgi?id=56914
--- Comment #7 from Mohamad Al-Jaf mowinebugs@mail.com --- This still needs a bit of work. After IJsonValue::CreateStringValue() it calls
IJsonObject::SetNamedValue() IJsonObject::GetNamedString() IJsonValue::Parse()
That's just the setup. The app itself needs IJsonObjectWithDefaultValues.
I'm not sure if any of these functions need a full implementation. It doesn't seem like this class is critical for normal operation, but for logging from the looks of it?
Some lines from the app:
0530:trace:web:json_value_statics_CreateStringValue iface 00006FFFFDC15078, input L"trace", return_value 00007FFFFF80ED98 0530:trace:web:json_value_statics_CreateStringValue created IJsonValue 00007FFFFF42BB20. 0530:trace:web:json_object_statics_SetNamedValue iface 00007FFFFF42BAC0, name L"logLevel", value 00007FFFFF42BB20 stub! 0530:trace:web:json_value_Release iface 00007FFFFF42BB20 decreasing refcount to 0. 0530:trace:web:json_object_statics_QueryInterface iface 00007FFFFF42BAC0, iid {a3219ecb-f0b3-4dcd-beee-19d48cd3ed1e}, out 00007FFFFF80EEE8. 0530:trace:web:json_object_statics_AddRef iface 00007FFFFF42BAC0, ref 2. 0530:trace:web:json_value_Stringify iface 00007FFFFF42BAC8, value 00007FFFFF80EEF0 0530:trace:web:json_object_statics_Release iface 00007FFFFF42BAC0, ref 1. 0530:trace:web:json_object_statics_AddRef iface 00007FFFFF42BAC0, ref 2. 0530:fixme:web:json_object_statics_GetNamedString iface 00007FFFFF42BAC0, name L"logLevel", value 00007FFFFF80EEF8 stub!