GeekTool - кастомизация Mac OS X a la Linux

GeekTool - кастомизация Mac OS X a la Linux

Что такое concky знают, вероятно, все линуксоиды без исключения. Это неудивительно, поскольку даже самый красноглазый админ любит "красивости и рюшечки". Да, они могут выглядеть сурово и лаконично - но украшательствами быть от этого не перестают. Ну и полезную функцию как никак несут - мониторинг состояния вашего железного друга - задача нужная и полезная. Особенно жарким летом.

Для Mac Os существует не один и даже не два аппа, позволяющих снимать информацию с датчиков - но мы легких путей не ищем; к тому же это веский повод потрясти песком и вспомнить консольные команды. (я как нибудь обязательно расскажу вам что же со мной случилось и отчего никсы я вижу теперь заметно реже)

Из обычного парка приложений по кастомизации внешнего вида, GeekTool (а именно о ней идет речь) приятно выделяется широтой возможностей. Благодаря поддержке sh и AppleScript можно взаимодействовать практически с любым софтом на вашем раз любимом маке. Начиная с мониторинга системы и вывода информации с терминала на рабочий стол, заканчивая тасклистом из Wunderlist2. Ну да что я вам сказки рассказывать буду - у тех, кто плотно знаком с возможностями shell наверняка уже потекли слюнки.

Поскольку существо я чрезвычайно ленивое и изобретать велосипед желания нет никакого - на скорую руку набросала календарно-погодный виджет. Выглядит это безобразие примерно так:

С изнанки все немного пострашнее:

GeekTool имеет три типа гиклетов - файл, картинка, shell. Для начала нам потребуются несколько последних. Размещаем их на рабочем столе простым перетаскиванием из окошка настроек GeekTool.

Число:

?

1

<pre class="brush:bash">date +%d</pre> месяц:

?

1 date +%B день:

?

1 date +%A время:

?

1 date +"%H:%M:%S" тянем курлом погоду с яхи:

?

1 curl --silent "http://weather. yahooapis. com/forecastrss? p=FRXX0076&u=c" | grep - E '(Current Conditions:|C<br)' |="" tail="" - n1="" sed="" - e="" 's="" <br="" \="">//' - e 's/ C$/?C/'</br)'>

Так называемый id местоположения (в вышеприведенном коде это "FRXX0076") можно узнать тут.

Так же вам потребуется собственно yahoo weather. В моем случае адрес Парижской странички следующий:

?

1 http://weather. yahoo. com/france/?le-de-france/paris-615702/

Он нужен для того, чтобы стянуть иконку текущей погоды в директорию /tmp:

?

1 curl --silent "http://weather. yahoo. com/france/?le-de-france/paris-615702/" | grep "current-weather" | sed "s/.*background:url(\('.*'\)) no-repeat scroll.*/\1/" | xargs curl --silent - o /tmp/weather. png

Откуда мы ее уже выводим на рабочий стол виджетом типа "картинка", указывая путь до изображения:

?

1 file://localhost/tmp/weather. png

Вот и все :) Шрифт, цвет, фон, прозрачность настраиваются отдельно для каждого гиклета - как и положение в пространстве. Каждый гик лет отображается на всех рабочих столах.

N-ое количество гиклетов есть здесь, но я не знаю проходят ли они там модерацию и насколько она тщательная - так что лучше проверяйте код.


Карта сайта


Информационный сайт Webavtocat.ru