понедельник, 17 декабря 2012 г.

OS X Mountain Lion and AirPort Utility 5.6

OS X Mountain Lion и AirPort Utility 5.6

У Apple окончательно крепчал маразм. Ну, не может быть крутой компания в руководстве, которой официально засели пидары.

Внимание!!! AirPort Utility 5.6, которая используется для настройки старых ЭйрПортов, более не устанавливается. С новым AirPort Utility старые эйрпорты не работают...

Скачиваем Pacifist: http://www.charlessoft.com/
Скачиваем AirPort Utility 5.6 для OS X Lion: http://support.apple.com/kb/DL1482

Устанавливаем Pacifist и с помощью него открываем установщик и экспортируем оттуда "AirPort Utility 5.6.app" на рабочий стол или в программы.

среда, 12 декабря 2012 г.

Raspberry Pi и FreeBSD

Стал доступен полноценный образ с системой FreeBSD 10 для одноплатного ARM компьютера Raspberry Pi стоимостью 25$ (модель А, 1USB, нет Ethernet) и 35$ (модель B, 2USB, есть Ethernet). Для установки скачиваем образ freebsd-pi-r243778.img.gz (124Мб). Далее записываем командой dd на SD-карту.

среда, 21 ноября 2012 г.

Устанавливаем Asterisk 11 на OS X Mountain Lion

Тот кто утверждает, что OS X от Apple не операционная система, тот глубоко заблуждается. OS X - самая совершенная система, многое здесь делается с закрытыми глазами. А благодаря поддержке стандартов UNIX, на OS X устанавливается много программного обеспечения Open Source.

Мне потребовалось быстро развернуть IP-телефонию на сервере OS X 10.8 (или Mountain Lion), самое простое, что пришло в голову поставить Asterisk. Итак, для этого нам потребуется:

  1. Исходный код Asterisk - скачать можно с родного сайта http://www1.digium.com/en/products/asterisk/downloads
  2. Xcode 4.5.2 - скачать можно из AppStore https://itunes.apple.com/ru/app/xcode/id497799835?mt=12
После установки Xcode 4.5.2 мне пришлось установить "Command Line Tools". Для этого:
  1. Запускаем Xcode
  2. Заходим в настройки: меню Xcode -> Preferences
  3. Переходим на вкладку Downloads
  4. Выбираем Components (если не выбрано)
  5. Нажимаем установить Command Line Tools
Теперь переходим к установке Asterisk. В документации сказано, что установить Asterisk, можно так:

./configure
make
make install

Пробуем, получаем ошибку:

snmp/agent.c: In function ‘init_asterisk_mib’:
snmp/agent.c:835: error: ‘RONLY’ undeclared (first use in this function)
snmp/agent.c:835: error: (Each undeclared identifier is reported only once
snmp/agent.c:835: error: for each function it appears in.)
make[1]: *** [snmp/agent.o] Error 1
make[1]: *** Waiting for unfinished jobs....
   [LD] chan_unistim.o -> chan_unistim.so
make: *** [res] Error 2

Самое быстрое решение SNMP отключить, поэтому собираем так:

./configure --host=x86_64-darwin
make menuselect ( удаляем res_snmp в меню Resource Modules )
sudo make -j 4
sudo make install
sudo make samples

четверг, 25 октября 2012 г.

Как узнать установленные модули Perl

Узнать установленные модули Perl можно командой

$ perl -e 'use ExtUtils::Installed;$installed = ExtUtils::Installed->new();foreach $module ($installed->modules()){printf "Module:%s\t\tVersion: %s\n", $module, $installed->version($module);}'

суббота, 11 августа 2012 г.

OS X Lion: Java 7

Apple не торопиться сделать официальный апдейт для Java 7 и пользователи OS X до сих пор сидят на Java 6. То что не торопятся может быть и верно. Java - редкостный тормаз.

Но у Oracle уже давно есть Java 7, скачать для OS X можно здесь (версия 7u9).

После установки запустите "Java Preferences.app" и укажите для использования Java 7.

OS X Lion: FTP сервер tnftpd

