From 152e74bafb6d4714b9b18ee55e8faab0d474b32f Mon Sep 17 00:00:00 2001 From: Cameron Thompson <50184035+iamromulan@users.noreply.github.com> Date: Sun, 19 Jan 2025 20:51:43 -0500 Subject: [PATCH] Fix issues with new opkg-rebuild script --- opkg-feed/rebuild-feed_test.sh | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/opkg-feed/rebuild-feed_test.sh b/opkg-feed/rebuild-feed_test.sh index 94433e7..31f3b8c 100755 --- a/opkg-feed/rebuild-feed_test.sh +++ b/opkg-feed/rebuild-feed_test.sh @@ -55,11 +55,18 @@ for pkg_dir in "$IPK_SOURCE_DIR"/*; do fi control_file="$pkg_dir/CONTROL/control" - ipk_file="${pkg_name}_${pkg_arch}.ipk" + ipk_file="./${pkg_name}_*_${pkg_arch}.ipk" - # Skip if control file or ipk is missing - if [[ ! -f "$control_file" ]] || [[ ! -f "$ipk_file" ]]; then - echo "Skipping $pkg_name (missing control file or .ipk file)" | tee -a "$LOGFILE" + # Check if control file exists + if [[ ! -f "$control_file" ]]; then + echo "Skipping $pkg_name (missing control file)" | tee -a "$LOGFILE" + continue + fi + + # Match the .ipk file + ipk_file=$(ls ./"${pkg_name}"_*_"${pkg_arch}".ipk 2>/dev/null) + if [[ -z "$ipk_file" ]]; then + echo "Skipping $pkg_name (missing .ipk file)" | tee -a "$LOGFILE" continue fi @@ -114,7 +121,7 @@ done # Remove packages not in ipk-source grep "^Package: " "$PACKAGES" | awk '{print $2}' | while read -r pkg_name; do - if [[ ! -d "$IPK_SOURCE_DIR/$pkg_name" ]]; then + if [[ ! -d "$IPK_SOURCE_DIR/$pkg_name"* ]]; then echo "Removing orphaned package $pkg_name from Packages file..." | tee -a "$LOGFILE" sed -i "/^Package: $pkg_name$/,/^$/d" "$PACKAGES" fi