
¿Existe alguna documentación sobre cómo crear paquetes de kernel personalizados ycargar el resultado en un PPA? En particular, me gustaría compilar principalmente el kernel ascendente estable (es decir, git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git) con un parche para MPTCP. Dado que el parche MPTCP requiere una versión del kernel muy específica, no puedo simplemente usar los repositorios del kernel de Ubuntu.
Hasta ahora encontré esto:
- La construcción manual de kernels funciona, por supuesto, es decir: 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
Luego, obtengo paquetes .deb. "dpkg -i ..." también funciona, pero me gustaría automatizar el manejo de paquetes con apt-get y un PPA.
make-kpkg no genera un archivo .changes, que es necesario para dput. Por supuesto, verifiqué la documentación, la página de manual de make-kpkg y revisé las fuentes del paquete kernel-package -> no hay información sobre cómo permitir que genere el resultado correcto.
Algunos otros usuarios (comohttps://forum.ubuntuusers.de/topic/ppa-mit-custom-kernel-erstellen/) tampoco administró una carga de PPA del kernel. Al menos no hay documentación disponible.
¿Hay algún cambio en la creación de paquetes de kernel cargables por PPA con un esfuerzo razonable?
Respuesta1
Tenía la misma pregunta y finalmente encontré una solución que funciona.
Lo siguiente funcionó para mí. Ciertamente, algunos pasos se pueden optimizar.
obtenga la fuente de una compilación principal, verifique elFUENTESarchiva y obtén todo:
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
aplicar los parches:
git soy 000*
compilar archivos en debian:
debian/reglas limpias
construir las fuentes debs (sin firma):
dpkg-buildpackage -us -uc -S
ajuste el Cambiado por: en el archivo .changes de su cuenta de cargador de ppa
firma el paquete
deb-sign linux_4.7.10-040710.201610220847_source.cambios
subir
dput ppa linux_4.7.10-040710.201610220847_source.cambios