긱툴GeekTool 무작정 따라하기

GeekTool

GeekTool은 OSX의 바탕화면에 위젯을 띄우기 위한 용도로 만들어진 플랫폼 형식의 앱입니다. 앱 단독으로 동작하나 앱 자체에는 위젯이 포함되어 있지 않습니다. 위젯 부분은 Geeklet이 담당하게 됩니다. Geeklet이란 GeekTool 위에서 동작하는 개별 위젯을 가리킵니다. MacOsxTips Geeklet에서 입맛에 맞으시는 Geeklet을 찾으실 수 있습니다. 다만 시간이 오래 지나서 작동하지 않는 Geeklet, 터미널에서는 멀쩡하게 작동하나 GeekTool 상에서는 작동하지 않는 Geeklet 등 작동하지 않는 Geeklet이 적지 않고, 이런 경우에는 직접 웹에서 찾아가며 적용해야 하므로 적지않은 시간을 들일 준비를 하시고 적용하시는 것이 좋습니다. 중간에 리듬이 끊기는 건 바람직하지 못하니까요.

기본적으로 File, Image, Shell의 세 가지 형태의 위젯을 지원하며 이름 그대로 각각 파일 읽어오기, 이미지 띄우기, 쉘 스크립트 세 가지의 기능을 수행합니다. 두 가지를 동시에 엮어서 사용하는 것 또한 가능합니다.

아래에서는 제가 찾거나 만들어서 사용하는 Geeklet을 소개합니다. 각 제목 링크를 클릭하여 받은 Geeklet을 실행하는 것으로 설치할 수 있습니다. 물론 GeekTool의 설치가 선행되어야 합니다.

기기 정보Device Info

Shell script를 사용하여 기기 이름, 기기 정보, 사용자명, 이더넷 ip, Wifi ip, 외부 ip, 메모리, OS(물론 OSX이죠, 조만간 MacOS로 바뀌겠지만요), OS 버전, 빌드, 켜진 시간을 표시합니다.

이더넷이 없는 맥북 에어에서는 다른 Geeklet이 필요합니다.

Syslog

File을 이용하는 Geeklet입니다.정말 가끔씩은 유용한 정보를 제공하기도 하지만 기본적으로는 멋을 위해(?) 있는 Geeklet입니다. /private/var/log/system.log 파일을 읽어옵니다.

재생 중 음악 Music Info

Shell script를 사용하여 현재 iTunes에서 재생되고 있는 곡에 대한 정보; 곡명, 아티스트, 앨범 정보를 나타냅니다.

음량 정보 Volume Indicator

Shell script와 이미지를 같이 사용하는 GeekTool로 기기의 현재 볼륨을 나타냅니다. 원문은 Devian Art의 Circle Volume Indicator입니다. 원본 자료 안의 INSTRUCTION.rtf 파일에도 원문 설명이 적혀 있으므로 해당 파일을 참조하셔도 좋습니다.

설치방법

1. 해당 링크에서 필요한 자료를 내려받습니다. 내려받은 자료의 압축을 풀어 나온 폴더를 각자 편한 위치에 놓습니다. 예시에서는 ~/Documents/Geektool에 위치하겠습니다.

locate

2. 폴더 내의 ‘VolumeIndicator_alt.scpt’ 파일을 엽니다. 사진에서 블럭잡힌 구간에 ““(큰따옴표)를 포함해서 폴더의 위치를 넣습니다. 예시의 경우는 "~/Documents/Geektool/Circle_VolumeIndicator/"가 블럭구간에 들어갑니다. ”“(큰따옴표)에 주의해주세요

path

3. 어느 색을 사용할 지 정합니다. 기본으로는 흰색과 파란색, 여러색을 혼합한 세 가지 버전이 있습니다. 외에도 psd 파일을 사용하여 원하는 색으로 바꿀 수 있습니다. 예시에서는 파랑색을 사용합니다.

images

사진의 블럭잡힌 구간을 사용할 아이콘이 있는 폴더의 이름으로 대치합니다. 제대로 바꾸면 아래 사진처럼 됩니다.

images_mod

4. 스크립트 편집기의 윗쪽에 위치한 실행 버튼을 누르고 스크립트를 저장합니다. 아직 아무 일도 일어나지 않습니다.

5. GeekTool 어플리케이션을 열고 shell script 아이콘을 끌어다 배경화면에 던져넣습니다. 설정 패널에서 스크립트 편집기를 열고 아래의 코드를 입력합니다.

osascript ~/Documents/Geektool/Circle_VolumeIndicator/VolumeIndicator_alt.scpt

대소문자, 띄어쓰기(~앞에 한 칸) 모두 준수하셔야 합니다. 입력 후에 cmd + s 를 눌러 코드를 저장하고 편집기를 닫습니다.

6. 마지막으로 image 아이콘을 끌어다 배경화면에 던져 넣고 ‘set local path’ 버튼을 눌러서 ~/Documents/Geektool/Circle_VolumeIndicator 폴더 내의 temp.png 파일을 선택합니다. 완료되면 볼륨을 조절하여 제대로 작동하는지 확인합니다.

모든 과정을 정확하게 따라오셨다면 문제없이 설치가 되었습니다.

CPU Temperature & Fan speed

Shell script를 이용하여 CPU 온도와 팬 속도를 표시합니다.

Clock and date

Shell script를 이용하여 오늘 날짜와 시각을 표시합니다.

한글이 어울리지 않는 경우를 위해서 요일이 영어로 나오도록 하는 geeklet도 첨부합니다. 언어 설정과 무관하게 영어로 나옵니다.

