From c1befb9e22ee61d6c7d7fa225a931b820e9a9fab Mon Sep 17 00:00:00 2001 From: Matthias Riechmann <21068765+mmriech@users.noreply.github.com> Date: Sun, 2 Feb 2020 10:50:16 +0100 Subject: [PATCH] Let postinst of kernel headers fail on error (#1754) * Set postinst of kernel-headers 4.4.y to fail if internal command fails * Set postinst of kernel-headers 4.9.y to fail if internal command fails * Set postinst of kernel-headers 4.19.y to fail if internal command fails * Set postinst of kernel-headers 4.14.y to fail if internal command fails * Set postinst of kernel-headers 5.3.y to fail if internal command fails * Set preinst of kernel-headers 4.4.y to fail if internal command fails * Set preinst of kernel-headers 4.9.y to fail if internal command fails * Set preinst of kernel-headers 4.14.y to fail if internal command fails * Set preinst of kernel-headers 4.19.y to fail if internal command fails * Set preinst of kernel-headers 5.3.y to fail if internal command fails * Fixed makefile of kernel header 4.4.202 for rockchip64 * Fixed makefile of kernel header for rockchip * Moved dependencies of kernel headers to correct file --- patch/misc/general-packaging-4.14.y.patch | 14 +++++--------- patch/misc/general-packaging-4.19.y.patch | 10 ++-------- patch/misc/general-packaging-4.4.y-rk3399.patch | 10 ++++------ .../misc/general-packaging-4.4.y-rockchip64.patch | 10 ++++------ patch/misc/general-packaging-4.4.y.patch | 12 +++++------- patch/misc/general-packaging-4.9.y.patch | 10 ++++------ patch/misc/general-packaging-5.3.y.patch | 10 ++-------- 7 files changed, 26 insertions(+), 50 deletions(-) diff --git a/patch/misc/general-packaging-4.14.y.patch b/patch/misc/general-packaging-4.14.y.patch index ee5b0fd1a4..25632c6cc6 100644 --- a/patch/misc/general-packaging-4.14.y.patch +++ b/patch/misc/general-packaging-4.14.y.patch @@ -11,8 +11,6 @@ index 8c4bc5a2c..30bc0cffb 100644 KBUILD_DTBS := dtbs all: Image.gz $(KBUILD_DTBS) -diff --git a/scripts/package/builddeb b/scripts/package/builddeb -index e15159d0a..009332700 100755 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -29,6 +29,27 @@ create_package() { @@ -113,14 +111,13 @@ index e15159d0a..009332700 100755 set -e -@@ -212,6 +246,55 @@ EOF +@@ -212,6 +246,53 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst < "$objtree/debian/hdrsrcfiles" (cd $srctree; find arch/*/include include scripts -type f -o -type l) >> "$objtree/debian/hdrsrcfiles" @@ -177,7 +173,7 @@ index e15159d0a..009332700 100755 (cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles" (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then -@@ -325,16 +409,20 @@ if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then +@@ -325,16 +407,20 @@ if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then fi destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -198,7 +194,7 @@ index e15159d0a..009332700 100755 Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch} This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch} . -@@ -343,6 +431,16 @@ EOF +@@ -343,6 +429,16 @@ EOF cat <> debian/control @@ -215,7 +211,7 @@ index e15159d0a..009332700 100755 Package: $libc_headers_packagename Section: devel Provides: linux-kernel-headers -@@ -354,7 +452,7 @@ EOF +@@ -354,7 +450,7 @@ EOF if [ "$ARCH" != "um" ]; then create_package "$kernel_headers_packagename" "$kernel_headers_dir" diff --git a/patch/misc/general-packaging-4.19.y.patch b/patch/misc/general-packaging-4.19.y.patch index fd3a96298d..efcb304788 100644 --- a/patch/misc/general-packaging-4.19.y.patch +++ b/patch/misc/general-packaging-4.19.y.patch @@ -11,8 +11,6 @@ index 9a5e28141211..851e646169ba 100644 KBUILD_DTBS := dtbs all: Image.gz $(KBUILD_DTBS) -diff --git a/scripts/package/builddeb b/scripts/package/builddeb -index 0b31f4f1f92c..4f605fe82fd4 100755 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -29,6 +29,27 @@ create_package() { @@ -106,14 +104,13 @@ index 0b31f4f1f92c..4f605fe82fd4 100755 set -e -@@ -153,9 +192,60 @@ EOF +@@ -153,9 +192,58 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> "$objtree/debian/hdrsrcfiles" (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then -@@ -167,15 +257,19 @@ if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then +@@ -167,15 +255,19 @@ if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then fi destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -188,8 +184,6 @@ index 0b31f4f1f92c..4f605fe82fd4 100755 fi create_package "$packagename" "$tmpdir" -diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian -index edcad61fe3cd..8a49f432921f 100755 --- a/scripts/package/mkdebian +++ b/scripts/package/mkdebian @@ -94,10 +94,12 @@ else diff --git a/patch/misc/general-packaging-4.4.y-rk3399.patch b/patch/misc/general-packaging-4.4.y-rk3399.patch index 2fca8c6421..ea50a1e4c4 100644 --- a/patch/misc/general-packaging-4.4.y-rk3399.patch +++ b/patch/misc/general-packaging-4.4.y-rk3399.patch @@ -115,14 +115,13 @@ index 6c3b038e..f4166fbe 100755 export INITRD=$want_initrd test -d $debhookdir/$script.d && run-parts --arg="$version" --arg="/$installed_image_path" $debhookdir/$script.d -@@ -218,6 +252,58 @@ EOF +@@ -218,6 +252,56 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> "$objtree/debian/hdrobjfiles" destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -202,7 +200,7 @@ index 6c3b038e..f4166fbe 100755 Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch} This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch} . -@@ -363,6 +458,16 @@ fi +@@ -363,6 +456,16 @@ fi cat <> debian/control @@ -219,7 +217,7 @@ index 6c3b038e..f4166fbe 100755 Package: $libc_headers_packagename Section: devel Provides: linux-kernel-headers -@@ -374,7 +479,7 @@ EOF +@@ -374,7 +477,7 @@ EOF if [ "$ARCH" != "um" ]; then create_package "$kernel_headers_packagename" "$kernel_headers_dir" diff --git a/patch/misc/general-packaging-4.4.y-rockchip64.patch b/patch/misc/general-packaging-4.4.y-rockchip64.patch index 7c312484de..1e0ebbbfd5 100644 --- a/patch/misc/general-packaging-4.4.y-rockchip64.patch +++ b/patch/misc/general-packaging-4.4.y-rockchip64.patch @@ -115,14 +115,13 @@ index 6c3b038e..f4166fbe 100755 export INITRD=$want_initrd test -d $debhookdir/$script.d && run-parts --arg="$version" --arg="/$installed_image_path" $debhookdir/$script.d -@@ -218,6 +252,58 @@ EOF +@@ -218,6 +252,56 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> "$objtree/debian/hdrobjfiles" destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -202,7 +200,7 @@ index 6c3b038e..f4166fbe 100755 Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch} This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch} . -@@ -363,6 +458,16 @@ fi +@@ -363,6 +456,16 @@ fi cat <> debian/control @@ -219,7 +217,7 @@ index 6c3b038e..f4166fbe 100755 Package: $libc_headers_packagename Section: devel Provides: linux-kernel-headers -@@ -374,7 +479,7 @@ EOF +@@ -374,7 +477,7 @@ EOF if [ "$ARCH" != "um" ]; then create_package "$kernel_headers_packagename" "$kernel_headers_dir" diff --git a/patch/misc/general-packaging-4.4.y.patch b/patch/misc/general-packaging-4.4.y.patch index f96602296c..93c4cc86a3 100644 --- a/patch/misc/general-packaging-4.4.y.patch +++ b/patch/misc/general-packaging-4.4.y.patch @@ -111,14 +111,13 @@ index 6c3b038e..977a0624 100755 export INITRD=$want_initrd test -d $debhookdir/$script.d && run-parts --arg="$version" --arg="/$installed_image_path" $debhookdir/$script.d -@@ -218,6 +254,55 @@ EOF +@@ -218,6 +254,53 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> "$objtree/debian/hdrobjfiles" destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -191,9 +189,10 @@ index 6c3b038e..977a0624 100755 -Provides: linux-headers, linux-headers-2.6 +Provides: linux-headers Architecture: any ++Depends: make, gcc, libc6-dev, libssl-dev Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch} This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch} -@@ -363,10 +456,21 @@ fi +@@ -363,10 +455,20 @@ fi cat <> debian/control @@ -211,11 +210,10 @@ index 6c3b038e..977a0624 100755 Section: devel Provides: linux-kernel-headers Architecture: any -+Depends: make, gcc, libc6-dev, libssl-dev Description: Linux support headers for userspace development This package provides userspaces headers from the Linux kernel. These headers are used by the installed headers for GNU glibc and other system libraries. -@@ -374,7 +478,7 @@ EOF +@@ -374,7 +476,7 @@ EOF if [ "$ARCH" != "um" ]; then create_package "$kernel_headers_packagename" "$kernel_headers_dir" diff --git a/patch/misc/general-packaging-4.9.y.patch b/patch/misc/general-packaging-4.9.y.patch index 0424991942..73d332c84e 100644 --- a/patch/misc/general-packaging-4.9.y.patch +++ b/patch/misc/general-packaging-4.9.y.patch @@ -98,14 +98,13 @@ index 0a2a7372..87edac65 100755 export INITRD=$want_initrd test -d $debhookdir/$script.d && run-parts --arg="$version" --arg="/$installed_image_path" $debhookdir/$script.d -@@ -220,6 +253,55 @@ EOF +@@ -220,6 +253,53 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> debian/control @@ -199,7 +197,7 @@ index 0a2a7372..87edac65 100755 Package: $libc_headers_packagename Section: devel Provides: linux-kernel-headers -@@ -383,7 +484,7 @@ EOF +@@ -383,7 +482,7 @@ EOF if [ "$ARCH" != "um" ]; then create_package "$kernel_headers_packagename" "$kernel_headers_dir" diff --git a/patch/misc/general-packaging-5.3.y.patch b/patch/misc/general-packaging-5.3.y.patch index 9ee0381c9b..7512373707 100644 --- a/patch/misc/general-packaging-5.3.y.patch +++ b/patch/misc/general-packaging-5.3.y.patch @@ -11,8 +11,6 @@ index 5858d6e44..e81b8a6fc 100644 all: Image.gz -diff --git a/scripts/package/builddeb b/scripts/package/builddeb -index c4c580f54..58243c628 100755 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -41,6 +41,27 @@ create_package() { @@ -106,14 +104,13 @@ index c4c580f54..58243c628 100755 set -e -@@ -164,9 +203,60 @@ EOF +@@ -164,9 +203,58 @@ EOF chmod 755 "$tmpdir/DEBIAN/$script" done +## +## Create sym link to kernel image +## -+sed -e "s/set -e//g" -i $tmpdir/DEBIAN/postinst +sed -e "s/exit 0//g" -i $tmpdir/DEBIAN/postinst +cat >> $tmpdir/DEBIAN/postinst <> $tmpdir/DEBIAN/preinst <> "$objtree/debian/hdrsrcfiles" (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" if is_enabled CONFIG_STACK_VALIDATION; then -@@ -178,15 +268,18 @@ if is_enabled CONFIG_GCC_PLUGINS; then +@@ -178,15 +266,18 @@ if is_enabled CONFIG_GCC_PLUGINS; then fi destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" @@ -188,8 +184,6 @@ index c4c580f54..58243c628 100755 fi create_package "$packagename" "$tmpdir" -diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian -index e0750b704..ac1409748 100755 --- a/scripts/package/mkdebian +++ b/scripts/package/mkdebian @@ -94,10 +94,12 @@ else