update.sh aktualisiert

This commit is contained in:
2025-05-03 13:04:52 +02:00
parent 5effa89279
commit bc57f260e6

View File

@@ -1,21 +1,18 @@
#!/bin/bash
cd /var/www/html || exit 1
# Fix permissions on config.yml
chmod 0600 config.yml
# Fix permissions on config.yml if it exists
if [ -f config.yml ]; then
chmod 0600 config.yml
fi
# Create repo icon directory if it doesn't exist
mkdir -p repo/icons
# Create a basic repo icon if missing
if [ ! -f repo/icons/icon.png ]; then
echo "Creating placeholder repo icon..."
# 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
# Try to download 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
# Function to extract version from APK (if aapt is available)
@@ -75,17 +72,8 @@ update_app() {
fi
}
# Make sure archive directory exists and check for archived APKs
# Make sure archive directory exists
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
update_app "YouTube" "https://github.com/FiorenMas/Revanced-And-Revanced-Extended-Non-Root/releases/download/all/youtube-revanced-extended.apk"
@@ -103,37 +91,29 @@ update_app "Telegram" "https://git.felo.gg/FeloStore/Data/releases/download/late
# Clean up temp directory
rm -rf ./temp
# Create or update fdroidserver config to accept unsigned APKs
mkdir -p ~/.config/fdroidserver/
echo "accept_bad_certificate: True" > ~/.config/fdroidserver/config.yml
echo "allow_disabled_algorithms: True" >> ~/.config/fdroidserver/config.yml
# Update config to explicitly allow unsigned APKs
if [ -f config.yml ]; then
if ! grep -q "disable_apk_signing:" config.yml; then
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
# 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..."
# Check for archived APKs 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" ] && [ ! -f "repo/${app}.apk" ]; then
echo "Restoring ${app}.apk from archive to repo after update"
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
# 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
# Add option to config to accept unsigned APKs
if [ -f config.yml ]; then
if ! grep -q "allow_disabled_algorithms:" config.yml; then
echo "allow_disabled_algorithms: True" >> config.yml
fi
fi
# Update F-Droid repository with only supported flags
echo "Updating F-Droid repository..."
fdroid update --allow-disabled-algorithms --use-date-from-apk --create-metadata --clean
# Final update to ensure everything is included
echo "Running final update with simpler flags..."
fdroid update --allow-disabled-algorithms --use-date-from-apk --nosign
echo "Update complete!"