Shame on you, Homebrew, for effectively killing FOSS apps from casks.

top 54 comments

sorted by: hot top controversial new old
[–] 72 points 1 year ago

removing macOS Gatekeeper bypass behaviours

dafuq? That's basically the entire point

So yeah, there will be a fork soon that's just compatible with the casks. Luckily that is very easily to do / manage

  • source
  • [–] 49 points 1 year ago*

    Et tu brewtus?

  • source
  • [–] 45 points 1 year ago* (last edited 1 year ago) (9 children)

    Their explanation as to why:

    --no-quarantine is used to forcibly bypass Gatekeeper, which is a built-in macOS security mechanism. This is used to run unsigned/unnotarized applications.

    macOS Tahoe is the final release to support Intel systems, and last year Apple updated macOS runtime protection to make it harder to override Gatekeeper. Macs with Apple silicon also don't "permit native arm64 code to execute unless a valid signature is attached". Finally, we are ending support for all casks that fail Gatekeeper checks on September 1st, 2026.

    With the above in mind, it's time to deprecate the --no-quarantine flag from brew. It intentionally bypasses macOS security mechanisms, which we already actively discourage. Deprecating now will give a decent lead time for users using it to come up with another solution or adjust their workflows.

  • source
  • hideshow 9 child comments
  • [–] 32 points 1 year ago (8 children)

    Deprecating now will give a decent lead time for users using it to come up with another solution or adjust their workflows.

    The adjusted solution/workflow: use something other than homebrew

  • source
  • parent
  • hideshow 8 child comments
  • [–] 13 points 1 year ago (5 children)

    How will these other solutions bypass Apples quarantine?

  • source
  • parent
  • hideshow 5 child comments
  • [–] 22 points 1 year ago* (last edited 1 year ago) (4 children)

    By doing what homebrew currently does when you pass the --no-quarantine flag, which is call xattr.

    Note that I'd probably support removing --no-quarantine if Apple's notarization service was free.

  • source
  • parent
  • hideshow 4 child comments
  • [+] 12 points 1 year ago (3 children)
  • [–] 8 points 1 year ago* (2 children)

    Yes, but you can still compile the code yourself. It's only problematic for binary distribution. This is basically a question of balancing security vs. freedom I suppose.

  • source
  • parent
  • hideshow 2 child comments
  • [+] 1 point 11 months ago (1 child)
  • [–] 0 points 11 months ago

    Difference is compiling an app from source for Android is not really feasible on Android devices, whereas doing so on macOS is literally built into the package managers for macOS and is generally pretty trivial beyond it taking more time.

    Also, macOS doesn't prevent you from running the apps entirely.

  • source
  • parent
  • [–] 35 points 1 year ago (2 children)

    Heh, there goes Librewolf's only sane updating mechanism. IIRC, the devs of that are vehemently against paying Apple the money to sign the code, and they also fail to provide their own updater. It was one of the main drivers behind my switch to Waterfox.

  • source
  • hideshow 2 child comments
  • [–] 26 points 1 year ago

    The unsigned (FOSS) Apps aren't removed yet. They will be removed by 2026-09-01. Removing --no-quarantine before that seems counter productive. And quite frankly removing unsigned Apps at all seems like a stupid idea. Homebrew is a third party package mamager, why are they precapitulating to Apple?
    Third party taps (or are they fourth party?) will step in. You can run xattr -d com.apple.quarantine in the .rb file.

    Relevant links.

  • source
  • [–] 22 points 1 year ago

    https://github.com/Homebrew/brew/issues/20755#issuecomment-3330984446

    In the end, the whole point of Gatekeeper is to protect end users as much as reasonable, and continuing to make it easy to bypass isn't a good thing in my view.

    Whole point of Gatekeeper is Apple policing users’ devices. The security benefit is just a side effect. If anything, users need to be protected from Apple more than small time hackers.

    This is a shame. Big tech brain is affecting developers everywhere.

    Controversial opinion: best way to learn fire will burn you is to try and see. I personally learned a lot about computers by infecting my machine with a shitton of malware when I was a kid. Modern parents are very adamant on letting kids run free and learn stuff by themselves, why not apply the same logic to computers?

  • source
  • [–] 22 points 1 year ago (2 children)
  • [–] [S] 21 points 1 year ago* (last edited 1 year ago)

    Yes and no. Yes, it has to be signed, but no, it doesn't have to be Apple's signing, it can be ad-hoc signed for the device programmatically. What they're doing is that removing that ability to remove quarantine bits and ad-hoc signing on installation and forcing everything to be Apple-signed.

    EDIT: Ad-hoc signing is compile-time. Quarantine bit just has to be removed at install-time.

  • source
  • parent
  • [+] 1 point 1 year ago (1 child)
  • [–] [S] 18 points 1 year ago* (last edited 1 year ago)

    100% their fault since there's a way to ad-hoc sign and run, and they're removing it and sucking Apple's dick.

    EDIT: and there's even an example found in one of this post's comment of a 3rd party cask doing that in preparation of complete flag removal from Homebrew!

  • source
  • parent
  • load more comments (-1 replies)
    [–] 11 points 1 year ago (4 children)

    I never understood what a "cask" in the brew lanuage means. I just do installs and if the brew install instructions involves a cask I just do it. How do I figure out which packages this will have an effect on on my system?

  • source
  • hideshow 4 child comments
  • [–] 4 points 1 year ago (2 children)
    brew list --cask
    

    I think they've started flagging unnotarized apps as (deprecated), so maybe do a brew info on each.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 28 points 1 year ago (6 children)

    But I thought Mac was just Linux for people who loved to spend money... Seems on brand to me.

  • source
  • hideshow 6 child comments
  • [–] [S] 2 points 1 year ago (2 children)

    That's why I buy Macs! /hj (Though I do install and use Arch BTW on my M2 MacBook Air)

  • source
  • parent
  • hideshow 2 child comments
  • [–] 36 points 1 year ago (13 children)

    May be a sign to install Linux 😏 brew sucks anyways

  • source
  • hideshow 13 child comments
  • [–] 24 points 1 year ago (7 children)

    I'm stuck with it at work. Plus Linux usually sucks on Mac for a long time while drivers get written

  • source
  • parent
  • hideshow 7 child comments
  • [–] -1 points 1 year ago (2 children)

    I feel you. Once I was forced to code on a mac too. It made me insane ☠️

  • source
  • parent
  • hideshow 2 child comments
  • [–] 31 points 1 year ago (1 child)

    True but I desperately need no compatibility, closed source, AppleCare, expensive hardware, limited lifespan, lock in .... What did you call it Linux?

  • source
  • parent
  • hideshow 1 child comment
  • [–] 4 points 11 months ago

    It's crazy how bad software compatibility on macos is. I used to assume it was about the same or slightly better than linux in that regard, but my attempts to help my friend play games on macos have almost entirely failed despite the fact that I have tons of experience playing games on linux since it's always been my main os

  • source
  • parent
  • [–] 4 points 1 year ago (2 children)

    If Brew sucks, why is it the preferred package manager for CLI tools in Bazzite?

  • source
  • parent
  • hideshow 2 child comments
  • [–] 7 points 11 months ago

    Homebrew could provide their own casks of FOSS applications, compiled on their infrastructure and signed by their key. It's kinda what F-Droid does on phones.

  • source
  • [–] 11 points 1 year ago

    What a shame. It’s probably my favorite tool on the platform.

  • source
  • [–] 9 points 1 year ago (3 children)
  • [–] 5 points 11 months ago* (last edited 11 months ago)

    Code signing should be done though.

    You can disagree with Apple's approach that maintains them as the only signing authority, but, at a fundamental level, code signing is the only way to distribute an executable and have the user be able to trust who authored it (and thus what's in it).

  • source
  • [–] 2 points 1 year ago

    Of the like 30 things I have installed through brew, 1 is not signed. Do I agree with the change, no. But there are other options out there.

  • source