Я использую утилиту xhkeys для обработки мультимедийных клавиш. Иногда “залипает” клавиша и начинается запуск процесса без до тех пор, пока ядро не прибьет “лишние” процессы при нехватке памяти.
Что бы не запускались лишние копии процесса, я написал такой скрипт:
ps -ef | grep PROGRAM | grep -v grep >/dev/null ; if [ $? -eq 1 ] ; then PROGRAM; fi
January 23rd, 2010
- 0xABADBABE (”a bad babe”) is used by Apple as the “Boot Zero Block” magic number.
- 0xBAADF00D (”bad food”) is used by Microsoft’s LocalAlloc(LMEM_FIXED) to indicate uninitialised allocated heap memory.
- 0xBADDCAFE (”bad cafe”) is used by ‘watchmalloc’ in OpenSolaris to mark allocated but uninitialized memory.
- 0xCAFEBABE (”cafe babe”) is used by both Mach-O (”Fat binary” in both 68k and PowerPC) to identify object files and the Java programming language to identify Java bytecode class files.
- 0xDEADBEEF (”dead beef”) is used by IBM RS/6000 systems, Mac OS on 32-bit PowerPC processors and the Commodore Amiga as a magic debug value. On Sun Microsystems’ Solaris, marks freed kernel memory. On OpenVMS, running on Alpha processes DEAD_BEEF can be seen by pressing CTRL-T.
- 0xDEFEC8ED (”defecated”) is the magic number for OpenSolaris core dumps.
- 0xFEEDFACE (”feed face”) is used as a header for Mach-O binaries, and as an invalid pointer value for ‘watchmalloc’ in OpenSolaris.
January 15th, 2010
Пару дней назад решил более детально ознакомиться с тайловым оконным менеджером Xmonad. Настроить удалось практически все, что я хотел. Исключение составляет только статический тайлинг. Настроить его я пока не смог. И не факт, что это возможно на данный момент.
Что понравилось:
- поддержка с Xft;
- наличие скрэтчпадов (не хуже, чем в Ion3);
- работа с дочерними окнами;
- работа со статусбаром xmobar через пайп;
- возможности по подсветке текста в xmobar;
- свой набор лэйаутов и их настроек для каждого из тегов;
- работа с дочерними окнами в GIMP, Code::Blocks;
- реализация и настройка urgency hint;
- есть возможность переключиться на окно, которое установило urgency hint по хоткею.
Что НЕ понравилось:
- лэйаут с табами - слабая пародия на Ion3;
- не распределяет по тегам приложения, которые были запущены до Xmonad;
- проблемы с Smplayer (хотя mplayer работает корректно);
- отсутствие статического тайлинга мешает работать в GIMP с несколькими изображениями одновременно; видимо тут поможет лэйаут, который комбинирует несколько лэйаутов;
- возможности стандартных плагинов в xmobar.
Отдельное спасибо xetf за помощь в настройке.
Мой конфиг Xmonad.
Ветка о Xmonad на LOR.
December 10th, 2009
Ну вот и сделал я себе бикуб. Белые швы - это эпоксилин обработанный наждачной бумагой в воде. Пары кубиков склеены с помощью цианоакрилового клея. Знаю, что нужно было покрасить или эпоксилин, или сам куб после обработки, но я не нашел ни тонера, ни краски. Возможно, что позже я исправлю сей недостаток. Часть наклеек резал ножом из листа пленки, часть использовал от куба 3х3х3 - наклеивая их по 3 штуки на одну сторону пары.
Бикуб без наклеек:

Бикуб с наклейками:

