Docker란 프로그램을 들어보신적이 있으실겁니다. 이놈의 정제가 뭐냐하면 특정 리눅스 컨테이너를 만들고 필요에 따라서 가상화하여 올렸다 내렸다 하는 총체적인 솔루션입니다.


기본적으로 lxc를 이용하고 있고 여기에 관리용 hub를 덧붙여서 이용하고 있습니다. VirtualBox나 VMware의 저수준 가상화가 아닌 일종의 Sandbox가상화입니다.


한번 컨테이너를 만들어 놓으면 해당 컨테이너를 쓰다가 그냥 컨테이너를 내리는 것으로 초기화를 한번에 할 수 있어서 편합니다. 그리고 Sandbox가상화이기 때문에 성능상 손해가 없다고 봐야 합니다.


그런데 이런건 보통 서버에서 필요한 것인데 데스크탑인 우분투에서 대체 어떤 용도로 이 녀석이 필요한 것일까요?


여러가지가 있지만 대표적인 몇가지만 알려드리겠습니다.


우분투에서 소스 컴파일을 통해 설치를 하려고 하면 이것저것 패키지를 많이 설치해야하고 설치후에도 이것 저것 쓰레기가 많이 남습니다. 그리고 컴파일한 패키지를 배포하려고 해도 우분투의 버전이 좀 많습니까? 각각의 배포판에 맞게 패키징을 해야하는데 그럼 각각의 버전을 또 설치해야합니다. 이걸 하나하나 한다고 생각해보세요. 미쳐 돌아갈 지경입니다.


또 다른 것으로는 바이너리 형태로 배포되는 프로그램 중에서 특정 배포판만을 지원하는 경우가 있습니다. 지금은 억지로나마 설치를 하지만 어쨌건 삽질하면서 설치하는 한글2008이나 Redhat 계열만을 지원하는 Abacus, 혹은 우분투와 페도라만을 지원하는 구글 크롬등이 있습니다. 이런 경우에는 해당 배포판을 설치해야하지만 Docker를 이용해서 해당 프로그램을 설치한다면 아무런 문제없이 설치를 할 수 있게 됩니다.


하지만 이런 Docker사용시 한가지 문제가 있는데 GUI 프로그램을 쓰려면 Xorg가 호스트에서 실행되고 있어야 한다는 것입니다. 당연하다면 당연한 이야기입니다.


하지만 컨테이너에서는 Xorg가 없어도 됩니다. 호스트의 Xorg가 모든 것을 대신해 주거든요. 그 말은 호스트의 자원을 이용할 수 있다는 의미입니다.


docker를 설치하고 설정하고 컨테이너를 빌드하는 것은 다른 곳에 더 좋은 내용이 많기 때문에 이 부분은 넘어가고 저는 컨테이너에 설치된 GUI프로그램을 실행하는 방법에 대해 알려드리겠습니다.


docker의 컨테이너를 실행할 때 대부분 여러분들은 이 명령으로 시작할 겁니다.


sudo docker run ~~ /bin/bash


그런데 GUI를 하시려면 여기에 몇가지가 더 들어가야 합니다.


sudo docker run --rm -it -v /run/user/1000:/run/user/1000 -v /dev:/dev -v /tmp/.X11-unix:/tmp/.X11-unix:ro --privileged --ipc=host --shm-size=256m --net=host -e DISPLAY=$DISPLAY -e XDG_RUNTIME_DIR=/run/user/1000 /bin/bash


이렇게 하시면 pid 1000으로 Docker가 실행되면서 X가 함께 실행이 되고 256m의 공유메모리가 함께 만들어지며 쉘로 bash가 실행되게 됩니다.


그럼 바로 GUI 프로그램의 명령을 내려볼까요? firefox같은 것이 좋겠네요.


그럼 데스크탑을 못 찾는다면서 에러가 날 겁니다.


호스트에서도 한가지 더 설정을 해야 하거든요. 호스트 컴퓨터에서 터미널을 열고 다음 명령을 내리도록 합시다.


xhost +local:docker


이렇게 하면 docker로 실행되는 프로그램이 호스트의 X를 통해서 실행이 되게 됩니다. 이제 한번 다시 컨테이너에서 명령을 내려보세요. 컨테이너의 설정에 맞춰서 프로그램이 실행될겁니다. 자그마치 호스트 프로그램과 함께 말이지요!


