💡
wsl(ubuntu)上にrubyをインストール
はじめに
PCのリプレイスがあり、開発環境(wsl)を一から構築する機会がありました。
ubuntu(22.04)にrubyをインストールした際、いつも通り「rbenv」でrubyを入れていましたが、OpenSSLのバージョンの柵でインストールができないという問題が発生しました。
その際のメモです。
環境
wsl:ubuntu 22.04
snapの調査
Ubuntuではディストリビューションを問わず利用できる「ユニバーサルパッケージ」
内容理解はこちらを参考にしました
最新のrubyのインストール
Ruby の公式 snap パッケージなるものが存在しており、ruby 3.2をインストールするには以下のコマンドで問題なくにインストールができました
sudo snap install ruby --classic
バージョンの確認
snap info ruby
バージョン指定でのインストール
sudo snap install ruby --classic --channel=2.4/stable
バージョン切り替え
sudo snap switch ruby --channel=2.3/stable
sudo snap refresh
利用後の感想
今までrbenvを利用していましたが、単純にrubyをインストールするだけなら、これでもいいと感じました。(インストールが1コマンドで済むのは楽です)
ただ、使った感じgemを入れようとしたら、関係するパッケージがないとかでインストールできないケースがありましたので、下記もついでに調査しました
asdfについて調査
プラグインスタイルの 〇〇env ツール。
nodejsやjava、Python などの開発ツールのバージョン管理が容易に行えるようになります。
これまで rubyenv や nvm、sdkman などばらばらに入れていた開発環境管理ツールを asdf で集約できるとのこと
今回はrubyに限定して利用します
必要パッケージのインストール
sudo apt-get update -y
sudo apt-get install -y git-core zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev
ダウンロードしてからの設定もろもろ
cd
git clone https://github.com/excid3/asdf.git ~/.asdf
echo '. "$HOME/.asdf/asdf.sh"' >> ~/.bashrc
echo '. "$HOME/.asdf/completions/asdf.bash"' >> ~/.bashrc
echo 'legacy_version_file = yes' >> ~/.asdfrc
echo 'export EDITOR="code --wait"' >> ~/.bashrc
exec $SHELL
rubyのインストール
asdf plugin add ruby
asdf install ruby 3.2.2
asdf global ruby 3.2.2
gem update --system
ruby -v
さいごに
ただ単に自分が無知だっただけなのですが、世の中便利になるもんです。
rubyインストールの手段として知っておいて損はないと考えていますので、今回いい勉強になりました
(おまけ)asdfでnodejsインストール
asdf plugin-add nodejs
asdf install nodejs 20.4.0
asdf global nodejs 20.4.0
node -v
Discussion