BUG: can't add BTT to Mojave privacy/security settings

Brand-new Mac mini; migrated settings from an ancient MBP running High Sierra. Since I got this machine, BTT pops up the permissions request dialog, which tells me to add BTT to the Accessibility tab. So I tried: clicked the lock, clicked the + icon, selected BTT, and hit OK… nothing. The app doesn't appear in the list.

First I tried downloading a new BTT build (2.714 is what I now have). Nope.

Then I did some digging and found https://folivora.ai/blog/post/13005. When I run "tccutil reset Accessibility", I get an error: "tccutil: Failed to reset database." That's it. What now?

Unfortunately that's a bad (but rare) bug in macOS and hard to fix. The database is probably corrupted and needs to be deleted, but the problem is that the database is under "System Integrity Protection", thus a normal user can not delete it.

Before trying the steps below, first try whether these terminal commands fix your issue:

sudo tccutil reset All
sudo tccutil reset Accessibility

These would be the necessary steps, but they are not really easy...

0.) Boot into recovery mode
1.) Disable SIP (system integrity protection). Which is a complicated process unfortunately ( https://apple.stackexchange.com/a/208481 )
2.) Open the terminal app while in recovery mode
3.) Delete/rename the tcc.db file (e.g. using this command: sudo mv /Library/Application\ Support/com.apple.TCC/TCC.db /Library/Application\ Support/com.apple.TCC/TCC_old_backup.db )
4.) Enable system integrity protection again (command: csrutil enable )
5.) Reboot the Mac

1 Like

Thank you, Andreas! I never would have found that solution on my own, so thanks for that. One note: in step 2 you say "open the terminal app while in recovery mode." The default macOS volume isn't mounted in recovery mode so I couldn't move the TCC db; I had to boot into recovery, turn off SIP, boot into regular, move the old database, boot back into recovery and turn SIP back on, and then boot once more.

1 Like

Ah thanks for that info, I'm sure it will be helpful for others.
I think you can unlock the volume using this command (if it's apfs ), however I haven't tried that yet.

diskutil apfs unlock "Macintosh HD"

And this solved the issue, correct? (I haven't encountered this myself and always just assumed a corrupted TCC.db is causing it)

The fix solved the issue for about two days. I was dismayed to log on just now and see that it's recurred-- I get the "Accessibility API Permissions" dialog for BTT and no longer see BTT (or anything else) in the app list in Settings. Whatever corrupted the TCC.db is back at it again.

:cry: I have no idea what could cause this. Maybe some sort of hard disk issue? (hopefully not)

I know a few developers who have seen users with this issue, but nobody really knows what's causing this. I think I have collected enough information to report the issue to Apple now.

I had a similar experience, but with Default Folder instead of BTT. I tried your suggestions but nothing worked, every time I tried to add DF to the Accessibility list the database got corrupted again. The solution was to reset all TCC settings to default using

sudo tccutil reset All

This resolved my problem and now everything is back to normal (I hope ...).

Cheers,
Zoran

usually sudo tccutil reset All doesn't work if sudo tccutil reset Accessibility doesn't work ;-(
But still worth a try!

Actually, in my case sudo tccutil reset Accessibility didn't work but sudo tccutil reset All did.

1 Like

This also worked for me: