OpenSUSE Build Service and Mac OS X

It’s make time!

Есть такой замечательный сервис — OpenSUSE Build Service. У них есть замечательный консольный клиент — osc. Умеет все то, что умеет веб-инфтерфейс, и даже больше. Написан на python и имеет git-подобный синтаксис.

Есть такая замечательная ОС — Mac OS X Snow Leopard. Там есть замечательная штука — macports.

Так вот, суть такова:

  • Ставим в macports python26, py26-celementtree, py26-elementtree, py26-m2crypto, py26-xml, py26-urlgrabber, py26-curl, py26-openssl
  • Берем последнюю версию osc: 
    git clone git://gitorious.org/opensuse/osc.git
  • Выполняем
    cd osc.git && python setup.py build && sudo python setup.py install
  • Думаем, что сейчас все будет круто.…

Фиг там. Получаем:

$ osc checkout home:iXeron

Your user account / password are not configured yet.
You will be asked for them below, and they will be stored in
/Users/xeron/.oscrc for future use.

Creating osc configuration file /Users/xeron/.oscrc ...
Username: ilarionov
Password: 
done
warning: your urllib2 version seems to be broken. Using a workaround for http://bugs.python.org/issue9639
Traceback (most recent call last):
  File "/opt/local/bin/osc", line 21, in 
    r = babysitter.run(osccli)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/babysitter.py", line 50, in run
    return prg.main()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/cmdln.py", line 309, in main
    return self.cmd(args)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/cmdln.py", line 332, in cmd
    retval = self.onecmd(argv)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/cmdln.py", line 448, in onecmd
    return self._dispatch_cmd(handler, argv)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/cmdln.py", line 1178, in _dispatch_cmd
    return handler(argv[0], opts, *args)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/commandline.py", line 2771, in do_checkout
    show_project_meta(apiurl, project)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/core.py", line 2741, in show_project_meta
    f = http_GET(url)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/core.py", line 2649, in http_GET
    def http_GET(*args, **kwargs):    return http_request('GET', *args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/core.py", line 2590, in http_request
    urllib2.install_opener(conf._build_opener(url))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/osc/conf.py", line 436, in _build_opener
    if ctx.load_verify_locations(capath=capath, cafile=cafile) != 1: raise Exception('No CA certificates found')
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/M2Crypto/SSL/Context.py", line 130, in load_verify_locations
    raise ValueError("cafile and capath can not both be None.")
ValueError: cafile and capath can not both be None.

cafile and capath can not both be None? No CA certificates found? Who cares?

В общем, попробовав решить проблему установкой сертификатов, я забил на это дело и отключил их проверку нафиг, записав в конец конфиг-файла ~/.oscrc:

sslcertck = 0

Tags: like apple linux

Migrated

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

Tags: blog like

iPhone 3G S

Почему я хочу новый iPhone 3G S:

  • 256MB RAM против 128MB в iPhone 3G.
  • 600Mhz CPU (ARM нового поколения, с увеличенным кэшем и прочими вкусностями) против ~400Mhz в iPhone 3G.
  • Анти-жировое покрытие на стекле экрана, что уменьшает эффект следов от пальцев.
  • Электронный компас. Я сначала не понял смысла, но потом дошло, что эта функция будет использоваться в turn-by-turn навигации и играх.
  • Хорошая камера. Поддержка видеосъемки. Очень понравилась возможность вырезать кусок видео и запостить на YouTube сразу после съемки.
  • Голосовое управление. По слухам, поддержка русского языка уже есть.

Это железячные преимущества, все остальные нововведения будут в 3.0 и на текущем iPhone 3G.

Tags: apple iphone like

Internet Explorer 8

Тихо и незаметно, вышла новая версия самого лучшего браузера — Microsoft Internet Explorer 8.

Как мне кажется, не стоит он крупного релиза.

Ставился долго, асид 3 не проходит, ладно хоть асид 2 смог, Ctrl+L опять открывается какое-то окошко (да-да, я знаю про F4), внешне вылитый 7, полезных функций не видно.

Ну пусть, пусть выходят новые версии, может 6й хоть наконец-то закопают, некрофилы чертовы.

FAIL же?

iPhoneOS 3.0. Coming Soon.

Только что закончилась презентация iPhoneOS 3.0.

Это былинная победа. Вин!

Кратко о том, что нас ждет:

  • 1000 новых API
  • Поддержка новой модели продаж, когда после покупки приложения, внутри него можно покупать дополнения (для примера — новые уровни в играх или книги в программе для чтения книг). И все это использует iTunes, то есть с тем же акканутом, что и для покупки приложения. Бесплатные приложения по-прежнему бесплатны, даже внутри
  • Поддержка peer2peer соединений через bluetooth, в том числе не только с iPhone. Поиск других устройств с помощью Bonjour
  • Поддержка работы приложения с устройствами через Dock или bluetooth, что открывает широкие возможности для создания связок железяка+софт для iPhone
  • Разрешено использовать весь функционал программы Maps в сторонних приложениях (открыт API)
  • Turn by turn GPS, что позволяет теперь использовать телефон как, например, автомобильный навигатор. Можно создавать программы, которые будут предупреждать о поворотах, рисовать 3D города и показывать маршруты, etc. Использование Google Maps в таких приложениях запрещено из-за лицензионных ограничений Google
  • Push-уведомления. То, что обещали давно, и до сих пор не показали общественности. Необходимость в background режиме для приложений отпадает, батарея и память не жрутся, как при куче запущенного в бэкграунде софта
  • Открыты такие важные API как голосовой чат, доступ к библиотеке iPod, различные датчики, запись аудио, API для работы с батареей, потоковое аудио и видео, определение типа данных, выделение текста, всплывающие предупреждения, GPS
  • Cut, Copy and Paste. В том числе копирование текста с web-страниц в Safari и других приложениях. В том числе отмена/повтор вставки. В том числе копи-паст между разными приложениями!
  • Отправка нескольких фото в Mail
  • Landscape режим почти во всех приложениях, с большой виртуальной клавиатурой и прочими прелестями
  • Пересылка и удаление отдельных сообщений в SMS
  • MMS, поддержка аудио, фото, контактов (vCard), локаций
  • Голосовые заметки и их пересылка с помощью Mail или MMS
  • CalDAV в календаре. Как я понимаю, это дает поддержку создания событий и отправки их на сервер, например на Google (я использую ГуглКалендарь, но меня всегда удручала невозможность создать событие на сервере через календари в iPhone). Поддержка .ics для занесения событий
  • Улучшения функционала в Stocks
  • Spotlight! Поиск по всему телефону, как в MacOS. Если не найдено, поиск продолжается на сервере IMAP. Ищет везде, программы, почта, контакты, заметки, календари, музыка, etc
  • Синхронизация заметок
  • Аудио/видео тэги
  • Потоковое аудио/видео
  • Рандомная песня при тряске телефона (как в iPod Nano)
  • Стерео-Bluetooth (A2DP), что позволяет теперь использовать bluetooth-наушники
  • LDAP
  • Создание аккаунта iTunes
  • Поддержка рейтинга, подписок, аккаунтов и зашифрованных профилей для YouTube
  • Анти-фишинг
  • Лог звонков
  • Родительский контроль
  • VPN on demand.

Примеры использования в сторонних приложениях:

  • EA показали демо Sims 3 для iPhoneOS 3.0, где люди в домах слушают музыку из библиотеки iPod
  • ESPN показали потоковое видео в нативном приложении для iPhoneOS 3.0 и Push уведомления о событиях в мире спорта
  • Johnson&Johnson показали программно-аппаратный комплекс iPhone + iPhoneOS 3.0 + нативное приложение + железяка для тестов содержания сахара в крови для диабетиков. Железяка берет тест и передает данные в iPhone через bluetooth или Dock, которые тот анализирует и показывает, какая доза инсулина необходима. Программа учитывает рацион и другие факторы, если вы их заносите в нее
  • ngmoco :) показали новый шутер, в котором можно покупать за реальные деньги оружие, а так же pet-симулятор, в котором за реальные деньги можно покупать одежду для пета. LOL. Плюс использование Push для уведомлений друзьям о том, что ваш пет хочет поиграть с их петом.

