PPA загрузка пользовательского пакета ядра

Есть ли документация о том, как создавать собственные пакеты ядра и загружать результат в PPA ? В частности, я хотел бы собрать в основном стабильное ядро ​​upstream (например, git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git) с патчем для MPTCP. Поскольку для исправления MPTCP требуется очень специфическая версия ядра, я не могу просто использовать репозитории ядра Ubuntu.

До сих пор я нашел это:

  • Сборка ядер вручную работает, конечно, то есть: fakeroot make-kpkg clean CONCURRENCY_LEVEL = getconf _NPROCESSORS_ONLN fakeroot make-kpkg --initrd --append- to-version = -mptcp \ kernel_image kernel_headers kernel_source kernel_doc kernel_manual kernel_debug

Затем я получаю пакеты .deb. "dpkg -i ..." также работает, но я хотел бы автоматизировать обработку пакетов с помощью apt-get и PPA.

  • make-kpkg не генерирует файл .changes, который необходим для dput. Я, конечно, проверил документацию, man-страницу make-kpkg и grep'ed через источники пакета kernel-package -> нет информации о том, как позволить ему генерировать правильный вывод.

  • Некоторые другие пользователи (например, https://forum.ubuntuusers.de/topic/ppa-mit-custom-kernel-erstellen/ ) также не управляли загрузкой PPA ядра. По крайней мере, нет доступной документации.

Существуют ли какие-либо изменения в создании пакетов ядра с возможностью загрузки PPA с разумными усилиями?

2
задан 9 June 2016 в 12:10

1 ответ

У меня был тот же вопрос, и я наконец нашел рабочее решение.

Следующее работало на меня. Некоторые шаги могут, конечно, быть оптимизированы.

  1. получите источник для сборки магистрали, проверьте ИСХОДНЫЙ файл и получите все:

    git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack
    cd mainline-crack/
    git checkout -b v4.7.10 b3afc4525a507f21e98cc7571ea8c3f28484241c
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0001-base-packaging.patch
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0002-UBUNTU-SAUCE-add-vmlinux.strip-to-BOOT_TARGETS1-on-p.patch
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0003-UBUNTU-SAUCE-tools-hv-lsvmbus-add-manual-page.patch
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0004-UBUNTU-SAUCE-no-up-disable-pie-when-gcc-has-it-enabl.patch
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0005-debian-changelog.patch
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.7.10/0006-configs-based-on-Ubuntu-4.7.0-0.2.patch
    
    1. примените патчи:

      мерзавец 000*

    2. файлы типа "build" в debian:

      чистый debian/rules

    3. создайте источник debs (без подписи):

      dpkg-buildpackage - нас-uc-S

    4. скорректируйте Измененный-: в .changes файле в Вашу ppa учетную запись загрузчика

    5. подпишите пакет

      deb-знак linux_4.7.10-040710.201610220847_source.changes

    6. загрузить

      dput ppa linux_4.7.10-040710.201610220847_source.changes

1
ответ дан 2 December 2019 в 04:56

Другие вопросы по тегам:

Похожие вопросы: