Bug 28271

Summary: Гибридные образы, создаваемые новым mkimage через xorisso, имеют неправильную метку тома.
Product: Sisyphus Reporter: Anton V. Boyarshinov <boyarsh>
Component: mkimageAssignee: Michael Shigorin <mike>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, glebfm, legion, mike
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 27685    

Description Anton V. Boyarshinov 2012-12-25 15:11:36 MSK
Гибридные образы, создаваемые новым mkimage через xorisso, имеют неправильную метку тома. Метка должна браться из соответствуещей переменной mkimage (ну и начинаться со слова ALT -- иначе наш пропагатор не определит её как образ, с которого надо ставиться)

/dev/sdc1: UUID="2012-12-24-10-11-39-00" LABEL="ISOIMAGE" TYPE="iso9660" 
/dev/sdc2: SEC_TYPE="msdos" UUID="A575-1063" TYPE="vfat"
Comment 1 Michael Shigorin 2012-12-25 16:50:32 MSK
(In reply to comment #0)
> Гибридные образы, создаваемые новым mkimage через xorisso, имеют неправильную
> метку тома. Метка должна браться из соответствуещей переменной mkimage
Это уже исправлено, но ещё не долетело до сизифа:
http://git.altlinux.org/people/mike/packages/?p=mkimage.git;a=commitdiff;h=6054b1400ff7704c5446def6bab92cef36146c81

2 legion: ping :)

> (ну и начинаться со слова ALT -- иначе наш пропагатор не определит её как
> образ, с которого надо ставиться)
А вот это я "чуть не" сломал в не смерженном ещё левобранче m-p, но для буквально пары опубликованных образов и regular-* это изменение точно не затронуло:

 distro/.base: distro/.init use/kernel
 	@$(call set,META_SYSTEM_ID,LINUX)
-	@$(call set,META_VOL_ID,ALT Linux $(IMAGE_NAME)/$(ARCH))
+	@$(call set,META_VOL_ID,$(IMAGE_NAME))
 	@$(call set,META_VOL_SET,ALT Linux)

Дело в том, что "ALT Linux ""/x86_64" добавляет 17 символов, а жёсткий предел размера строки -- 32 символа (дальше xorriso вываливается в конце сборки, что особенно приятно).  Т.е. минимум половину лимита мы съедаем и в случае i586.

Это отдельная проблема, но с ней тоже надо что-то думать, а пока хоть упомяну.
Comment 2 Michael Shigorin 2012-12-25 16:51:44 MSK
2 legion: т.е. прошу собрать в сизиф aaaf8e4ad81738e2ec03024ced98b8aa628f6444 из http://git.altlinux.org/people/mike/packages/?p=mkimage.git или посмотреть и подтвердить, что это приличный 0.2.6-alt1.
Comment 3 Alexey Gladkov 2012-12-25 17:29:01 MSK
(В ответ на комментарий №2)
> 2 legion: т.е. прошу собрать в сизиф aaaf8e4ad81738e2ec03024ced98b8aa628f6444
> из http://git.altlinux.org/people/mike/packages/?p=mkimage.git или посмотреть и
> подтвердить, что это приличный 0.2.6-alt1.

Не нужно ли в

http://git.altlinux.org/people/mike/packages/?p=mkimage.git;a=blob;f=tools/mki-pack-isoboot;h=7f75a5a529ef112586d66972f72678ee06efb5a9;hb=6a1a4b6d7b5678bcf624dce4b2b50a9f11787c50#l34

также использовать новую переменную ISOHYBRID ?

Иначе получается, что если нет EFI_BOOTLOADER и ISOHYBRID, то syslinux будет поставлен, но не нужен.
Comment 4 Michael Shigorin 2012-12-25 18:52:57 MSK
(In reply to comment #3)
> Не нужно ли в [tools/mki-pack-isoboot] также использовать новую переменную
> ISOHYBRID ?
Нужно; возможно, он вытянулся ещё чем-то в профиле, т.к. работающие гибридные образы я предложенным mkimage собирал.

> Иначе получается, что если нет EFI_BOOTLOADER и ISOHYBRID,
> то syslinux будет поставлен, но не нужен.
Он тогда как раз может быть _не_ поставлен, но нужен для ISOHYBRID.

Сделал тривиальный патч, тестирую...

-[ -z "${EFI_BOOTLOADER:-}" ] ||
+[ -z "${EFI_BOOTLOADER:-}" -a -z "${ISOHYBRID:-}" ] ||
Comment 5 Michael Shigorin 2012-12-25 20:28:28 MSK
Проверил с use/isohybrid, use/efi и без них, УМВР:
http://git.altlinux.org/people/mike/packages/?p=mkimage.git;a=commitdiff;h=4bc5bb16590b8ac8d5ea9a6d0c6a56792b597dcc
Comment 6 Michael Shigorin 2013-01-14 01:52:33 MSK
Так как, принимаем?  А то у меня тут следующая кучка патчей зреет -- вычистка и обобщение mki-copy-efiboot :)
Comment 7 Alexey Gladkov 2013-01-15 00:43:24 MSK
0.2.6-alt1
Comment 8 Michael Shigorin 2013-01-20 18:18:24 MSK
Теперь снова порядок, извините за незамеченный вовремя слом.
Comment 9 Michael Shigorin 2016-08-15 12:58:08 MSK
(В ответ на комментарий №1)
> Дело в том, что "ALT Linux ""/x86_64" добавляет 17 символов [...]
Теперь в моде просто "ALT" (-6, т.е. +11).