iPhone 2G не будет поддерживать MMS и Bluetooth. Там нет необходимого железа.

Разработчики получат бету iPhoneOS 3.0 уже сегодня. Люди получат ее летом, для владельцев iPhone обновление будет бесплатное, для владельцев iTouch — 9,95$.

После презентации топ-менеджеры рассказали о том, что в iPhoneOS 3.0 уже реализована поддержка телефона как модема, но пока нет договоров с операторами, поэтому функционал недоступен.

Apple радуют меня. Не то что бы мне было плохо без всего этого функционала, но теперь будет еще лучше! А если учесть, что летом примерно должен появиться новый iPhone с 3,5G и камерой впереди, его презентация вместе с iPhoneOS 3.0 будет эпик вином.

Спасибо http://gizmodo.com за фото-отчет.

Ubuntu fonts and LCD

В Ubuntu хорошие шрифты, патченные libcairo/libxft/etc делают свое дело.

Ставим в настройках субпиксельное, полный хинтинг, RGB (пример для моего SyncMaster 206BW). Но потом мы запускаем Opera и что мы видим? FFFFFFFUUUUUUUUUUUUUU~ RRRRRAAAAAAAAAAAAAAAAAAGEEEEEEEEE!

Первой моей мыслью было поправить ~/.fonts.conf, который используется qt-приложениями, но оказалось все гораздо проще.

