zsh compinit: insecure directories

zsh, zsh-completion

Solution

Note: This answer is from 2012.

This fixed it for me:

$ sudo chmod -R 755 /usr/local/share/zsh/site-functions

Credit: a post on zsh mailing list

EDIT: As pointed out by @biocyberman in the comments. You may need to update the owner of `site-functions` as well:

$ sudo chown -R root:root /usr/local/share/zsh/site-functions

On my machine (OSX 10.9), I do not need to do this but YMMV.

EDIT2: On OSX 10.11, only this worked:

$ sudo chmod -R 755 /usr/local/share/zsh
$ sudo chown -R root:staff /usr/local/share/zsh

Also `user:staff` is the correct default permission on OSX, where `user` is actually your username (i.e. `whoami`, or `$USER`). In other words:

$ sudo chown -R ${USER}:staff /usr/local/share/zsh

Problem

What does it mean and how can I fix it? ``` zsh compinit: insecure directories, run compaudit for list. Ignore insecure directories and continue [y] or abort compinit [n]? ``` Running the `compaudit` returns the follows: ``` There are insecure directories: /usr/local/share/zsh/site-functions ```

Original source