2010-05-24

Sun vs Oracle

Обратил внимание, что при старте Ubuntu apt досадует, что какой-то из репозиториев стал недоступен. Полез проверять - это оказался VirtualBox

Во, думаю, приколисты какие - унесли куда-то URL репозитория. Вбил по-новой, ошибка не пропала.

И тут я догадался отскроллить страницу вниз - смотрю, а там сообщается, что репозиторий подписан теперь ключом от Oracle! Видимо, само сочетание из трех букв "Sun" скоро будет безжалостно и повсеместно изничтожено.

Но мы-то помним, мы гордимся (с).

2010-05-13

HTC Dream - начнем с начала

Итак, в руки мне попал самый настоящий HTC Dream, но - с модифицированной прошивкой и сотней с лишним  программ в придачу, добрые две трети которых трапалось (видимо, хозяин прямолинейно удалил пользовательские данные). Я всерьез задумался над тем, как вернуть всё в исходное состояние, и через некоторое время нашел внятный рецепт здесь.

Итак, ингредиенты:
  1. HTC Dream собственной персоной с полностью заряженным аккумулятором;
  2. SD-карточка, отформатированная в FAT32;
  3. Немного терпения и доступ в инет.
Первым делом качаем DREAMIMG.NBH - это совершенно официальная прошивка от HTC RC29 - та самая, в которой был обнаружен баг с получением рутовых  привилегий, позволивший теперь так веселиться всевозможным хакерам и создателям собственных ROM-ов. При необходимости распаковываем ее из .zip и помещаем в корневую директорию нашей SD-карты - это можно сделать либо при помощи "большого брата" с карт-ридером, либо через сам девайс, подключенный как Mass Storage - если, конечно, предыдущие эксперименты не привели его в "бессознательное" состояние.

Устанавливаем SD-карту в G1. Если устройство включено - выполняем стандартное выключение, обычно это достигается длительным удержанием красненькой Отбой/Power, далее во всплывающем меню - "Power Off".

Включаем, удерживая Power + Camera, вываливаемся в бутлоадер (он может выглядеть по-разному - хакнутый "беленький" и "радужный" заводской):



Если не дошли до вопроса о перепрошивке - еще раз проверьте, что карта отформатирована в FAT32, а в корне - правильный файл с правильным именем.

Запускаем загрузку имиджа нажатием на кнопку Power или Action (это трекболл). Произойдет распаковка имиджа и его проверка - где-то секунд 30. Дальше будет предложено ни в коем случае не обесточивать устройство:



По окончании - можно перегружаться.

Если что-то пошло не так - например, ошибка Unknown failed, нужно попробовать выполнить предварительное стирание через recovery. Для этого надо включить устройство кнопками Power + Home. Если на экране появился восклицательный знак:



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



Но в обоих вариантах для стирания надо жать Alt-W - будут уничтожены разделы cache и data - это пользовательские данные. После этого надо опять перезагружаться Power + Camera и снова повторить шаги выше.

Что мы в итоге получили? HTC Dream с прошивкой, в которой еще не закрыта дыра безопасности для получения рута, оригинальный Android OS 1.5.



При первоначальном старте эта прошивка попросит ввести данные вашего аккаунта Google (так называемая "активизация").  Для этого, в свою очередь, потребуется услуга пакетной передачи данных с доступом в интернет, которая, скорее всего у вас не заработает.

Почему? Внутри родной прошивки по умолчанию установлена APN для T-Mobile! Чтобы ее изменить, нажмите Menu и добавьте в список своего оператора связи. Например, для Мегафона вводим Name: Megafon, APN: internet. Если все сделано верно, вверху слева от значка уровня сигнала сотовой сети появятся иконка со стрелочками обмена с сотовой сетью  - теперь можно смело вводить данные своего аккаунта Google и восхищаться девственностью системы ;)

Те, кто проделали всё это ради установки усовершенствованной прошивки на этом обычно не останавливаются - они неизбежно должны "получить рута":

