Bug 4954

Summary: Повторить сборку ALT Linux p8
Product: LINUX@Etersoft Reporter: Александр Пликус <pav>
Component: ОбщееAssignee: Danil Michailov <danil>
Status: DEFERRED --- QA Contact:
Severity: normal    
Priority: P4 CC: baraka, lav, mike, sin
Version: не указана   
Target Milestone: выпуск 1.0   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 1728    
Bug Blocks: 1135, 9238, 8450    

Description Александр Пликус 2010-02-02 13:46:42 MSK
Воспроизвести сборку дистрибутива ALTLinux 5.
Comment 1 Devaev Maxim 2010-02-02 15:11:21 MSK
Что-то не пойму, что мне надо сделать.
Comment 2 Александр Пликус 2010-02-02 16:27:21 MSK
это не срочно... Виталик точнее скажет что именно надо сделать.
Comment 3 Vitaly Lipatov 2010-02-02 17:02:24 MSK
(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
Comment 4 Vitaly Lipatov 2010-02-08 23:59:23 MSK
Всё уже сделано, передаю Жене для документирования.
Comment 5 Евгений Синельников 2010-02-09 00:27:33 MSK
Я повторил сборку на 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
Comment 6 Vitaly Lipatov 2010-02-13 18:49:34 MSK
Я думаю, нам нужен свой клон сборочных скриптов, которые я постараюсь связать с etersoft-build-utils для упрощения разворачивания.
Нужно продумать идею автоматической сборки, и публикации билдов. Можно предоставить по http каталог с машины design. Я смонтировал там неиспользуемый раздел в /var/local/build размером 70Гб.
Comment 7 Vitaly Lipatov 2010-09-24 14:41:51 MSD
Нужно обобщить наш опыт по сборке на kb.etersoft.ru, выложить репозиторий и пр. В идеале — запустить робота, собирающего периодически дистрибутив из Сизифа.
Comment 8 Danil Michailov 2013-01-31 18:29:53 MSK
Разбирался, создал вики страницу:
https://wiki.office.etersoft.ru/СозданиеДистрибутива
Изучить make.
Comment 9 Евгений Синельников 2013-02-08 16:51:56 MSK
Разбирал сборку на 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
Comment 10 Danil Michailov 2013-02-08 18:00:45 MSK
> Сборка в окружении сизифа выполняется командой:
> $ 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.
Comment 11 Danil Michailov 2013-02-08 18:30:36 MSK
hsh-fakedev не работает в контейнере
на builder собрать не получится

развернуть сборку snail
epmi hasher
hasher-useradd $USER
Comment 12 Евгений Синельников 2013-02-12 23:07:41 MSK
"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'у приезжает Яндексбар (проблема ли это?).
Comment 13 Евгений Синельников 2013-02-13 16:38:48 MSK
Проверил на 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 14 Vitaly Lipatov 2013-02-13 17:10:41 MSK
(В ответ на 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
Comment 15 Евгений Синельников 2013-02-13 18:04:44 MSK
Пакеты установили, сборка удалась. В репозитории:
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 16 Vitaly Lipatov 2013-02-14 04:31:25 MSK
(В ответ на comment #15)
> Для p6 нужно будет сделать отдельную ветку, поскольку многие сборки уже давно
> ведутся на сизифе.
Надо бы обсудить с Мишей, я пока не до конца уверен. Мне казалось, что нет большой проблемы совместить сборки разных бранчей. Но если это совсем против правил, тогда да, придётся раздваиваться.
Comment 17 Michael Shigorin 2013-02-14 13:12:49 MSK
(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@. :)
Comment 18 Евгений Синельников 2013-02-14 18:50:10 MSK
(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 пакетов.
Comment 19 Danil Michailov 2013-04-25 17:16:01 MSK
Для проверки работоспособности дистрибутива было предложено загружать его по сети и использовать, реализовать не вышло из-за:

При загрузке по сети для последней версии дистрибутива с server.
Загружается только первый загрузчики full.cz и vmlinuz, после монтирования
всего образа по nfs выдается ошибка: does not contain ALT Linux distribution.

Нужно выяснить как ALT Linux это определяет.

Воспроизведение:
1)Загрузиться по сети
2)В приглашении boot написать etersoft-live или etersoft-x64-live
Comment 20 Michael Shigorin 2013-04-25 19:21:26 MSK
(В ответ на comment #19)
> Нужно выяснить как ALT Linux это определяет.
Грепайте propagator.git.
Comment 21 Danil Michailov 2016-04-22 18:22:58 MSK
Починить сборки:

/var/ftp/pub/Etersoft/LINUX@Etersoft/p7/iso
Comment 22 Vitaly Lipatov 2016-07-27 14:06:11 MSK
Откладываю.
Comment 23 Michael Shigorin 2016-07-27 16:27:44 MSK
На всякий: 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 года спустя, но уже)