表題の通りです。自分用。その他WSL2&Linuxお役立ち情報があればコメントくださいな。
1. 別ドライブにインストールする
結構容量がでかくなるのでCドラに入ってほしくない。
- LxRunOfflineをDLして解凍して起動できるようにする
- Ubuntu-20.04のイメージをDLする
- ボリューム作る
LxRunOffline i -n Ubuntu -d {配置したいパス} -f {DLしたイメージのパス}
- デフォルトにする
wslconfig /setdefault Ubuntu
- WSL2になってるか確認してなってなかったら2にする
wsl --list --verbose
wsl --set-version Ubuntu 2
- リポジトリを国内にして更新とsudoインストール
sudo sed -i.bak -e "s/http:\/\/archive\.ubuntu\.com/http:\/\/jp\.archive\.ubuntu\.com/g" /etc/apt/sources.list
apt update && apt upgrade -y
apt install sudo
- 普段用ユーザの設定
adduser {name}
gpasswd -a {name} sudo
login {name}
-
id
-> uidをメモ exit
LxRunOffline su -n Ubuntu -v {uid}
2. 色々インストール
- git, zsh, nano, gcc, make
sudo apt install git zsh nano gcc make zlib1g-dev libssl-dev
- zlibとlibsslはこれ参照: https://qiita.com/banaoh/items/00aea13fe045fab7e8ba
- oh-my-zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
- linuxbrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'export PATH="$PATH:/home/linuxbrew/.linuxbrew/bin"' >> ~/.zshrc
- anyenv
brew install anyenv
anyenv install --init
echo 'eval "$(anyenv init -)"' >> ~/.zshrc
- nodenv, node, pyenv, python, goenv, go
anyenv install nodenv
anyenv install goenv
anyenv install pyenv
- リフレッシュ
git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update
git clone https://github.com/nodenv/nodenv-package-rehash.git "$(nodenv root)"/plugins/nodenv-package-rehash
git clone https://github.com/nodenv/nodenv-default-packages.git "$(nodenv root)/plugins/nodenv-default-packages"
echo "yarn" >> $(nodenv root)/default-packages
echo 'export PATH="$HOME/.yarn/bin:$PATH"' >> ~/.zshrc
- 最新バージョンを出すワンライナー
*env install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1
を環境別にやるnodenv install $(nodenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
goenv install $(goenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
pyenv install $(pyenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
- 上と同じ要領でglobalバージョンを設定
nodenv global $(nodenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
goenv global $(goenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
pyenv global $(pyenv install --list | sed 's/ //g' | grep -E "^[0-9]*\.[0-9]*\.[0-9]*$" | tail -n 1)
- Docker Desktop
- コマンドラインでできない悲しみ
- https://docs.docker.com/desktop/windows/wsl/#install
3. 細かい設定
git, github
brew install gh
gh auth login
Windowsのパスを引き継がない
sudo nano /etc/wsl.conf
[interop]
appendWindowsPath = false
- Dockerのパスを入れる
echo 'export PATH="$PATH:/mnt/c/Program Files/Docker/Docker/resources/bin:/mnt/c/ProgramData/DockerDesktop/version-bin"' >> ~/.zshrc
- たぶんこれしなくてもDocker Desktop入れればいい感じにしてくれる