복잡하게 움직이기는 했지만 생각보단 쉽지 않나요? 이렇게 사용하시면 Docker의 프로그램에서 어떤짓을 하더라도 깔끔하게 다시 돌아올 수 있답니다. 참 쉽죠?


P.S 우분투에서 Docker 설치는 굉장히 쉽습니다.

sudo apt-get update
sudo apt-get install docker.io
sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker 

Windows에서 설치하려들면 미쳐돌아가는 반면 우분투는 리눅스라 Docker가 굉장히 쉽지요. 책에서보면 몇 페이지에 걸쳐서 설명하던데 Docker는 역시 리눅스에서 돌리는 것이 가장 좋습니다.


P.S-2 Docker가 굉장히 유용한 배포판으로 Arch와 FreeBSD가 있습니다. Arch는 롤링릴리즈 특성상 구버전 설치가 힘든데 구버전을 길게 지원하는 Debian이나 Ubuntu LTS를 Docker에 올려놓고 해당 배포판용 프로그램을 사용하는 경우가 많다고 합니다. FreeBSD는 Linux가 아닌 BSD이므로 Linux전용 프로그램을 요구할 때 사용한다고 합니다.


P.S-3 호스트의 X를 사용하는 것으로 굉장한 강점이 있는데 컨테이너에서 그래픽가속도 됩니다. 보통 가상화는 오버헤드가 많은데 이쪽은 오버헤드 자체가 없습니다.

,


출처 - http://sourceforge.net/projects/rebeccablackos/?source=navbar 레베카 블랙 OS라서 레베카 블랙의 뮤직비디오를 띄운 스크린샷이 올라와 있다.

이전에 저는 Wayland와 Xorg에 대한 글을 올린 적이 있었습니다.http://moordev.tistory.com/39

그런데 Wayland에 대한 글만 잔뜩 쓰고, Wayland의 스크린샷 하나 올리지 않았더군요. 그 당시 저는 Wayland를 쓰려면 Arch Linux를 이용하는 것이 가장 좋다고 했었는데 혹시나 하고 찾아보니 우분투 기반으로 nerdopolis라는 분이 만든 버전이 있었습니다. 사실 직접 Customizer로 작업하려고 소스 컴파일까지 했었는데 이 배포판을 보자마자 작업하던 것을 그냥 지워버렸습니다. 이미 Wayland를 경험할 수 있는 모든 것을 다 갖춘 배포판이어서 굳이 Arch를 설치할 이유도, 굳이 우분투를 커스터마이징 할 이유도 없었습니다. 그냥 이 배포판 하나면 Wayland가 이런 거구나~정도로 다 알 수 있습니다.


Rebecca Black 이란 이름의 정체?

그런데 이름이 좀 웃기기는 합니다. Rebecca Black이라? 이게 무슨 뜻일까 하고 검색해 봤더니 유튜브에서 (안 좋은 쪽으로) 유명한 한 여성의 이름이더군요.위의 스크린샷에 떠 있는 유튜브 영상속의 여성분이 바로 Rebecca Black입니다. 아무튼 이 Rebecca Black의 팬인 어느 한 분이 직접 만든 OS가 이 OS라고 합니다. 배경이 일부 팬심으로 만든 배포판과는 다르게 이 여성 사진으로 도배 되어 있다거나 기본 홈페이지가 뮤직비디오 유튜브채널이라던가 하는 일은 없고 오로지 이름만 RebeccaBlackOS이기 때문에 크게 부담은 없습니다.(다만 라이브 사용자 이름이 beccaholic입니다.)


현재 Wayland를 이용하는 데스크탑 환경이라 할 수 있는 것은 대략 4가지가 있습니다.

1. Weston

2. Gnome Shell

3. Enlightment wayland

4. Hawaii


Orbital이란 것도 있고 SWC란 것도 있다고는 하는데 저는 해당 데스크탑들은 구동이 안 되어서 확인 못했습니다. 메이저라 할 수 있는 KDE도 포팅 중이지만, 아직 여기에 들어가지는 못했습니다. Gnome은 Xwayland를 약간 써서 구동이 되는 수준이라고 하구요. Gnome Shell 3.14에서는 완벽히 Wayland에 포팅할 예정이라고 합니다. 왠지 기대되네요.