p.s. Вчера разобрал куб, повернув пару-тройку раз грани, теперь не знаю, как его собрать 
December 8th, 2009
Собирая куб после экспериментов со сложными узорами на V-Cube 7 нашёл простой алгоритм:
2L L’ 2R’ R 2U’ U 2D D’ 2L’ L 2R R’ 2U U’ 2D’ D
December 5th, 2009
Нашел у себя в черновиках. Не уверен, что я этот код где-либо использовал, но для затравки сойдёт.
Object-C:
const char *path;
path = [[[NSBundle mainBundle] bundlePath] UTF8String];
Или так:
CFBundleRef bundle;
bundle = CFBundleGetMainBundle();
CFURLRef res;
res = CFBundleCopyResourcesDirectoryURL(bundle);
CFStringRef resStr;
resStr = CFURLCopyFileSystemPath(res, kCFURLPOSIXPathStyle);
char path[8192];
CFStringGetFileSystemRepresentation(resStr, path, sizeof(path));
December 2nd, 2009
Слева результат моих усилий по смене тайликов (или плиточек) на наклейки.
Оригинальные тайлики снял при помощи ножа с толстым (не широким), но острым лезвием. Толстое лезвие нужно для того, что бы тайлики не срезать, а аккуратно снимать. Так получается и проще и безопаснее. При этом повреждения для куба минимальны.
Далее удалял клей при помощи куска мелкозернистого точильного камня. Тут можно было бы воспользоваться и наждачной бумагой, наклеенной на плоскую и жесткую поверхность. Рекомендую при выполнении этой операции капать водичку на камень - это позволит меньше травмировать поверхность куба. Операцию выполняйте над каждым элементом отдельно, разобрав куб на части (да, это нудно и долго, но рез-т будет лучше). Если есть возможность после этой операции произвести окончательную полировку на войлочном круге, то это будет супер! Дома у меня нет такой возможности, поэтому окончательную доводку я сделаю позже, а пока и так сгодится
После полировке на камне я промыл все элементы в воде с моющим средством (засыпал все в банку с водой и моющим средством и потряс в течении нескольких минут). Промыл от грязи и остатков моющего средства душем. Просушил в течении получаса (шило в пятой точке не позволило мне сушить дольше). Собрал куб без смазки - да и куда её там лить то - изо всех щелей сочится влага
Каждую сторону аккуратно протирал салфетками для чистки монитора, подсушивал отдельно и оклеивал. Наклейки мне достались для Eastsheen, они меньше оригинальных тайликов, но смотрится куб весьма неплохо. Результатом я практически доволен.
И о главном:
Основная и главная моя ошибка: насмотревшись видео по замене тайлов на наклейки я поступил так же - на многих элементах куба срезал ножом остатки клея. Образовались ямы, которые вручную без войлочного круга отполировать крайне сложно. Не повторяйте моей ошибки, и не слушайте советы горе-спидкуберов на тытрубе. Делайте все правильно. Удачи!
December 2nd, 2009
Пример настройки корпоративного почтового сервера на базе Postfix в Ubuntu Linux.
Коротко о статье:
- ОС Ubuntu 9.10
- БД MySQL
- Почтовый сервер Postfix
- Антивирус ClamAV
- Web-интерфейс PostfixAdmin
- Антиспам Spamassassin, Razor, Pyzor и стандартные средства самого Postfix.
November 24th, 2009
Введение из статьи однозначно отвечает на вопрос - “о чем статья”:
Этот рассказ не претендует на звание полного описания настройки Emacs как среды разработки на разных языках (это будет отдельная статья), а является попыткой написать краткий рассказ о настройке пакета Cedet для работы с языками программирования C & C++, хотя большая часть изложенного подходит и к работе с другими языками, поддерживаемыми пакетом Cedet.
Ссылка на статью Настройка Emacs & Cedet для программирования на C & C++.
November 24th, 2009
Наконец то до меня добралась посылка от Mefferts. В небольшой коробке из гофрированного картона были упакованы:
- Original Master Cube Black with tiles - крутится на первый взгляд прилично. Один тайлик отвалился сразу после распаковки. Посадил его на супер-клей. Тайлы толстые и вероятно хрупкие, ощущения весьма странные.
- Master Pyramorphinx White Body - наклейки из плотной пленки. Весьма приятен на ощупь и крутится хорошо.
- Black Pyraminx II Fluorescent Labels - вещь! Очень доволен этой пирамидой. Наклейки тоже из пленки, яркие, приятные. Крутится классно.
- 12 color Megaminx - тут тоже отвалился один тайлик. Дочка сходу собрала сторону с поясом, сейчас сидит собирает остальное (никаких алгоритмов не знает, держит головоломку в руках впервые).
Фотографии не мои - взял то, что попалось под руку:

Посылка шла почти месяц. Я два раза писал в Mefferts - один раз на саппорт, второй через веб-форму - ни одного письма от них не получил. При этом инвойс после оплаты был получен сразу. Но теперь это не имеет значения - заказывать можно. Посылка приходит в почтовое отделение, денег дополнительно не требуют, хотя на посылке указана полная стоимость. Не сравнить с UPS - они дерут дополнительно деньги, прикрываясь каким то законом Беларуси. Уродская контора.
p.s. Пока писал эту заметку, дочка почти собрала Megaminx.
UPD 03.12.2009:
Начало тут.
November 19th, 2009
Previous Posts