update appstream-sync script to download from all RakuOS suites
This commit is contained in:
@@ -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."
|
||||||
|
|||||||
Reference in New Issue
Block a user