한번 스크린샷을 쭉 봅시다. 참고로 VirtualBox를 이용했기 때문에 KMS가 필요한 Gnome Shell이나 Enlightment는 스크린샷이 없습니다. 대신 Xorg 기반과 모습이 동일하기 때문에 따로 Wayland라고 딱히 다른 것은 없습니다.


다운로드는 http://sourceforge.net/projects/rebeccablackos/files/ 여기에서 그나마 날짜가 최신인 폴더로 들어가 iso파일을 받으시면 됩니다. 32/64 모두 지원하기 위해 32비트용으로 만들어서 배포한다고 합니다. 그 다음 iso파일을 DVD로 굽던지 아니면 Unetbootin을 이용해서 USB에 담던지 아니면 USB Image Writer로 USB에 구워주시면 됩니다.


우선 부팅화면부터 보겠습니다. (Unetbootin을 이용하시면 이 스크린샷과는 다르게 Untebootin의 화면이 나옵니다.)


제일 윗줄이 가장 일반적으로 사용할 메뉴입니다. 그냥 기본 라이브모드 진입입니다. 그 아래는 KMS를 지원하지 않는 시스템용입니다. 그러한 시스템의 대표적인 것이 VirtualBox를 들 수 있습니다. 만약 가상머신을 통해서 확인 해보시고 싶으시다면 아래의 메뉴중 원하는 해상도를 찾아 선택해주시면 됩니다. 보통 USB나 DVD를 이용하시면 제일 위의 메뉴를 이용하시는 것이 가장 좋습니다.


RBOS 이렇게 검색하니 이상한 것만 잔뜩 나온다. 검색할 때는 약어를 쓰지말고 RebeccaBlackOS라고 꼭 풀네임을 쓰자

부트 화면도 의외로 깔끔합니다.


여러모로 확 깨는 로그온 화면. 아직 정착중인 Wayland니까 이 정도는 봐주자.

우분투 기반이지만,(정확히는 쿠분투기반입니다. 기본 아이콘이 KDE입니다.) 확실히 다른 모습을 보입니다. 그런데 이거 사실 로그온 화면입니다. Wayland가 아직 GDM이나 LightDM같은 변변한 로그온화면이 없어서 이런 식으로 로그온 화면을 만들었습니다. 저는 VirtualBox를 통해 스크린샷을 찍어서 Enlightment와 Gnome Shell 세션을 사용 할 수 없습니다. USB/DVD부트 하신 분들은 Enlightment와 GnomeShell을 사용하실 수 있을겁니다.


그냥 보면 투박한 화면 같지만 Xorg가 아니라 Wayland다.

가장 기본적인 Wayland 쉘인 Weston입니다.

위의 로그온(?)화면과 비슷하지요? 위의 로그온화면도 사실 Weston에 아이콘을 줄여서 만든 화면입니다. weston을 로그온화면으로 쓰다니...기발한 생각인 것 같기도 합니다.


참고로 여기 있는 것들 KDE어플리케이션이다. Wayland로 포팅된 것이 아니라 Xwayland를 이용해서 X11용 어플리케이션을 돌리는 것이다.

Application Launcher를 실행했더니 메뉴형식이 아니라 이렇게 하나의 창에 뜨더군요. 사실 Weston이 완벽한 물건이라기 보다는 다른 데스크톱 환경을 위해서 만들어진 경향이 커서 그냥 쓰기에는 상당히 부적합합니다. 그놈이나 KDE같이 아이콘 배치도 마우스로 하는 것이 아니라 weton.ini파일을 텍스트로 수정해야 하더군요. Wayland가 정착되면 이 화면 보기 어려울 듯 합니다.


다른 것은 대충 알겠는데 Hybrid Sleep은 뭘까?

로그 아웃을 눌렀더니 뜨는 창. 역시 심플합니다. 아직은 테스트 성격이 강하니까요.


약간 안드로이드 타블렛스러운 화면 안드로이드에서 이런 런처를 만들어도 잘 될 듯 하다.

