Coffee the Black

How to make Terminal running as the desktop background

Posted in Computer / IT by mycoffee on 2009/07/26

Linux 를 쓰면 필연적으로 터미널에서 콘솔 작업을 해야 할 경우가 많다. 특히 어느 정도 본격적인(?) 작업을 한다면 창을 크게 하거나 아예 전체화면 상태에서 하게 되는데, 매번 필요할 때마다 Terminal 을 실행하는 건 아무래도 귀찮은 짓이었다. 그렇다고 Ctrl+Alt+F1 등의 가상 콘솔을 사용하려니 다른 GUI 기반의 프로그램들과 함께 쓰기가 불편해서 망설여졌다.

그러다 문득, 아예 특정 워크스페이스 화면 전체를 콘솔 용도로 할당한다면 좋지 않을까 하는 생각이 들었다. 부팅할 때 자동으로 특정 워크스페이스에서 실행되도록 하고, 하는 김에 해당 콘솔은 아예 바탕화면처럼 깔리는 형태로 돌아가면 좋을 것 같았다. Compiz Desktop Cube 등을 쓰고 있기도 하니 넓은 화면에서 콘솔 작업을 하려면 단순히 큐브를 돌리기만 하면 될 것이다.

…라는 생각으로 몇 시간 동안 구글링도 하고 이런저런 시도를 해 보았지만, 공개되어 있는 방법들 모두가 현재의 Ubuntu 9.04 버전에선 정상 적용되지 않았다. 그래서 한참을 헤맨 끝에야 겨우 성공할 수 있었다. 이런 삽질을 다시 하지 않기 위해, 그리고 Ubuntu 를 사용하시는 다른 분들이 저와 같은 시행착오를 겪지 않도록 하기 위해 본인이 수행한 방법을 기록해 둔다.

참고로 모니터 해상도가 1440×900 이며, 터미널을 4개의 워크스페이스 중 3번째에 위치시키고자 한다고 가정한다. 주변에 약간씩의 여유 공간을 두고 가운데 위치시킨다면, 대략 아래 이미지 정도와 같은 위치 및 영역을 차지할 것이다 (검고 투명한 부분).

console_wallpaper_boundary

1. 먼저 Devil’s Pie 를 설치한다. Devil’s Pie 는 X Window 상에서의 각 프로그램 창의 속성이나 크기 등을 조절하는 유틸리티다.

  • sudo apt-get install devilspie

2. 자신의 홈 디렉토리 아래에 .devilspie 라는 이름의 디렉토리를 생성하고 그 안에 스크립트 파일을 만든다.

  • mkdir ~/.devilspie
  • gedit ~/.devilspie/DesktopConsole.ds

3. 해당 스크립트 파일 안에 다음과 같이 적고 저장한다.

(if
    (matches (window_role) "DesktopConsole")
    (begin
        (geometry "1340x800+2930+58")
        (pin)
        (below)
        (undecorate)
        (skip_pager)
        (skip_tasklist)
        (wintype "dock")
    )
)

참고로 여기서 geometry 부분을 주목할 필요가 있다. 우리는 지금 예에서 네 개의 워크스페이스 중 세 번째의 바탕화면에 터미널을 깔고자 한다. 이와 관련한 설명들을 찾아 보면 거의 모두가 (set_workspace 3) 를 쓰면 된다고 적혀 있다. 그런데 정작 해 보면 이게 동작하질 않고 오류만 뱉어낸다. 그도 그럴 것이, Compiz 가 깔린 환경에선 엄밀히 말해 개별 워크스페이스란 것이 존재하지 않기 때문이다.

이는 wmctrl 명령을 이용해 보면 쉽게 확인할 수 있다. Metacity 등 다른 Window Manager 를 쓰고 있을 경우엔 대략 다음과 같은 결과값이 나온다.

user@user-desktop:~$ wmctrl -d
0  * DG: 1440x900  VP: 0,0  WA: 0,25 1440x850  Desk 1
1  - DG: 1440x900  VP: N/A  WA: 0,25 1440x850  Desk 2
2  - DG: 1440x900  VP: N/A  WA: 0,25 1440x850  Desk 3
3  - DG: 1440x900  VP: N/A  WA: 0,25 1440x850  Desk 4

하지만 Compiz 를 쓰고 있는 환경이라면 다음과 같이 나올 것이다.

user@user-desktop:~$ wmctrl -d
0  * DG: 5760x900  VP: 0,0  WA: 0,25 1440x850  Desk 1

