유니티 아니다. 뮤니티다! MATE로 만들어진 Unity 인터페이스!



http://www.omgubuntu.co.uk/2016/02/ubuntu-mate-16-04-unity-style-desktop


Unity 인터페이스는 다들 알다시피 이제 캐노니컬에서 개발을 포기했다는 사실은 다들 알고 계실 겁니다.


쓸모없었는데 잘 됐다면서 좋아하시는 분도 계시고 이제 적응해서 편하게 쓰고 있는데 왜 없앴냐면서 화내시는 분도 계실겁니다. 게다가 Unity8의 개발 과정을 지켜보면서 기대하시는 분도 계셨지요. 하지만 Canonical 주도의 Unity 인터페이스는 이제 사라졌고 다시는 볼 수 없게 되었습니다.

하지만 Unity 인터페이스 구성이 잘 만들어졌다는 것은 모두가 동의하는 사항이었습니다. 화면을 최대한 쓰기 하기 위해서 많은 고심을 했다는 것이 보였을 정도입니다. 그래서 17년 현재 비공식 배포판인 Ubuntu-MATE에서는 MATE를 기반으로 Unity인터페이스를 구현했습니다.


위 스크린샷을 보시면 왼쪽 패널에는 유니티 스타일로 프로그램 리스트들이 떠있고 위쪽 패널에는 메뉴들이 뜨게 됩니다. 누가봐도 유니티입니다. MacOS스타일의 메뉴 구성이 마음에 안 든다면 libtopmenu로 시작되는 패키지를 삭제하면 됩니다.


방법도 아주 간단합니다.


시스템 - 제어센터에 들어가신 다음 모양새 카테고리에 있는 MATE Tweak 아이콘을 클릭하시면 쉽게 하실 수 있습니다.


그러니까...


이렇게 있으니 한번 찾아보세요.


그리고 인터페이스 탭에서 패널 항목으로 가면 우분투 마테 레이아웃대신 다른 것을 선택할 수 있는데 그곳에 뮤니티가 있습니다!


여기에 있다 스크린샷에 있는 마우스 포인터 근처를 찾아보자.

이제 알아서 바뀝니다!


만약 MacOS 스타일의 메뉴가 마음에 안 드시면

sudo apt-get remove libtopmenu*

이것으로 패키지를 삭제하시면 됩니다.


욕먹고 사라진 인터페이스지만 구성이 좋기는 좋은가 보네요. Unity Desktop

,



VAAPI : https://en.wikipedia.org/wiki/Video_Acceleration_API

VDPAU : https://en.wikipedia.org/wiki/VDPAU

XvBA : https://en.wikipedia.org/wiki/X-Video_Bitstream_Acceleration




리눅스에서 동영상 가속을 위한 방법은 3가지가 있습니다.


우선 인텔이 만든 Video Acceleration API 줄여서 VAAPI라 부르는 API가 있습니다. libva.so를 이용하고 인텔이 만들었기에 당연히 인텔GPU에서 지원을 합니다. 그리고 AMD의 경우에는 오픈소스 드라이버를 이용할 경우 지원을 합니다. (Padoka PPA를 이용하시면 VAAPI가 AMD에 한해 비활성화 됩니다. 이유는 아래를 보시면 압니다.)


그리고 Nvidia가 만든 VDPAU가 있습니다. 지금이야 개나소나 다 지원하고 거의 업계표준이 되어버린 H.264 포맷이 처음 등장하고 나서 세상에 충격을 줬던 바로 그 시절에 태어난 물건입니다. 당시 PC성능으로 H264의 FHD영상은 재생이 버거워서 이런저런 방법을 강구해야 했습니다. 그 때 Nvidia가 PureVideo라는 것을 내놓았고 ATi(현재 AMD로 흡수)에서도 무언가 내놓기는 했는데... 아무튼 이 당시부터 GPU를 이용한 디코딩이 활성화 되었습니다. 그 때 만들었던 PureVideo를 리눅스로 이식하면서 VDPAU라는 이름으로 가져온 것입니다. 대략 2000년대 중후반 쯤이겠군요. 생각보다 역사가 좀 된 물건입니다.

