eXpl0it3r / streamdeck-clockify

Clockify Action for the Elgato Stream Deck
MIT License
46 stars 8 forks source link

MacOS version #4

Closed frunika closed 2 years ago

frunika commented 2 years ago

Hey Lukas,

thank's for your work! I hope you will continue to work on this plugin :)

Sadly, the plugin won't work on MacOS. Stream Deck Software reports, that "This custom action can't be installed on this operating system"

image

I'm happy to help developing an maintaining this plugin, if you need and want help :)

eXpl0it3r commented 2 years ago

Yes, macOS support has been in the back of my head. As it's currently built with .NET 5 I'll have to investigate, what is required to get things compatible.

If you have experience in that area, I'd be more than happy to receive some help. 🙂

I do have access to Apple devices, but haven't really done anything with .NET on macOS 😅 Not developed anything for Stream Deck on macOS (yet)

eXpl0it3r commented 2 years ago

Will also have to make sure that the "smaller" third-party libraries work correctly on macOS

The alternatively would be to move everything to JavaScript instead 😅

eXpl0it3r commented 2 years ago

Got some tips on how to approach this. Apparently once an just store both macOS and Windows versions side by side, which make things larger, but also easier, as I wouldn't have to build a cross-platform application.

frunika commented 2 years ago

Sound like a first way to go. Unfortunately I'm barely experienced with .NET and its universe :( An neither have experience with Steam Deck apps :D

Maybe I'm at least able to help specify new features and do some research about the API stuff

frunika commented 2 years ago

Let me know if there is something to do, test or document

eXpl0it3r commented 2 years ago

Just a brief progress update

I've spent quite some time trying to get the plugin working on macOS. I got it to compile and could package it and even install it on the Stream Deck on macOS, but for some unexplainable reason the WebSocket connection between the Stream Deck & the plugin fails/disconnects. Unfortunately the developer of Bar Raider's SDK Tools also didn't know what's going on.

The next step is to build the underlying streamdeck-connection-client and SDK tools manually, so I can add additional logging to understand what is actually going on. I guess the alternative would be to somehow debug it, but I don't know how to do this effectively, as the plugin shuts down rather quickly, so attaching to the process can be tricky.

frunika commented 2 years ago

Thanks for the update! Sounds annoying... :(

frunika commented 2 years ago

Hey Lukas,

how is it going? Any success in debugging?

eXpl0it3r commented 2 years ago

Nope, unfortunately I didn't invest any additional time for now. Might find a slot this evening. 😉

eXpl0it3r commented 2 years ago

Had to drill open the streamdeck-client-csharp library and found the issue, which I should have known about since the beginning, as I was told to include the runtime.osx.10.10-x64.CoreCompat.System.Drawing package from the start and since it compiled without it, I thought I would be fine...

Now looking into clean this up and seeing how I can package the plugin that works on both Windows and macOS.

eXpl0it3r commented 2 years ago

Just published the 1.4 release that should be compatible with Windows and macOS. Let me know if it works!

https://github.com/eXpl0it3r/streamdeck-clockify/releases/tag/1.4

frunika commented 2 years ago

I'm excited 😆

Will test it asap!

eXpl0it3r commented 2 years ago

Does it work? 😅

frunika commented 2 years ago

whoops :)

Had to setup my stream deck in the new office first...

First look: it works!

Thank you!

eXpl0it3r commented 2 years ago

Woho! 🥳

Glad to hear 🙂