cd /etc/fonts/conf.d
sudo mv 10-antialias.conf 10-antialias.conf.disabled
sudo cp ../conf.avail/10-sub-pixel-rgb.conf ./

Перезаходим в систему и получаем субпиксельное сглаживание везде.

APE/TTA/FLAC/CUE

Дабы не потерять на просторах интернетов.

Monkey’s Audio Codec port

Небольшие скрипты для конверта:

ape2mp3:

#!/bin/bash

mac "$1.ape" "$1.wav" -d;
lame --preset insane -h "$1.wav" "$1.mp3";
mp3splt -a -c "$1.cue" "$1.mp3";

tta2mp3:

#!/bin/bash

ttaenc -d "$1.tta" "$1.wav";
lame --preset insane -h "$1.wav" "$1.mp3";
mp3splt -a -c "$1.cue" "$1.mp3";

flac2mp3:

#!/bin/bash

flac -cd "$1.flac" | lame --preset insane -h - "$1.mp3";
lame --preset insane -h "$1.wav" "$1.mp3";
mp3splt -a -c "$1.cue" "$1.mp3";

Аргументом имя файла в связке с cue, без расширения. Можно допилить до нормальных аргументов, но лень. Почти всегда файлы называются одинаково, так что никаких проблем. Иногда встречается кривой flac. Используем soundconverter для перекодирования flac в wav, дальше по усмотрению.

Some reasons to jailbreak your iPhone

Для начала — неплохая статья: http://russianiphone.ru/archives/6227

Jailbreak лишает вас гарантии? Никто не мешает перед походом в сервис сделать Restore телефона (полное форматирование и, затем, прошивка).

Так вот, некоторые причины:

  • Cydia и установка программ, не прошедших в AppStore. Это, например, Cycorder (запись видео), South Park Mobile (сомнительная надобность), PdaNet (WiFi-роутер из iPhone. Самая нужная программа не из AppStore). В следующей версии iPhone и его прошивке должна быть запись видео (судя по патентам Apple), так что необходимость в забракованном китайцами из яблочной компании софте может пропасть. Останется только придумать, что делать с PdaNet.
  • Cydia и установка OpenSSH->патч mobileframework->установка ворованных программ (http://appulo.us/appdb/). Все больше и больше хороших бесплатных приложений появляется в AppStore, а разработчики игр часто делают бесплатные Lite версии, которые позволяют оценить игру и решить, покупать полную ее версию или нет. Платные программы, которыми я постоянно пользуюсь — Rooms (IRC клиент), Files (WiFi-флешка/просмотрщик PDF/DOC/XLS/etc с поддержкой WebDAV и Bonjour, есть бесплатные аналоги, но 3 месяца назад они глючили, надо будет проверить, как они сейчас), RadioBOX (Streaming-audio клиент, для интернет-радио. Так же, как и с Files, уже есть бесплатные аналоги, надо проверить их качество). Все остальное — бесплатные программы. Игры я не рассматриваю. В общем то все идет к тому, что можно потратить 10$ на покупку того, что действительно необходимо, а в остальном использовать хорошие бесплатные программы (тут я внезапно вспомнил Nimbuzz — отличный IM клиент, который даже Skype умеет, а стоит 0$).
  • Unlock, для тех, кто купил серый телефон. ССЗБ.
  • Издевательства над bluetooth, для тех, кто хочет перекидываться файлами или подключить bluetooth клавиатуру к iPhone. Первое — для быдла, второе — для гиков. Единственное, чего мне не хватает — поддержки стерео аудио через bluetooth. Я бы с удовольствием носил беспроводные наушники.

Пока что я не отказываюсь от jailbreak, но все идет как раз к тому, чтобы потратить немного денег и купить то, что необходимо, и не трахаться с перепрошивкой телефона каждый раз после обновления ПО.

Список отличных бесплатных программ — DarkRoom (камера с использованием акселометра для фотографирования с дрожащими руками), Files Lite (Files с ограничением в 200Mb), SpeedTest (тестируем скорость, чтобы ОПСОС не обманывал нас :D), TouchTerm (SSH клиент), VLCRemFree/Remote/MPoD (управление VLC/iTunes/MPD с iPhone), Run Keeper (спидометр на основе GPS, я думаю, пригодится мне как велосипедисту. Можно смотреть пройденное расстояние, средние скорости, etc), Nimbuzz (ICQ/Jabber/Skype/etc), TwitterFON (Twitter клиент), Wikipanion (Wikipedia клиент), Google Earth, Flickit (Flickr клиент), AccuWeather (погода), Cooliris (понты :D, прикольный поисковик по различным мультимедиа сервисам), Soonr (cloud web storage).