[devel] Новая схема ведения исходников ядра

Evgeny Sinelnikov sin на altlinux.org
Пт Дек 3 22:41:56 MSK 2021


Доброй ночи,

хочу сообщить, что asheplyakov@ по мотивам наших с ним обсуждений о
разработке ядра подготовил новую сборку на основе текущей в сизифе.
http://git.altlinux.org/gears/k/kernel-image-un-def.git

Суть: для того, чтобы вести не только поддержку сборки, но разработку
ядра, нацеленную на продвижение наших патчей в апстрим, предлагается
рассмотреть новую схему ведения исходников.

- все наши патчи складываются "ребейзом" или "черипиком" поверх
последнего релиза, который заявлен в версии пакета
kernel-image-FLAVOUR:
 + https://github.com/altlinux/linux-arm/commits/altlinux-5.15.y

- схема сборки остаётся прежней за следующими дополнениями:
 + ветка sisyphus содержит только gear-rules и spec (ну, пока и не
надо больше - вряд ли потребуется, хотя я бы предложил ещё README по
сборке);
 + исходники включают в себя только продуктивные патчи и ветка с ними
перед сборкой "мёрджится" с git merge -s ours;
 + для удобной работы над исходниками можно воспользоваться командой
git worktree, позволяющей получить отдельную ветку в соседнем каталоге
на одном и том же git-репозитории;
 + перед сборкой необходимо обновить commitid в .gear/tags/list
https://github.com/altlinux/linux-arm/commits/sisyphus-un-def

В целом, этот подход ничего не ломает, но очень много позволяет:
- чётко отслеживать пачти;
- всегда знать чем наше ядро отличается от апстримного не на уровне
одного большого "дифа", доступного только git в консоли, но и на
уровне полного списка патчей, доступного также через web-интерфейс в
соответствующей ветке;
- всегда иметь подготовленный набор патчей для текущего ядра.

Я бы ещё предложил делать два патча:
- linux-x.y.0-x.y.z.patch
- linux- x.y.z-alt.patch
тогда патч в нашем SRCRPM-пакете ядра будет не столь бесполезен, чем сейчас.

Такой подход позволит всегда знать какие патчи есть в нашем ядре, а
также даст возможность передать наши ядра для совместной разработки
коллегам из компаний, занимающихся разработкой аппаратных средств -
процессоров и новых устройств.

Тестовая сборка упала из-за ограничений на подпись.
#291228 FAILED #2 [test-only] sisyphus
linux.git=kernel-image-un-def-5.15.6-alt2 [...]
http://git.altlinux.org/tasks/291228/logs/events.2.1.log
...
 - Verifying /boot/vmlinuz-5.15.6-un-def-alt2
 Signature verification failed
 = PESIGN verification failures 1, successes 0.
 /usr/lib/rpm/check-pesign.filetrigger failed
 error: posttrans filetriggers scriptlet failed, exit status 1
...
То есть её можно пробовать.
Это, по сути, та же сборка, что и alt1, но по новой схеме.


-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel