From: Richard Purdie Date: Thu, 24 Aug 2017 14:09:53 +0000 (+0100) Subject: ca-certificates: Fix postinst dependency issues X-Git-Tag: 2017-10~445 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=d9575e05f2cb8bf293534c036ddc0d0336701256;p=openembedded-core.git ca-certificates: Fix postinst dependency issues We were relying on running ca-certificates from the -native version. This meant the host and target path layouts had to match which might not be true, it certainly isn't true for the sdk builds. There was a dependency on run-parts which wasn't represented (we can get it from busybox or debianutils). Since this is an allarch script, call the script directly, making sure debianutils and openssl are available as postinst rootfs time to resolve the issues. Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-support/ca-certificates/ca-certificates_20161130.bb b/meta/recipes-support/ca-certificates/ca-certificates_20161130.bb index 9a80f43371..fa72f71af9 100644 --- a/meta/recipes-support/ca-certificates/ca-certificates_20161130.bb +++ b/meta/recipes-support/ca-certificates/ca-certificates_20161130.bb @@ -8,10 +8,11 @@ LICENSE = "GPL-2.0+ & MPL-2.0" LIC_FILES_CHKSUM = "file://debian/copyright;md5=e7358b9541ccf3029e9705ed8de57968" # This is needed to ensure we can run the postinst at image creation time -DEPENDS = "ca-certificates-native" +DEPENDS = "" DEPENDS_class-native = "openssl-native" -DEPENDS_class-nativesdk = "ca-certificates-native openssl-native" -PACKAGE_WRITE_DEPS += "ca-certificates-native" +DEPENDS_class-nativesdk = "openssl-native" +# Need c_rehash from openssl and run-parts from debianutils +PACKAGE_WRITE_DEPS += "openssl-native debianutils-native" SRCREV = "adc13592b55ef00450412d61a2145d162a4afb19" PR = "r20170717" @@ -64,7 +65,7 @@ do_install_append_class-target () { } pkg_postinst_${PN} () { - SYSROOT="$D" update-ca-certificates + SYSROOT="$D" $D${sbindir}/update-ca-certificates } CONFFILES_${PN} += "${sysconfdir}/ca-certificates.conf" @@ -72,7 +73,7 @@ CONFFILES_${PN} += "${sysconfdir}/ca-certificates.conf" # Postinsts don't seem to be run for nativesdk packages when populating SDKs. CONFFILES_${PN}_append_class-nativesdk = " ${sysconfdir}/ssl/certs/ca-certificates.crt" do_install_append_class-nativesdk () { - SYSROOT="${D}${SDKPATHNATIVE}" update-ca-certificates + SYSROOT="${D}${SDKPATHNATIVE}" ${D}${sbindir}/update-ca-certificates } do_install_append_class-native () {