В OS X Lion убрали возможность настроить FTP-сервер через графический интерфейс в отличие от Mac OS X Snow Leopard и других предыдущих версий. Ходили слухи, что Apple выпили FTP-сервер из операционной системы, но это не так. Сам FTP-сервер остался в системе, просто его нужно активировать. В качестве сервера Apple использует старый добрый tnftpd.

Запустить службу FTP можно в Terminal.app командой

$ sudo launchctl load -w /System/Library/LaunchDaemons/ftp.plist


Отключить FTP можно так


$ sudo launchctl unload -w /System/Library/LaunchDaemons/ftp.plist


Мне FTP-сервер в принципе не нужен, но возникла необходимость для одного проекта сохранять файлы. Для этого я завел двух пользователей в системе ftp_read и ftp_write. Пользователь ftp_read должен только читать информацию из папки Public пользователя ftp_write. А пользователь ftp_write соответственно может добавлять и удалять информацию из папки Public.

Встроенный FTP-сервер OS X Lion по умолчанию делает chroot на домашний каталог пользователя. Для того, чтобы все работало по моему плану, мне дополнительно пришлось настроить файлы ftpusers и ftpd.conf.

В файл ftpusers я добавил
$ cat /etc/ftpusers
ftp_write allow project
ftp_read allow project

В файл ftpd.conf я добавил
$ cat /etc/ftpd.conf
chroot project /Users/ftp_write/Public
homedir project /Users/ftp_write/Public

Затем перезапустил сервер и все стало работать так как мне нужно. За дополнительной информацией обращайтесь к справке Apple и страницам man.

man tnftpd
man ftpd.conf
man ftpusers



четверг, 2 августа 2012 г.

OS X Mountain Lion: StarCraft II - проблема с языком игры

В последнее время сильно раздражают производители (разработчики) игр. После обновления StarCraft II до версии 1.5.0, мой старкрафт заговорил на немецком языке. И отказался входить в аккаунт, выдавая сообщение об ошибке "an autorized language pack is required".

Я немецкий язык да и самих немцев не очень люблю, поэтому сейчас опишу как вернуть родной русский язык. Итак,

1. Открываем Finder.app
2. Выбираем меню Library -> Go (или комбинацией клавиш: шифт+комманд+g)
3. Пишем путь до директории ~/Library/Application Support/Blizzard/StarCraft II, нажимаем кнопку Go
4. Открываем файл variables.txt
5. Устанавливаем значение переменных localeidassets=ruRU и localeiddata=ruRU
6. Сохраняем, закрываем, запускаем...


среда, 25 июля 2012 г.

OS X Mountain Lion

Сегодня в AppStore доступна для стачивания OS X Mountain Lion - самая совершенная операционная система. Распространиться данная версия OS X, как и ее предшественница OS X Lion на носителях не будет.

Новые функции iCloud, Напоминания, Заметки, Сообщения (iMessage), Центр уведомлений, Power Nap, Публикации (Facebook, Twitter и т.д.), GameCenter (такой же как в iPhone), Gatekeeper, Safari

Убрали поддержку RSS из Mail  и Safari. Загружайте и наслаждайтесь миром UNIX ;)

PS: После обновления, мак временами притормаживает, например при переключении между приложениями или при входе в аплет настроек

суббота, 19 мая 2012 г.

OS X Lion: can't connect to minecraft.net или что делать если нужно сменить офлайновый Никнейм

Итак, сегодня весь день лежит сервер авторизации Minecraft.net, поэтому при попытке авторизоваться в игре выпадает сообщение "can't connect to minecraft.net"

Мне нужно подключиться к пиратскому серверу с помощью лицензионного клиента. Казалось бы это не возможно :)

Так как офлайновый режим делает ник по умолчанию Player, я запустил Minecraft из командной строки передав, ему новый офлайновый ник AbsoluteBSD.

# cd ~/Library/Application\ Support/minecraft
# java -Xms512m -Xmx1024m -cp "bin/*" -Djava.library.path="bin/natives" net.minecraft.client.Minecraft "AbsoluteBSD"

суббота, 12 мая 2012 г.

OS X Lion: Активируем TRIM для SSD дисков

Для одного из своих MacMini я приобрел SSD диск и мне было неприятно узнать, что OS X Lion ограничивает меня в его использовании. Так как мой новый SSD не был создан специально для Apple MacMini, операционная система OS X Lion не захотела поддерживать TRIM.

