[14 beta 1]: пропал cl-kernel

World восстанавливается при вызове `cl-update --rebuild-world`. Установленные пакеты можно извлечь при помощи утилиты `regenworld`.

В своём профиле можно создать изменения world файла. В lautre76 в качестве примера я как раз добавляю firefox-bin и steam-launcher. Изменения отписываю в секции [update-lautre76] файла /etc/calculate/ini.env.

Директория 1_create содержит дельту состава пакетов дистрибутива Desktop-X на данный момент. В моём случае это дельта от CLDX. Если пакет понадобится удалить, добавляется “!” в начале. Файл ini.env содержит номер world версии. Все обновления world хранятся в 2_update.

Alexander Tratsevskiy wrote:

Чтобы шаблон не дописывал, а переписывал исходный файл, добавьте в заголовок “append=replace”, либо уберите “format=openrc”.

Александр, извините, я всё равно туго въезжаю в шаблоны и к тому же всегда пользовался make menuconfig, руками .config никогда не модифицировал.

# Будет ли различаться сгенерённый утилитами конфиг у ядра заемерженного с и без vmlinuz? Юзы plymouth symlink themes выставлены. Другими словами, наковыряют ли ваши шаблоны в конфиге ядра чего либо дополнительного при автоматической сборке\установке в отличие от варианта без vmlinuz? Возможно я сейчас свой кастомный конфиг вовсе не с тем конфигом сравниваю?
# Используется шаблон типа openrc. Как убрать строку из конфига? Или её нужно заменить строкой CONFIG_BLAHBLAHBLAH=n? Разберётся ли потом с этим скрипт настройки исходников ядра? А если она до этого включала ветку дополнительных опций и модулей, что произойдёт? Скрипт настройки ядра сообразит убрать оставшийся “мусор” или нужно вручную всюду менять на =n?
# Пункт два подразумевает уйму ручной работы, гораздо проще, как вы выше написали, использовать append=replace и полностью заменить конфиг. Но в этом случае, я смотрю вот сюда, https://github.com/mavriq/mavriq-overlay/tree/master/profiles/templates/3.1/6_ac_install_patch/sys-kernel/calculate-sources, будут затёрты и изменения внесённые correction templates, если возникнет потребность в их наложении? Может тогда имеет смысл для correction templates ядра сделать приоритет выше чем custom user шаблон?
# Предположим, вышла новая версия ядра. Правильно ли я понимаю алгоритм действий по адаптации своего старого custom конфига: в package.use для ядра у меня -vmlinuz, ядро приезжает и распаковывается в /usr/src/linux-BLAHBLAH-calculate, создаётся симлинк на linux. Я в директории ядра делаю make distclean, кладу туда свой предыдущий .config, делаю make oldconfig, отвечаю на вопросы, делаю новый шаблон из получившегося .config и снова емержу ядро с USE=“vmlinuz”. Я всё правильно понимаю, ничего не упустил?

Alexander Tratsevskiy wrote:

Все операции сборки ядра и настройки initramfs, как и для любого друго пакета выполняются во время установки пакета. Так как из-за применения определённых доработок, включая поддержку udev, поддержание форка genkernel вызывало затруднения. В CL14 для создания initramfs используется dracut.

Чтобы применить свои настройки к ядру, выполните два действия:

  1. Укажите пакетному менеджеру не использовать бинарный пакет для ядра:
    […]

  2. Создайте шаблон с настройками с произввольным именем (например “kernel-x86_64”) в директории /var/calculate/templates/

Пример:

[…]

Чтобы шаблон не дописывал, а переписывал исходный файл, добавьте в заголовок “append=replace”, либо уберите “format=openrc”.

К сожалению не вышло ничего. Конфиг в итоге дефолтный.

 # wgetpaste /var/calculate/templates/custom-kernel-config 
Pasting > 25 kB often tend to fail with calculate. Use --verbose or --debug to see the
error output from wget if it fails. Alternatively use another pastebin service.
Your paste can be seen here: http://pastebin.calculate-linux.ru/ru/show/9746