가로 해상도 부분을 잘 보자. 차이점을 눈치채셨는가? Compiz 가 아닌 환경에선 개별 워크스페이스가 생성되고 별도로 관리되지만, Compiz 하에선 가로로 긴 모양의 하나의 워크스페이스를 가상으로 쪼개어 영역별로 보여 준다. 따라서 (set_workspace 3) 과 같은 명령은 수행될 수 없는 것이다. 또한 이와 유사한 (set_viewpoint 3) 과 같은 명령도 먹히지 않는다 (아무래도 이건 버그인 듯).

그러면 어떻게 하면 될까? 그렇다. 애초에 가로로 길다란 하나의 워크스페이스이니, 직접 윈도우의 위치를 계산해서 적어 주면 되는 것이다. 1440×900 해상도의 모니터를 기준으로 한다면, 3번째 워크스페이스는 (x=2881, y=0) 부터 (x=4320, y=900) 까지의 영역이 된다. 그럼 거기에 맞게 수치를 적어 주면 되는 것이다. 각자의 환경에 맞게 적절한 수치를 설정하자.

4. Terminal 을 실행한 다음, Edit – Profiles 메뉴로 가서 DesktopConsole 이란 이름의 프로파일을 새로 만든다.

  • Generals 탭의 ‘Show menubar by default in new terminals’ 의 체크를 해제한다.
  • Background 탭에서 ‘Transparent Background’ 를 체크하고 투명도를 None 으로 조절한다 (혹은 취향에 따라 다르게 조절할 수도 있다)
  • Scrolling 탭의 ‘Scrollbar is’ 를 ‘Disabled’ 로 설정한다.

5. System 메뉴 – Preferences – Startup Applications 로 간 다음 두 개의 프로그램을 추가한다. 물론 Devil’s Pie, 그리고 터미널이다. 각각 Command 부분을 아래와 같이 입력하면 된다.

  • devilspie -a
  • gnome-terminal –window-with-profile=DesktopConsole –role=”DesktopConsole”
Command: devilspie -a

Command: devilspie -a

Command: gnome-terminal --window-with-profile=DesktopConsole --role="DesktopConsole"

Command: gnome-terminal --window-with-profile=DesktopConsole --role="DesktopConsole"

6. 이제 모든 과정이 끝났다. 로그아웃했다 다시 로그인하면 아래와 같이 3번째 워크스페이스 상에 콘솔이 깔려 있는 모습을 확인할 수 있다.

console_wallpaper

My Laptop Screenshots

Posted in Nothing by mycoffee on 2009/01/21

ubuntu_laptop_screenshot00
ubuntu_laptop_screenshot01
ubuntu_laptop_screenshot02
ubuntu_laptop_screenshot03

테마를 비롯한 Ubuntu 설정 대부분을 마친 후에 찍은 스크린샷. Black & White 테마는 언제 봐도 심플하고 멋지다. 게다가 내 랩탑 본체의 배색도 Black & White 여서 테마와 나름 컨셉이 맞는다.

사실 Compiz 가 적용된 Linux 는 스크린샷보단 동영상을 찍는 게 제일 바람직하지만, 아무래도 그건 귀찮아서 패스.

Tagged with: , ,

How to restore compiz settings to default

Posted in Computer / IT by mycoffee on 2009/01/20

드디어 노트북에 Ubuntu 를 네이티브로 설치했다. 이전에는 VMWare 로만 돌렸던 탓에 Compiz 같은 걸 제대로 쓰지 못했었는데, 이젠 마음놓고 돌릴 수 있게 되었다. Intel 내장 그래픽 칩셋인 2년 된 노트북인데도 3D 효과들이 상당히 부드럽게 동작하는 걸 보면서 감탄사가 절로 나왔다.

그런데 CCSM (CompizConfig Settings Manager) 상에서 Bicubic filter 옵션을 켠 직후 화면이 깨지기 시작했다. 무언가를 건드릴 수조차 없는 상황이었던지라 결국 좀 헤매야 했다. 이런 경우 가장 간단한 방법은 기존의 설정 파일을 날리고 새로 설정하는 것이다. 혹 CCSM 을 잘못 건드려 이도저도 할 수 없는 사태가 벌어진다면 아래와 같이 해 보자.

1. X Windows 상에서 Ctrl+Alt+F1 키를 누르거나 혹은 Recovery Mode 로 재부팅해서 콘솔로 들어간다.
2. 다음과 같이 입력한다: mv .config/compiz/compizconfig/config .
3. 다음과 같이 입력한다: sudo mv /etc/compizconfig/config etcconfig
4. 컴퓨터를 재부팅한다.

Tagged with: , ,