Weather

iTunes 재생 정보와 더불어서 가장 사연이 많은 Geeklet인데요. Shell script를 이용하여 야후 웨더 API를 통해서 날씨 정보를 받아옵니다. 기본 설정은 서울입니다.

1. 야후 날씨에 접속하시면 접속하시는 도시의 이름이 나옵니다. 이름을 기억하시거나 복사해주세요.</p>

2. 코드 중간에 Seoul 부분을 위에서 복사한 도시 이름으로 교체해 넣으시면 됩니다. 아래의 코드를 복사하신 뒤 에디터에서 변경하신 뒤 붙여넣으셔도 됩니다.

#!/bin/bash

R=`curl "https://query.yahooapis.com/v1/public/yql?q=select%20title%2C%20atmosphere%2C%20unit.temperature%2C%20item.forecast%20from%20weather.forecast%0Awhere%20woeid%20in%20(select%20woeid%20from%20geo.places%20where%20text%3D%22Seoul%22)%0Aand%20u%20%3D%20'C'%0Alimit%201%0A%7C%0Asort(field%3D%22item.forecast.date%22%2C%20descending%3D%22false%22)&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback="`
updated=`(echo "$R"| sed 's/.*"created":"\([0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}\).\([0-9]\{2\}:[0-9]\{2\}:[0-9]\{2\}\).".*/created: \1 \2/g')`
high=`(echo $R| sed 's/.*"high":"\([0-9]\{2\}\)".*/hi : \1/g')`
low=`(echo $R| sed 's/.*"low":"\([0-9]\{2\}\)".*/lo : \1/g')`
desc=`(echo $R| sed 's/.*"text":"\([^"]*\)".*/desc: \1/g')`
humidity=`(echo $R| sed 's/.*"humidity":"\([^"]*\)".*/hu : \1/g')`
echo $updated
echo $high $low $humidity " %"
echo $desc

top

Shell script를 통하여 각 프로세스의 메모리와 cpu 점유율을 합하여 상위 n개를 보여줍니다. 저는 상위 9개를 표시하게 설정하였습니다. 표시되는 프로세스의 갯수를 변경하실 때에는 아래 코드에서 -head 10 부분을 -head (n+1)로 수정하시면 됩니다.

`ps -amcwwwxo "command %mem %cpu" | grep -v grep | head -10`

기타 설정

폰트는 Bank Gothic과 배달의 민족 주아체를 섞어서 사용하고 있습니다. 사실 아직 어울리는 한글 서체를 찾지 못해서 임시방편으로 강제로 뜯어서 섞어서 쓰고 있는데 따라서 배포하지 못하는 점 양해 부탁드립니다.

폰트와 색상 설정은 설정 패널에서 할 수 있습니다. 아래 사진의 빨간 화살표가 가리키는 부분을 클릭하면 시스템 폰트 창이 나타나며 원하는 폰트를 사용하실 수 있습니다. 위에서도 적었듯이 폰트는 BankGothic과 배달의 민족 주아체를 임시방편으로 혼합해서 사용하고 있습니다. 다만 맨 마지막 top 프로세스에서는 고정폭 폰트를 사용하셔야 결과물이 보기 좋게 나옵니다. 저는 courier Bold 체를 사용하고 있습니다.

색상은 배경 이미지의 색을 가져다 사용했습니다.

1/. 설정 패널에서 맨 아래 Style 영역의 폰트 영역을 클릭합니다. 2. 색상을 클릭하여 Colors 창을 열어줍니다. 3. Colors 창에서 Snippet 아이콘을 누르고 아래서 내려받은 배경 이미지 중 가장 파란 부분을 클릭합니다.

덧붙이자면 위의 작업이 끝나고 Colors 창을 닫기 전에 색상을 끌어다 격자 안에 담아 놓으면 나중에 작업하기가 편합니다.

배경 이미지여기서 받으실 수 있습니다. 사실 모든 게 이 글에서 출발했습니다.

주기적으로 업데이트되게 되어 있으므로 인터넷 연결이 원활하지 않다거나 하는 사정이 있다면 Geeklet이 나타나지 않는 경우도 있습니다. 이 때는 GeekTool 메뉴 바 항목 > Refresh All 버튼을 눌러주시면 강제로 리로딩되면서 업데이트 됩니다.


포터블 맥에서 설치를 할 수는 있습니다만 그리 권장하지 않는 것이 배터리에 지대한 영향을 끼치기 때문입니다. 맥북 에어에서 약 1년 간 사용해 본 결과 Geeklet을 실행하지 않고 Geektool만 실행하는 것만으로도 메모리 점유율이 8% 언저리를 웃돌고 배터리 소모량 역시 16%가량1 늘었습니다.

따라서 GeekTool은 포터블이 아닌 데스크탑에서 사용하시는 것을 권장합니다.


2017-03-07 추가

위 작업을 끝내면 데스크탑의 아이콘들이 거슬리는 경우가 있습니다.

자주 쓰는 방법으로 defaults write com.apple.finder CreateDestop false 명령어를 사용했었는데, 때문에 Safari 탭을 분리하는 데에 어려움을 겪었습니다. 따라서 아이콘들은 홈화면의 별도 폴더에 담아두는 것을 추천합니다.

이외 아이콘들은 Finder의 설정 화면에서 치울 수 있습니다.

  1. 2011 CTO 맥북 에어, 배터리 교체 직후, 밝기 50%, 웹 사전을 이용하는 경우에 시간당 10%p의 배터리 사용량 증가가 있었습니다.