Ничего страшного :) для включения данной функции нужно выполнить пару манипуляций:

  1. Создадим резервную копию изменяемого файла
    sudo cp /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage.original
  2. Активируем поддержку TRIM
    sudo perl -pi -e 's|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00{1,20})[^\x00]{9}(\x00{1,20}\x51)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
  3. Чистим Кэш
    sudo kextcache -system-prelinked-kernel
    sudo kextcache -system-caches
  4. Перезагружаемся
Для проверки активизирован TRIM или нет, запустите программу "System Information". Выберите Serial-ATA и найдите значение "TRIM Support". При активированном TRIM значение Yes, при неактивированном No.

К сожалению эти действия нужно будет проделывать после каждого значимого обновления :(
Для отключения функции TRIM восстановите файл из резервной копии или введите команду: sudo perl -pi -e 's|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00).{9}(\x00\x51)|$1\x41\x50\x50\x4C\x45\x20\x53\x53\x44$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage

UPDATE:  Этот метод подойдет для версий Mountain Lion 10.8.0 и Lion 10.7.4 и ниже. Если у вас другая версия OS X ознакомьтесь как сделать то же самое в них по ссылке http://www.absolutebsd.ru/2014/03/trim-apple-os-x.html

среда, 25 апреля 2012 г.

Как конвертировать шрифт pfb в ttf

Попал в мои руки шрифт формата pfb, но мой OS X Lion его не хотел отображать. Пришлось конвертировать в формат ttf на сайте http://www.freefontconverter.com/

Для этого открываем сайт, жмем "Choose file..", выбираем файл со шрифтом, выбираем формат в который нужно шрифт сконвертировать, нажимаем кнопку "Convert".

Данный веб сервис может конвертировать шрифты форматов pfa, pfb, pt3, sfd, ttf, otf, otb, t42, cef, cff, gsf, ttc, svg, ik, mf, dfont, bin, suit, bdf. Пользуйтесь на здоровье, а авторам огромное спасибо.

пятница, 30 марта 2012 г.

Mac OS X Lion: устанавливаем rrdtool 1.2.23

Итак, у меня возникла необходимость рисовать графики в OS X Lion с помощью RRDTool. А если необходимость есть, сперва нужно rrdtool на моем Mac OS X установить.

Для сборки RRDTool мне потребовался XCode, X11, X11 SDK. Так же необходимо наличие библиотек zlib, libpng, libart_lgpl и freetype. На моем Mac OS X, не было библиотеки libart_lgpl, как её устанавливать я напишу ниже.

Итак,

1. Устанавливаем библиотеку libart_lgpl 2.3.17 (не нужно использовать версию 2.3.3)
1.1. Получаем исходные код
# curl -O http://oss.oetiker.ch/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz
1.2. Распаковываем скачанный архив libart_lgpl 2.3.17
# tar xzvf libart_lgpl-2.3.17.tar.gz
1.3. Переходим в папку с исходниками
# cd ./libart_lgpl-2.3.17
1.4. Настраиваем переменные окружения с помощью команды export.
# export MACOSX_DEPLOYMENT_TARGET=10.7
# export CFLAGS=" -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"
# export CCFLAGS=" -arch i386 -arch x86_64 -g -Os -pipe"
# export CXXFLAGS=" -arch i386 -arch 86_64 -g -Os -pipe"
# export LDFLAGS=" -arch i386 -arch x86_64 -bind_at_load"

1.5. И наконец даем последние магические команды
# ./configure --disable-shared --prefix=/usr/local --disable-dependency-tracking
# make
# make install


После установки библиотеки libart_lgpl 2.3.17, ставим RRDTool.

2. Устанавливаем rrdtool 1.2.23
2.1.Получаем исходные коды
# curl -O http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.23.tar.gz
2.2. Копируем заголовочные файлы
# cp /usr/X11R6/include/ft2build.h /usr/X11R6/include/freetype2/ft2build.h
2.3. Настраиваем переменные окружения с помощью команды export.
# export MACOSX_DEPLOYMENT_TARGET=10.7
# export CPPFLAGS="-I/usr/X11R6/include/libpng12 -I/usr/X11R6/include/freetype2 -I/usr/local/lib -I/usr/local/include/libart-2.0 -I/usr/local -I/usr/X11R6"
# export CFLAGS=" -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"
# export CCFLAGS=" -arch i386 -arch x86_64 -g -Os -pipe"
# export CXXFLAGS=" -arch i386 -arch x86_64 -g -Os -pipe"
# export LDFLAGS="-L/usr/X11R6/lib -L/usr/local/lib -arch i386 -arch x86_64 -bind_at_load"

2.4. И, наконец, вводим последние магические команды
./configure --prefix=/usr/local/rrdtool-1.2.23 --disable-python --disable-tcl --disable-ruby --disable-dependency-tracking
# make
# make install


RRDTool установлен в директорию /usr/local/rrdtool-1.2.23. Можно рисовать графики :)

