update.sh aktualisiert
This commit is contained in:
71
update.sh
71
update.sh
@@ -6,17 +6,27 @@ chmod 0600 config.yml
|
|||||||
|
|
||||||
# Create repo icon directory if it doesn't exist
|
# Create repo icon directory if it doesn't exist
|
||||||
mkdir -p repo/icons
|
mkdir -p repo/icons
|
||||||
# Create a basic repo icon if missing (you can replace this with your own icon later)
|
# Create a basic repo icon if missing
|
||||||
if [ ! -f repo/icons/icon.png ]; then
|
if [ ! -f repo/icons/icon.png ]; then
|
||||||
echo "Creating placeholder repo icon..."
|
echo "Creating placeholder repo icon..."
|
||||||
convert -size 512x512 xc:blue -fill white -gravity center -pointsize 70 -annotate 0 "F-Droid\nRepo" repo/icons/icon.png
|
# Try to create an icon using ImageMagick if available
|
||||||
|
if command -v convert >/dev/null 2>&1; then
|
||||||
|
convert -size 512x512 xc:blue -fill white -gravity center -pointsize 70 -annotate 0 "F-Droid\nRepo" repo/icons/icon.png
|
||||||
|
else
|
||||||
|
# Fallback to downloading a simple icon
|
||||||
|
wget -q -O repo/icons/icon.png "https://f-droid.org/assets/favicon-256.png" || echo "Could not create icon, please add one manually"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Function to extract version from APK
|
# Function to extract version from APK (if aapt is available)
|
||||||
get_version() {
|
get_version() {
|
||||||
apk_file=$1
|
apk_file=$1
|
||||||
version=$(aapt dump badging "$apk_file" 2>/dev/null | grep versionName | awk -F"'" '{print $4}')
|
if command -v aapt >/dev/null 2>&1; then
|
||||||
echo "$version"
|
version=$(aapt dump badging "$apk_file" 2>/dev/null | grep versionName | awk -F"'" '{print $4}')
|
||||||
|
echo "$version"
|
||||||
|
else
|
||||||
|
echo "unknown (aapt not installed)"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Function to download and update only if changed
|
# Function to download and update only if changed
|
||||||
@@ -65,6 +75,18 @@ update_app() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Make sure archive directory exists and check for archived APKs
|
||||||
|
mkdir -p archive/
|
||||||
|
# Check if any apps are in archive and restore them to repo
|
||||||
|
echo "Checking for archived APKs to restore..."
|
||||||
|
for app in YouTube Reddit SoundCloud Duolingo GoogleNews Instagram Twitter NovaLauncher Busuu Quizlet Telegram; do
|
||||||
|
if [ -f "archive/${app}.apk" ]; then
|
||||||
|
echo "Restoring ${app}.apk from archive to repo"
|
||||||
|
cp "archive/${app}.apk" "repo/${app}.apk"
|
||||||
|
touch -d "$(date +%Y-%m-%d)" "repo/${app}.apk"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
# Process each app
|
# 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 "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 "Reddit" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/reddit-revanced-extended.apk"
|
||||||
@@ -81,12 +103,37 @@ update_app "Telegram" "https://git.felo.gg/FeloStore/Data/releases/download/late
|
|||||||
# Clean up temp directory
|
# Clean up temp directory
|
||||||
rm -rf ./temp
|
rm -rf ./temp
|
||||||
|
|
||||||
# Add flag to accept unsigned APKs in fdroid
|
# Create or update fdroidserver config to accept unsigned APKs
|
||||||
echo "Updating F-Droid repository, accepting unsigned APKs..."
|
mkdir -p ~/.config/fdroidserver/
|
||||||
fdroid update --allow-disabled-algorithms --use-date-from-apk --clean
|
echo "accept_bad_certificate: True" > ~/.config/fdroidserver/config.yml
|
||||||
|
echo "allow_disabled_algorithms: True" >> ~/.config/fdroidserver/config.yml
|
||||||
|
|
||||||
# If there are issues, try to force update
|
# Update config to explicitly allow unsigned APKs
|
||||||
if [ $? -ne 0 ]; then
|
if [ -f config.yml ]; then
|
||||||
echo "First update attempt failed, trying with additional flags..."
|
if ! grep -q "disable_apk_signing:" config.yml; then
|
||||||
fdroid update --create-metadata --delete-unknown --allow-disabled-algorithms --use-date-from-apk --clean
|
echo "disable_apk_signing: True" >> config.yml
|
||||||
|
fi
|
||||||
|
if ! grep -q "allow_disabled_algorithms:" config.yml; then
|
||||||
|
echo "allow_disabled_algorithms: True" >> config.yml
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Update F-Droid repository with special flags for unsigned APKs
|
||||||
|
echo "Updating F-Droid repository with special settings for unsigned APKs..."
|
||||||
|
fdroid update --create-metadata --no-check-certificate --allow-disabled-algorithms --use-date-from-apk --delete-unsigned --disable-apk-signing
|
||||||
|
|
||||||
|
# After update, copy any moved files back from archive to repo
|
||||||
|
echo "Checking if any APKs were moved to archive..."
|
||||||
|
for app in YouTube Reddit SoundCloud Duolingo GoogleNews Instagram Twitter NovaLauncher Busuu Quizlet Telegram; do
|
||||||
|
if [ -f "archive/${app}.apk" ] && [ ! -f "repo/${app}.apk" ]; then
|
||||||
|
echo "Restoring ${app}.apk from archive to repo after update"
|
||||||
|
cp "archive/${app}.apk" "repo/${app}.apk"
|
||||||
|
touch -d "$(date +%Y-%m-%d)" "repo/${app}.apk"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Final update to include any restored files
|
||||||
|
echo "Running final update..."
|
||||||
|
fdroid update --no-check-certificate --allow-disabled-algorithms --use-date-from-apk --disable-apk-signing
|
||||||
|
|
||||||
|
echo "Update complete!"
|
||||||
Reference in New Issue
Block a user