ZacharyL2 / KeyEcho

Listen to Mechanical Keyboard Sounds with Every Keystroke - It's Fast
GNU Affero General Public License v3.0
465 stars 10 forks source link

mac error: "Keyecho is damaged and should be moved to trash" #3

Closed jatins closed 1 week ago

jatins commented 3 weeks ago

tried via the latest dmg release[0] and got this error when trying to run.

[0] https://github.com/ZacharyL2/KeyEcho/releases/tag/v0.0.2

ZacharyL2 commented 3 weeks ago

This issue is because KeyEcho isn't code-signed for macOS yet. Please choose "Open Anyway" in "Security & Privacy".

feep commented 3 weeks ago

As mentioned on HN, Mach-O 64-bit executable arm64 does not open.

I have not tried the amd64 as that poster did.

This is what I get, using KeyEcho_aarch64.app.tar.gz v0.0.2, not the dmg:

❯ file ./KeyEcho.app/Contents/MacOS/KeyEcho
./KeyEcho.app/Contents/MacOS/KeyEcho: Mach-O 64-bit executable arm64

# open (or right click open from Finder) gives this dialog: `“KeyEcho.app” is damaged and can’t be opened. You should move it to the Trash.`

❯ open ./KeyEcho.app
The application cannot be opened for an unexpected reason, error=Error Domain=NSOSStatusErrorDomain Code=-128 "userCanceledErr" UserInfo={_LSLine=4129, _LSFunction=_LSOpenStuffCallLocal}

# `"userCanceledErr"` is from clicking cancel in that dialog.

# Oddly, running it this way works fine. No idea why.

❯ ./KeyEcho.app/Contents/MacOS/KeyEcho

That’s all I know. Just pasting it in case you don’t have access to an ARM Mac.

niklaskorz commented 3 weeks ago

Remove the quarantine flag, then you can right-click open it:

xattr -d com.apple.quarantine KeyEcho.app
feep commented 3 weeks ago

xattr -d com.apple.quarantine KeyEcho.app

This works. It opens. Didn’t try right click, but didn’t need to, since the quarantine is gone.

Now it pops the Input Monitoring dialog and works correctly after granting. Works when quit and reopened.

Right click without xattr... does not work.

The damaged dialog box is weird. Don’t know how to fix the problem, but this workaround works.

❯ xattr -d com.apple.quarantine KeyEcho.app

❯ open KeyEcho.app
ZacharyL2 commented 3 weeks ago

@feep Thank you for the feedback. I'll look into it.

By the way, did you deny the "Input Monitoring" dialog when you first opened the application?

feep commented 3 weeks ago

Note: this issue does not affect me. No rush. I am just providing feedback.

Do you have an ARM mac, @ZacharyL2?

did you deny the "Input Monitoring" dialog when you first opened the application?

Nope. First thing on any open method is the “KeyEcho.app” is damaged and can’t be opened.... dialog. Including right-click.

ZacharyL2 commented 3 weeks ago

@feep I don't have an ARM MacOS, and it seems unlikely that I can emulate it. Could you help test it?

Clone  -> pnpm i -> pnpm tauri dev

In theory, this ARM MacOS package is built by tauri-action in the corresponding system environment, so it should not be usable on x86_64 but not on aarch64.

feep commented 3 weeks ago

it seems unlikely that I can emulate it.

Nope.

Could you help test it

Yes.

Don’t know when I will be able. If any other ARM owners want to give it a shot earlier, that would help.

However:

This looks like your issue.

Yup, that’s you. Look at the mentions at the bottom.

If I try, I will add "signingIdentity": "-" to tauri.config.json (or maybe tauri.macos.conf.json).

ZacharyL2 commented 2 weeks ago

@feep Thanks for mentioning it. I have made the changes in v0.0.3.

feep commented 2 weeks ago

Fixed for me.

Right click > Open in finder pops the dialog to allow from unknown dev (whatever it says).

Only tested with KeyEcho_aarch64.app.tar.gz.

Close, or wait for a confirmation from another ARM user.

As far as I am concerned, it is closed.

ZacharyL2 commented 1 week ago

To centrally address issues caused by unsigned code, I have opened a new issue #18. Please continue to raise any questions there. I will close this issue. Thank you for your contribution!