среда, 21 марта 2012 г.

Mac OS X: Обновление 10.7.3 и принтер Samsung SCX-4300

После обновления операционной системы OS X Lion до версии 10.7.3, на некоторых (мне звонил только один мой друг) компьютерах Apple пропала возможность сканирования с помощью МФУ Samsung SCX-4300. :)

С чем это связано, я не знаю. Попробуйте следить за веткой, на официальном форуме. Возможно это Вам пригодится.

четверг, 15 марта 2012 г.

Windows XP: GIMP 2.7.5

Если у Вас нет денег :) вы вынуждены пользоваться бесплатными программами или воровать. Воровать не хорошо. Поэтому мучайтесь вместе с GIMP для создания растровых изображений.

Вышла новая тестовая сборка GIMP 2.7.5 для Windows. Это экспериментальная ветка. Единственное новшество, которое меня привлекает - возможность работы в однооконном режиме. Сколько же потребовалось лет, чтобы понять, что это удобно!

В остальном GIMP остался такой же унылой поделкой. Но что-то делать в нем можно, хотя и с большими телодвижениями. Если кто-то создает в GIMP серьезные вещи, покажите мне пожалуйста :)

вторник, 21 февраля 2012 г.

Android: wpa_supplicant или поддержка LEAP на Samsung GT-S5570I (Galaxy Mini)

С этим телефоном все как раньше.

1. Делаем полный рут
2. Редактируем и закачиваем конфигурационный файл, аналогично как с Sony Ericsson Xperia X8

Но сам конфигурационный файл должен выглядеть иначе:

update_config=1
eapol_version=1
ap_scan=1
fast_reauth=1
ctrl_interface=/data/misc/wifi/sockets
ctrl_interface_group=wifi#

network={
ssid="Nastroyenie"
key_mgmt=IEEE8021X
eap=LEAP
identity="PHN00236C1412C7"
password="HtoeO2dRZ1yIIfjIxE"
}


Поздравляем, у Вас теперь есть WiFi ;)

среда, 11 января 2012 г.

Mac OS X: устанавливаем Irssi 0.8.15

Я обновил свой MacBook на MacBook Air 11-inch, Mid 2011. Так как я любитель посидеть в IRC чатах, мне понадобилась давно любимая программа Irssi. Люблю я ее еще с тех времен как впервые установил Slackware. Но OS X Lion не Linux и во время установки у меня были некоторые сложности. Так как Irssi зависит от других программ, начинаем их устанавливать по очереди:

1. Устанавливаем pkg-config-0.25
$ ./configure
$make
$sudo make install


2. Устанавливаем libffi-3.0.0
$ ./configure
$make
$sudo make install


3. Устанавливаем gettext-0.18.1.1
$ ./configure
$make
$sudo make install


Если возникнет ошибка:
stpncpy.c:34: error: expected declaration specifiers or ‘...’ before numeric constant
stpncpy.c:34: error: expected ‘)’ before ‘!=’ token
stpncpy.c:34: error: expected ‘)’ before ‘?’ token
make[4]: *** [stpncpy.lo] Error 1
make[3]: *** [all] Error 2
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1


Нам нужно открыть файл ./gettext-tools/gnulib-lib/stpncpy.c:
И изменить строку номер 34
__stnpcpy (char *dest, const char *src, size_t n)
на
__stpcpy (char *dest, const char *src, size_t n)