지금은 AMD의 오픈소스 드라이버와 Nvidia의 드라이버를 사용하면 활성화가 됩니다. 인텔은 별도의 Wrapper를 사용하면 지원이 됩니다.


마지막으로 나온 XvBA란 물건이 있는데 이놈은 Catalyst를 설치했을 경우 XvBA를 지원하는 프로그램에서 활성화가 됩니다. 위의 위키피디아를 보시면 아시겠지만 다른 API에 비해 문서가 부실한데 이유야 당연히 악명높은 Catalyst를 사용했을 때만 활성화 되는데다가 위의 설명을 보셨을 아시겠지만 AMD의 오픈소스 드라이버가 VAAPI와 VDPAU를 둘다 지원하는 반면 XvBA에 대해서는 일언 반구도 없습니다. 즉, 버려진 자식 취급인것이지요.


그러니까 우분투 16.04이후로 Catalyst도 망했고 (어차피 AMDGPU드라이버로 바뀌었으니) 기존 사용자도 Catalyst를 설치할리 없으니 XvBA는 무시하도록 합시다.




VAAPI와 VDPAU는 다른 두 업체에서 처음 시작했지만 지금은 Freedesktop.org에서 관리하고 개발하고 있습니다. 물론 인텔은 VAAPI를 지원하고 있고 Nvidia는 VDAPU를 밀고 있지만 이 둘중에서 어떤 것이 승리할지는 아무도 모릅니다.


그리고 이 둘이 함께 개발이 되면서 서로가 서로를 대신하는 Wrapper도 함께 개발되었습니다. 우분투라면 vdpau-va-driver라는 패키지와 libvdpau-va-gl이란 두 패키지를 보셨을 겁니다.


패키지 설명을 잠깐 볼까요?


vdpau-va-driver

 libvdpau-va-gl

 VDPAU-based backend for VA API

VAAPI를 위한 VDPAU기반 백엔드

 VDPAU driver with OpenGL/VAAPI backend

VAAPI/OpenGL을 위한 VDPAU드라이버 백엔드


그러니까 말이 어려워서 그런데 쉽게 말하자면 VDPAU 칩셋에서 VAAPI프로그램을 돌리기 위한 패키지 (vdpau-va-driver)와 VAAPI칩셋에서 VDPAU프로그램(Adove Flash 같은)을 돌리기 위한 패키지(libvdpau-va-gl)인 것입니다.


솔직히 어떤 프로그램이 VAAPI를 지원하고 VDPAU를 지원하는지는 굳이 알 필요가 없는 것이 우분투는 알아서 이를 적용하기 때문입니다. 그러니까 끙끙 싸매지 마시고 그냥 그렇다고 하시면 됩니다.


VLC나 MPlayer를 사용하실 때 출력 드라이버가 어쩌고 하는 것을 보실수 있는데 그냥 자신의 그래픽칩셋에 맞춰서 선택하시면 됩니다.



INTEL

 VAAPI 혹은 libVA

 Nvidia

 VDPAU

 AMD

 VDPAU 혹은 VAAPI 혹은 libVA



참고 VDPAU https://www.freedesktop.org/wiki/Software/VDPAU/

VAAPI https://www.freedesktop.org/wiki/Software/vaapi/

,

hwp를 싫어하신다면 어쩔 수 없지만 또 그렇다고 하기엔 너무 편리하게 잘 만들어서 참 계륵인 그 물건 한글2008입니다.


사실 한글2008은 지금은 구하기 어려운 아시아눅스 데스크탑에 맞추어서 만들어진 물건이기 때문에 우분투에서 이를 설치하고 실행하기엔 너무 어려웠습니다. 구글검색을 해보면 rpm으로 만들어진 한글2008을 어떻게든 설치하려고 우분투가 나올 때마다 삽질에 삽질을 연속하는 것을 볼 수 있습니다. 사실 라이브러리만 잘 맞춰주면 되는 것이라서 그렇게 어렵다고 보지는 않지만 10년이 지나가는 요즘에는 호환성이 심각해져서 설치해야 하는 라이브러리가 부쩍 늘었습니다. 저 역시 16.04에 한글2008을 설치하기 위해서 엄청난 삽질을 동원했습니다.


