Uninstalling casks from untrusted taps #6891
Replies: 6 comments 14 replies
-
|
Does uninstalling a cask require running arbitrary code coming from the tap? Claude tells me that "Homebrew now refuses to even load the cask definition from an untrusted tap, even for a read-only operation like |
Beta Was this translation helpful? Give feedback.
-
|
And, to add this report, it's not even possible to untap while an untrusted formula or cask is still installed. This is somewhat annoying. It would be nice to have error messages explaining how to manually uninstall or untap. |
Beta Was this translation helpful? Give feedback.
-
|
It's also not possible to use |
Beta Was this translation helpful? Give feedback.
-
|
You can't even use brew info ipsw
Error: Refusing to load cask blacktop/tap/ipsw from untrusted tap blacktop/tap.
Run `brew trust --cask blacktop/tap/ipsw` or `brew trust blacktop/tap` to trust it. |
Beta Was this translation helpful? Give feedback.
-
|
I believe a reasonable suggestion would be to have an option that allows
an untap or uninstall of a now untrusted item without having to turn on
trust for the item for anything than this one time operation. Bonus for
showing which untrusted file get executed or the relevant config file for
making a check easier.
The current solution - trust, then uninstall, then untrust works, but is a)
awkward and b) not very secure as many people will forget the last step -
untrust.
…On Tue, Jun 16, 2026 at 21:28 Sean Molenaar ***@***.***> wrote:
I'll get to investigating each of my the affected packages eventually..
probably... But for now I'd rather just find a way to delete them without
running any 'untrusted' scripts
There is no way to do that unfortunately. Realistically though, if I was
an attacker I'd probably put the base code in the install path instead of
uninstall. And the packages might also be just fine.
Personally I'd just take the risk for things I'd want to uninstall and brew
trust --formula something && brew rm something
—
Reply to this email directly, view it on GitHub
<#6891?email_source=notifications&email_token=AGMK7COR6ZK7JCO6PSJ4PGT5AJCBHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM2DMNZRUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSWGM33PORSXEX3DNRUWG2Y#discussioncomment-17334671>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGMK7CMAWJG72IROTBJSGPL5AJCBHAVCNFSNUABIKJSXA33TNF2G64TZHMZDSMRSGY3DSMJTHNCGS43DOVZXG2LPNY5TCMBSGQZDAMZQUF3AE>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AGMK7CPSOOSYJAG3GMWGLVT5AJCBHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM2DMNZRUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSVGM33PORSXEX3JN5ZQ>
and Android
<https://github.com/notifications/mobile/android/AGMK7CI5BJHTLQ42K4OA2Y35AJCBHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM2DMNZRUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSXGM33PORSXEX3BNZSHE33JMQ>.
Download it today!
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
more like
untap --trust_only_this_time some/tap
so you don't have to remember to untrust after the deletion.
BTW, this is not just hypothetical. All the emacs-plus/emacs-mac packages
are untrusted at the moment. That probably affects quite a few people.
…On Wed, Jun 17, 2026 at 12:49 AM Marco Quinten ***@***.***> wrote:
So... trust it to run arbitrary code without telling the user? That seems
a bit counter to the whole idea of the feature.
I don't think that's what they meant. I believe they meant something like brew
untap --trust some/tap, or brew uninstall --trust somepkg.
One-time, explicit trust to do the operation that requires trust without
having to "globally" trust the tap or package. Because right now, you have
to trust, then untap, then untrust, which is highly unintuitive and easy to
get wrong.
—
Reply to this email directly, view it on GitHub
<#6891?email_source=notifications&email_token=AGMK7CLFH3COR7AE3SF3MUT5AJZVHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM3DSNRXUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSWGM33PORSXEX3DNRUWG2Y#discussioncomment-17336967>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGMK7COQZDFPK4IXZ5URWXL5AJZVHAVCNFSNUABIKJSXA33TNF2G64TZHMZDSMRSGY3DSMJTHNCGS43DOVZXG2LPNY5TCMBSGQZDAMZQUF3AE>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AGMK7CLBIRCHIXH22QQZAP35AJZVHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM3DSNRXUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSVGM33PORSXEX3JN5ZQ>
and Android
<https://github.com/notifications/mobile/android/AGMK7CIEM4HMYL3BVDAPQ4T5AJZVHA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNZTGM3DSNRXUZZGKYLTN5XKOY3PNVWWK3TUUVSXMZLOOSXGM33PORSXEX3BNZSHE33JMQ>.
Download it today!
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Output of
brew configOutput of
brew doctorDescription of issue
After updating to Homebrew 6.0.0, I reviewed the untrusted taps.
I realized that I don't need most of the casks from untrusted taps, but it seems that it's not possible to uninstall packages from untrusted taps, which seems counter-intuitive.
If someone installs Homebrew 6 and realizes they rely on some taps they don't trust, why do they need to explicitly trust them (against their explicit wish to not trust them) just so they can uninstall the previously installed packages? Is that an oversight, or am I using it wrong?
FYI, this is what I did:
brew uninstall sikarugirAnd this is the output:
I also can't
untapthe tap, because I still have have a formula or cask installed.For now, it seems like the only way to remove an untrusted package is:
In this case I do actually trust the sikarugir tap but still wanted to uninstall the tool because I don't need it anymore, but what if I actually don't trust the tap?
Beta Was this translation helpful? Give feedback.
All reactions