4. Устанавливаем glib-2.31.2
$ ./configure
$make
$sudo make install


Если возникнет ошибка:
gconvert.c:65:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv
make[4]: *** [gconvert.lo] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


Редактируем файл ./glib/gconvert.c (строка 65). В данном файле нужно удалить секцию с ошибкой
#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
#error GNU libiconv not in use but included iconv.h is from libiconv
#endif


5. И наконец устанавливаем irssi-0.8.15. Я во время сборки отключил Perl, IPv6 и SSL. Данные функции мне пока не нужны
$ ./configure --with-perl=no --disable-ipv6 --disable-ssl
$ make
$ sudo make install

среда, 4 января 2012 г.

Mac OS X: консольные утилиты наблюдения за аккумулятором MacBook

Приложение Terminal.app на моем МакБук постоянно открыто и мне очень удобно проверить состояние аккумулятора именно командой. Я пока знаю две ioreg и system_profiler.


$ ioreg -w0 -l | grep Capacity
| | "MaxCapacity" = 4730
| | "CurrentCapacity" = 3724
| | "LegacyBatteryInfo" = {"Amperage"=18446744073709550291,"Flags"=4,"Capacity"=4730,"Current"=3724,"Voltage"=7863,"Cycle Count"=2}
| | "DesignCapacity" = 4680

$ system_profiler SPPowerDataType
Power:
Battery Information:
Model Information:
Serial Number: C01147201RYDKRTAZ
Manufacturer: DP
Device Name: bq20z451
Pack Lot Code: 0
PCB Lot Code: 0
Firmware Version: 406
Hardware Revision: 1
Cell Revision: 173
Charge Information:
Charge Remaining (mAh): 3619
Fully Charged: No
Charging: No
Full Charge Capacity (mAh): 4738
Health Information:
Cycle Count: 2
Condition: Normal
Battery Installed: Yes
Amperage (mA): -1027
Voltage (mV): 7840
System Power Settings:
AC Power:
System Sleep Timer (Minutes): 10
Disk Sleep Timer (Minutes): 10
Display Sleep Timer (Minutes): 10
Wake on AC Change: No
Wake on Clamshell Open: Yes
Wake on LAN: Yes
Display Sleep Uses Dim: Yes
PrioritizeNetworkReachabilityOverSleep: 0
RestartAfterKernelPanic: 157680000
Standby Delay: 4200
Standby Enabled: 1
Battery Power:
System Sleep Timer (Minutes): 10
Disk Sleep Timer (Minutes): 10
Display Sleep Timer (Minutes): 2
Wake on AC Change: No
Wake on Clamshell Open: Yes
Current Power Source: Yes
Display Sleep Uses Dim: Yes
Reduce Brightness: Yes
RestartAfterKernelPanic: 157680000
Standby Delay: 4200
Standby Enabled: 1
Hardware Configuration:
UPS Installed: No
AC Charger Information:
Connected: No
Charging: No

OS X Lion: Minecraft и Java 64

Обратил внимание, что уже на втором MacBook, во время игры в minecraft, java запускается в 32 разрядном режиме, не смотря на то, что моё железо позволяет запускать в 64 разрядные приложения. Это дело поправимо, нужно чуть чуть отредактировать лаунчер Minecraft.app:

Итак, открываем Terminal.app и вводим команду

$ cp /System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub ~/Desktop/Minecraft.app/Contents/MacOS/JavaApplicationStub


Затем нам остается изменить Info.plist (редактировать можно любым редактором, я редактировал с помощью Vim)

$ vi ~/Desktop/Minecraft.app/Contents/Info.plist

во-первых, в данном файле нужно поменять версию java (у меня была прописана 1.5, хотя установлена 1.6); во-вторых, я добавил платформу x86_64; смотрите ниже что было, и что стало

Было:
<key>JVMVersion</key>
<string>1.5</string>
<key>JVMArchs</key>
<array><string>i386</string>
<string>ppc</string>

Стало:
<key>JVMVersion</key>
<string>1.6+</string>
<key>JVMArchs</key>
<array><string>x86_64</string>
<string>i386</string>
<string>ppc</string>


После всех проделанных процедур Вы можете наблюдать в Activity Monitor.app kind intel (64 bit) на процессе Minecraft.app