WSL 2에 Zsh 한방에 설정하기 (feat. Windows Terminal)

moseoridev·2020년 6월 26일
2
post-custom-banner

코드는 스파게티라도 터미널은 아름다워야 한다.

오늘은 하라는 코딩은 안하고 WSL 2 환경에서 Zsh를 설정해 봅시다.

Linux 초보라도 예쁜 Shell을 볼 권리는 있잖아요?

0. 작업 환경

1. Windows 10 21H1 (Build 20152.1000)
2. Ubuntu 20.04 on WSL 2
3. Windows Terminal (Version 1.1.1671.0)
4. BlaCk-Void-Zsh

1. Windows Terminal & WSL 2 설치

이왕 설치할 거, 최신 기술을 써봅시다. PowerShell에서 둘 중 하나를 입력해주세요.

winget install -e Microsoft.WindowsTerminal # Stable 버전
winget install -e Microsoft.WindowsTerminalPreview # Preview 버전

이제 WSL 2를 써봐야겠죠?

# 관리자 권한 필요
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart # 재부팅 필요
wsl --set-default-version 2

그리고 Ubuntu를 설치해주세요.
Microsoft Store 링크
Powerline을 위해 직접 수정한 D2Coding 폰트도 설치해줍시다.
GitHub 링크

2. Windows Terminal 커스터마이징

Windows Terminal은 입맛대로 꾸미는 재미가 있습니다. 터미널을 열고 Ctrl+,을 눌러 settings.json을 수정해주세요.

"defaultProfile": "{your Ubuntu guid}",

...
...

{
        "guid": "{a random guid}",
        "hidden": false,
        "name": "Ubuntu",
        "commandline": "ubuntu.exe",
        "fontFace": "D2Coding Ligature",
        "fontSize": 18,
        "antialiasingMode": "cleartype",
        "colorScheme": "Tango Dark",
        "useAcrylic": true,
        "acrylicOpacity": 0.5,
        "backgroundImage": "your image location",
        "backgroundImageOpacity": 0.7,
        "padding": "15, 15, 15, 15",
        "closeOnExit": "graceful"
      },

위의 내용은 예시일 뿐, 본인만의 설정을 찾는 것이 바람직합니다. 더 많은 속성은 이곳에서 둘러볼 수 있어요.

3. BlaCk-Void-Zsh 설정

BlaCk-Void-Zsh는 복잡한 Zsh 설정을 플러그인 설치까지 도맡아주는 Starter Kit에요. 항상 잘 사용하고 있습니다 :)

# Ubuntu에서 실행
$ git clone https://github.com/black7375/BlaCk-Void-Zsh.git ~/.zsh
$ bash ~/.zsh/BlaCk-Void-Zsh.sh
...
# 중간에 ENTER 쳐주세요.
...
$ bash ~/.zsh/BlaCk-Void-Zsh.sh # 이유는 모르겠지만 한 번 더 해야합니다.
...
# 중간에 ENTER, 선택지는 모두 y로 해주세요.
...
# Fonts Settings는 0으로, 비밀번호 입력.
...
$ exit # 셸 재시작

이후 추가 설정이 진행됩니다.

4. 문제 해결

설치는 모두 완료되었지만, 어떤 명령어를 입력해도

Command 'python' not found, did you mean:

  command 'python3' from deb python3
  command 'python' from deb python-is-python3

가 따라다니는 버그가 있습니다. 근본적인 해결책인지는 모르겠지만 아래 방법으로 해결은 되네요.

$ sudo apt install python # python 2.7 설치
$ sudo echo "alias python=python3" >> ~/.zshrc
$ source ~/.zshrc

5. 끝?

여기까지 제가 설정해본 환경입니다. 아직도 시작시에 정체를 알 수 없는 오류들이 발생하지만 사용에는 큰 문제가 없는 것 같네요.

[oh-my-zsh] autojump not found. Please install it first.
zsh-notify: unsupported environment

오류 해결법을 아시는 분은 같이 공유해주시면 감사하겠습니다.

그럼 보기에도 좋은 터미널과 함께 행복코딩하세요! (o゜▽゜)o☆

profile
코딩하는 학생
post-custom-banner

2개의 댓글

comment-user-thumbnail
2020년 7월 29일

지나가다 우연히 보고 댓글 남깁니다. python 명령어를 찾을 수 없는 것은 Ubuntu 20.04부터 python2가 기본 패키지에서 제외되었기 때문입니다. 해결책으로 제시한 python 패키지 설치 또는 alias 설정 둘 중에 하나만 하시면 됩니다. 지금은 python2를 설치해서 python 명령어가 생겼는데, 굳이 python 명령어에 다시 python3를 설정하는 방식으로 작성되었네요. python-is-python3 패키지를 설치하는 방법도 있습니다.
python2와 python3가 호환되지 않으므로 zsh가 사용하는 python 스크립트가 python2 기준으로 작성된 것이라면 sudo apt install python으로 해결하는 것이 바른 방식이긴 합니다.

답글 달기
comment-user-thumbnail
2020년 8월 31일

해당 zsh 우주 배경화면 소스 알 수 있을까요?

답글 달기