<div dir="auto"><div>Антон, коллеги, добрый день! <br><br><div data-smartmail="gmail_signature"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">ср, 8 янв. 2020 г., 22:29 Антон Мидюков &lt;<a href="mailto:midyukov-anton@ya.ru">midyukov-anton@ya.ru</a>&gt;:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">01.11.2019 21:18, Alexey Shabalin пишет:<br>
&gt; Всем привет.<br>
&gt; Я для Server-V добавил поддержку grub-efi в инстляторе.<br>
&gt; Прошу посмотреть/проверить. Делал только самое необходимое для себя. В<br>
&gt; дальнейшем можно наращивать функционал. Например, сейчас нет поддержки<br>
&gt; тем для grub, потому что мне не надо было :), мне достаточно<br>
&gt; текстового grub.<br>
&gt;<br>
&gt; 1) поддержка grub-efi в efiboot mkimage<br>
&gt; <a href="http://git.altlinux.org/people/shaba/packages/mkimage.git?p=mkimage.git;a=commitdiff;h=932c2e80d41c8ace7bbb5da52a48bab49fde575f" rel="noreferrer noreferrer" target="_blank">http://git.altlinux.org/people/shaba/packages/mkimage.git?p=mkimage.git;a=commitdiff;h=932c2e80d41c8ace7bbb5da52a48bab49fde575f</a><br>
&gt;<br>
&gt; 2) добавил фичу grub для генерации кофигов grub из кусочков, по<br>
&gt; аналогии с syslinux.<br>
&gt; Пока жесткая завязка на местоположение vmlinuz и <a href="http://full.cz" rel="noreferrer noreferrer" target="_blank">full.cz</a> в EFI/BOOT<br>
&gt; для grub-efi.<br>
&gt; Не уверен, что можно использовать для aarch64, это буду смотреть дальше.<br>
&gt; <a href="http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=7b9d60d6661cad6e6f02b93e646a42bd07645c51" rel="noreferrer noreferrer" target="_blank">http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=7b9d60d6661cad6e6f02b93e646a42bd07645c51</a><br>
&gt;<br>
&gt; 3) использование конфигов для grub наравне с syslinux<br>
&gt; <a href="http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=23a460dd3de2147cc9a0db5de52234ececb0b5ef" rel="noreferrer noreferrer" target="_blank">http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=23a460dd3de2147cc9a0db5de52234ececb0b5ef</a><br>
&gt;<br>
&gt; 4) переключил server-v с refind на grub-efi<br>
&gt; Вместо (+efi use/efi/refind) использую use/efi/grub use/efi/signed<br>
&gt; <a href="http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=5577800554b2e240146b7cfb039c7a97d13e74d7" rel="noreferrer noreferrer" target="_blank">http://git.altlinux.org/people/shaba/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=commitdiff;h=5577800554b2e240146b7cfb039c7a97d13e74d7</a><br>
&gt;<br>
&gt; 5) собираю командой (потому что искать, где это переопределяется, кто<br>
&gt; мне помогает и потом определяет эти переменные подругому, тяжело и<br>
&gt; муторно)<br>
&gt; make ARCH=x86_64 BUILDDIR=~/build-mkimage<br>
&gt; APTCONF=~/etc/p9.x86_64-apt.conf DEBUG=1 REPORT=1 IMAGE_PACKTYPE=boot<br>
&gt; BOOT_TYPE=&quot;isolinux efiboot&quot; EFI_BOOTLOADER=grub-efi server-v.iso<br>
&gt;<br>
&gt; Спасибо за внимание. Буду рад исправлениям.<br>
<br>
Доброго времени суток<br>
<br>
За каникулы серьёзно поработал над mkimage и mkimage-profiles.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Здорово! Спасибо. </div><div dir="auto">mike@ как раз хотел в январе-феврале заняться mkimage-profiles, но Вы опередили! :) </div><div dir="auto">Было бы здорово обсудить дальнейшую работу, в частности интеграцию многочисленных патчей к весенним релизам. </div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">Rgrds, Алексей</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
В задании [#243937] [test-only] EPERM mkimage.git=0.2.30-alt1 сделал <br>
следующее:<br>
<br>
1. в grubaa64boot сделал структуру файлов как в образе собираемом с <br>
efiboot. Так что прошу обратить пристальное внимание на это.<br>
<br>
2. в grubaa64boot убрал генерацию grub.cfg из syslinux.cfg, так как она <br>
больше не нужна (да и работала некорректно)<br>
<br>
3. Добавил новую цель mki-copy-kernel, которую предлагаю вызывать из <br>
mkimage-profiles вместо mki-copy-$BOOTLOADER.<br>
<br>
Мне не нравится, что у нас сейчас mki-copy-$BOOTLOADER вызывается <br>
дважды: из mkimage-profiles, чтобы скопировать ядро с образом <br>
пропагатора, и второй раз уже в mkimage-profiles, чтобы установить <br>
загрузчик. При первом вызове есть ядро, но не готов syslinux.cfg, при <br>
втором готов syslinux.cfg, но уже нет ядра. Кроме того, это изменение <br>
упростит процесс перехода на использование в образе нескольких ядер.<br>
<br>
4. В mki-copy-efiboot для grub-efi ядро копировать в boot, если его ещё <br>
там нет. Аналогично для других EFI_BOOTLOADER проверять, есть ли уже <br>
ядро в EFI/BOOT, и если есть не копировать.<br>
<br>
Но основные изменения в mkimage-profiles:<br>
<br>
1. Исправил определение default-ного пункта, если не задан (см 0001).<br>
<br>
2. Сделал фильтр конфигов по названиям. Например, пункты меню <br>
специфичные для EFI должны оканчиваться на _efi.cfg (см 0005)<br>
<br>
3. Может генерироваться два конфига grub.cfg, для EFI и всех остальных. <br>
Два сразу могут быть только при использовании grub для legacy (не <br>
реализован) и grub-efi (см 0005)<br>
<br>
4. Исправил $linux_suffix. То условие не работает и генерит при загрузке <br>
grub ошибки про не найденные команды (см 0008)<br>
<br>
5. Интегрировал по аналогии с syslinux генерацию конфигов grub для <br>
install2 и live (см 0012). Для того, чтобы это никому не помешало, в <br>
зависимости от выбранных загрузчиков следы grub подчищаются (см 0004 и 0005)<br>
<br>
6. Для syslinux тоже сделал такую проверку (см 0015, 0016) Это позволит <br>
задать загрузчик grub legacy, не убирая отовсюду syslinux.<br>
<br>
7 Вызываю copy-kernel вместо copy-$BOOTLOADER (см 0020)<br>
<br>
8 Остальное мелочи.<br>
<br>
Также я отправил в Сизиф livecd-install, который может восстанавливать <br>
ядро не только из syslinux/alt0, но и boot:<br>
<br>
[#243884] DONE (try 2) livecd-install.git=0.9.12-alt1<br>
<br>
Итого, для полного счастья не хватает только выбора языка и графической <br>
темы.<br>
<br>
-- <br>
С уважением, Антон Мидюков &lt;<a href="mailto:antohami@altlinux.org" target="_blank" rel="noreferrer">antohami@altlinux.org</a>&gt;<br>
<br>
_______________________________________________<br>
devel-distro mailing list<br>
<a href="mailto:devel-distro@lists.altlinux.org" target="_blank" rel="noreferrer">devel-distro@lists.altlinux.org</a><br>
<a href="https://lists.altlinux.org/mailman/listinfo/devel-distro" rel="noreferrer noreferrer" target="_blank">https://lists.altlinux.org/mailman/listinfo/devel-distro</a><br>
</blockquote></div></div></div>