Upload PPA do pacote de kernel personalizado

Upload PPA do pacote de kernel personalizado

Existe alguma documentação sobre como construir pacotes de kernel personalizados ecarregue o resultado em um PPA? Em particular, eu gostaria de construir principalmente o kernel upstream estável (ou seja, git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git) com um patch para MPTCP. Como o patch MPTCP requer uma versão do kernel muito específica, não posso simplesmente usar os repositórios do kernel do Ubuntu.

Até agora, encontrei isto:

  • Construir kernels manualmente funciona, é claro, ou seja: fakeroot make-kpkg clean CONCURRENCY_LEVEL= getconf _NPROCESSORS_ONLNfakeroot make-kpkg --initrd --append-to-version=-mptcp \ kernel_image kernel_headers kernel_source kernel_doc kernel_manual kernel_debug

Então, recebo pacotes .deb. "dpkg -i ..." também funciona, mas eu gostaria de automatizar o manuseio de pacotes com o apt-get e um PPA.

  • make-kpkg não gera um arquivo .changes, que é necessário para dput. É claro que verifiquei a documentação, a página de manual do make-kpkg e fiz o grep através das fontes do pacote do kernel-package -> nenhuma informação sobre como deixá-lo gerar a saída correta.

  • Alguns outros usuários (comohttps://forum.ubuntuusers.de/topic/ppa-mit-custom-kernel-erstellen/) também não gerenciou um upload de PPA do kernel. Pelo menos, não há documentação disponível.

Existe alguma mudança na construção de pacotes de kernel carregáveis ​​por PPA com esforço razoável?

Responder1

Eu tive a mesma pergunta e finalmente encontrei uma solução funcional.

O seguinte funcionou para mim. Algumas etapas certamente podem ser otimizadas.

  1. obtenha a fonte para uma compilação principal, verifique oFONTESarquivo e obtenha tudo:

    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. aplique os patches:

      meu nome é 000*

    2. construir arquivos no debian:

      debian/regras limpas

    3. construa os debs de origem (sem assinatura):

      dpkg-buildpackage -us -uc -S

    4. ajuste Changed-By: no arquivo .changes para sua conta do ppa uploader

    5. assine o pacote

      deb-sign linux_4.7.10-040710.201610220847_source.changes

    6. carregar

      dput ppa linux_4.7.10-040710.201610220847_source.changes

informação relacionada