[12:05:11] <zombah>  добрый день всем
 [12:50:20] <stuw>  привет, zombah. Не пробовал всобачить paz00_keyHandler в сборку?
 [12:50:39] <zombah>  stuw: привет, нет пока
 [13:08:34] <zombah>  stuw: ты не смотрел откуда еще parted запускается в инсталлере?
 [13:12:20] <zombah>  или дай мне права я сам поиграюсь с ним
 [13:19:22] <stuw>  zombah, parted только в main'е зовется. Там создается новая разметка без партиций (т.е. мбр есть, партиций нет). Тупо занулять mbr не хотелось бы.
 [13:22:08] <stuw>  zombah, права дал
 [13:30:53] <zombah>  ну мне партед уже все занулил в первый заход, теперь надо просто создать новую
 [13:31:26] <stuw>  занулить != создать мбр без партиций
 [13:32:05] <zombah>  ну он делает только команду mklabel дальше зависает
 [13:32:31] <zombah>  поэтому каждый запуск он мне просто затирает разметку а дальше затыкается
 [13:32:55] <stuw>  это я понял. возможно в конце нужно quit команду ему дать
 [13:33:31] <stuw>  я имею в виду, что если переделывть, то хорошо бы сохранить логику - чтобы мбр создавался корректный, а не просто занулялся
 [13:33:45] <stuw>  это я про кейс, где сейчас остался единственный вызов parted
 [13:34:17] <zombah>  echo "Switching to GPT (remove all partitions)..."
 [13:34:17] <zombah>  parted $device << EOF
 [13:34:20] <zombah>  вот это место
 [13:34:50] <stuw>  сделай pull
 [13:34:52] <stuw>  я про него же
 [13:35:05] <zombah>  pull?
 [13:35:19] <stuw>  апни репозиторий, я коммит запушил :)
 [13:35:32] <stuw>  теперь завизать в этом месте не должно
 [13:36:05] <zombah>  счас проверю
 [13:36:22] <zombah>  а какой смысл тут партед оставлять если sgdisk тоже самое умеет?
 [13:37:54] <stuw>  какой командой он умеет это? если ты проверишь, что команда инициализации не будет фейлиться, если вместо MBR каша/нули, то можно и sgdisk. У меня нет возможности проверить.
 [13:38:28] <zombah>  sgisk -og вроде
 [13:38:51] <stuw>  она в некоторых случаях ошибку возвращает.
 [13:38:59] <stuw>  -o которая
 [13:39:45] <zombah>  ну я ее пробовал у себя они ниразу ошибку не возвращала
 [13:39:53] <zombah>  только суксесс
 [13:39:57] <stuw>  можешь с зануленным MBR попробовать?
 [13:40:18] <zombah>  а дай пример как его занулить правильно
 [13:40:26] <stuw>  и с рандомным MBR (из /dev/urandom)
 [13:40:27] <stuw>  of
 [13:40:28] <stuw>  ща
 [13:40:51] <stuw>  dd if=/dev/zero of=/dev/mmcblkX bs=512 count=1
 [13:40:57] <stuw>  dd if=/dev/urandom of=/dev/mmcblkX bs=512 count=1
 [13:43:12] <zombah>  http://pastebin.com/F1MRxDzS
 [13:43:23] <stuw>  dd if=/dev/urandom of=/dev/mmcblkX bs=512 count=1 && echo -ne "\x55\xAA" | dd of=/dev/mmcblkX bs=1 seek=510
 [13:44:39] <stuw>  sgdisk --zap-all сделай плиз перед dd
 [13:44:50] <stuw>  он gpt находит подлец )
 [13:45:21] <zombah>  http://pastebin.com/QQYb12Kk
 [13:45:49] <stuw>  команды, которые я написал: 1. зануленный MBR, 2. формально не mbr, 3. mbr с кривыми данными
 [13:46:04] <zombah>  да при таком раскладе он не срабатывает
 [13:46:50] <stuw>  ясно. sgdisk --zap-all сделай, а потом глянь вывод hexdump -C -n512 /dev/mmcblkX
 [13:47:02] <zombah>  правда и parted Тоже 8))
 [13:47:14] <zombah>  (parted) mklabel gpt
 [13:47:14] <zombah>  Warning: The existing disk label on /dev/mmcblk1 will be destroyed and all data
 [13:47:14] <zombah>  on this disk will be lost. Do you want to continue?
 [13:47:14] <zombah>  Yes/No?
 [13:47:26] <stuw>  если там в конце 55 aa, то все ок
 [13:47:33] <zombah>  Warning: /dev/mmcblk1 contains GPT signatures, indicating that it has a GPT
 [13:47:33] <zombah>  table. However, it does not have a valid fake msdos partition table, as it
 [13:47:33] <zombah>  should. Perhaps it was corrupted -- possibly by a program that doesn't
 [13:47:33] <zombah>  understand GPT partition tables. Or perhaps you deleted the GPT table, and are
 [13:47:33] <zombah>  now using an msdos partition table. Is this a GPT partition table?
 [13:47:34] <zombah>  Yes/No?
 [13:47:56] <zombah>  два y y надо ему теперь 8)
 [13:48:06] <stuw>  )
 [13:48:13] <stuw>  dd if=/dev/urandom of=/dev/mmcblkX bs=512 count=1 && echo -ne "\x55\xAA" | dd of=/dev/mmcblkX bs=1 seek=510
 [13:48:15] <zombah>  или там можно ключом проигнорить вопросы?
 [13:48:21] <stuw>  sgdisk --zap-all
 [13:48:24] <stuw>  hexdump -C -n512 /dev/mmcblkX
 [13:48:36] <stuw>  давай попробуем через sgdisk
 [13:49:00] <stuw>  sgdisk --zap-all стирает все и чихает на ошибки в разметке. НО, я не знаю, что в результате получается.
 [13:49:03] <zombah>  # sgdisk --zap-all /dev/mmcblk1
 [13:49:03] <zombah>  [ 615.227738] mmcblk1: p1() p2(LNX) p3(MBR)
 [13:49:03] <zombah>  GPT data structures destroyed! You may now partition the disk using fdisk or
 [13:49:03] <zombah>  other utilities.
 [13:49:03] <zombah>  # hexdump -C -n512 /dev/mmcblk1
 [13:49:03] <zombah>  00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
 [13:49:05] <zombah>  *
 [13:49:07] <zombah>  00000200
 [13:49:09] <zombah>  #
 [13:49:16] <stuw>  Может быть после этого нужно еще что-то.
 [13:49:21] <stuw>  ага, mbr'а нет :(
 [13:49:35] <stuw>  а если теперь sgdisk -og ?
 [13:50:06] <zombah>  # sgdisk -og /dev/mmcblk1
 [13:50:06] <zombah>  Creating new GPT entries.
 [13:50:06] <zombah>  [ 699.459006] mmcblk1: p1() p2(LNX) p3(MBR)
 [13:50:06] <zombah>  The operation has completed successfully.
 [13:50:45] <stuw>  mmcblk1: p1() p2(LNX) p3(MBR) - хз, откуда он находит это )
 [13:51:03] <stuw>  у тебя теперь 3 партиции на /dev/mmcblk1 ?
 [13:51:15] <zombah>  это cmdline partition support в ядре вещает
 [13:51:29] <stuw>  я понимаю
 [13:51:37] <zombah>  ему похер на реальность что в cmdline записно то и пишет
 [13:51:51] <stuw>  ))
 [13:52:17] <zombah>  надо его прибить на болт, не понимаю как он работает
 [13:53:33] <zombah>  а что надо сказать switch-to-uboot чтоб он не только создавал разметку но и партиции сразу?
 [13:53:48] <zombah>  теперь выходит норм из parted
 [13:54:38] <stuw>  на sgdisk переделываю?
 [13:54:58] <zombah>  давай конечно
 [13:55:21] <stuw>  готово
 [13:58:49] <zombah>  счас попробую
 [14:04:16] <zombah>  да сделал мне новую gpt
 [14:04:41] <zombah>  может после этого воткнуть вопрос что может вам выбрать набор партиций? 8)
 [14:09:26] <stuw>  можно, а можно эту работу инсталлятору оставить :)
 [14:09:41] <zombah>  а он это делает?
 [14:10:08] <stuw>  андроидный инсталлер сам убут ставит и разбивку делает.
 [14:10:15] <zombah>  ишь
 [14:10:25] <zombah>  отлично счас тоже попробую
 [14:10:35] <stuw>  убунтовский тоже сам партиции умеет. Правда он пока сам не умеет ядро ставить )
 [14:12:44] <zombah>  кстати может installer переименовать в более интуитивное название?
 [14:12:59] <stuw>  какое?
 [14:13:30] <zombah>  ну не знаю android-installer? 8)
 [14:13:53] <stuw>  paz00-cm-installer, cm-installer, android-installer ?
 [14:15:47] <zombah>  хм ладно это пока не к спеху
 [14:16:03] <stuw>  да и править все мануалы придется :(
 [14:16:10] <zombah>  тоже верно
 [16:27:59] <zombah>  stuw: а инсталлеру можно задать положение зипов вручную или оно там захардкожено?
 [16:30:06] <stuw>  инсталлер первый recovery-*.img файл ищет в корне и считает, что это рекавери
 [16:30:15] <stuw>  zip ему не нужен по большому счету
 [16:30:20] <stuw>  https://github.com/ac100-ru/android-installer/blob/master/installer#L258
 [16:30:49] <stuw>  вру - ищет в папке рядом с собой
 [16:32:24] <zombah>  хм всмысле рядом ссобой? тоесть его надо обязательно на сд копировать?
 [16:32:37] <stuw>  сейчас да
 [16:32:41] <zombah>  а я его добавляю в сосбут рядом со switch-to-uboot
 [16:32:56] <zombah>  тот думаю что он не пашет
 [16:33:00] <stuw>  тогда надо подправить, чтобы искал на внешних носителях
 [16:33:29] <zombah>  хм
 [16:34:12] <zombah>  чет не соображу как лучше сделать чтоб он там и там искал
 [16:34:25] <stuw>  посмотри убунтовский инсталлер
 [16:34:39] <zombah>  что за убунтовский инсталлер?
 [16:35:02] <stuw>  который от 12 убунты для тошки. Он же сам ищет zip и проверяет его
 [16:35:21] <zombah>  эээ что я такого не припоминаю
 [16:35:40] <stuw>  расковыряй рекавери убунтовского инсталлера и посмотри :)
 [16:35:46] <zombah>  ааа
 [16:35:55] <stuw>  *инитрд
 [16:36:00] <zombah>  бог с ним, проще самому придумать
 [16:36:15] <stuw>  там код уже рабочий есть :)
 [16:36:22] <stuw>  а так тебе отлаживать надо
 [16:36:49] <stuw>  хотя все-равно надо монтировать автоматом внешние носители
 [16:36:55] <stuw>  так что может ты и прав
 [16:37:35] <zombah>  а помнишь как в баше проверить ввод с стдин на то пустой он или нет?
 [16:37:58] <zombah>  типа $1 <&0
 [16:38:32] <stuw>  не помню
 [16:38:39] <stuw>  а зачем тебе stdin ?
 [16:40:26] <zombah>  ну типа сделать ./installer /mnt/recovery-xxx.img и он пошел его инсталить, а если $1 пустой то как было ищет рядом с собой
 [16:40:37] <stuw>  так это не stdin
 [16:41:07] <zombah>  ну да я его может не правильно обозвал
 [16:41:51] <stuw>  $1 проверить на пустоту. [ -z "$1" ] || error "bla"
 [16:42:16] <stuw>  в apply_partitions_config.sh фнукция проверяет свои параметры. В основном коде также надо
 [16:45:10] <zombah>  хм а как c эти [ -z "$1" ] if/else Обыграть
 [16:45:34] <stuw>  if [ -z "$1" ]; then
 [16:45:36] <stuw>  ...
 [16:45:37] <stuw>  fi
 [16:45:49] <zombah>  а точно, спасибо
 [16:45:56] <zombah>  счас попробую
 [16:46:47] <stuw>  возможно надо без кавычек
 [16:47:03] <stuw>  что-то меня || смущает в [ -z "$1" ] || error "bla"
 [16:47:04] <stuw>  :)
 [16:47:56] <zombah>  в исталлере у тебя вот так [ -z "$recovery_image" ] && error "Can't find recovery image"
 [16:51:23] <zombah>  Failed to extract recovery
 [16:51:36] <zombah>  что ему там еще кроме sd подмонтировать надо?
 [16:52:14] <stuw>  usb ?
 [16:52:37] <zombah>  ээ usb?
 [16:52:51] <zombah>  зачем usb?
 [16:53:25] <zombah>  Uncompressing AC100 uboot+gpt installer.........
 [16:53:25] <zombah>  unzip: can't open [.zip]
 [16:53:25] <zombah>  Failed to extract recovery
 [16:53:25] <zombah>  For more information see /tmp/installer.log
 [16:53:36] <zombah>  вот что в лог пишет
 [16:54:08] <zombah>  аа оно видно на вход $recovery_image ждет
 [16:55:47] <stuw>  -z странно в бизибоксе работает. В apply_partitions_config.sh проверка на пустоту параметров неверная
 [16:56:37] <zombah>  я могу добавить в сосбут нормальный баш
 [16:57:07] <stuw>  не, не надо
 [16:57:59] <stuw>  нужно просто проверять код ) даже на обычном десктопе расхождения могут быть в разных шелах
 [17:01:13] <zombah>  а антоним у -z есть?
 [17:03:26] <zombah>  а или -e $1 это типа если $1 не нулевый?
 [17:12:24] <stuw>  -n
 [17:12:37] <stuw>  -e - существует
 [17:13:11] <zombah>  ну вот так можно -e $1?
 [17:13:20] <zombah>  чет не работает
 [17:13:32] <zombah>  впрочем даже с -z чтот не то
 [17:14:57] <zombah>  # Find recovery.img
 [17:14:57] <zombah>  if [ -z "$1" ]
 [17:14:57] <zombah>  then
 [17:14:57] <zombah>  local recovery_image="$(find_recovery_image)"
 [17:14:57] <zombah>  else
 [17:14:58] <zombah>  local recovery_image="$1"
 [17:15:00] <zombah>  [ -z "$recovery_image" ] && error "Can't find recovery image"
 [17:15:02] <zombah>  echo "Recovery image: $recovery_image" | tee -a "$LOG"
 [17:15:04] <zombah>  fi
 [17:18:02] <zombah>  а хотя fi то выше надо
 [17:19:49] <zombah>  неа чтот так тоже не хочет
 [17:22:28] <zombah>  Target: /dev/mmcblk1
 [17:22:28] <zombah>  Recovery image: ./recovery-10.2-20131111.img
 [17:22:28] <zombah>  ./recovery-10.1-20131104.img
 [17:22:28] <zombah>  ./recovery-11.0-20140309.img
 [17:22:28] <zombah>  ./recovery-11.0-20140322.img
 [17:22:29] <zombah>  Failed to extract recovery
 [17:22:31] <zombah>  For more information see /tmp/installer.log
 [17:22:41] <zombah>  слишком много рековерей его тоже смущают 8)
 [17:22:46] <stuw>  ))
 [17:24:08] <zombah>  надо там жесткие значения прибить, но чтоб через переменные их овверрайдить можно было
 [17:24:48] <stuw>  http://paste.ofcode.org/MCVkanfNn8gb5p68chpC49
 [17:25:44] <stuw>  можно в случае, если найдено несколько - обламываться или брать тупо первый рекавери
 [17:58:47] <zombah>  неа так тоже чтот не срабатывает, говорит не нашел рековери образ
 [17:59:28] <stuw>  логи надо смотреть
 [17:59:43] <zombah>  да в логе ничего интересного
 [17:59:52] <zombah>  local recovery_image="$(find_recovery_image)"
 [18:00:00] <zombah>  ********************************************************
 [18:00:00] <zombah>  Mon Mar 2 15:01:45 UTC 2015
 [18:00:00] <zombah>  ********************************************************
 [18:00:00] <zombah>  Target: /dev/mmcblk1
 [18:00:00] <zombah>  Creating directory /tmp/installer_tmp/switch-to-uboot
 [18:00:01] <zombah>  Verifying archive integrity... All good.
 [18:00:03] <zombah>  Uncompressing AC100 uboot+gpt installer.........
 [18:00:05] <zombah>  Can't find recovery image
 [18:00:08] <zombah>  For more information see /tmp/installer.lo
 [18:00:38] <stuw>  распечатай переменную recovery_image, распечатай пути, где ищешь.
 [18:00:58] <stuw>  и лучше pastebin один редактируй, иначе мы так все логи загадим ))
 [18:01:25] <zombah>  8))
 [18:01:46] <zombah>  да былоб что гадить
 [18:02:10] <zombah>  кабы тут у нас куча перекрестных бесед велась