LINUX.ORG.RU

История изменений

Исправление James_Holden, (текущая версия) :

в классическом дистрибутиве make menuconfig

Смотря как на это посмотреть в классическом дистрибутиве. Бинарный пакет из репозитория ставится как есть и его нельзя модифицировать, или выполнить make menuconfig при установке пакета.

В бинарном дистрибутиве придется пересоздавать пакет, подсовывая ему свой .config. (или ставить в обход пакетной системы)

В генте проблема решается тем, что вместо пакета с ядром есть пакет с исходниками ядра. Хоть гента и source-based, но и в ней установка пакета должна заканчиваться установкой собранных бинарников, а не просто исходников. То есть это такой LFS или слако-подход с make; make install. По факту ядро ставится в обход пакетной системы.

В Nix как лучше сделать я пока не разобрался, но вижу что например при создании пакета с новой версией ядра скачивают исходники, запускают в них make menuconfig и дальше в таком виде засовывают в пакет.

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

Я с этим не заморачиваюсь и собираю ядро с конфигом из репов либо с дефолтным конфигом, на всех дистрибутивах, включая самосбор. Не считаю особо полезным его вручную подгонять.

Исправление James_Holden, :

в классическом дистрибутиве make menuconfig

Смотря как на это посмотреть в классическом дистрибутиве. Бинарный пакет из репозитория ставится как есть и его нельзя модифицировать, или выполнить make menuconfig при установке пакета.

В бинарном дистрибутиве придется пересоздавать пакет, подсовывая ему свой .config. (или ставить в обход пакетной системы)

В генте проблема решается тем, что вместо пакета с ядром есть пакет с исходниками ядра. Хоть гента и source-based, но и в ней установка пакета должна заканчиваться установкой собранных бинарников, а не просто исходников. То есть это такой LFS или слако-подход с make; make install.

В Nix как лучше сделать я пока не разобрался, но вижу что например при создании пакета с новой версией ядра скачивают исходники, запускают в них make menuconfig и дальше в таком виде засовывают в пакет.

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

Я с этим не заморачиваюсь и собираю ядро с конфигом из репов либо с дефолтным конфигом, на всех дистрибутивах, включая самосбор. Не считаю особо полезным его вручную подгонять.

Исходная версия James_Holden, :

в классическом дистрибутиве make menuconfig

Смотря как на это посмотреть в классическом дистрибутиве. Бинарный пакет из репозитория ставится как есть и его нельзя модифицировать, или выполнить make menuconfig при установке пакета.

В бинарном дистрибутиве придется пересоздавать пакет, подсовывая ему свой .config.

В генте проблема решается тем, что вместо пакета с ядром есть пакет с исходниками ядра. Хоть гента и source-based, но и в ней установка пакета должна заканчиваться установкой собранных бинарников, а не просто исходников. То есть это такой LFS или слако-подход с make; make install.

В Nix как лучше сделать я пока не разобрался, но вижу что например при создании пакета с новой версией ядра скачивают исходники, запускают в них make menuconfig и дальше в таком виде засовывают в пакет.

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

Я с этим не заморачиваюсь и собираю ядро с конфигом из репов либо с дефолтным конфигом, на всех дистрибутивах, включая самосбор. Не считаю особо полезным его вручную подгонять.