rbenvで最新のrubyの環境をWSL2に構築

# 環境
Windows11 home
WSL2 Ubuntu20.04.06 LTS　で動作確認済みです。

***この記事で参考にしているコマンドはすべて公式に書かれているコマンドです***
# 背景
Rubyを勉強しようと決め、環境構築の際に[公式ドキュメント](https://www.ruby-lang.org/ja/documentation/installation/#apt)を見ると、

>apt (Debian or Ubuntu)
Debian GNU/Linux および Ubuntu は apt というパッケージマネージャを使っています。 これはこのように実行することができます:
>```
>> sudo apt-get install ruby-full
>```

こんな紹介がされています。

実際にコマンドを打ってみると最新版じゃない古いRubyがインストールされました。

せっかく新しい言語を勉強しようとしているのに最新版じゃないのは萎えますよね～。

ということでrbenvでruby自体のバージョンを管理しながら最新版のRubyをインストールしてやろう

じゃないかと発起したので、新しくRubyを勉強しようとする方は是非参考にしてください。




# そもそもrbenvとは？

[rbenv公式GitHub](https://github.com/rbenv/rbenv)

README英語で読む気失せると思うので大事なところだけ翻訳して理解しましょう！


>rbenvは、Unix系システム上のプログラミング言語Rubyのバージョン管理ツールです。同じマシン上で複数のRubyバージョンを切り替え、作業中の各プロジェクトが常に正しいRubyバージョンで実行されるようにするのに便利です。

なるほど...
- Unix系で使えるライブラリ
- Rubyのバージョン管理ツール

一つの環境でこのプロジェクトにはrubyのバージョン3を、こっちのプロジェクトにはrubyのバージョン2を
みたいな感じで切り替えて使用できますって感じか。

どのようなプロセスでバージョンを切り替えられるかもわかりやすく書かれているから、気になる人は

README読んでみもいいかもしれません。


# rbenvのインストール
お待たせいたしました！
さっそくいろいろinstallしていきましょう。

### rbenvインストール

```:rbenvのinstall
> git clone https://github.com/rbenv/rbenv.git ~/.rbenv
```

```:rbenvのpathを通す
> echo 'eval "$(~/.rbenv/bin/rbenv init - bash)"' >> ~/.bashrc
```

```.bashrcの再実行
> source ~/.bashrc
```

さっそくrbenvでrubyをinstallしていけるはず
まずは最新安定バージョンの確認からだ。

```
> rbenv install -l

rbenv: no such command `install'
```
installコマンドしろって公式が書いてあるじゃん...。

READMEを見てみると
>Rubyバージョンのインストール
rbenv installコマンドはrbenvに付属していませんが、ruby-buildプラグインによって提供されています。
> Note
> If the rbenv install command wasn't found, you can install ruby-build as a plugin:
> ```
> > git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
> ```

なるほどrbenvのinstallコマンドが見つからなかったらruby-buildプラグインをインストールしなさいと

### rbenvを動かすためにいろいろインストール
[ruby-build公式GitHub](https://github.com/rbenv/ruby-build#readme)
[ruby-buildに依存するライブラリ公式GitHub](https://github.com/rbenv/ruby-build/wiki#suggested-build-environment)

>ruby-buildは、Rubyをソースからダウンロードしてコンパイルする前に、システムの依存関係が存在するかどうかを確認しないことがほとんどです。ビルドツールや開発用ヘッダーなど、必要なライブラリがすべてシステム上に存在することを確認してください。

ruby-build＋それに依存するライブラリをインストールしないといけないのね。

***ruby-build***のインストール
```:ruby-buildのinstall
> git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
```

```:ruby-buildに依存するライブラリinstall
> sudo apt update
> sudo apt-get install autoconf bison patch build-essential rustc libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libgmp-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libdb-dev uuid-dev
```


## rubyの最新バージョンインストール

もう一度rubyの最新LTSバージョンを見てみましょう

```:rubyバージョンの確認
> rbenv install -l

3.0.6
3.1.4
3.2.2
jruby-9.4.2.0
mruby-3.2.0
picoruby-3.0.0
truffleruby-22.3.1
truffleruby+graalvm-22.3.1
```

おおーでてきましたねー！！

3.2.2が一番新しそうなのでinstallしましょう。

※3.2.2は2023/04/29の時点なのでその都度新しいバージョンを選択しくださいね

```:ruby最新バージョンのinstall
> rbenv install 3.2.2
```

無事installが完了したのでプロジェクトに最新rubyバージョンを適応してみましょう

自分はhomeディレクトリのdevというフォルダでにruby-projectというプロジェクトを作っています。

```
> pwd
/home/ryoma/dev/ruby-project

> rbenv local 3.2.2

> ruby -v
ruby 3.2.2

> ls -al
drwxr-xr-x 2 ryoma ryoma 4096 Apr 30 10:38 .
drwxr-xr-x 3 ryoma ryoma 4096 Apr 30 10:37 ..
-rw-r--r-- 1 ryoma ryoma    6 Apr 30 10:38 .ruby-version
```

.ruby-versionというファイルが作成されていれば成功です！

お疲れさまでした😊
快適なRuby Lifeを!!!