dynobo / normcap

OCR powered screen-capture tool to capture information instead of images
https://dynobo.github.io/normcap/
Other
1.83k stars 91 forks source link

Provide NormCap for macOS via Homebrew #243

Open dynobo opened 1 year ago

dynobo commented 1 year ago

It would be really nice to have the NormCap pre-build package available via Homebrew. This should be possible (and not too complicated?) by creating a "Cask".

Hopefully, this would be much simpler than installing the dmg manually, and it might be also possible to configure the correct permissions (open unsigned app; screenshots) during the installation.

I myself don't have enough time for this (also, I only have a macOS VM, which is quite cumbersome to develop on), so I'd really appreciate if someone else could take this issue :slightly_smiling_face:

thecoder-001 commented 1 month ago

Hi! Unfortunately https://github.com/Homebrew/homebrew-cask requires apps to be code-signed & notarized to be accepted.

$ brew audit --new --cask normcap
[...]
audit for normcap: failed
 - Signature verification failed:
/private/tmp/cask-audit20240525-16619-s9cz9m/NormCap.app: rejected

macOS on ARM requires software to be signed.
Please contact the upstream developer to let them know they should sign and notarize their software.
thecoder-001/normcap/normcap
  * line 8, col 2: Signature verification failed:
    /private/tmp/cask-audit20240525-16619-s9cz9m/NormCap.app: rejected

    macOS on ARM requires software to be signed.
    Please contact the upstream developer to let them know they should sign and notarize their software.
Error: 1 problem in 1 cask detected.

So for now I have instead created a homebrew tap for normcap at https://github.com/thecoder-001/homebrew-normcap. Maybe move the tap under your account to make it trustworthy & accept update PRs from others there? Cheers

Edit: I have added postflight hook to allow unsigned normcap app to launch directly. Not possible to grant screen recording permission though as macOS doesn't allows changing it from anywhere except the gui.