yabai icon indicating copy to clipboard operation
yabai copied to clipboard

`yabai` appearing multiple times in Privacy & Security → Accessibility

Open roelvangils opened this issue 1 year ago • 7 comments

Is there a way to avoid this, and how can I find out which one is safe to remove? They keep coming back 🙂

image

roelvangils avatar Oct 20 '23 10:10 roelvangils

This happens if you build from source (or install a fork?) and don't codesign the binary.

https://github.com/koekeishiya/yabai/wiki/Installing-yabai-(from-HEAD)

koekeishiya avatar Oct 20 '23 11:10 koekeishiya

For me, I found this happened every time I upgraded yabai. I just always manually remove the old one.

tbezman avatar Oct 20 '23 23:10 tbezman

For me, I found this happened every time I upgraded yabai. I just always manually remove the old one.

Same, I build and codesign using yabai-cert but I get multiple entries anyway.

Removing the old one became part of my upgrade process lol

ShroomKing avatar Oct 21 '23 08:10 ShroomKing

For me, I found this happened every time I upgraded yabai. I just always manually remove the old one.

Same, I build and codesign using yabai-cert but I get multiple entries anyway.

Removing the old one became part of my upgrade process lol

Works for me ¯_(ツ)_/¯

koekeishiya avatar Oct 21 '23 10:10 koekeishiya

how can I find out which one is safe to remove?

The ones without icon are safe to remove. The newest one has an icon, and is usually the bottom-most.

shrugalic avatar Oct 23 '23 09:10 shrugalic

How to remove the old ones?

edofe99 avatar Oct 25 '23 12:10 edofe99

How to remove the old ones?

Select one and press the - button at the bottom of the window.

shrugalic avatar Oct 25 '23 16:10 shrugalic

See this comment https://github.com/koekeishiya/yabai/issues/2086#issuecomment-1939670967

I guess this is happening because macOS stores the absolutepath when saving permissions, because yabai is a single binary application and not an app bundle. When homebrew upgrades yabai it places it in a folder specific to the version, so every brew upgrade causes the binary to be stored at a different path, effectively resetting the permissions.

You can remove permissions directly inside the macOS settings/permissions window. Just remove stale entry when upgrading. I'm not aware of any workaround as long as you install using homebrew, due to the above situation.

I never experience this personally because I of course build from source manually, and the target binary never changes its location -- therefore simply codesigning the new binary with the same certificate as the previous binary is enough for macOS to retain permissions.

koekeishiya avatar Feb 13 '24 09:02 koekeishiya