Linux/Ubuntu Debian

우분투뱅(?) - 10 : xcompmgr (윈도우 가장자리 그림자 효과)

smores 2014. 5. 31. 01:06

앞에서 virtualbox guestadditions에 대한 설명 중 xcompmgr 이라는 유틸리티에 대해 언급한 바 있다. 이 유틸리티는 x-window에 몇가지 효과를 덧붙이는 composite manager 중의 하나이다. 예를 들면 최근 GUI 들은 리눅스건 MS 윈도우즈건 (Win8부터는 그림자도 없애고 도로 심플해 진 것 같다) 윈도우 가장자리에 그림자 효과를 주어서 윈도우가 살짝 떠 올라 보이도록 해 주면서 구분이 용이하게 도와주는 효과가 있다. 그리고 fade-in/out 이라고 윈도우가 부드럽게 열리고 닫히는 것 처럼 보이는 효과도 있다. 이러한 효과들을 위해 xcompmgr 라는 유틸리티를 사용하고자 한다. 다만 가벼운 데스크탑을 만들고자 하는 목적일 경우는 이것을 사용하지 않는 것이 조금이라도 메모리를 절약할 수 있다. 아니면 평소에는 자동시작으로 해 놓지 않고 쓰고 싶을때만 터미널에서 백그라운드로 실행시키고 필요 없으면 프로세스를 죽이는 식으로 할 수도 있겠다. 


xcompmgr 의 사용법은 인터넷을 뒤지면 잘 나오고, 터미널에서 간단히 $ xcompmgr --help 라고만 넣어 주어도 옵션 설명이 잘 나온다. autostart 를 위해서 본인의 경우는 ~/.config/openbox/autostart  안에 다음의 한 줄을 첨부해 놓았다.


xcompmgr -cCfF -r9 -o.75 -t-9 -l-10 -D5 &


마지막 & 는 리눅스에서는 프로세스를 백그라운드로 돌리라는 뜻이다. 자동실행을 하기 싫고 필요할 때만 쓰고 싶으면 터미널에서 마찬가지로


$ xcompmgr -cCfF -r9 -o.75 -t-9 -l-10 -D5 &


라고 실행해 준다. 이 프로세스를 죽이려면 $ ps -A | grep xcomp 를 해서 프로세스 번호를 확인 후 $ kill -9 프로세스번호  로 죽일 수 있다.


xcompmgr 을 테스트하면서 한가지 문제를 발견했다. 현재 ubuntu server 12.04LTS 를 인스톨 후 소스리스트를 update 를 해 놓은 상태에서 $ sudo apt-get install xcompmgr 을 해서 인스톨 하면 버전 1.1.6 이 인스톨 된다. 그런데 이 버전의 경우 시스템에 따라서 (조금 랜덤한 듯 하다) 윈도우 가장자리에 그림자를 제대로 그리지 못하는 버그가 있다고 한다. 이것을 몰라서 몇시간이고 시도하다가 구글링을 한 후에야 알게 된 사실... T_T


http://lists.freebsd.org/pipermail/freebsd-x11/2012-June/012043.html

http://www.reddit.com/r/archlinux/comments/s6fr4/xcompmgr_failing_to_draw_shadows_this_happening/


아마도 1.1.5 및 그 이하의 버전에서는 문제가 없는 듯 하다. 때문에 버전 1.1.5를 찾아서 인스톨하기 위한 삽질을 여러가지로 해 보았다. 한 방법으로는 아래의 링크에서 1.1.5 버전의 .deb 파일을 받아서 인스톨하는 방법일 것이다. 헌데 다운로드 받아지질 않는다. :(


http://pkgs.org/debian-squeeze/debian-main-i386/xcompmgr_1.1.5-1_i386.deb.html


그래서 본인의 경우는 조금 무식한 방법을 썼다. 


일단 크런치뱅10(옛버전)에서 인스톨을 해 보니 1.1.5가 인스톨이 되는 것을 확인했다. 그리고 실행해 본 결과 그림자 효과를 포함해서 모든 기능이 다 잘 되는 것을 역시 확인했다. 그래서 크런치뱅에 있는 /etc/apt/sources.list 파일을 복사해 와서 우분투뱅의 /etc/apt/sources.list 와 바꿔놓고 인스톨해 보았다. 의존성 관련 경고가 뜨는데 무시하고 인스톨 후 실행해 보니 잘 된다 !!!


한가지 팁으로는 원래의 sources.list 는 sources.list.org 로 이름을 바꾸어두고 (/etc/apt 내의 파일을 다루려면 모두 sudo 하에서 해야 함) 크런치뱅의 것을 /etc/apt 에 복사해 준 후 $ sudo apt-get update 로 리스트 업데이트 (다운데이트?) 해 준 후 $ sudo apt-get install xcompmgr 로 인스톨 해 준다. 다 설치한 후에는 sources.list 를 sources.list.crunchbang10 으로 이름을 바꾸어서 보관해 두고 (나중에 써먹을 지 모르니까...) 원래의 sources.list.org 를 sources.list 로 복사(mv 가 아닌 cp 로 했다)해 주고 다시 한번 $ sudo apt-get update  한번 해 놓았다.


다음은 크런치뱅10에서 가져온 sources.list 이다.


sources.list


다음 그림들은 xcompmgr 실행 전과 후의 모습이다.






추가


xcompmgr 1.1.5  버전의 .deb 파일을 찾았다.


https://launchpad.net/ubuntu/precise/i386/xcompmgr/1.1.5-1


xcompmgr_1.1.5-1_i386.deb


다운받아서 $ sudo dpkg -i xcompmgr_1.1.5-1_i386.deb 로 설치 후 사용해 보니 잘 된다.