# How to Setup Ruby to run gem install Without Sudo

let’s get you a clean Ruby environment so you can install Capistrano **without sudo** and without fighting system directories. The easiest, safest way is to use a **Ruby version manager** like `rbenv` (lightweight) or `rvm` (full‑featured). I’ll walk you through `rbenv` since it’s simple and works well on Linux/Ubuntu/Debian.

## 🛠 Step 1 - Install rbenv and ruby-build

bash

```bash
# Install dependencies
sudo apt update
sudo apt install -y build-essential libssl-dev libreadline-dev zlib1g-dev git

# Clone rbenv into ~/.rbenv
git clone https://github.com/rbenv/rbenv.git ~/.rbenv

# Add rbenv to PATH and init in your shell
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init - bash)"' >> ~/.bashrc
source ~/.bashrc

# Install ruby-build plugin
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
```

## 🛠 Step 2 - Install Ruby (user‑local)

bash

```bash
# List available Ruby versions
rbenv install -l

# Install a stable version (e.g., 3.4.5)
rbenv install 3.4.5

# Set it as default
rbenv global 3.4.5.
```

## 🛠 Step 3 - Install Capistrano without sudo

bash

```bash
gem install capistrano
```

## 🧪 Step 4 - Verify

bash

```bash
ruby -v
gem -v
cap --version
```

You should now see:

* Ruby version from rbenv (not system Ruby)
    
* Capistrano installed and runnable without sudo
    

💡 **Why this works** `rbenv` installs Ruby entirely in your home directory (`~/.rbenv`), so you own the files and can install/update gems freely. No system paths, no permission errors.