8.04시절에는 3개만 링크 걸면 그만이었던 것이 10.04에는 5개로 늘어나고 이후에는 줄줄이...


이러고 나니 너무 귀찮더군요. 차라리 구버전 우분투나 아시아눅스를 설치한 다음 한글2008을 사용하는 것이 더 낫겠다는 생각이 들었습니다. 그렇다고 이 시점에서 10년전 배포판을 설치하는 것은 무리입니다. 하지만 Docker를 사용한다면 이야기는 달라집니다.




사실 도커가 많이 쓰이는 곳은 서버프로그램으로 서버마다 PHP버전과 MySQL등의 버전 혹은 경로가 다르다는 문제가 생기거나 배포판마다 조금씩 다르기도 하므로 시스템부터 컨테이너식으로 서버를 가상화하는 것에 가까운 물건입니다. 반가상화이기 때문에 성능 저하는 거의 없고 서버 시스템이 고대로 컨테이너화 되기 때문에 시스템 구축 문제로 머리 싸맬일이 없습니다.


즉, 우분투 구버전 혹은 아시아눅스 데스크탑을 도커에 이미지화 해서 올린다음 필요할 때마다 한글2008을 설치한 컨테이너를 올리게 되면 우분투 버전 올라갈때마다 삽질을 줄일 수 있게 되는 겁니다!!!!!!


아시아눅스의 Docker베이스가 있기는한데 아시아눅스 데스크탑이 아닌 서버버전이라 이쪽은 아니라는 생각이 들었습니다. 그래서 우분투 10.04를 기반으로 하기로 했습니다. 8.04에서는 느려서 못 써먹었던 것으로 기억하거든요.


제일 중요한 Dockerfile과 한글2008(평가판) 및 라이브러리는 아래 링크에서 받으실 수 있습니다. (MEGA이용 구글 드라이브 추후 추가 예정)


아래 링크에서 브라우저를 통해 다운로드를 누르면 된다.




https://mega.nz/#!uFMDHKxT!wSaTs6M3cp-rM-0xZkScw9RD7d2HaRbpd8o7mB-Q8ik


(Mega를 처음 쓰시는 분들은 브라우저를 통해 다운로드 받기를 누르시면 편합니다.)




우선은 Docker를 설치해야 합니다. 우분투에서 Docker는 두가지 방법으로 설치할 수 있습니다.


1. 우분투 공식 저장소를 이용

sudo apt-get install docker.io

sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker


2. Docker 저장소를 이용

https://docs.docker.com/engine/installation/linux/ubuntu/


여기를 보시면 우분투에서 어떻게 설치하는지 나오는데 순서는 다음과 같습니다. 이쪽이 버전도 높고 정리가 잘 되어있다는 느낌이라서 이쪽을 추천합니다.


sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"


그냥 이걸 쭉 긁어다가 터미널에 착 얹어 주시면 되겠습니다.


그리고


sudo apt-get update

sudo apt-get install docker-ce


Docker는 docker-ce와 docker-ee가 있는데 ce는 Comunity Edition(개인용)이란 의미고 ee는 Enterprise Edition으로 대규모 사업자 용입니다. 당연히 우린 CE를 쓰는게 맞겠지요.


위의 링크파일의 압축을 푸시면 아래 스크린샷 같은 파일들이 튀어나오게 됩니다.


뭔가 좀 쓸데없이 많아 보이지만 한글2008평가판 deb과 라이브러리 묶음과 호환성패치 일부와 도커 이미지 생성을 위한Dockerfile이다.

정말 쓸데없이 많지만 다 필요합니다. 여기서 제일 중요한 것은 Dockerfile과 start.sh입니다.


Dockerfile은 여기있는 파일들을 이용해서 우분투 10.04 기반의 한글2008이 설치된 이미지를 만들고 start.sh는 만들어진 Docker이미지를 이용해서 한글2008을 실행하는 역할을 합니다.


