JagandeepBrar / lunasea

Self-hosted software controller built using Flutter
https://www.lunasea.app
GNU General Public License v3.0
1.28k stars 63 forks source link

[Other] Allow Appstore Install on M1 Macs #304

Closed MrRobot245 closed 3 years ago

JagandeepBrar commented 3 years ago

I had to disable M1 support until Flutter, the framework being used, adds proper support for mice into the framework.

Currently you need to drag and drop the mouse to scroll, and the overall experience isn't very smooth.

MrRobot245 commented 3 years ago

Thats fair, I side loaded with iMazing but I really only use it for adding content in a unified app. Hopefully flutter is updated soon, but its pretty usable as is!

flying-sausages commented 3 years ago

Hit us up if you need some usability tests there. It's quite annoying to distribute IPA bins at this moment, so a nice write-up for how to build from source will be essential if this is to get tested. Eventually there will be TestFlight support, but who knows when and how.

flying-sausages commented 3 years ago

I'm also assuming this could essentially be be a duplicate/dependent on #206?

JagandeepBrar commented 3 years ago

Hit us up if you need some usability tests there. It's quite annoying to distribute IPA bins at this moment, so a nice write-up for how to build from source will be essential if this is to get tested. Eventually there will be TestFlight support, but who knows when and how.

Thanks for offering! I don't currently have an M1 Mac, so I'll definitely reach out for testing once it's ready. There are IPAs available directly on the releases page, but yeah I'll be writing out a more clear-cut step-by-step on how to build LunaSea in the near future!

I'm also assuming this could essentially be be a duplicate/dependent on #206?

I would say #206 is a sub issue, but I'll keep them separate as there could be more issues that come to light for M1 support other than just proper scrolling support. That issue was originally for iPads, so they do have some degree of separation.

Hopefully flutter is updated soon, but its pretty usable as is!

Yeah, but I do feel that the scrolling issue alone is enough to block the release for now. It could negatively impact people's impressions of the app if they first install it on their Mac machine.

IPAs will always be released with every build, so for users who want to get it it should be really straight forward to get it up and running in the current state.

flying-sausages commented 3 years ago

There are IPAs available directly on the releases page

Those won't work as there is currently no way to self-sign an IPA for a use on the M1, or at least I haven't seen a way to do it.

flying-sausages commented 3 years ago
image

P.S: the standard xattr changes, right-click workarounds or security preferences whitelisting does not work. I doubt disabling SIP would make this work as well. This works the same way like it does on iOS, it will try verify the app against the AppStore API

P.P.S: "Sideloading" from iOS devices is enabled again, but it will only install the version of the application that the device is storing. i.e. if there is a different "target" for MacOS, that one will not be used as it was not present on the iOS Device, which would be either the iPad target or the iPhone target. I actually assume that Flutter doesn't work with these and is a generic target instead, so this might be a non-issue.

JagandeepBrar commented 3 years ago

P.S: the standard xattr changes, right-click workarounds or security preferences whitelisting does not work. I doubt disabling SIP would make this work as well. This works the same way like it does on iOS, it will try verify the app against the AppStore API

Could you try downloading the build directly from CodeMagic (the CI): https://codemagic.io/app/5ef3424e03ad6b478a268d4c/build/60035f0b29657a3248ca3144

It should be the same IPA however, as I just download that IPA and then re-up it to GitHub.

CodeMagic signs and directly uploads to App Store Connect, so it should be a valid, signed IPA. I was under the impression that IPAs could be directly installed with relative ease, but I again have no actual experience with it.

flying-sausages commented 3 years ago
image

Same thing. It's esentially the same as trying to install an IPA on an iOS device where the developer profile is not present, and the app does not match it. Unless we'd have your developer profiles installed on our machines, I don't think this will work from the bins.

JagandeepBrar commented 3 years ago

@flying-sausages could you try using this method of using Apple Configurator to extract the IPA from your mobile device?

https://www.iphoneincanada.ca/news/how-to-install-ios-apps-on-mac-tutorial/

JagandeepBrar commented 3 years ago

This issue is going to be closed in favour of the native macOS builds that will be arriving soon.

I will add another comment when a signed/notarized native build is available, which will be within the next few days!

JagandeepBrar commented 3 years ago

https://www.reddit.com/r/LunaSeaApp/comments/mpgipt/try_the_macos_alpha_client/

Look above for some information on the macOS client, with a build available under the Releases section of the repo :)

aniqueta commented 2 years ago

@JagandeepBrar Flutter 3 released with Apple Silicon support. :)

JagandeepBrar commented 2 years ago

@aniqueta starting with the next stable release (and the current newest edge/beta/candidate releases), the macOS binary will be a universal Intel/ARM application!