Redlink from busybox and coreutils behave differently on missing files. This leads to apt-key miss-behaving and also segure apt-get
root@qt5122:~# apt-key exportall touch: : No such file or directory W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://release.qtec.com:5022/qtec/europa/deb/qt5122 ./ Release: At least one invalid signature was encountered. --- meta/recipes-devtools/apt/apt.inc | 1 + ...t-Fix-apt-file-with-busybox-readlink.patch | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 meta/recipes-devtools/apt/apt/0001-apt-Fix-apt-file-with-busybox-readlink.patch diff --git a/meta/recipes-devtools/apt/apt.inc b/meta/recipes-devtools/apt/apt.inc index f1cde3068d..995bfc45ee 100644 --- a/meta/recipes-devtools/apt/apt.inc +++ b/meta/recipes-devtools/apt/apt.inc @@ -13,6 +13,7 @@ SRC_URI = "http://archive.ubuntu.com/ubuntu/pool/main/a/${BPN}/${BPN}_${PV}.tar. file://disable-test.patch \ file://0001-environment.mak-musl-based-systems-can-generate-shar.patch \ file://0001-apt-1.2.12-Fix-musl-build.patch \ + file://0001-apt-Fix-apt-file-with-busybox-readlink.patch \ " SRC_URI[md5sum] = "ce8f9ab11f4fd0a08ec73eaffd75c8f0" SRC_URI[sha256sum] = "fa1311a9ce00e72379a0a3bc6d240ba30c0968cfbbb3472859e50b99e24e9598" diff --git a/meta/recipes-devtools/apt/apt/0001-apt-Fix-apt-file-with-busybox-readlink.patch b/meta/recipes-devtools/apt/apt/0001-apt-Fix-apt-file-with-busybox-readlink.patch new file mode 100644 index 0000000000..684e3b1626 --- /dev/null +++ b/meta/recipes-devtools/apt/apt/0001-apt-Fix-apt-file-with-busybox-readlink.patch @@ -0,0 +1,41 @@ +From 3e0804f7882088186f47ff3c3c9e60998a1d93a0 Mon Sep 17 00:00:00 2001 +From: Ricardo Ribalda Delgado <ricardo.riba...@gmail.com> +Date: Thu, 17 May 2018 10:42:44 +0200 +Subject: [PATCH] apt: Fix apt-file with busybox readlink + +Busybox readlink behaves diferently that coreutils readlink: + +root@qt5122:~# touch /tmp/this_file_exist +root@qt5122:~# busybox readlink -f /tmp/this_file_exist +/tmp/this_file_exist +root@qt5122:~# readlink -f /tmp/this_file_exist +/tmp/this_file_exist + +root@qt5122:~# readlink -f /tmp/this_file_does_not_exist +/tmp/this_file_does_not_exist +root@qt5122:~# busybox readlink -f /tmp/this_file_does_not_exist +root@qt5122:~# + +This patch make apt-file compatible with busybox readlink + +Upstream-Status: Inappropriate [OE specific] +Signed-off-by: Ricardo Ribalda Delgado <ricardo.riba...@gmail.com> +--- + cmdline/apt-key.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/cmdline/apt-key.in b/cmdline/apt-key.in +index eab5805..421c981 100644 +--- a/cmdline/apt-key.in ++++ b/cmdline/apt-key.in +@@ -313,6 +313,7 @@ merge_all_trusted_keyrings_into_pubring() { + # does the same as: + # foreach_keyring_do 'import_keys_from_keyring' "${GPGHOMEDIR}/pubring.gpg" + # but without using gpg, just cat and find ++ touch "${GPGHOMEDIR}/pubring.gpg" + local PUBRING="$(readlink -f "${GPGHOMEDIR}/pubring.gpg")" + rm -f "$PUBRING" + touch "$PUBRING" +-- +2.17.0 + -- 2.17.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core