그렇다면 여기서 도커이미지를 만들어야겠지요.


압축을 푼곳에서 터미널을 이용합니다.


cd {압축푼곳}

sudo docker build ./ -t hwp7


도커 명령어 일부를 볼 수 있는데 build는 Dockerfile이란 파일을 이용해서 이미지를 만들라는 의미고 ./는 현재 폴더를 -t hwp7은 이미지 이름을 hwp7으로 하라고 한겁니다.


시간이 꽤 걸릴 겁니다. 우분투 10.04 베이스 파일을 Dockerhub에서 받아오고 한글2008 DEB을 설치하고 old-release.ubuntu.com(우분투 구버전 저장소)에서 필요한 라이브러리를 받아와야 하기 때문에 그렇습니다.

중간에 오류가 없으면 아무 문제없이 진행이 되었을 겁니다.


다 되었으면 start.sh 파일을 실행해봅시다.



여기서 터미널에서 실행을 누르셔야 합니다. 왜냐하면 sudo명령을 요구하기 때문에 터미널에서 실행후 sudo 패스워드를 입력해야 합니다.


이것이 마음에 안 드시면 Docker를 유저 권한으로 할 수 있게 미리 그룹에 넣으시고 start.sh 파일 제일 앞의 sudo를 지워주시면 됩니다. (하지만 관리자 권한으로 하는 것이 보안상 낫지요)


조금 기다리면 사용기간이 어쩌고 하는 메시지가 뜨는데 여기서 확인을 누르시면 한글2008이 실행이 됩니다.


시스템의 거의 왠만한 폰트는 사용할 수 있게 볼륨링크를 해놓았고 파일-불러오기-/home/hwp

에 들어가시면 호스트의 홈폴더접근이 가능합니다. 홈폴더 외에 접근을 할리는 없으니 이렇게만 해 놓았습니다.


/home/hwp 를 통해 내 홈폴더에 접근이 가능하다.

주의 사항으로는 이런저런 설정을 해 놓아봐야 설정 저장이 안 됩니다. 즉, 설치후 완전 기본 상태라는 것입니다. docker commit을 한번 하면 되긴하는데 이건... 나중에 자세히 보고 알려드리겠습니다.


참고로 프린트는 지원되지 않습니다. 한글2008이 죽어버리더군요. 아마도 cups관련 문제인 것으로 보입니다. 하지만 문제없지요. 왜냐하면 우리에겐 우분투용 한컴뷰어가 있잖아요!


한글2008은 어디까지나 구버전이므로 HWP의 편집이 필요한 경우에만 쓰고 문서보기나 프린트는 한컴뷰어로 때우시는 것을 추천합니다.


참고로 이건 Docker를 이용한 것이므로 Arch든 CentOS든 RHEL이든 Debian이든 상관없이 Docker만 설치하면 한글2008 구동이 된다는 것을 의미합니다. 참 편하죠?


데스크탑의 정리가 필요하다면 start.sh 파일만 잘 복사해뒀다가 써도 좋습니다. 일단 이미지 만들어진 다음에는 start.sh파일 외에는 필요가 없거든요. 링크정도로 만들어서 바탕화면에 놓는다거나 하면 되겠지요.




P.S 생각보다 요구하는 라이브러리가 많이서 깜짝 놀랐습니다. Docker이미지가 1기가가 넘습니다. 이 정도일 줄은 몰랐는데...


P.S-2 커널 4.5 이상을 쓰실 때 Docker 설치가 어려우시면 aufs가 문제입니다. 4.5에선 aufs지원이 삭제되었다고 들었거든요. overlay라는 가상 파일 시스템을 쓴다고 합니다. 보통은 Docker가 알아서 한다고 설치중 오류가 난다면


/etc/docker/daemon.json


여기에 해당 파일을 만들어서



{
  "storage-driver": "overlay2"
}

요렇게 적으면 된다고 합니다.


물론 파일은 관리자 권한으로 만들어야겠지요.

,