🏅 Sync 2026-06-15 22:09:15

This commit is contained in:
github-actions[bot] committed 2026-06-15 22:09:15 +08:00
1 parent fae6bd4c8a
commit d30e14c6e7
68 files changed
+2964 -918

No files matched your search

@@ -0,0 +1,20 @@
#!/bin/sh
# Background apk/opkg update for the Updates view. Returns at once; throttled.
LOCK=/tmp/luci-app-daede.idx.lock
if [ -f "$LOCK" ]; then
mtime=$(date -r "$LOCK" +%s 2>/dev/null || echo 0)
[ "$(( $(date +%s) - mtime ))" -lt 90 ] && exit 0
fi
: > "$LOCK"
(
if command -v apk >/dev/null 2>&1; then
apk update
elif command -v opkg >/dev/null 2>&1; then
opkg update
fi
) >/dev/null 2>&1 </dev/null &
exit 0
@@ -44,6 +44,7 @@ fi
exec >"$LOG" 2>&1
trap 'rm -f "$LOCK"' EXIT INT TERM
rc=0
TMP="${DEST}.new"
mkdir -p "$(dirname "$DEST")"
echo "$(date '+%F %T') begin: $URL"
@@ -51,18 +52,19 @@ fi
if ! curl -fsSL --connect-timeout 15 --max-time 240 -o "$TMP" "$URL"; then
echo "$(date '+%F %T') download failed"
rm -f "$TMP"
exit 1
rc=1
else
size=$(wc -c < "$TMP" 2>/dev/null || echo 0)
if [ "$size" -lt 102400 ]; then
echo "$(date '+%F %T') file too small ($size bytes)"
rm -f "$TMP"
rc=2
else
mv "$TMP" "$DEST"
echo "$(date '+%F %T') updated $DEST ($size bytes)"
fi
fi
size=$(wc -c < "$TMP" 2>/dev/null || echo 0)
if [ "$size" -lt 102400 ]; then
echo "$(date '+%F %T') file too small ($size bytes)"
rm -f "$TMP"
exit 2
fi
mv "$TMP" "$DEST"
echo "$(date '+%F %T') updated $DEST ($size bytes)"
echo "$(date '+%F %T') done (rc=$rc)"
) </dev/null >/dev/null 2>&1 &
echo "started in background, see $LOG"
@@ -40,10 +40,23 @@ fi
if command -v apk >/dev/null 2>&1; then
echo "--- apk update ---"
apk update 2>&1
echo "--- apk upgrade $PKG ---"
# --no-self-upgrade so apk itself does not jump versions mid-op
apk upgrade --no-self-upgrade "$PKG" 2>&1
rc=$?
echo "--- apk add $PKG ---"
# Target only $PKG (not `apk upgrade`, which re-solves the whole world).
apk add "$PKG" 2>&1
# Don't trust apk's exit code: apk-tools 3 returns non-zero whenever ANY
# unrelated installed package has an unavailable .apk in the configured
# feeds, even when $PKG itself upgraded fine. Judge success by state —
# $PKG must be installed and have no pending upgrade left.
if ! apk list --installed 2>/dev/null | grep -q "^${PKG}-"; then
echo "result: $PKG is not installed"
rc=1
elif apk list -u 2>/dev/null | grep -q "^${PKG}-"; then
echo "result: $PKG still has a pending upgrade"
rc=1
else
echo "result: $PKG is at the latest available version"
rc=0
fi
elif command -v opkg >/dev/null 2>&1; then
echo "--- opkg update ---"
opkg update 2>&1
@@ -27,6 +27,7 @@
"/usr/share/luci-app-daede/pkg-info.sh dae": [ "exec" ],
"/usr/share/luci-app-daede/pkg-info.sh daed": [ "exec" ],
"/usr/share/luci-app-daede/pkg-info.sh luci-app-daede": [ "exec" ],
"/usr/share/luci-app-daede/refresh-index.sh": [ "exec" ],
"/usr/share/luci-app-daede/proxy-check.sh": [ "exec" ]
},
"ubus": {