1. Запускаем приложение Android Market, ищем и устанавливаем программу Telnet;
2. Выходим кнопкой Home на родной десктоп, открываем клавиатуру и нажимаем 2 раза Enter, потом набираем telnetd и еще раз Enter. Внешне это похоже на быстрый поиск контакта, но на самом деле вы только что запустили сервер telnet на телефоне.
3. Запускаем приложение telnet, соединяемся с сервером localhost по порту 23 - и, о чудо, нам выплевывается строчка мусора, завершающаяся решеткой.

Вот это оно и есть, root-доступ. Обычно, заменяют содержимое recovery-имиджа, который заранее сохраняют на SD-карту, например выполняют команду:

flash_image recovery /sdcard/cm-recovery-1.4.img

Дальше можно перезагрузиться в recovery (см.выше), чтобы произвести манипуляции по смене системной прошивки. Например, вот здесь описание как это сделать для CyanogenMod.

2010-05-11

Google Chrome для Linux

Я использую нестабильную ветку Google Chrome для Linux вот уже как скоро год, и никаких проблем не замечал - до последнего времени. При старте он стал писать Не удалось корректно загрузить ваш профиль, и чуть ниже - некоторые функции могут работать некорректно. Поскольку я заметил лишь один эффект - пропадание иконок в закладках, я забивал на это довольно долго (месяц).

Но вот это чудовище программное обеспечение начало валиться при загрузки произвольных сайтов, причем ошибка была довольно непонятная - видите ли, ему вдруг стало невозможным загрузить .so-шку из xul-runner. Я решил, что это уже перебор и полез за strace.

Настройки живут в каталоге ~/.config/google-chrome/, и если не жаль содержимого - можно удалять. Еще можно установить гуманную опцию --user-data-dir на другой каталог и "начать новую жизнь". Но тогда плакали мои несохраненные закладки и сохраненные пароли :(

В итоге все вылечилось довольно просто - в каталоге ~/.config/google-chrome/ надо снести все файлы истории (особое удовольствие прибить файлы с цифрой 1970 в названии), т.е. файлы ~/.config/google-chrome/History*.

Наверное, получилась косячная база SQLite (именно в ней хранится история), когда переполнился home-раздел...

2010-05-08

HTC Dream

В очередной раз судьба в лице Димы Девяткина подкинула мне EMS-ом бывший в аккуратном употреблении Android: HTC Dream, самый первый аппарат, выпущенный совместно с оператором T-Mobile. Купить такой новый аппарат в России нельзя, а пользоваться - разве что с симкой МТС.

Но мне в некоторой степени повезло - человек попался с пониманием - аппарат был уже разлочен, установлена новая прошивка root-ROM Super-D. Что это такое и чем это закусывать - понятия не имею. Пока что понял, что при включении с одновременным удержанием кнопки Home - попадаем в загрузчик:



...а из оттуда уже можно сходить в простенький sh, вот информация о процессоре:



Смутно догадываюсь, что процессор с фичей java подразумевает ее аппаратную поддержку в том или ином виде. Чувствую, праздники пройдут за изучением манов по установке/сборке прошивок для Dream...

2010-04-30

Книга про Android

Недавно обнаружил среди новинок Озон-а книгу про Android:


Давно хотел поизучать Android, поэтому не смог пройти мимо этого издания.

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

С особым интересом прочел главу про Binder (облегченный RPC) - для меня было откровением узнать, что он основан на OpenBinder - разработке Palm.

Описанные авторами API мне тоже сильно напомнили PalmOS, сразу захотелось купить устройство (что-то типа T-Mobile G1), а пока упражняюсь в эмуляторе (который и вправду стартует минут 5-6).

2010-04-09

MeeGo

Совсем недавно перечитывал новости о Maemo и Moblin и пытался понять: чем же одна лучше другой?

И вот - смотрю, что Intel и Nokia пожелали их скрестить и назвать MeeGo. Дело зашло настолько далеко, что они даже выпустили первую сборку для ноутов на Atom, Moorestown (Atom-чипсет для смартфонов) и ARM-based N900!

X-ов пока нет. С другой стороны - это всего лишь первый шаг... Но учитывая противоборство ARM и Atom - картина несколько странная.


2009-12-24

Linux на Лаптопе

Linux в качестве серверной ОС - весьма привычное решение, зато на ноутбуках подавляющее большинство людей по-прежнему подразумевают Windows. Эту ситуацию немного подломили нетбуки, стартовавшие в лице Asus EEE именно с linux. Купив два года назад Asus F7Sr, я решил оставить там "родную" Windows Vista Home Premium, дабы насладиться щедрым даром Microsoft, типа ТВ-тюнера или интеграцией с домашним кинотеатром. Реальность оказалась ужасна, но, к счастью, недавно сдох винчестер, и мне предоставился шанс начать все с чистого листа винта. Займет ли его снова лицензионная Vista?

2009-10-21

Linux Mint

То, что должно было рано или поздно случиться, произошло вчера: винчестер моего ноута начал издавать страшные звуки, Vista сначала перестала грузиться в нормальном режиме, а затем и в сэйф-моде.

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

Первое же, что мне попалось под руку - диски-приложения от LinuxFormat. С твердой уверенностью, что сверхъестественные силы меня не оставили, я загрузился с первого, что подвернулось под руку в режиме liveCD (без установки на жесткий диск).

И - о чудо! Linux Mint 7 правильно разобрался со звуком, видео, кард-ридером, тачпадом, проводной и беспроводной сеткой, а самое главное - оказался способен читать и писать диски NTFS. Специально потом посмотрел - этот диск был в приложении к номеру за август 2009 года. Лаптопу около двух лет, неудивительно, что с оборудованием не возникло проблем.

Вот и получается, что никогда заранее не узнаешь, где и при каких обстоятельствах тебя выручит этот замечательный журнал. Если у фирмы не будет денег, подпишусь за свои кровные, причем не на электронную, а именно на бумажную версию - там есть спасительные диски ;)

