I updated to macOS Catalina which requires the user through pop-ups to allow any app trying to access the file system for the first time.

No such pop-up is appearing for Emacs. Running the script shared here, https://gist.github.com/dive/f64c645a9086afce8e5dd2590071dbf9
does not seem to change anything. That is, Emacs and any shell running in it cannot access any file on the file system.

How can I restore the access?

My Emacs version is *GNU Emacs 26.1 (build 1, x86_64-apple-darwin14.5.0, NS appkit-1348.17 Version 10.10.5 (Build 14F2511))

Granting the Emacs app Full Disk Access in "General Settings -> Security & Privacy -> Privacy" does not solve the problem.

New contributor
wsaleem is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
  • Go to "General Settings -> Security & Privacy -> Accessibility" and add there Emacs, to allow it to control your computer. Then trying to open a file from Emacs will open a short dialog asking to confirm permission for that folder. The allowed folders will appear in Privacy -> File and Folders. Maybe it will be useful to upgrade to Emacs 26.3 – Ian Oct 8 at 14:36
  • Thanks, Emacs was already allowed under Accessibility. I removed and re-added it. I also re-installed and thus upgraded to Emacs 26.3 in the meanwhile. All to no avail! – wsaleem Oct 8 at 14:45

Emacs.app actually launches using a ruby script. As a result, MacOS Catalina uses the permissions set for ruby, not the permissions for Emacs.app. Granting /usr/bin/ruby full disk access in "General Settings -> Security & Privacy -> Privacy" should resolve your issue.

/usr is hidden by default on MacOS but you can toggle visibility in the Finder by using Shift+Command+Period

New contributor
Chris is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
  • @Chris's answer is right, or you can launch emacs in the terminal, which also resolves your problem. – Gilbert Wong Oct 9 at 2:53
  • Thank you! Worked great. I had to go back to "Security & Privacy" and click on General (after granting ruby access and trying emacs). And found that I had to "Allow apps downloaded from - App Store and identified developers. I ended up doing this twice. Looks like emacs is using some legacy stuff and that os x is checking more things that are not theirs. BUT worked great after that, so full access to ruby and then the legacy stuff and it worked. Outstanding post, thank you! – EvanCharlesSmith Oct 9 at 11:59

Your Answer

wsaleem is a new contributor. Be nice, and check out our Code of Conduct.

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.