Wayland 기반 중에서 제일 기대되는 환경인 Hawaii입니다. 기존 Gnome Shell포팅이나 KDE포팅보다 이 환경이 저는 더 기다려지더군요. 아직 안정 버전조차 나오지 않은 신예지만 상당히 깔끔한 것이 기대됩니다.


일단 Wayland만의 어플은 부족해서 KDE의 어플과 gedit등의 Gnome 어플을 가져왔다.

KDE메뉴를 빌려서 쓰던 Weston보다 훨씬 깔끔한 메뉴입니다. 이 화면 사실 터치에 최적화된 UI라고 합니다. 어쩐지 타블렛스러운 화면이 그럴것 같더니 하지만 마우스로도 상당히 편하게 잘 됩니다. MauiOS에서 만들고 있는데 정말 기대됩니다.


우선 화면을 보면 상당히 깔끔한 화면들을 보실 수 있습니다. 그런데 이 Wayland가 가진 가장 중요한 키포인트가 굉장히 가볍다는 것인데요. 실제로 구동해본결과 GPU가속만 되면 상당히 쾌적한 퍼포먼스를 보여줍니다. 굼벵이 기어가는 Xorg와는 차원을 달리 합니다. X11프로그램도 Xwayland를 중간에 거치는데도 Xorg에서 돌리는 것하고 큰 차이를 보이지를 않았습니다. 우분투나 페도라 같은 큰 메이저 배포판에서 Wayland를 기본 데스크탑 환경으로 채택할 날도 멀지 않은 것 같습니다. (우분투는 Wayland가 아니라 자체 개발하는 Mir를 밀고 있기는 합니디만...) 아직 일부 프로그램 실행 시 불안정한 모습이 많이 보여서 걸리기는 하지만 이는 시간이 해결해 줄 것이라고 믿겠습니다.


Wayland를 말로만 들으셨나요? 한번 Wayland란 놈을 써보시는 것은 어떤가요? 미래를 미리 체험한다고 생각하고 한번 테스트해보시면 정말 신세계를 느끼실 수 있을 것입니다. Wayland가 메이저가 되는 날도 멀지 않은 것 같습니다.

,



 

 VS

 



간만의 포스팅이군요. 한동안 Long Live The Queen 한글패치 관련 작업 및 다른 일 떄문에 글을 전혀 올리지 못했습니다. 이제 원래 블로그 주제에 맞는 글을 다시 올려야지요. 다시 한번 말하지만 여기는 우분투/리눅스민트 사용 및 리눅스에 대한 이야기를 적는 블로그니까요. 기타 삽질 카테고리가 우분투 카테고리보다 늘어나면 블로그명 부터 갈아엎을 겁니다.


이제 서론은 그만두기로 하고, 이번 포스팅 주제를 다시 이야기 하도록 하겠습니다. 이번 포스팅 주제는 지는 해 Xorg와 뜨는 해 Wayland에 대해 써보도록 하겠습니다.(뜬금없이 나타난 해 - Mir는 제대로 공개가 되면 이야기 해봅시다.)


1. Xorg 이것은 무엇일까?

Xorg는 최초의 GUI 시스템인 X윈도우(X11)의 일종입니다. XFree86이 최초의 GUI 구현체였지만 이것이 라이센스가 꼬이면서 사람들은 마지막으로 라이센스가 GPL이었던 버전을 그대로 Fork해서 새로이 만들어내었습니다. 이쪽은 라이센스가 여전히 GPL 혹은 LGPL이었기에 커뮤니티 기반의 리눅스/유닉스 배포판에서 환영을 받았습니다. 물론 대부분의 배포판이 전부 Xorg로 넘어간것도 다 라이센스문제 때문이었지요. 특히 GPL이 꼬여있는 것이 문제였습니다. (이후에 비슷한 일이 OpenOffice.org와 LibreOffice에서 일어납니다.)

