
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_ONLN
fakeroot 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.
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
aplique os patches:
meu nome é 000*
construir arquivos no debian:
debian/regras limpas
construa os debs de origem (sem assinatura):
dpkg-buildpackage -us -uc -S
ajuste Changed-By: no arquivo .changes para sua conta do ppa uploader
assine o pacote
deb-sign linux_4.7.10-040710.201610220847_source.changes
carregar
dput ppa linux_4.7.10-040710.201610220847_source.changes