update appstream-sync script to download from all RakuOS suites

This commit is contained in:
2025-11-25 02:14:07 -07:00
parent bd94f9473e
commit 33d6747f51

View File

@@ -2,40 +2,69 @@
set -e set -e
BASE_URL="https://repo.rakuos.org/dists/rakuos" BASE_URL="https://repo.rakuos.org/dists"
SUITE="rakuos"
COMPONENTS=(main contrib non-free) COMPONENTS=(main contrib non-free)
ARCH=$(dpkg --print-architecture) ARCH=$(dpkg --print-architecture)
APT_LIST_DIR="/var/lib/apt/lists" APT_LIST_DIR="/var/lib/apt/lists"
for comp in ${COMPONENTS[@]}; do # Fetch list of suites from server
COMP_URL="$BASE_URL/$comp/dep11" SUITES=$(wget -qO- "$BASE_URL/" | grep -oP '(?<=href=")[^"/]+(?=/")')
YAML_FILE="$COMP_URL/Components-$ARCH.yml.gz" if [[ -z "$SUITES" ]]; then
ICON_FILE48="$COMP_URL/icons-48x48.tar.gz" echo "Error: No suites found at $BASE_URL"
ICON_FILE64="$COMP_URL/icons-64x64.tar.gz" exit 1
ICON_FILE128="$COMP_URL/icons-128x128.tar.gz" fi
# download yaml echo "Detected suites: $SUITES"
if wget -q -O "$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_Components-${ARCH}.yml.gz" "$YAML_FILE"; then echo
echo "Fetched DEP11 YAML for $comp"
fi for SUITE in $SUITES; do
# download 48 Icons echo "=== Processing suite: $SUITE ==="
if wget -q -O "$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-48x48.tar.gz" "$ICON_FILE48"; then
echo "Fetched DEP11 48x48 icons for $comp" for comp in "${COMPONENTS[@]}"; do
fi COMP_URL="$BASE_URL/$SUITE/$comp/dep11"
# download 64 Icons
if wget -q -O "$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-64x64.tar.gz" "$ICON_FILE64"; then YAML_FILE="$COMP_URL/Components-$ARCH.yml.gz"
echo "Fetched DEP11 64x64 icons for $comp" ICON_FILE48="$COMP_URL/icons-48x48.tar.gz"
fi ICON_FILE64="$COMP_URL/icons-64x64.tar.gz"
# download 128 Icons ICON_FILE128="$COMP_URL/icons-128x128.tar.gz"
if wget -q -O "$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-128x128.tar.gz" "$ICON_FILE128"; then
echo "Fetched DEP11 128 icons for $comp" # DEP-11 YAML
fi if wget -q -O \
"$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_Components-${ARCH}.yml.gz" \
"$YAML_FILE"; then
echo "Fetched DEP11 YAML for $SUITE / $comp"
fi
# 48px icons
if wget -q -O \
"$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-48x48.tar.gz" \
"$ICON_FILE48"; then
echo "Fetched 48x48 icons for $SUITE / $comp"
fi
# 64px icons
if wget -q -O \
"$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-64x64.tar.gz" \
"$ICON_FILE64"; then
echo "Fetched 64x64 icons for $SUITE / $comp"
fi
# 128px icons
if wget -q -O \
"$APT_LIST_DIR/repo.rakuos.org_dists_${SUITE}_${comp}_dep11_icons-128x128.tar.gz" \
"$ICON_FILE128"; then
echo "Fetched 128x128 icons for $SUITE / $comp"
fi
echo
done
done done
# Refresh AppStream manually # Refresh AppStream cache
if command -v appstreamcli >/dev/null; then if command -v appstreamcli >/dev/null; then
echo "Refreshing AppStream..."
appstreamcli refresh --source=os >/dev/null 2>&1 || true appstreamcli refresh --source=os >/dev/null 2>&1 || true
fi fi
echo "All suites processed."