Воспроизвести сборку дистрибутива ALTLinux 5.
Что-то не пойму, что мне надо сделать.
это не срочно... Виталик точнее скажет что именно надо сделать.
(In reply to comment #1) > Что-то не пойму, что мне надо сделать. Есть технология - скрипты, которыми из репозитория можно собрать ISO-образ дистрибутива. Надо найти описание на http://altlinux.org, репозиторий, и запустить сборку, чтобы получить образ, аналогичный ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/p5/iso/desktop/ Недавно в рассылках что-то писали... Как минимум, нужно подписаться на devel-distro и посмотреть, чем народ живёт. http://lists.altlinux.org/pipermail/devel-distro/2010-January/000642.html
Всё уже сделано, передаю Жене для документирования.
Я повторил сборку на design. Взял за основу последний вариант boyarsh: http://git.altlinux.org/people/boyarsh/packages/mkimage-profiles-desktop.git Я его поправил немного. У нас предполагается использование своих репозиториев и своих же gpg-подписей. Для их использования необходимо подключить наши дополнения к бранчу 5.1: # Etersoft 5.1 stable branch extension rpm [etersoft] ftp://ftp.etersoft.ru/pub/Etersoft/LINUX@Etersoft/5.1/branch athlon addon nonfree rpm [etersoft] ftp://ftp.etersoft.ru/pub/Etersoft/LINUX@Etersoft/5.1/branch noarch addon nonfree URL с этими дополнениями есть в пакете apt-conf-etersoft. Кроме того, понадобятся ещё пакет с ключами - etersoft-gpgkeys и пропатченный sisyphus_check. Итого, мимнимально, нужно три пакета: apt-conf-etersoft etersoft-gpgkeys sisyphus_check Они собраны и обновляются на git.eter для Сизифа и 5.1. Мой вариант профилей для сборки образов будет доступен как только включат design. Сейчас он почему-то недоступен. Искать мои профили, видимо нужно будет по адресу: http://git.etersoft.ru/people/sin/packages/mkimage-profiles-etersoft.git Сейчас там доступен старый вариант профилей для 4.1. PS: В наши дополнения входят два вида пакетов - открытые (addon) и закрытые (nonfree). Последние используются для WINE и других компонент. Файлы в RPMS.nonfree копируются вручную, после чего нужно выполнить genbasedir на git.eter, например так (для бранча 5.1): $ ssh git.eter genbases -b 5.1 PPS: Стоит предупредить, что образы, после сборки, копируются в ~/out/, а на домашнем каталоге у нас квоты. У себя я сделал /home/sin/out/ как символическую ссылку на локальный каталог. PPS: Итого для сборки требуется склонировать мои профили, указать нужный apt. conf (я попробую и это прибить), где указан source.list, где указаны: # ALT Linux 5.1 stable branch rpm [updates] ftp://ftp.etersoft.ru/pub/ALTLinux/5.1/branch athlon classic rpm [updates] ftp://ftp.etersoft.ru/pub/ALTLinux/5.1/branch noarch classic # Etersoft 5.1 stable branch extension rpm [etersoft] ftp://ftp.etersoft.ru/pub/Etersoft/LINUX@Etersoft/5.1/branch athlon addon nonfree rpm [etersoft] ftp://ftp.etersoft.ru/pub/Etersoft/LINUX@Etersoft/5.1/branch noarch addon nonfree Запустить скрипт: $ make-distro etersoft
Я думаю, нам нужен свой клон сборочных скриптов, которые я постараюсь связать с etersoft-build-utils для упрощения разворачивания. Нужно продумать идею автоматической сборки, и публикации билдов. Можно предоставить по http каталог с машины design. Я смонтировал там неиспользуемый раздел в /var/local/build размером 70Гб.
Нужно обобщить наш опыт по сборке на kb.etersoft.ru, выложить репозиторий и пр. В идеале — запустить робота, собирающего периодически дистрибутив из Сизифа.
Разбирался, создал вики страницу: https://wiki.office.etersoft.ru/СозданиеДистрибутива Изучить make.
Разбирал сборку на p6 для текущей версии mkimage-profiles. git://git.altlinux.org/people/sin/packages/mkimage-profiles Добавил сборку distro/etersoft Для сборки на p6 нашего варианта требуется собрать brand (alterator, bootsplash, graphics, indexhtml, notes, slideshow) и apt-conf пакеты. Сборка в окружении сизифа выполняется командой: $ i586 make APTCONF=~/etc/apt.branch-p6-i586-etersoft.conf distro/etersoft.iso
> Сборка в окружении сизифа выполняется командой: > $ i586 make APTCONF=~/etc/apt.branch-p6-i586-etersoft.conf distro/etersoft.iso Не удалось выполнили сборку с нашим apt.conf make APTCONF=/etc/eterbuild/apt/apt.conf.M60P distro/etersoft.iso warning: undefined reference to <schema id='org.gnome.desktop.default-applications.at'/> error: failed to open /etc/mtab: No such file or directory hsh-fakedev: Fake device creation failed.
hsh-fakedev не работает в контейнере на builder собрать не получится развернуть сборку snail epmi hasher hasher-useradd $USER
"hsh-fakedev: Fake device creation failed." Это проблема монтирования nodev. Где и как собиралось? Нужен вывод mount. В общем, я уточню, где (планировалось на builder64), повторю и напишу, что там не так. Собрал apt-conf-etersoft-6.0-eter1, вместе с ним повторил сборку Simply Linux с помощью mkimage-profiles. Образ доступен у меня в каталоге: /srv/sin/linux/out/etersoft-20130212-i586.iso Первые проблемы: - загружается без графического оформления; - репозитории по умолчанию не включены (может так и полагается в simply, но у нас нужно включить); - пакет etersoft-gpgkeys приезжает при обновлении, но не копируется в образ (это проблема альта в двумя репозиториями); - отсутствуют некоторые пакеты (vim, mc, и т.п., это снова вопрос к умолчаниям шаблона) - vi ругается (E185: Cannot find scheme elflord); - к firefox'у приезжает Яндексбар (проблема ли это?).
Проверил на builder64. Ошибка воспрооизводится нестабильно. У меня лог показывает, что на копировании файла: ... <13>Feb 13 12:20:54 rpmi: apt-repo-tools-0.6.0.14-alt1 installed <13>Feb 13 12:20:54 rpmi: rsync-3.0.9-alt2 installed cp: reading '/var/ftp/pub/ALTLinux/p6/branch/i586/RPMS.classic/libreoffice-3.5.3.2-alt0.M60P.3.i586.rpm': Input/output error cp: failed to extend '/tmp/.private/sin/mkimage-profiles.build.shmlQqx/main/.work/chroot/.in/libreoffice-3.5.3.2-alt0.M60P.3.i586.rpm': Input/output error mki-copy-pkgs: could not copy packages: copy failed. make[3]: *** [copy-packages] Error 1 make[2]: *** [main] Ошибка 2 Command exited with non-zero status 2 Сама сборка вот так: $ i586 make APTCONF=/etc/eterbuild/apt/apt.conf.M60P distro/etersoft.iso ** ARCH: i586 16:16:31 initializing BUILDDIR: build/ 16:16:32 preparing distro config 16:16:34 starting image build (coffee time) 16:23:14 failed, see log: build/build.log 16:23:14 (you might want to rerun with DEBUG=1) warning: undefined reference to <schema id='org.gnome.desktop.default-applications.at'/> error: failed to open /etc/mtab: No such file or directory mki-copy-pkgs: could not copy packages: copy failed. make[1]: *** [build-image] Ошибка 2 Со второго раз не воспроизвелась: $ i586 make APTCONF=/etc/eterbuild/apt/apt.conf.M60P distro/etersoft.iso ** ARCH: i586 16:23:30 cleaning up 16:23:31 initializing BUILDDIR: build/ 16:23:32 preparing distro config 16:23:35 starting image build (coffee time) 16:29:15 failed, see log: build/build.log 16:29:15 (you might want to rerun with DEBUG=1) make[1]: *** [build-image] Ошибка 2 Выпала на последнем этапе: <13>Feb 13 12:28:50 rpmi: xorriso-0.6.6.pl00-alt1 installed xorriso 0.6.6 : RockRidge filesystem manipulator, libburnia project. Drive current: -outdev 'stdio:/dev/fd/1' Media current: stdio file, sequential Media status : is blank Media summary: 0 sessions, 0 data blocks, 0 data, 1024g free Added 0 exclusion list items from file '/tmp/.exclude' Added to ISO image: directory '/'='/.image' xorriso : UPDATE : 1396 files added in 1 seconds xorriso : UPDATE : 1396 files added in 1 seconds xorriso : UPDATE : 1.22% done xorriso : UPDATE : 15.84% done xorriso : UPDATE : 67.95% done ISO image produced: 421848 sectors Written to media : 421998 sectors at LBA 0 Writing to 'stdio:/dev/fd/1' completed sucessfully. /bin/sh: isohybrid: команда не найдена make[2]: *** [postprocess-80isohybrid] Ошибка 127 Command exited with non-zero status 2 $ rpm -q syslinux предупреждение: пакет syslinux не установлен $ rpm -q mkbootflash предупреждение: пакет mkbootflash не установлен Нужно установить mkbootflash на builder64.
(В ответ на comment #13) > Проверил на builder64. Ошибка воспрооизводится нестабильно. У меня лог > показывает, что на копировании файла: > ... > <13>Feb 13 12:20:54 rpmi: apt-repo-tools-0.6.0.14-alt1 installed > <13>Feb 13 12:20:54 rpmi: rsync-3.0.9-alt2 installed > cp: reading > '/var/ftp/pub/ALTLinux/p6/branch/i586/RPMS.classic/libreoffice-3.5.3.2-alt0.M60P.3.i586.rpm': > Input/output error > cp: failed to extend > '/tmp/.private/sin/mkimage-profiles.build.shmlQqx/main/.work/chroot/.in/libreoffice-3.5.3.2-alt0.M60P.3.i586.rpm': > Input/output error Очень похоже на https://bugs.etersoft.ru/show_bug.cgi?id=8486#c5
Пакеты установили, сборка удалась. В репозитории: git://git.altlinux.org/people/sin/packages/mkimage-profiles.git доступен профиль distro/etersoft на базе simply. $ rpm -q mkbootflash mkbootflash-0.19-alt5 $ rpm -q syslinux syslinux-4.04-alt6 [sin@builder64 mkimage-profiles]$ i586 make APTCONF=/etc/eterbuild/apt/apt.conf.M60P distro/etersoft.iso ** ARCH: i586 16:43:17 cleaning up 16:43:18 initializing BUILDDIR: build/ 16:43:19 preparing distro config 16:43:23 starting image build (coffee time) 16:48:47 done (5:24) ** image: ~/out/etersoft-20130213-i586.iso [825M] Для p6 нужно будет сделать отдельную ветку, поскольку многие сборки уже давно ведутся на сизифе. Теперь нужно наладить регулярную сборку: https://bugs.etersoft.ru/show_bug.cgi?id=8450
(В ответ на comment #15) > Для p6 нужно будет сделать отдельную ветку, поскольку многие сборки уже давно > ведутся на сизифе. Надо бы обсудить с Мишей, я пока не до конца уверен. Мне казалось, что нет большой проблемы совместить сборки разных бранчей. Но если это совсем против правил, тогда да, придётся раздваиваться.
(In reply to comment #6) > Нужно продумать идею автоматической сборки, и публикации билдов. Продумал, могу прислать базовую реализацию (в перспективе её стоит упаковать аналогично autorepo-*). (In reply to comment #7) > В идеале — запустить робота, собирающего периодически дистрибутив из Сизифа. Запустил: http://nightly.altlinux.org :) (In reply to comment #9) > Разбирал сборку на p6 для текущей версии mkimage-profiles. Буду благодарен за помощь, но сразу предупреждаю, что производное Simply 6.0.1 заметно проще сделать из "родного" для него m-p-d. Более подробно можно расспросить sem@ (см. ремотный бранч sem/simply). > git://git.altlinux.org/people/sin/packages/mkimage-profiles Забрал, посмотрю. > Сборка в окружении сизифа выполняется командой: > $ i586 make APTCONF=~/etc/apt.branch-p6-i586-etersoft.conf distro/etersoft.iso Чуть лучше: make ARCH=i586 APTCONF=~/etc/apt.branch-p6-i586-etersoft.conf etersoft.iso (In reply to comment #11) > hsh-fakedev не работает в контейнере Проблема и впрямь в чём-то другом; m-p старается вытащить наиболее типичные сообщения об ошибках из build/build.log, но это для удобства, а для ясности лучше в него и заглянуть. На всякий проверил сборкой icewm.iso в VE под 2.6.32-ovz-el-alt71, порядок. (In reply to comment #16) > (В ответ на comment #15) > > Для p6 нужно будет сделать отдельную ветку, поскольку многие сборки > > уже давно ведутся на сизифе. Точнее, на t6 не публиковал ничего с 20120923 или около того, т.е. могут быть попросту пропущенные сломы. > Надо бы обсудить с Мишей, я пока не до конца уверен. Мне казалось, что нет > большой проблемы совместить сборки разных бранчей. Местами есть, но я готов прилагать разумные усилия к тому, чтобы нужные части метапрофиля по возможности собирались хотя бы на сизифе и текущем стабильном бранче. > Но если это совсем против правил, тогда да, придётся раздваиваться. Тут пока наиболее проблемным видится use/efi и ряд дополнений пакетных списков вида installer-*/livecd-*. Возможно, меньше мороки будет отделить бранч p6 от окрестностей 0.6.2 и втаскивать туда другое нужное, но см. выше про m-p-d (этот путь можно обдумывать только в несрочном порядке). Ну и милости просим с дистросборочными вопросами в devel-distro@. :)
(In reply to comment #17) > (In reply to comment #6) > > Нужно продумать идею автоматической сборки, и публикации билдов. > Продумал, могу прислать базовую реализацию (в перспективе её стоит упаковать > аналогично autorepo-*). Присылай на почту. > (In reply to comment #7) > > В идеале — запустить робота, собирающего периодически дистрибутив из Сизифа. > Запустил: http://nightly.altlinux.org :) Добавь подробности организации его работы, если можно. > > git://git.altlinux.org/people/sin/packages/mkimage-profiles > Забрал, посмотрю. Я добавил исправляющие коммиты для p6 и для Сизифа (проверено под i586) > (In reply to comment #16) > > (В ответ на comment #15) > > Надо бы обсудить с Мишей, я пока не до конца уверен. Мне казалось, что нет > > большой проблемы совместить сборки разных бранчей. > Местами есть, но я готов прилагать разумные усилия к тому, чтобы нужные части > метапрофиля по возможности собирались хотя бы на сизифе и текущем стабильном > бранче. Пока что удалось ценой нескольких часов избежать этого разделения, но в нашу часть шаблона профилей я внёс два варианта: - distro/etersoft.iso для p6 (и других бранчей) - distro/etersoft-sisyphus.iso для сизифа Так пришлось сделать из-за принципиально разных apt-conf пакетов.
Для проверки работоспособности дистрибутива было предложено загружать его по сети и использовать, реализовать не вышло из-за: При загрузке по сети для последней версии дистрибутива с server. Загружается только первый загрузчики full.cz и vmlinuz, после монтирования всего образа по nfs выдается ошибка: does not contain ALT Linux distribution. Нужно выяснить как ALT Linux это определяет. Воспроизведение: 1)Загрузиться по сети 2)В приглашении boot написать etersoft-live или etersoft-x64-live
(В ответ на comment #19) > Нужно выяснить как ALT Linux это определяет. Грепайте propagator.git.
Починить сборки: /var/ftp/pub/Etersoft/LINUX@Etersoft/p7/iso
Откладываю.
На всякий: http://altlinux.org/m-p Стартеркиты собираются примерно так: make ARCHES='i586 x86_64' REPORT=1 basealt-p8-enlightenment.iso при сообразно заполненных ~/apt/{apt.conf,sources.list}.p8.{i586,x86_64} и --- ~/.mkimage/profiles.mk APTCONF = ~/apt/apt.conf.p8.$(ARCH) DEBUG = 1 CLEAN = 1 QUIET = 1 NICE = 1 IMAGEDIR = ~/out/starterkits/$(shell date +%Y%m%d) --- (In reply to Vitaly Lipatov from comment #7) > В идеале — запустить робота, собирающего периодически дистрибутив из Сизифа. http://altlinux.org/regular http://nightly.altlinux.org/sisyphus/ChangeLog (2,5 года спустя, но уже)