👑
Ubuntu 24.04 on WSL2にZSHをインストール
ZSH のインストール
$ sudo apt install zsh
$ zsh --version
zsh 5.9 (x86_64-ubuntu-linux-gnu)
ZSH の起動
現在のシェルの確認
$ echo $SHELL
/bin/bash
使用できるシェルの確認
$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/usr/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/usr/bin/dash
/usr/bin/tmux
/bin/zsh
/usr/bin/zsh
/usr/bin/zsh
ZSH をログインシェルに設定
$ chsh -s /bin/zsh
WSL2 の再起動
PowerShell を起動して WSL2 をシャットダウンする
$ wsl --shutdown
WSL2 を起動するとログインシェルが ZSH に変更される
$ echo $SHELL
/bin/zsh
Oh My Zsh のインストール
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Git で管理している zsh の設定ファイルを反映させる
設定ファイルをクローン
$ git clone https://github.com/chidoriashi1990/zsh.git
$ cp ~/zsh/zshrc ~/.zshrc
$ source ~/.zshrc
プラグイン等の追加
zsh-autosuggestions
$ git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
starship
インストール
$ curl -sS https://starship.rs/install.sh | sh
設定
$ mkdir -p ~/.config
$ cp ~/zsh/starship.toml ~/.config/starship.toml
nvm
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
~/.zshrc
に以下の記載がなければ追加する
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
pyenv
依存関係の不足でBUILD FAILED
エラーが出力される可能性があるため以下のコマンドで依存関係のライブラリをインストールする
$ sudo apt update
$ sudo apt install build-essential libbz2-dev libdb-dev \
libreadline-dev libffi-dev libgdbm-dev liblzma-dev \
libncursesw5-dev libsqlite3-dev libssl-dev \
zlib1g-dev uuid-dev tk-dev
$ sudo apt-get install make gcc
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ cd ~/.pyenv && src/configure && make -C src
$ exec "$SHELL"
# バージョンの確認
$ pyenv install -l
# インストール
$ pyenv install 3.12.3
$ pyenv global 3.12.3
# 確認
$ python -V
Python 3.12.3
設定ファイルを反映
$ source ~/.zshrc
その他
Zenn CLI
Git
$ git config --global user.name "chidoriashi1990"
$ git config --global user.email chidoriashi1990@example.com
AWS CLI
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ sudo apt install unzip
$ unzip awscliv2.zip
$ sudo ./aws/install
$ rm awscliv2.zip ; rm -rf ./aws
$ aws --version
Proxy
username: chidoriashi1990
password: foobar
host: proxy.example.co.jp
port: 8088
URI: http://chidoriashi1990:foobar@proxy.example.co.jp:8088
# npm
$ npm -g config set proxy http://chidoriashi1990:foobar@proxy.example.co.jp:8088
$ npm -g config set https-proxy http://chidoriashi1990:foobar@proxy.example.co.jp:8088
# pip
pip config set global.proxy http://chidoriashi1990:foobar@proxy.example.co.jp:8088
# git
$ git config --global http.proxy http://chidoriashi1990:foobar@proxy.example.co.jp:8088
$ git config --global https.proxy http://chidoriashi1990:foobar@proxy.example.co.jp:8088
# env
export HTTP_PROXY=http://chidoriashi1990:foobar@proxy.example.co.jp:8088 \
export HTTPS_PROXY=http://chidoriashi1990:foobar@proxy.example.co.jp:8088 \
export http_proxy=http://chidoriashi1990:foobar@proxy.example.co.jp:8088 \
export https_proxy=http://chidoriashi1990:foobar@proxy.example.co.jp:8088
Discussion