WSL2環境の構築
詳しいセットアップ手順
code:bash
$ wsl --install
$ wsl --set-default-version 2
$ wsl --setdefault Ubuntu
$ wsl --set-version
$ wsl -l -v
NAME STATE VERSION
* Ubuntu Running
// LinuxからWindowsへのアクセス
$ cd /mnt/c
// WindowsからLinuxへのアクセス
$ cd \\wsl$\Ubuntu
code:bash
# zshをインストール
$ sudo apt install zsh
$ zsh --version
zsh 5.8 (x86_64-ubuntu-linux-gnu)
# デフォルトシェルをzshに変更
$ echo $SHELL
/bin/bash
$ chsh -s $(which zsh) # パスワード入力後、シェルを再起動する
$ echo $SHELL
/usr/bin/zsh
コンパイラのインストール
code:zsh
$ sudo apt update
$ sudo apt install build-essential
$ sudo apt -y install zlib1g-dev
$ sudo apt install -y libssl-dev
Homebrewのインストール
code:zsh
$ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.zshenv
$ source ~/.zshenv
$ brew --version
Homebrew 3.4.0
Homebrew/homebrew-core (git revision 60cd01e2f7c; last commit 2022-03-04)
git のインストール
code:zsh
# デフォルトでも入っているが、Homebrewでインストールしたものを使いたい
$ git --version
git version 2.25.1
$ brew install git
$ brew info git
git: stable 2.35.1 (bottled), HEAD
...
code:.zshenv
# HomebrewのGitを使うパス
export PATH=/usr/local/bin/git:$PATH
git の設定
code:zsh
$ git config --global user.name "fugakkbn"
$ git config --global user.email "aax.chiri@gmail.com"
$ git config --global init.defaultBranch main
$ git config -l
user.name=fugakkbn
user.email=aax.chiri@gmail.com
init.defaultbranch=main
rbenv / Ruby のインストール
code:zsh
$ brew install rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
$ echo 'eval "$(rbenv init -)"' >> ~/.zshenv
$ source ~/.zshrc
$ type rbenv
rbenv is a shell function from /home/fugakkbn/.zshenv
# インストール可能なバージョンを確認
$ rbenv install -l
$ rbenv install 3.1.1
$ rbenv global 3.1.1
$ rbenv versions
3.0.3
* 3.1.1 (set by /home/fugakkbn/.rbenv/version)
Node.js / npm のインストール
code:zsh
$ brew install nodebrew
$ nodebrew -v
nodebrew 1.1.0
# 目当てのバージョンを確認する
$ nodebrew ls-remote
# ディレクトリがないとインストールできないようなので、事前に作っておく
$ mkdir -p ~/.nodebrew/src
# installでもいいが、install-binaryの方が早くインストールできる
$ nodebrew install-binary v16.14.0
$ nodebrew list
v16.14.0
current: none
$ nodebrew use v16.14.0
use v16.14.0
$ nodebrew list
v16.14.0
current: v16.14.0
# 下記の.zshenvを更新した後で、設定を反映してパスを通す
$ source ~/.zshrc
$ node -v
v16.14.0
$ npm -v
8.5.1
code:.zshenv
export PATH=$PATH:~/.nodebrew/current/bin
ghq / peco のインストール
code:zsh
$ brew install go
$ brew install ghq
$ git config --global ghq.root '~/projects'
$ brew install peco
code:.zshenv
function peco-src () {
local selected_dir=$(ghq list -p | peco --query "$LBUFFER")
BUFFER="cd ${selected_dir}"
zle accept-line
fi
zle clear-screen
}
zle -N peco-src
bindkey '^]' peco-src
PostgreSQL のインストール
code:zsh
$ brew search postgresql
==> Formulae
postgresql postgresql@11 postgresql@13 postgresql@9.5 qt-postgresql
postgresql@10 postgresql@12 postgresql@9.4 postgresql@9.6 postgrest
$ brew install postgresql
$ brew services restart postgresql
$ psql --version
psql (PostgreSQL) 14.2
yarn のインストール
code:zsh
$ npm install -g yarn
$ yarn -v
1.22.17
PID1をsystemdにする
これをやらないとsystemctl や services コマンドが使えない
code:zsh
# 依存するものを順次インストールする
$ sudo apt install -y daemonize dbus gawk libc6 libstdc++6 policykit-1 systemd systemd-container
$ sudo dpkg -i packages-microsoft-prod.deb
$ rm packages-microsoft-prod.deb
# パッケージの最新版を取得、更新
$ sudo apt update
$ sudo apt upgrade
# dotnet-runtime-5.0をインストール
$ sudo apt install dotnet-runtime-5.0
# GENIEのインストール
$ sudo su # root になっておく
$ apt install apt-transport-https
$ chmod a+r /etc/apt/trusted.gpg.d/wsl-transdebian.gpg
$ cat << EOF > /etc/apt/sources.list.d/wsl-transdebian.list
EOF
$ apt update
exit # userに戻す
# system-genieのインストール
$ sudo apt install systemd-genie
code:.zshenv
# Are we in the bottle?
if ! -v INSIDE_GENIE ; then
echo "Starting genie:"
exec /usr/bin/genie -s
fi
code:zsh
$ ps aux # PID1が systemd になればOK
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.3 0.1 174996 13452 ? Ss 16:00 0:00 systemd
Chromeのインストール
code:zsh
# リポジトリを追加する
# 公開鍵のダウンロードと登録
# インストールを実行
$ sudo apt update
$ sudo apt install google-chrome-stable
$ google-chrome --version
Google Chrome 99.0.4844.51
# ChromeDriver - WebDriver for Chrome - Downloads
# ↑にアクセスして、Google Chromeのバージョンに対応したChromeDriverをインストールする。
# インストールしたzipファイルを解凍
$ sudo unzip chromedriver_linux64.zip
# 解凍したファイルをパスの通ったディレクトリに移動
$ sudo mv chromedriver /usr/local/bin
code:zsh
$ ./configure --enable-shared
$ make
$ sudo make install
ImageMagick のインストール
code:zsh
$ cd /tmp
$ rm -rf ImageMagick
$ cd ImageMagick
$ ./configure --without-perl
$ make
$ sudo make install
$ sudo ldconfig /user/local/lib
rails test test/system/practices_test.rb:155
RubyMineを使えるようにする。
Windows側にRubyMineをインストールしておく。
WSL2側にcloneしたプロジェクトを、Windows側のRubyMineから開く
Docker Desktop WSL2のインストール
以下のURLからDLする