그런데 Xorg는 바로 전에 말했듯이 기존의 만들어졌던 XFree86의 후손이기에 소스코드가 XFree86기반이었고, 이 소스는 자그마치 80년대에 만들어진 코드였습니다. 즉, 만들어진지 30년이 된 시스템을 이리저리 때워가며 만든 것입니다. 그런데 2010년대에 들어선 지금에도 대다수 리눅스/유닉스의 GUI는 거의 Xorg 혹은 XFree86입니다. 사실 그동안 많이 쓰이기도 했고 대다수 프로그램들이 이 X11기반으로 돌아가기 때문에 당연하게도 이 Xorg를 이리저리 고쳐서 쓰는 실정입니다. 사실 중간에 격변을 거치기는 했습니다. 문제는 격변이 덩치 불리기로 이루어져서 코드 최적화가 더 이상 불가능할 정도로 안드로메다로 날아가 버렸다는 것이 문제입니다. 그리고, 새로운 그래픽 카드들은 계속 나오고 있고, 이를 지원하기 위한 각종 기술들이 들어가기 시작했고, KMS나 DRI, AIGLX 등의 많은 기능이 추가되게 됩니다. 문제는, 이를 다 쓰기에 Xorg는 너무 낡은 코드를 사용했고, 가벼운 데스크탑을 지향하기에는 조금 무리가 따르게 되었다는 것입니다. 그러던 어느날, Wayland란 녀석이 눈에 띄게 되면서 이 물건이 Xorg의 자리를 노리기 시작합니다.


2. Wayland의 정체

Wayland는 사실 레드햇 개발자가 따로 떨어져나와 시작된 프로젝트였습니다. 꼭 필요했던, 하지만 아무도 시작하지 못했던 그런 프로젝트였지요. 그런데, Wayland 이놈은 대부분 기능을 커널에 넘겨버리는 짓을 합니다. 즉, 커널이 디스플레이의 대부분을 담당하게 하면서, 자신의 몸집을 줄이는 방향을 택한 것이지요. 사실 KMS와 DRI기능이 커널에 들어가면서 이것이 가능하게 되었는데, 지금 사용하는 리눅스 데스크탑은 전부 사용하고 있는 기술입니다. 언제부터 갑자기 xorg.conf 삽질을 하지 않아도 알아서 해상도가 잡히고, 입력 장치들이 알아서 인식되는 등, 한번 Xorg에 큰 변화가 이루어진 적이 있었는데, 이것이 바로 KMS가 있었기에 가능했던 것이지요. 아마도 KMS가 본격적으로 지원된 커널이 2.6.35버전부터 였을 것입니다. 아무튼 Xorg의 코드 사용은 점점 줄어가는데 정작 Xorg는 코드가 너무 방대해서 이 코드들을 줄일 방법이 전혀 없었습니다. 지금도 레거시 지원이라는 명목으로 예전 방식 그대로 설정을 하면 그대로 먹히기는 합니다만, 해상도 설정이나 입력장치 설정 같은 것은 굳이 예전방식으로 할 이유는 없다고 봅니다. KMS방식이 훨씬 빠르기도 하고 가볍기 때문이지요.

 Wayland는 이를 중점으로 삼고 기존의 X11이 사용하지 않거나 사용되지 않게 될 부분을 과감히 쳐내고 필요한 부분 만을 구현해서 만들어냅니다. 이를 통해서 훨씬 작은 시스템이 가능해지고, 가벼운 데스크탑 환경을 만들 수 있게 되었습니다. 실제로 Wayland는 Xorg의 1/10크기 정도라고 하네요.


3. Xorg는 이대로 사라질 것인가?

Xorg도 그렇고 Xfree86도 그렇고, 이 물건들은 자동차로 치면 거의 포니 수준입니다. 그런데 이 포니에 HUD장치를 달고, 내비게이션을 달고, 이것저것 장치를 주렁주렁 달려고 하다 보니, 자동차가 삐걱거리기 일쑤에 지금은 쓰지 않는 쓸데없는 것도 생기게 됩니다. 이미 낡은 자동차에 장치만 잔뜩 달면 기름도 많이 먹겠지요? 참 보는 사람도 답답할 지경입니다.

이런 차에 내비게이션 달고, ABS브레이크를 넣고, 아이팟 시스템을 달고, HID라이트를 달고... 그냥 차를 바꾸는 것이 낫지 않을까? 사진은 현대 포니 출처 - 위키피디아

