From 5ee58543057c54058361f937a5e5e68c5cd98686 Mon Sep 17 00:00:00 2001 From: Felix Date: Tue, 29 Apr 2025 15:48:18 +0200 Subject: [PATCH] update.sh aktualisiert --- update.sh | 109 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 63 insertions(+), 46 deletions(-) diff --git a/update.sh b/update.sh index c1086f3..c07094a 100755 --- a/update.sh +++ b/update.sh @@ -1,57 +1,74 @@ #!/bin/bash cd /var/www/html || exit 1 -# First, let's clear the F-Droid index to force it to rebuild +# First, let's clear the F-Droid index rm -f repo/index* rm -f repo/entry.jar -# Remove old APKs and download new ones -rm -f ./repo/YouTube.apk -wget -O ./repo/YouTube.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/youtube-revanced-extended.apk -touch -d "$(date +%Y-%m-%d)" ./repo/YouTube.apk +# Make sure we have the tools we need +command -v aapt >/dev/null 2>&1 || { echo "Error: aapt is required but not installed. Please install Android SDK build tools."; exit 1; } -rm -f ./repo/Reddit.apk -wget -O ./repo/Reddit.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/reddit-revanced-extended.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Reddit.apk +# Function to extract version from APK +get_version() { + apk_file=$1 + version=$(aapt dump badging "$apk_file" 2>/dev/null | grep versionName | awk -F"'" '{print $4}') + echo "$version" +} -rm -f ./repo/SoundCloud.apk -wget -O ./repo/SoundCloud.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/soundcloud-revanced.apk -touch -d "$(date +%Y-%m-%d)" ./repo/SoundCloud.apk +# Function to download and update only if changed +update_app() { + app_name=$1 + app_url=$2 + + echo "Processing $app_name..." + + # Create temp directory + mkdir -p ./temp + + # Download to temp file + wget -q -O "./temp/${app_name}.apk.new" "$app_url" + + # Extract version info from the new APK + new_version=$(get_version "./temp/${app_name}.apk.new") + echo " Downloaded version: $new_version" + + # Check if app exists and if it's different + if [ -f "./repo/${app_name}.apk" ]; then + # Extract version info from the existing APK + current_version=$(get_version "./repo/${app_name}.apk") + echo " Current version: $current_version" + + # Compare files (binary comparison to be absolutely sure) + if ! cmp -s "./temp/${app_name}.apk.new" "./repo/${app_name}.apk"; then + echo " ✓ $app_name: New version detected ($current_version → $new_version), updating..." + mv "./temp/${app_name}.apk.new" "./repo/${app_name}.apk" + touch -d "$(date +%Y-%m-%d)" "./repo/${app_name}.apk" + else + echo " ✓ $app_name: No changes detected (version $current_version), keeping existing version" + rm "./temp/${app_name}.apk.new" + fi + else + echo " ✓ $app_name: File does not exist yet, adding version $new_version..." + mv "./temp/${app_name}.apk.new" "./repo/${app_name}.apk" + touch -d "$(date +%Y-%m-%d)" "./repo/${app_name}.apk" + fi +} -rm -f ./repo/Duolingo.apk -wget -O ./repo/Duolingo.apk https://git.felo.gg/FeloStore/Data/releases/download/latest/duolingo.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Duolingo.apk +# Process each app +update_app "YouTube" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/youtube-revanced-extended.apk" +update_app "Reddit" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/reddit-revanced-extended.apk" +update_app "SoundCloud" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/soundcloud-revanced.apk" +update_app "Duolingo" "https://git.felo.gg/FeloStore/Data/releases/download/latest/duolingo.apk" +update_app "GoogleNews" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/googlenews-arm64-v8a-revanced.apk" +update_app "Instagram" "https://git.felo.gg/FeloStore/Data/releases/download/latest/instagram.apk" +update_app "Twitter" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/twitter-stable-piko.apk" +update_app "NovaLauncher" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/nova-launcher-indrastorms.apk" +update_app "Busuu" "https://git.felo.gg/FeloStore/Data/releases/download/latest/busuu.apk" +update_app "Quizlet" "https://git.felo.gg/FeloStore/Data/releases/download/latest/quizlet.apk" +update_app "Telegram" "https://git.felo.gg/FeloStore/Data/releases/download/latest/telegram.apk" -rm -f ./repo/GoogleNews.apk -wget -O ./repo/GoogleNews.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/googlenews-arm64-v8a-revanced.apk -touch -d "$(date +%Y-%m-%d)" ./repo/GoogleNews.apk +# Clean up temp directory +rm -rf ./temp -rm -f ./repo/Instagram.apk -wget -O ./repo/Instagram.apk https://git.felo.gg/FeloStore/Data/releases/download/latest/instagram.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Instagram.apk - -rm -f ./repo/Twitter.apk -wget -O ./repo/Twitter.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/twitter-stable-piko.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Twitter.apk - -rm -f ./repo/NovaLauncher.apk -wget -O ./repo/NovaLauncher.apk https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/nova-launcher-indrastorms.apk -touch -d "$(date +%Y-%m-%d)" ./repo/NovaLauncher.apk - -rm -f ./repo/Busuu.apk -wget -O ./repo/Busuu.apk https://git.felo.gg/FeloStore/Data/releases/download/latest/busuu.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Busuu.apk - -rm -f ./repo/Quizlet.apk -wget -O ./repo/Quizlet.apk https://git.felo.gg/FeloStore/Data/releases/download/latest/quizlet.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Quizlet.apk - -rm -f ./repo/Telegram.apk -wget -O ./repo/Telegram.apk https://git.felo.gg/FeloStore/Data/releases/download/latest/telegram.apk -touch -d "$(date +%Y-%m-%d)" ./repo/Telegram.apk - -# Remove the old metadata directory if it exists -rm -rf repo/metadata - -# Now rebuild the index completely -fdroid update --create-metadata --clean \ No newline at end of file +# Update the F-Droid repository +fdroid update --clean \ No newline at end of file