2017/07/29

Ubuntu 17.04 Wayland 사용


우분투 17.10부터 Gnome이 기본 데스크탑 환경으로 될 참이라 이놈도 같이 설치해서 틈틈이 사용해 보고 있는데 로그인 화면에서 Unity 8과 함께 Gnome on Wayland는 선택은 할 수 있지만 로그인하면 먹통이 되는 귀찮은 메뉴들이었다. 더구나 그 간에 구글링해 보면 Nvidia 드라이버 환경에서는 안된다는 글만 보였기 때문이다. Unity 8은 그렇다 치고, Wayland가 내 PC에서 동작하는지 확인하고 싶었는데, 간만에 구글링해 보니 마침 Nvidia 환경에서 Gnome on Wayland가 동작한다는 글이 보였다. 따라해 보았지만, 여전히 먹통이다. 생각해 보니 Unity Desktop의 기본 Display Manager인 lightdm 대신 gdm을 사용해야 될 것 같았고 바꿨더니 역시나 잘 되더라.

이 글에서는 우분투의 Nvidia 드라이버 사용 환경에서 Wayland를 사용하는 방법과 짧은 사용담을  정리한다. Wayland 환경에서 한글입력 문제는 여전히 누군가가 해결해야 할 숙제이다. 그리고, 아직까지는 Nvidia가 Wayland API를 제대로 지원하지는 않고 있다는 점도 참고할 필요가 있다.


우분투 17.04 Nvidia 환경에서 Wayland 사용 절차

1. Nvidia 드라이버 설치

Nvidia 홈페이지에서 최신 Nvidia 드라이버를 내려 받아 설치한다. 내가 사용하는 버전은 381.22이다. 우분투 17.04는 리눅스 커널 4.10을 사용하는데 381.22 미만 버전은 커널 모듈 컴파일시 오류가 발생해서 설치할 수 없다.

Nvidia 드라이버 설치 절차는 이전 글에 올려 놓았는데, Wayland가 동작하려면 이전 글의 "3. 새로운 NVIDIA 드라이버 설치 후 nouveau 드라이버가 로딩되지 않도록 blacklist 파일 생성" 부분에서 blacklist 파일, 즉, /etc/modprobe.d/blacklist-nouveau.conf 파일에 아래의 내용을 한 줄 추가해 주어야 한다. 단, 아래의 옵션 설정에 대한 제약 사항은 여기 참조.

options nvidia-drm modeset=1

그리고 나서, 이전 글의 절차대로 initramfs를 update해 주고 Nvidia 드라이버를 설치하면 된다.

2. Gnome Desktop 설치

Unity Desktop은 당연히 Wayland를 지원하지 않는다. Gnome이나 KDE를 사용해야 하는데 어차피 우분투는 Gnome이 기본 데스크탑이 될 것이므로 Gnome을 설치했다. 참고로, Gnome은 3.22 이후 버전부터 Wayland를 지원하고 있다.

$ sudo apt install ubuntu-gnome-desktop

3. Display Manager 교체

Gnome 설치시에 lightdm 대신 gdm3를 사용하도록 설정해도 되지만, Unity Desktop 사용자들은 lightdm을 사용하고 있으므로 교체 방법을 알아 둘 필요가 있다. 그리고, Wayland를 사용하다가 한글 문제 때문에 lightdm으로 복귀해야 할 경우도 생길 수 있다.

$ sudo dpkg-reconfigure lightdm

위의 명령으로 lightdm 또는 gdm3를 교체할 수 있다. 아래의 명령도 똑 같다고 하는데 내 PC에서는 안되더라.

$ sudo dpkg-reconfigure gdm3

4. Desktop 재기동

단순히 PC를 재부팅해 주면 된다. 즉, Mac PC와 같이 lightdm 서비스를 중지하면 화면이 black screen이 되어 버리는 경우에는 <Alt>+<Ctrl>+<F1>~<F6>키를 눌러서 콘솔로 빠져 나갈 수는 있지만 입력하는 내용이 보이지 않아 오타가 발생하기 쉽다. black screen이 아닌 경우에는 아래와 같이 lightdm 서비스를 내리고 gdm3 서비스를 올려 주면 된다.

$ systemctl stop service lightdm
$ systemctl start service gdm3

5. Wayland로 로그인

Desktop 재기동 후 사용자 id를 선택하고 기어 모양의 아이콘을 클릭하면 "Gnome on Wayland"를 선택할 수 있다. 그리고 나서 로그인하면 완료다.


Wayland 사용담

한글 입력 문제 때문에 Gnome on Wayland를 잠깐만 써보고 다시 Unity Desktop으로 복귀했다. 전반적으로는 훌륭하다는 느낌이다. 빠르고 의외로 대부분의 앱들이 잘 동작한다. 다만 gnome-shell이 죽는 문제가 종종 발생한다. shell extensions 때문인지는 확실하지 않다.

VLC media player로 HD 동영상을 X-Server 환경에서 돌릴 때와 비교해 보면 체감속도 차이가 확난다. 가령 동영상의 중간 시점으로 스크롤해 보면 Wayland 환경에서는 곧 바로 그 시점에서 재생이 되는데 X 환경에서는 화면이 멈춰 있거나 지지거린다.

현재 Wayland 환경에서 문제가 되는 점들은 X-server가 오래된 만큼 버리기 어려운 구닥다리 소프트웨어들이 원하는 대로 잘 동작하지 않을 가능성이 있다는 점이다. 물론 비교적 최신 소프트웨어라 하더라도 Wayland를 잘 지원한다는 보장은 아직 없다. 구닥다리 소프트웨어들은 그래도 XWayland 서버가 지원되고 있어서 어느 정도는 잘 동작한다. 적어도 Gnome Desktop에 딸려오는 소프트웨어들은 Wayland를 잘 지원하는 것으로 보인다. Qt Creator의 경우에는 일부 기능에서 오류가 발생하더라. Qt도 Wayland를 잘 지원하고 있는 편이라서 큰 문제는 아닐 듯 싶다. VirtualBox의 경우에는 3D 가속 옵션을 꺼야 VM이 실행되더라.

역시나 한글 사용자들이 가장 큰 문제다. fcitx는 Wayland를 지원할 예정이라고 하는데 한글 입력이 잘되는 지는 기다려 봐야 한다. ibus는 Gnome의 기본 입력기라 한글이 잘 되어야 할텐데 안된다. 기본적으로는 Wayland 뿐만이 아니라, gdm3 환경에서 한글 입력기들을 사용할 수 없는 것으로 추정된다. gdm3를 사용해서도 Unity Desktop 으로 로그인 할 수 있는데 fcitx든 ibus든 한글 입력이 안된다.


맺음말

우분투 17.10부터 Gnome이 기본 데스크탑이 되면 Wayland 환경이 많이 안정화될 것이고, 사용자들도 급격히 늘어날 가능성이 높다. 생각보다 XOrg 서버가 빨리 퇴출될 수도 있다. 물론 상용 비디오 드라이버들의 지원도 필요하다.

늘 그래왔듯이 한글 사용자들에게는 한글 입력기 개선이라는 숙제가 남아 있다.