title: ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory
body: <p>I'm rendering write permissions to bundle or install gems on my rails app.</p>
  <p>It's not recommended but I have tried using
  <code>sudo gemname install</code> and it does not work for me either.</p>
  <p>Im unable to connect after running <code>bundle install</code></p>
  <p>here is the issue</p>
  <p><code>An error occurred while installing puma (4.3.3), and Bundler cannot continue. Make sure that gem install puma -v '4.3.3' succeeds before bundling. </code></p>
  <p>Then I run
  <code>gem install puma -v '4.3.3'</code></p>
  <p>and rendered
  <code>ERROR:  While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.</code></p>
  <p>I thought this may be helpful to know. Here is a list of my local gems</p>
  <pre><code>
  benchmark (default: 0.1.0)
  bigdecimal (default: 2.0.0)
  bundler (2.1.4, 1.17.3)
  cgi (default: 0.1.0)
  codecov (0.2.7)
  colorize (0.8.1)
  csv (default: 3.1.2)
  date (default: 3.0.0)
  dbm (default: 1.1.0)
  delegate (default: 0.1.0)
  did_you_mean (default: 1.4.0)
  docile (1.3.2)
  etc (default: 1.1.0)
  fcntl (default: 1.0.0)
  fiddle (default: 1.0.0)
  fileutils (default: 1.4.1)
  forwardable (default: 1.3.1)
  getoptlong (default: 0.1.0)
  io-console (default: 0.5.6)
  ipaddr (default: 1.2.2)
  irb (default: 1.2.6)
  json (default: 2.3.0)
  logger (default: 1.4.2)
  matrix (default: 0.2.0)
  minitest (5.13.0)
  mutex_m (default: 0.1.0)
  net-pop (default: 0.1.0)
  net-smtp (default: 0.1.0)
  net-telnet (0.2.0)
  nio4r (2.5.4)
  observer (default: 0.1.0)
  open3 (default: 0.1.0)
  openssl (default: 2.1.2)
  ostruct (default: 0.2.0)
  power_assert (1.1.7)
  prime (default: 0.1.1)
  pstore (default: 0.1.0)
  psych (default: 3.1.0)
  racc (default: 1.4.16)
  rake (13.0.1)
  rdoc (default: 6.2.1)
  readline (default: 0.0.2)
  readline-ext (default: 0.1.0)
  reline (default: 0.1.5)
  rexml (default: 3.2.3)
  rss (default: 0.2.8)
  sdbm (default: 1.0.0)
  simplecov (0.19.0)
  simplecov-html (0.12.3)
  singleton (default: 0.1.0)
  stringio (default: 0.1.0)
  strscan (default: 1.0.3)
  test-unit (3.3.4)
  timeout (default: 0.1.0)
  tracer (default: 0.1.0)
  uri (default: 0.10.0)
  webrick (default: 1.6.0)
  xmlrpc (0.3.0)
  yaml (default: 0.1.0)
  zlib (default: 1.1.0)
  </code></pre>
  <p>I thought this had something to do with not having x-code command line.</p>
  <p>I have downloaded x-code command line and updated my system software and I am still rendering this error.</p>
  <p>I think it might have something to do with my</p>
  <p>~/.zshrc file</p>
  <p>here it is</p>
  <pre><code># If you come from bash you might have to change your $PATH.
  export PATH=$HOME/bin:/usr/local/bin:$PATH
  
  # Path to your oh-my-zsh installation.
  export ZSH=&quot;/Users/mvizcaino/.oh-my-zsh&quot;
  
  # Set name of the theme to load --- if set to &quot;random&quot;, it will
  # load a random theme each time oh-my-zsh is loaded, in which case,
  # to know which specific one was loaded, run: echo $RANDOM_THEME
  # See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
  ZSH_THEME=&quot;robbyrussell&quot;
  
  # Set list of themes to pick from when loading at random
  # Setting this variable when ZSH_THEME=random will cause zsh to load
  # a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
  # If set to an empty array, this variable will have no effect.
  # ZSH_THEME_RANDOM_CANDIDATES=( &quot;robbyrussell&quot; &quot;agnoster&quot; )
  
  # Uncomment the following line to use case-sensitive completion.
  # CASE_SENSITIVE=&quot;true&quot;
  
  # Uncomment the following line to use hyphen-insensitive completion.
  # Case-sensitive completion must be off. _ and - will be interchangeable.
  # HYPHEN_INSENSITIVE=&quot;true&quot;
  
  # Uncomment the following line to disable bi-weekly auto-update checks.
  # DISABLE_AUTO_UPDATE=&quot;true&quot;
  
  # Uncomment the following line to automatically update without prompting.
  # DISABLE_UPDATE_PROMPT=&quot;true&quot;
  
  # Uncomment the following line to change how often to auto-update (in days).
  # export UPDATE_ZSH_DAYS=13
  
  # Uncomment the following line if pasting URLs and other text is messed up.
  # DISABLE_MAGIC_FUNCTIONS=true
  
  # Uncomment the following line to disable colors in ls.
  # DISABLE_LS_COLORS=&quot;true&quot;
  
  # Uncomment the following line to disable auto-setting terminal title.
  # DISABLE_AUTO_TITLE=&quot;true&quot;
  
  # Uncomment the following line to enable command auto-correction.
  # ENABLE_CORRECTION=&quot;true&quot;
  
  # Uncomment the following line to display red dots whilst waiting for completion.
  # COMPLETION_WAITING_DOTS=&quot;true&quot;
  
  # Uncomment the following line if you want to disable marking untracked files
  # under VCS as dirty. This makes repository status check for large repositories
  # much, much faster.
  # DISABLE_UNTRACKED_FILES_DIRTY=&quot;true&quot;
  
  # Uncomment the following line if you want to change the command execution time
  # stamp shown in the history command output.
  # You can set one of the optional three formats:
  # &quot;mm/dd/yyyy&quot;|&quot;dd.mm.yyyy&quot;|&quot;yyyy-mm-dd&quot;
  # or set a custom format using the strftime function format specifications,
  # see 'man strftime' for details.
  # HIST_STAMPS=&quot;mm/dd/yyyy&quot;
  
  # Would you like to use another custom folder than $ZSH/custom?
  # ZSH_CUSTOM=/path/to/new-custom-folder
  
  # Which plugins would you like to load?
  # Standard plugins can be found in ~/.oh-my-zsh/plugins/*
  # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
  # Example format: plugins=(rails git textmate ruby lighthouse)
  # Add wisely, as too many plugins slow down shell startup.
  plugins=(git)
  
  source $ZSH/oh-my-zsh.sh
  
  # User configuration
  
  # export MANPATH=&quot;/usr/local/man:$MANPATH&quot;
  
  # You may need to manually set your language environment
  # export LANG=en_US.UTF-8
  
  # Preferred editor for local and remote sessions
  # if [[ -n $SSH_CONNECTION ]]; then
  #   export EDITOR='vim'
  # else
  #   export EDITOR='mvim'
  # fi
  
  # Compilation flags
  # export ARCHFLAGS=&quot;-arch x86_64&quot;
  
  # Set personal aliases, overriding those provided by oh-my-zsh libs,
  # plugins, and themes. Aliases can be placed here, though oh-my-zsh
  # users are encouraged to define aliases within the ZSH_CUSTOM folder.
  # For a full list of active aliases, run `alias`.
  #
  # Example aliases
  alias zshconfig= &quot;mate ~/.zshrc&quot;
  # alias ohmyzsh=&quot;mate ~/.oh-my-zsh&quot;
  
  # Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
  #export PATH=&quot;$PATH:$HOME/.rvm/bin&quot;
  
  # Ruby with rbenv initialize
  eval &quot;$(rbenv init -)&quot;
  
  export PATH=&quot;/usr/local/opt/ruby/bin:$PATH&quot;
  
  export GEM_HOME=/Users/mvizcaino/gems
  
  export PATH=&quot;$HOME/.rbenv/bin:$PATH&quot;
  
  alias brewup='brew update; brew upgrade; brew cleanup; brew doctor'
  
  
  </code></pre>
  <p>I'm not sure what else could be causing this but I'm pretty much stuck on this error.</p>