From: Leonid Krivoshein <klark.devel@gmail.com> To: devel-distro@lists.altlinux.org Subject: Re: [devel-distro] Installator 2.0: конфигуратор, создающий kickstart-файл Date: Wed, 9 Oct 2024 04:40:37 +0300 Message-ID: <1d1b88b2-ad28-4463-b42f-9b37fcab6e01@gmail.com> (raw) In-Reply-To: <aeb9c0be-fd5b-4697-a52f-edccdcd32da8@ya.ru> On 10/8/24 16:43, Антон Мидюков wrote: > Доброго времени суток > > Три недели назад обсуждали в составе: sin@ cas@ sem@ shaba@ antohami@, каким должен быть новый инсталлятор на базе альтератор 2.0. > > По результатам обсуждения я сформулировал следующие тезисы: > > 1. Графический интерфейс инсталлятора представляет собой конфигуратор, который создаёт сценарий автоустановки (kickstart-файл) Типа такого: http://www.rhd.ru/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-redhat-config-kickstart.html ? Видимо когда-то у нас почти так и задумывалось, но получилось совсем не так. Нужна ли совместимость с форматом kickstart? RedHat и на ней основанным -- понятно, почему нужна. Формат устаревший, они его тянут по нужде, а не от хорошей жизни. Он не подходит как универсальный формат для конфигураций при повторных развёртываниях. Достаточно глянуть схему описания сложного разбиения дисков. Сейчас для целей массового серверного деплоя чаще используют Yaml, реже Toml. При этом kickstart уже известен и хорошо понятен рынку, только в этом его плюс при полной совместимости, которая, скорее всего, недостижима. Чтобы не быть голословным, сравните покрытое этой фичей: https://github.com/osboot/make-initrd/tree/master/features/kickstart с тем, что предлагает офдок RedHad по Kickstart. А без полной совместимости ремейк этого старья 20-летней давности теряет смысл. Но говорить о средствах конфигурирования (видимо dconf-конфигурацией) без понимания того, что собой представляет новый конфигуратор, бесполезно. Равно как и без обсуждения того, насколько вообще необходимо интегрировать конфигуратор в установщик. Вот концептуальные вопросы по этому разделу: 1.1. Нас устраивает текущий guile формат для файлов ответов? Если нет, тогда какой формат и почему? 1.2. Мы хотим возможность заранее сконфигурировать будущую установку без инсталлятора в GUI, т.е. отдельную программу в установленной системе, создающую файл ответов? Например, как часть будущего конфигуратора. 1.3. Как не повторить ошибок, из-за которых модули установщика и разных фронтэндов конфигуратора нельзя использовать во всех окружениях? Другими словами: насколько вообще нужно делать часть конфигуратора интегрированной в установщик? Может, пусть установщик разворачивает, а конфигуратор конфигурирует? 1.4. Разве вебовский UI/UX сейчас не приоритетней? Его давно не проблема встраивать в толстые приложения. И хотя этот подпункт скорее про конфигуратор, учитывая 1.2 и 1.3, вопрос звучит так: нам интересней ограничиться фронтэндом на guile, в т.ч. и дальше заниматься его поддержкой, или же интересней использовать простой декларативный язык UI/UX или даже готовую рисовалку интерфейсов на декларативном языке? > 2. Сценарий автоустановки состоит из секций конфигураций, соответствующих бекенду. Если бекенд не доступен, секция конфига пропускается Поскольку тут одни неизвестные, я это пока не буду комментировать. > 3. Один и тот же сценарий автоустановки может использоваться для установки и запуска настройки первого запуска, Возможно тут есть противоречие с п.7, зависит от того, насколько "необязательно". Но главное, конечно, это что настройка первого запуска -- другое приложение, выполняющееся в другом окружении уже установленной ОС. Если это то же приложение (Installer 2.0), то запускаемое в окружении установленной ОС с ключом --firsttime, при котором просто жёстко пропускается часть шагов. И это лучше, чем как сейчас дублировать код в разных пакетах. На мой взгляд, важно для всего иметь разумный дефолт. Чтобы его можно было поменять в интерактиве, при желании, но без острой необходимости проходить какие-то "шаги". > так как в инсталляторе и установленной системе разный набор бекендов (в установленной системе точно нет модуля разбивки диска). И поэтому для форматирования флешек используется rosa-imagewriter, для работы с имеющимися разделами -- gnome-disk-utility, и т.д. Как раз к вопросу 1.3. > 4. После того, как выполнена конфигурация и нажата кнопка установить (при настройке первого запуска - это Применить), происходит автоустановка. В графическом режиме процесс автоустановки визуализируется отдельным шагом "Установка", а в режиме автоустановки графический интерфейс не запускается и процесс визуализируется текстовыми сообщениями о выполненных операциях. > > 5. Установка разделена на две части: собственно установка и настройка при первом запуске. > > 5.1 Настройки установки > > [...] > > 5.2 Настройки первого запуска > > [...] > > 6. Настройка первого запуска является опциональной > > 7. Настройки из пунктов 5.1.1-5.1.7 *необязательно* выполнять при установке, если будет выполняться настройка первого запуска > > 8. Настройки выполняются параллельно > > 9. Первоначальной задачей является создание Настройки первого запуска (новый alterator-setup), для которой не нужно делать две наиболее технологически сложных части: разбивка диска и собственно установку, но можно реализовать поддержку создания и выполнения kickstart-файла. > > Предлагаю для начала определиться корректны изложенные тезисы или нет. > -- WBR, Leonid Krivoshein.
next prev parent reply other threads:[~2024-10-09 1:40 UTC|newest] Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-10-08 13:43 [devel-distro] Тезисы для инсталлятора на базе альтератор 2.0 Антон Мидюков 2024-10-08 23:13 ` [devel-distro] " Leonid Krivoshein 2024-10-08 23:29 ` [devel-distro] Тезисы для инсталлятора " Leonid Krivoshein 2024-10-09 2:13 ` Evgeny Sinelnikov 2024-10-09 21:52 ` Leonid Krivoshein 2024-10-14 7:17 ` [devel-distro] " Sergey V Turchin 2024-10-14 19:57 ` [devel-distro] Интерфейсы " Evgeny Sinelnikov 2024-10-14 21:23 ` Leonid Krivoshein 2024-10-14 21:57 ` Антон Мидюков 2024-10-15 1:11 ` Leonid Krivoshein 2024-10-15 4:49 ` Anton Farygin 2024-10-15 9:44 ` Michael Shigorin 2024-10-15 15:05 ` Denis Medvedev 2024-10-16 0:25 ` Leonid Krivoshein 2024-10-17 7:22 ` [devel-distro] " Sergey V Turchin 2024-10-15 19:29 ` [devel-distro] " Leonid Krivoshein 2024-10-17 7:27 ` [devel-distro] " Sergey V Turchin 2024-10-18 9:05 ` [devel-distro] [JT] мировоззренческое по путям развития Michael Shigorin 2024-10-15 5:19 ` [devel-distro] Интерфейсы для инсталлятора на базе альтератор 2.0 Evgeny Sinelnikov 2024-10-15 23:02 ` Leonid Krivoshein 2024-10-15 10:30 ` [devel-distro] инсталятор как краеугольный камень выбора технологического пути Michael Shigorin 2024-10-09 1:40 ` Leonid Krivoshein [this message] 2024-10-09 9:06 ` [devel-distro] Re: Installator 2.0: конфигуратор, создающий kickstart-файл Sergey V Turchin 2024-10-09 19:46 ` [devel-distro] " Leonid Krivoshein 2024-10-10 19:29 ` [devel-distro] про API и фронтэнды Leonid Krivoshein 2024-10-10 23:27 ` Антон Мидюков 2024-10-11 0:33 ` Leonid Krivoshein 2024-10-14 7:27 ` Sergey V Turchin 2024-10-15 4:59 ` [devel-distro] Веб-браузер в инсталляторе или для инсталлятора? Evgeny Sinelnikov 2024-10-15 5:53 ` Антон Мидюков 2024-10-15 20:53 ` Leonid Krivoshein 2024-10-18 9:25 ` Michael Shigorin 2024-10-14 7:22 ` [devel-distro] Re: Installator 2.0: конфигуратор, создающий kickstart-файл Sergey V Turchin 2024-10-14 19:58 ` [devel-distro] " Leonid Krivoshein 2024-10-15 4:52 ` Anton Farygin 2024-10-15 19:30 ` Leonid Krivoshein 2024-10-15 6:33 ` [devel-distro] " Sergey V Turchin 2024-10-17 7:32 ` [devel-distro] " Sergey V Turchin 2024-10-17 7:49 ` [devel-distro] " Антон Мидюков 2024-10-17 8:44 ` [devel-distro] " Sergey V Turchin 2024-10-18 8:56 ` [devel-distro] qtbrowser vs wasm Michael Shigorin 2024-10-15 10:03 ` [devel-distro] [JT] Re: Installator 2.0: конфигуратор, создающий kickstart-файл Michael Shigorin 2024-10-15 23:49 ` Leonid Krivoshein 2024-10-16 8:52 ` Michael Shigorin 2024-10-14 7:43 ` [devel-distro] " Sergey V Turchin 2024-10-14 10:54 ` [devel-distro] " Sergey V Turchin 2024-10-09 9:49 ` [devel-distro] " Alexey Gladkov 2024-10-09 19:54 ` Leonid Krivoshein 2024-10-10 9:10 ` Alexey Gladkov 2024-10-10 12:21 ` Leonid Krivoshein 2024-10-10 14:31 ` Alexey Gladkov 2024-10-09 6:19 ` [devel-distro] Тезисы для инсталлятора на базе альтератор 2.0 Ivan A. Melnikov 2024-10-09 7:21 ` Антон Мидюков 2024-10-09 9:21 ` [devel-distro] " Sergey V Turchin 2024-10-09 13:08 ` [devel-distro] " Leonid Krivoshein 2024-10-09 13:56 ` [devel-distro] о голосовом управлении (was: Тезисы для инст, альтератор 2.0) Arseny Maslennikov 2024-10-10 8:11 ` [devel-distro] о голосовом управлении Антон Мидюков 2024-10-14 7:33 ` [devel-distro] Re: Тезисы для инсталлятора на базе альтератор 2.0 Sergey V Turchin 2024-10-09 22:08 ` [devel-distro] " Leonid Krivoshein 2024-10-10 1:01 ` [devel-distro] Пример файла разметки и описания Leonid Krivoshein 2024-10-10 8:54 ` Антон Мидюков 2024-10-10 5:26 ` [devel-distro] Тезисы для инсталлятора на базе альтератор 2.0 Антон Мидюков 2024-10-10 10:29 ` Leonid Krivoshein 2024-10-14 4:58 ` [devel-distro] Тезисы для инсталлятора на базе альтератор 2.0 (промежуточный итог) Антон Мидюков 2024-10-14 18:59 ` Leonid Krivoshein
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1d1b88b2-ad28-4463-b42f-9b37fcab6e01@gmail.com \ --to=klark.devel@gmail.com \ --cc=devel-distro@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Distributions development This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel-distro/0 devel-distro/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel-distro devel-distro/ http://lore.altlinux.org/devel-distro \ devel-distro@lists.altlinux.org devel-distro@lists.altlinux.ru devel-distro@lists.altlinux.com public-inbox-index devel-distro Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel-distro AGPL code for this site: git clone https://public-inbox.org/public-inbox.git