[devel-distro] Не устанавливается ядро

Michael Shigorin mike at altlinux.org
Fri Sep 11 14:23:08 MSK 2020


On Fri, Sep 11, 2020 at 12:45:51PM +0300, Anton V. Boyarshinov wrote:
> > > 11.09.2020 14:39, Sergey V Turchin пишет:
> > > > Я нашёл, как волшебным образом заставить установщик не
> > > > устанавливать ядро.  Достаточно применить прилагаемый патч.    

В смысле тебе надо было не устанавливать kernel-image вовсе,
при этом его что-то вытаскивало?  Интересный вариант, я и впрямь
не предполагал, что кому-то может понадобиться система без ядра
(кроме как в контейнере).

Если несложно -- расскажи, зачем такое понадобилось;
подумаем, как лучше быть.

> > > Во как. Очень интересно.  
> > Ну, с одной стороны, regexp действительно не слишком
> > корректный получается, но почему всё ядро не ставится?

А в чём именно некорректность?  По задаче, которая перед
этой функцией была мной поставлена -- "описать ядро и модули"
-- всё вроде правильно, тут разве что debuginfo могли мешаться
раньше (или если собирать образ с classic + debuginfo).

> > Или оно только за этот регэксп и тянулось?
> > Непорядок, если так...
> А, там ведь ещё замена KMODULES_REGEXP на KMODULES.

Вот тут похоже на диверсию в названии: это KPACKAGES*,
а не KMODULES*, в текущей реализации по сути.

> Тогда не знаю, так как не знаю как это реализовано.
> Но всё равно выдаёт какую-то кривизну "под капотом"

Как-то так (git grep KMODULES_REGEXP и ещё один шаг):

---
# kernel package list generation; see also #24669
NULL :=
SPACE := $(NULL) # the officially documented way of getting a space
COMMA := ,

list2re = $(subst $(SPACE),|,$(strip $(1)))

# args: KFLAVOURS, KMODULES
# NB: $(2) could be empty
kpackages = $(and $(1), \
	^kernel-(image|modules-($(call list2re,$(2))))-($(call list2re,$(1)))$$)
--- image.in/functions.mk

Аналогично там же сделана функция branding, только попроще.

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


More information about the devel-distro mailing list