UPD: раздумываю, не установить ли на ноутбук linux, а всевозможные винды гонять в виртуальных машинах. Если получится - с меня статья ;)

2009-10-05

Продолжение следует

Давно не писал в этот блог, потому что почти целиком переключился на "железную" тематику.

Тем не менее, должен сказать пару слов про семинар FRUCT: я туда все-таки вписался и даже сходил на первый день.

Прежде всего, мои комплименты организаторам. Петрозаводчане - вы просто молодцы! Мне особенно хочется благодарить Александра Бородина - такого простого и ясного изложения основных принципов работы по разработке по Maemo я никак не ожидал. На все стандартные вопросы были заготовлены ответы.

Уровень и возраст тренирующихся был довольно разным, но, по моим субъективным ощущением, с заданиями справились все. Организаторы принесли с собой лаптоп, на котором и был установлен Scratchbox, а слушатели ходили на него через Putty и VNCViewer через установленные в аудитории терминалы с WinXP, выполняя задания.

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

В перерыве мы побеседовали с Александром о жизни. Точнее, он подошел и сочувственно поинтересовался, почему я ничего не спрашиваю - наверное, я все знаю? Мы поговорили о Nokia, Maemo и Free Software, обнаружив довольно сходные точки зрения.

Короче, я понял, что я занял чье-то место (вроде бы, приходили желающие, а им говорили, что надо было записываться заранее). Поэтому, после окончания первого дня курса я решительно случайно потерял пропуск на семинар и преспокойно пошел на работу с мыслями "может так оно и к лучшему?".

По поводу усовершенствований курса, я бы порекомендовал более конкретные задания, просто под конец Александр предлагал написать более сложные программы "на свой вкус": мне кажется, надо что-то типа "красный квадрат в черном круге" или "диалог выбора файла, а затем его отправка по bluetooth". Иначе спортивный азарт теряется ;)

Впрочем, я все равно доволен, что попал на этот курс. Теперь остается ждать Nokia N900, которая в России начнет продаваться без привязки к контракту ближе к декабрю - именно так мне заявили продавцы в фирменном нокиевском центре продаж, куда я забрел совершенно наугад ;)