[sisyphus] Текстовый инсталлер
Michael Shigorin
mike на osdn.org.ua
Вт Июл 31 20:05:19 MSK 2012
On Tue, Jul 31, 2012 at 02:19:15AM +0400, Денис Смирнов wrote:
> MS> Никаких проблем сделать cpio в mkimage. :)
> $ make desktop-systemd.cpio
> ** ARCH: x86_64
> make[1]: *** No rule to make target `desktop-systemd.cpio'. Stop.
>
> Как это сделать? :)
Примерно так, только описав упаковку чрута в cpio:
--- a/conf.d/vm.mk
+++ b/conf.d/vm.mk
@@ -3,6 +3,7 @@ ifeq (vm,$(IMAGE_CLASS))
# NB: use/x11 employs some installer-feature packages
vm/icewm: vm/bare use/cleanup/installer use/x11/xdm +icewm; @:
+vm/desktop-systemd: vm/icewm use/systemd; @:
vm/net: vm/bare use/vm-net/dhcp use/vm-ssh; @:
...и далее:
$ make ROOTPW=1 vm/desktop-systemd.img
** ARCH: x86_64
19:27:47 cleaning up (NB: DEBUG scope is limited when CLEAN is enabled)
19:27:47 initializing BUILDDIR: build/
19:27:47 preparing distro config: build/distcfg.mk
19:27:47 starting image build: tail -f build/build.log
19:29:18 done (1:30)
** image: ~/out/desktop-systemd-20120731-x86_64.img [604M]
Результат будет какое-то время доступен как
http://ftp.linux.kiev.ua/pub/Linux/ALT/people/mike/iso/mkimage-profiles/systemd-tests/desktop-systemd-20120731-x86_64.img
-- если хочешь, посмотри, у меня с разными kvm -vga
экран получается чёрный/белый/в крапинку (+vmguest ситуацию
особо не меняет, добавляя специфические гостевые драйверы --
с ними примерно то же). Но тут может мешать ssh -Y, а иначе
прямо сейчас проверить не особо получается.
> Задача -- сделать cpio-архив, в котором лежало бы то, что
> получилось бы после установки desktop-systemd. Понимаю что
> некоторые изменения делаются сейчас альтератором, фиг с ними
> пока.
Я ещё не делал в общем виде вынос конфигурации дистрибутивов
в отрыве от сборки образов именно дистрибутивов, так что прямо
сейчас придётся либо сделать это, либо воспроизвести цепочку
конфигурирования вплоть до и включая distro/desktop-systemd:
distro/desktop-systemd -> distro/icewm use/systemd
distro/icewm -> distro/.desktop-network use/lowmem +icewm
distro/.desktop-network -> distro/.desktop-mini +vmguest
distro/.desktop-mini -> distro/.desktop-base use/x11/xdm +power
distro/.desktop-base -> distro/.installer use/syslinux/ui/vesamenu use/x11/xorg
Т.е. всё вот это надо rebase-нуть с distro/.installer на vm/bare,
ну или построить vm/desktop-systemd на базе vm/icewm.
Ты же понимаешь, что distro и vm -- достаточно разные сущности,
чтобы у них количество субпрофилей было разным, для начала?..
Поэтому стоит по возможности ясно сформулировать задачки,
чтобы лучше разделять и реюзать компоненты.
Т.е.:
- задачка сборки дистрибутива означает сборку нескольких чрутов,
их упаковку либо копирование как есть, прибавление загрузчика
и финальную упаковку всего вместе;
- сборка ve требует сборки одного чрута без ядра и его упаковки
(например, в cpio);
- сборка vm требует сборки одного чрута с ядром и его упаковки
в формат диска виртуальных машин;
- сборка cpio для вашего инсталера требует сборки одного чрута
с ядром и его упаковки в cpio.
Плюс к этому видится осмысленность разнесения "базовой"
конфигурации и того, поверх чего её потом укладывать --
пустого инсталера или пустого образа vm...
Озадачили, пошёл думать.
--
---- WBR, Michael Shigorin <mike на altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
Подробная информация о списке рассылки Sisyphus