[openwrt/openwrt] Revert "apk: limit CONFIG_IPK_FILES_CHECKSUMS config to OPKG"
LEDE Commits
lede-commits at lists.infradead.org
Thu Jun 20 03:33:52 PDT 2024
ansuel pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/cf2b689d03ab26fce0e87f9c0378663f6f9cb970
commit cf2b689d03ab26fce0e87f9c0378663f6f9cb970
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Thu Jun 20 05:49:21 2024 +0200
Revert "apk: limit CONFIG_IPK_FILES_CHECKSUMS config to OPKG"
This reverts commit 25bbefcdd9424ed1b6ef35a39e84420fc4cce322.
Only the Config-build.in change needed to be merged and this contains
leftover from previous revision of the feature.
Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
---
config/Config-build.in | 1 -
include/package-pack.mk | 13 +++++++++----
package/base-files/files/sbin/pkg_check | 19 ++++++-------------
3 files changed, 15 insertions(+), 18 deletions(-)
diff --git a/config/Config-build.in b/config/Config-build.in
index 02931a87c6..fbeaf89fcd 100644
--- a/config/Config-build.in
+++ b/config/Config-build.in
@@ -114,7 +114,6 @@ menu "Global build settings"
config IPK_FILES_CHECKSUMS
bool
prompt "Record files checksums in package metadata"
- depends on !USE_APK
help
This makes file checksums part of package metadata. It increases size
but provides you with pkg_check command to check for flash corruptions.
diff --git a/include/package-pack.mk b/include/package-pack.mk
index 33247be024..26a3278834 100644
--- a/include/package-pack.mk
+++ b/include/package-pack.mk
@@ -226,6 +226,15 @@ endif
$(RSTRIP) $$(IDIR_$(1))
+ ifneq ($$(CONFIG_IPK_FILES_CHECKSUMS),)
+ (cd $$(IDIR_$(1)); \
+ ( \
+ find . -type f \! -path ./CONTROL/\* -exec $(MKHASH) sha256 -n \{\} \; 2> /dev/null | \
+ sed 's|\([[:blank:]]\)\./| \1/|' > $$(IDIR_$(1))/CONTROL/files-sha256sum \
+ ) || true \
+ )
+ endif
+
ifneq ($$(KEEP_$(1)),)
@( \
keepfiles=""; \
@@ -320,10 +329,6 @@ else
rm -rf $$(IDIR_$(1))/CONTROL/conffiles; \
fi
- ifneq ($$(CONFIG_IPK_FILES_CHECKSUMS),)
- if [ -f $$(IDIR_$(1))/CONTROL/files-sha256sum ]; then mv -f $$(IDIR_$(1))/CONTROL/files-sha256sum $$(IDIR_$(1))/lib/apk/packages/$(1).files-sha256sum; fi
- endif
-
if [ -z "$$$$(ls -A $$(IDIR_$(1))/CONTROL 2>/dev/null)" ]; then \
rm -rf $$(IDIR_$(1))/CONTROL; \
else \
diff --git a/package/base-files/files/sbin/pkg_check b/package/base-files/files/sbin/pkg_check
index dcddbebc7d..28e87925ae 100755
--- a/package/base-files/files/sbin/pkg_check
+++ b/package/base-files/files/sbin/pkg_check
@@ -23,13 +23,6 @@ MISSING=""
SUMMARY=""
NL="
"
-if [ -d /usr/lib/opkg ]; then
- IPKG_INFO_DIR=/usr/lib/opkg/info
-elif [ -d /lib/apk ];
- IPKG_INFO_DIR=/lib/apk/packages
-else
- exti 1
-fi
# Arguments parsing
while expr "x$1" : "x-" > /dev/null; do
@@ -56,12 +49,12 @@ done
# Check all packages by default
if [ -z "$1" ]; then
- set $(cd $IPKG_INFO_DIR; for i in *.files-sha256sum; do basename $i .files-sha256sum; done)
+ set $(cd /usr/lib/opkg/info/; for i in *.files-sha256sum; do basename $i .files-sha256sum; done)
fi
# Iterate over packages
while [ "$1" ]; do
- if [ \! -f "$IPKG_INFO_DIR/$1.files-sha256sum" ]; then
+ if [ \! -f "/usr/lib/opkg/info/$1.files-sha256sum" ]; then
if [ "$ERRFATAL" = no ]; then
echo " * No checksums for $1 - skipping"
echo
@@ -79,13 +72,13 @@ while [ "$1" ]; do
fi
[ $QUIET = yes ] || echo " * Checking package $1:"
ERR=""
- CHECK="$(sha256sum -c $IPKG_INFO_DIR/$1.files-sha256sum 2> /dev/null)"
+ CHECK="$(sha256sum -c /usr/lib/opkg/info/$1.files-sha256sum 2> /dev/null)"
# Are the changed files config files?
- if [ $? -ne 0 ] && [ "$(cat "$IPKG_INFO_DIR/$1.files-sha256sum")" ]; then
+ if [ $? -ne 0 ] && [ "$(cat "/usr/lib/opkg/info/$1.files-sha256sum")" ]; then
NEWCHECK="$(echo "$CHECK" | grep '^.*: OK$')"
for i in $(echo "$CHECK" | sed -n 's|^\(.*\): FAILED$|\1|p'); do
- if [ "$(grep "^$i\$" "$IPKG_INFO_DIR/$1.conffiles" 2> /dev/null)" ] || \
+ if [ "$(grep "^$i\$" "/usr/lib/opkg/info/$1.conffiles" 2> /dev/null)" ] || \
[ "$(echo "$i" | grep "^/etc/uci-defaults/")" ]; then
NEWCHECK="${NEWCHECK}${NL}${i}: CONFIGURED"
else
@@ -98,7 +91,7 @@ while [ "$1" ]; do
# Do we have changed files or not?
if [ -z "$ERR" ]; then
- [ $QUIET = yes ] || [ ! -s "$IPKG_INFO_DIR/$1.files-sha256sum" ] || echo "$CHECK" | sed 's|^| - |'
+ [ $QUIET = yes ] || [ ! -s "/usr/lib/opkg/info/$1.files-sha256sum" ] || echo "$CHECK" | sed 's|^| - |'
[ $QUIET = yes ] || echo " * Package $1 is ok"
[ $QUIET = yes ] || echo
else
More information about the lede-commits
mailing list