Как вы видите из моих статей, я активно использую менеджер пакетов MacPorts. Я привык с ним работать через консоль, но существует и графический интерфейс – я обнаружил его, читая статью об MacPorts на Apple ADC. Это бесплатная программа Porticus:

(more…)

Tagged with:  

Если по каким-то причинам нужно сделать локальную копию сайта (например, если нужно работать над материалами, но доступ в Интернет не предвидится), то обычно нет смысла искать дополнительный софт, тем более платный. Есть консольная программа wget (The non-interactive network downloader), которую можно поставить через MacPorts (sudo port install wget).

Синтаксис:

wget -v -m -k -K -E -w 1 --output-file=wget.log http://www.notsecretsite.com/

(more…)

Tagged with:  

Я начал писать заметку о launchctl, но понял, что сегодня её не закончу. Поэтому кратко расскажу о том, как загружать или выгружать сервисы, установленные через MacPorts.

Стартовые скрипты MacPorts размещает в файлах /Library/LaunchDaemons/org.macports.${port}.plist.

Загрузить сервисы можно либо привычно через launchctl

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.${port}.plist

либо через MacPorts:

$ sudo port load port

Останов сервиса:

$ sudo launchctl unload -w /Library/LaunchDaemons/org.macports.${port}.plist

или

$ sudo port unload port

(more…)

Tagged with:  

Обновление от 04.01.2010. Версия 4.7.0 из портов уже нормально поддерживает UTF-8, поэтому рекомендую ставить её, причём русские буквы отображаются даже при компиляции с ncurses, что даёт возможность отображать интерфейс “нормально”, а не ASCII-символами:

$ sudo port selfupdate
$ port variants mc
mc has the variants:
   ncurses: use ncurses screen library
     * conflicts with slang2
[+]slang2: use slang2 screen library
     * conflicts with ncurses
   universal: Build for multiple architectures
$ sudo port  install mc +ncurses
$ /opt/local/bin/mc -V
GNU Midnight Commander 4.7.0
Using the ncurses library
With internationalization support
With multiple codepages support

А для интереса можно почитать, как исправлялись русские буквы до 4.7.0.

Я уже давно заметил, что консольный файловый менеджер Midnight Commander неправильно работает с русскими буквами под Mac OS X. Но меня это особо не беспокоило, так как мне он нужен редко и с этой проблемой я могу спокойно смириться. Но сегодня @ex3m_su (очень рекомендую посмотреть социальную сеть ex3m для экстремальных людей, которую он создал – я там бываю регулярно) задал мне вопрос:

Подскажи, как наложить патч для MC из портов, он не воспринимает utf в интерфейсе {…}

MC из портов, плохо работает с русскими буквами, и я решил найти решение такому поведению:

(more…)

Tagged with:  

При выводе через pipe (“|”) в Unix обычно буферизируются стандартный поток вывода stdout. Представим ситуацию – мы следим за выводом tshark на экран, но при этом хотим параллельно записывать его в файл (забудем на мгновение о команде script):

$ sudo tshark -i en1 | tee out.txt

Мы видим, что строки на экране появляются не сразу, а достаточно большими порциями. Причина – в буферизации вывода командой tshark. А наблюдать-то за трафиком хочется в реальном времени – авось появится что-то интересное.

Для решения нужно воспользоваться программой unbuffer из пакета expect. Вспоминаем установку портов:

$ sudo port install expect

А затем

$ unbuffer sudo tshark -i en1 | tee out.txt

Теперь вывод происходит в реальном времени. Детали – в man unbuffer. Я нашёл unbuffer достаточно давно где-то на “Stack Overflow“.

Tagged with:  

Практически всё, что необходимо для работы, можно настроить через стандартные настройки в GUI. Однако иногда возникает необходимость добраться до скрытых настроек, тогда на помощь приходит утилита defaults. Она позволяет читать, записывать и удалять пользовательские установки из командной строки. Приложения Mac OS X и прикладные программы обычно хранят настройки, используя механизм defaults. Давайте попробуем поработать с этими настройками.

(more…)

Tagged with:  

Вчера я слегка рассказал об установке XCode, сегодня же “вернёмся к корням” – займёмся установкой программ Open Source. Вместе с XCode поставляются все средства разработки, поэтому мы можем теперь скомпилировать любой пакет (configure, make, make install). Но простая компиляция имеет огромный недостаток – поддерживать программы в актуальном состоянии можно исключительно вручную, нужно регулярно отслеживать выход новых версий десятка используемых пакетов, списывать их, и по-новому компилировать. Решить эту проблему призваны менеджеры пакетов (для Linux это yum, apt, для FreeBSD – система портов).

Под Mac OS X самыми распространёнными являются MacPorts и Fink. MacPorts использует идеологию BSD, Fink – Debian Linux. Мне больше нравится BSD, поэтому я использую первый менеджер. Его и рассмотрим сейчас.

(more…)

Tagged with:  

Рассмотрим запись iso в shell на примере дистрибутива Debian. Списываем iso, лучше с torrent.

Проверяем контрольную сумму (хотя бы md5):

$ curl http://cdimage.debian.org/debian-cd/5.0.3/i386/iso-dvd/MD5SUMS | \
    grep debian-503-i386-DVD-1.iso
7ea66fee666fa444f0256ab3c1ec6ba4  debian-503-i386-DVD-1.iso
$ md5 debian-503-i386-DVD-1.iso
MD5 (debian-503-i386-DVD-1.iso) = 7ea66fee666fa444f0256ab3c1ec6ba4

Контрольные суммы совпадают, образ нормальный, можем его записывать стандартной утилитой hdiutil:

$ hdiutil burn debian-503-i386-DVD-1.iso
Tagged with:  

Скрытие каталогов

Некоторые программы создают свои каталоги в ~/Documents, и лично мне они не нужны, и в Finder я не хочу их видеть. К таким каталогам относятся, например, “Virtual Machines” (VmWare), “SMS Chat Logs” (BluePhoneElite 2), “iChats”.

Раньше была возможность скрытия каталогов в “Get Info” Finder’а (то ли в 10.4, то ли в ранних версиях 10.5.x), но потом она исчезла. Однако это можно сделать в Terminal.app.

Есть два варианта – можно использовать либо команду SetFile (она поставляется вместе с Mac OS X Developer Tools, т.е. нужно установить XCode), либо штатную команду chflags.

Скрыть каталог: “SetFile -a V dir” или же “chflags hidden dir”.

Отображать каталог: “SetFile -a v dir” или “chflags nohidden dir”.

(more…)

Tagged with:  

До обновления до Snow Leopard я активно использовал символические ссылки (симлинки или же symlinks) для того, чтобы синхронизировать файлы и каталоги, находящиеся вне иерархии Dropbox, например каталог проектов или базу данных паролей 1Password. Когда перешёл на Snow Leopard, то почему-то симлинки у меня перестали работать.

Также эту проблему озвучил @umputun в первом подкасте после выхода Snow Leopard, так что я был не одинок.

(more…)

Tagged with:  
Page 1 of 212
© 2010 The Apple Geek