Будет ли различаться сгенерённый утилитами конфиг у ядра заемерженного с и без vmlinuz? Юзы plymouth symlink themes выставлены. Другими словами, наковыряют ли ваши шаблоны в конфиге ядра чего либо дополнительного при автоматической сборке\установке в отличие от варианта без vmlinuz? Возможно я сейчас свой кастомный конфиг вовсе не с тем конфигом сравниваю?

Вы можете дописать изменения в .config, либо переписать их. Прервите выполнение emerge calculate-sources во время комплияции и сравните diff-ом ваш конфиг с
/var/calculate/tmp/portage/sys-kernel/calculate-sources-3.14.17/work/linux-3.14.17-calculate/.config

Путь подставьте для вашей версии ядра.

Используется шаблон типа openrc. Как убрать строку из конфига? Или её нужно заменить строкой CONFIG_BLAHBLAHBLAH=n? Разберётся ли потом с этим скрипт настройки исходников ядра? А если она до этого включала ветку дополнительных опций и модулей, что произойдёт? Скрипт настройки ядра сообразит убрать оставшийся “мусор” или нужно вручную всюду менять на =n?

При сборке вызывается ‘make oldconfig’, он сам преобразует в “is not set” и удалит лишние ветки.

Пункт два подразумевает уйму ручной работы, гораздо проще, как вы выше написали, использовать append=replace и полностью заменить конфиг. Но в этом случае, я смотрю вот сюда, https://github.com/mavriq/mavriq-overlay/tree/master/profiles/templates/3.1/6_ac_install_patch/sys-kernel/calculate-sources, будут затёрты и изменения внесённые correction templates, если возникнет потребность в их наложении? Может тогда имеет смысл для correction templates ядра сделать приоритет выше чем custom user шаблон?

diff легко покажет вам все изменения. Вы ведь можете их делать в несколько этапов, разбив на типы и сравнивая полученный после ‘make menuconfig’ .config с .config.old.

Приоритет описан в переменной cl_template_path (см. ‘cl-core-variables-show --filter cl_template_path’), но если ваши шаблоны будут использоваться до шаблонов оверлея Calculate, то ваши настройки будут попросту переписаны.

Предположим, вышла новая версия ядра. Правильно ли я понимаю алгоритм действий по адаптации своего старого custom конфига: в package.use для ядра у меня -vmlinuz, ядро приезжает и распаковывается в /usr/src/linux-BLAHBLAH-calculate, создаётся симлинк на linux. Я в директории ядра делаю make distclean, кладу туда свой предыдущий .config, делаю make oldconfig, отвечаю на вопросы, делаю новый шаблон из получившегося .config и снова емержу ядро с USE=“vmlinuz”. Я всё правильно понимаю, ничего не упустил?

Можно так, а можно прервать сборку, перейти в
/var/calculate/tmp/portage/sys-kernel/calculate-sources-3.14.17/work/linux-3.14.17-calculate/

и дальше уже если вы не модифицировали .conifig, то выполните в директории make menuconfig и сравните .config с предыдущим .config.old. Потом поставьте снова на сборку. Портежи очистят директорию и по новой начнут собирать.

К сожалению не вышло ничего. Конфиг в итоге дефолтный.

Измените условие в шаблоне на “>=3.15” и “<3.16”.

Александр, еще раз спасибо за инфу. Возможно Вы сможете помочь со следующей проблемой. Решил обновить сегодня ебилд и столкнулся с такой пролемой:

 # sudo repoman manifest
repoman: invalid arch: "amd64" in /var/lib/layman/distros/profiles/profiles.desc line 11

Мой профиль наследуется от CLDX.

http://www.calculate-linux.ru/blogs/ru/491/show

Я свою “проблему” решил, lol.

Решил обновить сегодня ебилд и столкнулся с такой пролемой.

В distros не хватает arch.list, сейчас поправим.