분명히 지금 사용하는 X11기반 프로그램들도 Wayland로 포팅될 것은 확실해 보입니다. KDE나 Gnome같은 메이저 데스크탑 환경도 Wayland로 포팅중이고 QT5기반의 새로운 Wayland기반 데스크탑 환경도 니왔습니다. (이름은 Hawaii입니다. MAUI프로젝트에서 진행 중입니다. (http://www.maui-project.org/) 그런데 Wayland로 넘어가기 위해 우리는 어떻게 해야 할까요? 사실 우리는 Wayland가 나왔다고 무조건 바꿀 수 있는 상황이 안 됩니다. Wayland만으로는 인터넷조차 하기 버거운 상황이거든요. Firefox가 Wayland기반이 아니라 여전히 X11을 이용하기 때문에 간단한 인터넷도 현재 Wayland만으로는 부족합니다. Firefox나 Chrome도 결국에는 X11기반이 아닌 다른 물건으로 바뀌겠지만, 그것이 Wayland가 될지 아니면 다른 프로젝트의 결과물(Mir같은...)이 될지는 아무도 모릅니다. 그 때쯤이면 Xorg는 추억속의 물건이 될지도 모르겠습니다.


4. Wayland를 지금 써보고 싶다면?

현재 Wayland는 그럭저럭 쓸만한 수준까지 만들어져 있습니다. 그런데 이를 제대로 활용한 배포판이 많지가 않습니다. Debian에 Wayland는 있지만 Debian이 그렇듯이 검증 안 된 패키지는 저장소에 잘 안 들어가게 됩니다. 따라서 Debian은 Wayland를 이용하기 좀 어려운 배포판입니다.(물론  Unstable이나 Sid를 이용하면 되기는 합니다.) Wayland를 써보시겠다면 ArchLinux로 써보시길 추천드립니다. Wayland같이 안정 버전이 없거나, 검증되지 않은 패키지는 빠른 업데이트가 제일 중요한데 Arch같이 빠른 업데이트를 지원하는 배포판은 없기 때문입니다. 게다가 다른 배포판(Debian계열이나 Ubuntu계열이 대표적으로)은 wayland 패키지를 설치했어도 xorg패키지를 설치하지 않으면 GUI설정이 전혀 안되거나 스크립트를 이리저리 뜯어야 하는 문제가 있지만, Arch는 원래 GUI부터 수동이라 Wayland설정을 하기가 더 쉽습니다. 위에서 말한 MAUI프로젝트도 Arch기반인 것도 다 이유가 있는 것이지요. https://wiki.archlinux.org/index.php/wayland 여기의 내용을 그대로 따라하시면 Wayland 기반의 Arch환경을 구축 하실 수 있습니다. 여기에 X호환환경을 만들어주는(사실 Wayland내에 Xorg를 올리는 형태지만) Xwayland를 갖춰주시면 지금도 쓸만한 데스크탑환경이 됩니다.(Xwayland를 이용함으로써 X11기반 프로그램도 쓸 수 있습니다.)

 반대로 Xorg환경내에서 wayland를 이용하고 싶으시다면 기존의 X11기반의 배포판에 wayland를 설치만 해주시면 weston 명령으로 wayland를 창 형태로 돌려보실 수 있습니다.다만, wayland전용의 환경은 많지 않아서 말 그대로 테스트 그 이상의 효과는 못 낼 것 같습니다. 하지만 X11용 그래픽드라이버를 이용하면서 가속도 할 수 있으니, nvidia나 따끈따끈한 신형 AMD GPU 이용자(Catalyst만이 해답인..)라면 이걸로 쓸 수 밖에 없을 것입니다. Wayland는 오로지 오픈소스 드라이버만이 사용 가능하니까요.


5. 잠깐 Xwayland라고요?

위에서 저는 언젠가는 X11기반 프로그램들이 Wayland 기반으로 포팅 될 것이라고 했습니다. 하지만, 사실 Wayland는 X11호환을 위한 라이브러리가 준비 되어있습니다. 제가 Xorg환경내에서 weston명령을 쓰면 새 X11창 내에 Wayland 환경이 뜬다고 했지요? 그걸 반대로 뒤집으면 된다고 생각하면 됩니다. Wayland환경내에 X11환경을 띄우는 것입니다. OSX도 비슷한 짓을 하니까(X11을 내부에서 돌립니다.) X11자체는 크게 패치를 할 것이 없을겁니다. 이 것을 이용하면 Wayland로 포팅이 이루어지지 않은 프로그램도 쉽게 쓸 수 있게됩니다. 예를 들면 지금의 유료프로그램을 들 수 있겠네요. Matlab이라든가, 한글2008같은 프로그램 것 말이지요. 특히 한글은 wayland로 포팅 될 일이 없을 테니 꼭 필요해 보입니다. 그런 프로그램들을 위해 Xwayland가 준비 되었는데, X11이 완전히 사라지게 되면 Wayland내에서도 바로 내 쳐질 것입니다. 어차피 호환을 위해 만들어진 기능이니까요. 하지만 X11이 30년동안 쓰여오면서 그 기반 프로그램을 무시 못하니 Xwayland가 만들어진 것입니다. 30년 동안 쓰인 GUI서버가 언제쯤 사라지게 될지는 알 수 없지만, 그 때까지 부족한 Wayland기반 프로그램들을 대신해줄 물건임에는 틀림 없습니다.


6. Wayland외의 또 다른 경쟁자는?

 과거의 X11을 대체하기 위해 만들어진 프로젝트는 많았습니다. 그나마 뚜렷한 성과를 보인 것은 XGL(OpenGL기반 X11대체 프로젝트)이 있었습니다. 하지만 이도 AIGLX(X11 개선에 초점)에 의해 밀렸고, 지금까지도 X11이 쓰이게 됩니다. 즉, Wayland같이 이렇게 가시적인 성과를 보인 프로젝트는 거의 없었던 것이지요. 딱 하나만 제외하고요. 우분투를 만들어서 배포하는 캐노니컬의 Mir가 현재로써는 유일한 경쟁자로 보입니다. Mir가 어떻게 나올지 어떤 모습을 하게 될지는 캐노니컬이 공개를 하지 않아서 알 수는 없지만, Wayland와 비슷한 형태가 될 것이라고 생각은 듭니다. 어쩌면 XGL vs AIGLX 때처럼 Mir vs Wayland가 될 가능성도 있겠지요. 어떤 프로젝트가 사라지게 될지 아니면 둘 다 살아남아서 서로의 장점을 이끌어낼지는 아무도 모릅니다. 하지만 Mir가 공개된 정보가 많지가 않아서 Wayland와 다르게 알 수가 없습니다. 지금 당장 사용해 볼 수도 없고 알 수도 없어서 아직까지는 Wayland가 대세라고 생각합니다. Mir는 이 Wayland를 뛰어넘어야만 세상에 공개 될 것 같습니다.


리눅스/유닉스는 X11을 통해서 GUI란 놈을 세상에 알렸습니다. 실제로 GUI를 제대로 퍼뜨린 것은 Apple이지만, GUI의 개념을 제대로 만들어 낸 최초의 결과물은 X11이었지요. 이제 그 X11이 역사속으로 사라질 준비를 하고 있습니다. 다만, 역사속으로 사라지려면 좀 시간이 많이 걸릴 것 같네요. 과연 Wayland가 성공적으로 안착을 할 수 있을까요? Xorg는 역사 속으로 사라질 수 있을까요? 리눅스/유닉스의 GUI는 또 어떻게 바뀔까요? 모바일 시대로 넘어가는 이 때의 Wayland가 모바일 시대에 맞춰서 나올 수 있을까요? 10년 뒤의 모습이 정말 궁금합니다.


2016. 3. 23 추가

2016년이 되고보니 Mir도 공개되고 Wayland와 맞붙을 준비가 되었습니다. 아직 Mir가 지원하는 환경이 많지는 않지만 Wayland가 지금까지 걸어온 길에 비해 상당히 순항을 한 것으로 보입니다. 특히 이제는 Unity가 불편한 UI가 아닌 빠릿하고 편리한 UI라는 평가를 받는 지금 Mir가 Wayland에 비해 이득이 더 클 것으로 보입니다. 아쉬운 것은 Wayland가 아직까지도 안정화가 안 되었다는 사실입니다. Mir는 이제 16.04에 탑재 되는 것으로 잠정 결론이 났는데(15.10에서 설치가 가능합니다.)Wayland는 아직까지도 안정화가 되었다는 느낌이 없습니다.

이렇게 가다가는 Wayland를 10년뒤에나 제대로 볼 수 있을지도 잘 모르겠습니다.

,