amo13 / Anarchy-Droid

One-Click Android Rom Installation Assistant
https://anarchy-droid.com
GNU General Public License v3.0
113 stars 15 forks source link

Unable to Open on M1 Mac #36

Closed IdleEndeavor closed 1 year ago

IdleEndeavor commented 1 year ago

I use an M1 MacBook Air It shows the error 'This Application can't be opened' I've run it from the Downloads folder and by dragging it to Applications too.

amo13 commented 1 year ago

Thanks for reporting. This is a duplicate of #28.

I'd like to help but I need more info about this: I'd be thankful if you could launch the app from a terminal, so we can see some debugging output.

IdleEndeavor commented 1 year ago

This is the output when using the 'open' command to run the app from the Terminal

The application cannot be opened for an unexpected reason, error=Error Domain=RBSRequestErrorDomain Code=5 "Launch failed." UserInfo={NSLocalizedFailureReason=Launch failed., NSUnderlyingError=0x600000d819e0 {Error Domain=NSPOSIXErrorDomain Code=111 "Unknown error: 111" UserInfo={NSLocalizedDescription=Launchd job spawn failed}}}

amo13 commented 1 year ago

Thank you for the follow-up. I am not quite sure about what causes this issue. A quick search makes me think it might have something to do with code signing.

Since I am preparing for an important final exam in six weeks and a group trip to France after that, it might take some time and patience before I actually can get to this.

Feel free to try whatever might work by yourself though. I don't have a M1 Mac to test anyway. My first approach would be to clone the repo, update all the dependencies, especially fyne and grab the new compiled binaries from the github build pipeline. You might need to resolve minor things if the build pipeline fails for some reason with updated dependencies.

dlly11 commented 1 year ago

I have left a comment in #28

gokhantuna commented 1 year ago

there is a workaround working on my MacBook Pro 2019 w/ Intel Core i9 hope it works for you.

amo13 commented 1 year ago

Thank you for the comment @gokhantuna. If I am not mistaken, die M1 Mac has got an Arm processor which is a different architecture than the more common x86_64 processors. If the M1 Mac has no emulation layer for x86_64 binaries, I guess we will have to try and compile a version of Anarchy-Droid for Arm processors. Go should support this, but we will have to look into fyne and see what needs to be done to actually make the compilation work. Setting up a github action for this should probably be the first thing to try. My free time is still scarce, but anyone can fork the repo and try to set up a github action similar to the normal MacOS one.

LeeBinder commented 1 year ago

@gokhantuna's work-around confirmed working in macOS Monterey on an Intel Mac.

@amo13 you simply need to set the permission of the binary inside the app correctly to begin with .. ;)

amo13 commented 1 year ago

I am not sure how I would implement this. The build pipeline simply calls fyne package which creates the macOS app. Is this maybe an issue with fyne? Unfortunately, I have no Mac to debug and test...

I (and probably also others) would be grateful, if a M1/2 Mac-user could fork the repo and tinker a bit with the build process. I guess I'd update the project to the latest dependencies (especially fyne) as a first try.

LeeBinder commented 1 year ago

@amo13 FYI, in v1.3.0 and below, the chmod +x permission on the binary inside the package was set correctly. If you didn't change anything then yes, very most likely changed in the automated build pipeline system.

Again, I'm on Intel, so this is not Apple Silicon specific.

Wish I could be of more help with this. But I bet other devs here on GH experienced the same issue, and the solution already exists and just has to be hunted down and applied :)

amo13 commented 1 year ago

I've added a chmod +x to the MacOS build pipeline.

Hopefully the issue is now gone. Please reopen if not.

LeeBinder commented 1 year ago

sorry to report, @amo13 , but the issue persists. Am on an Intel Mac. I double-checked the version number of the unzipped Anarchy-Droid.app - v.1.4.2.

After applying chmod +x to the binary, the app again runs as it should, so it's definitely still the same issue :(

amo13 commented 1 year ago

Thank you for double-checking. Apparently, github removes the executable bit on the binaries uploaded as release files. Still, after downloading and doing chmod +x and reuploading, it looks like the executable bit set inside the zipped macOS app is kept. Could you please try again with the zip in the latest release?

But I don't understand why the executable bit set inside the build pipeline is not kept...

LeeBinder commented 1 year ago

👍 thanks Amaury, confirmed - your manually treated 1.4.2 zip launches and works fine (macOS Monterey, Intel).

Smells very much like a bug in the fyne system worth reporting to them.

amo13 commented 1 year ago

Thanks!