본문 바로가기

카테고리 없음

02 일렉트론 개발환경 구축하기 (Windows 10 + WSL 2)

* 환경

- Windows 10

- WSL 2

- VSCode

 

 

윈도우에서 일렉트론 개발 작업을 하려면 조금 머리아픈 개발환경 구축과정을 거쳐야 한다.

 

어려운 과정은 아니라서 정확히 따라만 한다면 문제가 없지만 이런 과정을 `굳이` 거쳐야 하는지는 사실 의아하다. 역시 개발자는 맥이나 우분투를 써야함을 값비싼 예쁜 쓰레기 노트북을 지른 뒤에 수도 없이 깨닫는 중이다. WSL 2가 출시했지만 아직도 갈 길이 멀어보인다.. 내 손자쯤엔 윈도우에서의 개발로 고통받지 않길 바란다.

 

각설하고.. 윈도우 콘솔에서만 작업할거라면 큰 문제가 없지만 WSL과 연동하여 작업할 때의 상황에 대처한 글이기 때문에 해당사항에 포함되는 이들만 글을 읽어가길 바란다.

 

 

WSL은 윈도우 안에 존재하는 또다른 리눅스이지만 리눅스와 윈도우는 수많은 부분이 판이하다. 애초부터 윈도우는 대부분의 운영체제가 공통적으로 가지고 있는 유닉스 기반이 아니기 때문에 WSL는 그저 윈도우 안에 가상 VM을 깔아놓은 것과 별반 다를 바 없다. WSL 2로 들어와서 많은 호환성을 지원하여 VM과는 다르다곤 하지만, 결국에는 윈도우와 리눅스라는 장벽의 한계가 굳건하다.

 

그래서 둘은 네트워크를 통해서만 통신해야 한다. 그렇다면 그냥 원격으로 작업하면 되지 않는가? 어차피 내부 네트워크니까 파일 전송속도도 빠르고, SMB처럼 사용하면 되지 않는가 라는 생각은 의미가 없다. 윈도우와 리눅스는 파일 시스템 자체가 달라서 그렇다.

 

윈도우 cmd, powershell로 WSL 콘솔에 진입하여 일렉트론 앱을 실행하려 해봐야 의미가 없는 것이다. 그래서 그 원격이라는 장점을 이용하여 UI 형태의 데이터만 가져오는 것이다. 즉 일렉트론의 빌드 화면만 통신할 수 있도록 하면 된다.

 

 

개발환경 세팅

우리의 개발 선조(?)들은 일찍이 윈도우에서의 개발이 얼마나 개 빡치는 짓인지 깨닫고 리눅스와의 연동을 위해 수많은 방법을 탄생시켰다. 그중 하나가 바로 위에서 기술했던 네트워크를 이용해 UI만 볼 수 있게 하는 것이다. 이 글에서는 해당 프로그램으로 VcXsrv Windows X Server를 사용한다. 이를 설치한 뒤 실행하여 환경을 똑같이 구성해야 한다.

 

 

 

 

 

 

 

 

 

* 참조

https://www.beekeeperstudio.io/blog/building-electron-windows-ubuntu-wsl2