kivy / python-for-android

Turn your Python application into an Android APK
https://python-for-android.readthedocs.io
MIT License
8.27k stars 1.84k forks source link

openssl-1.1.1w is not available on #3039

Open misanthropicat opened 1 month ago

misanthropicat commented 1 month ago

Checklist

Versions

Description

My buildozer build fails on openssl recipe. Manual check of response from https://www.openssl.org/source/openssl-1.1.1w.tar.gz also returns 404.

buildozer.spec

Command:

buildozer android debug

Spec file:

[app]
title = Playlist Creator
package.name = playlistcreator
package.domain = org.misanthropicat
source.dir = src
source.include_exts = py,svg,png,json,env
source.include_patterns = data/*
source.exclude_patterns = migrator.py
version.regex = ([0-9]+.[0-9]+.[0-9]+)
version.filename = %(source.dir)s/VERSION
requirements = python3==3.11.9, kivy==2.3.0, spotipy==2.24.0, redis==5.0.7, https://github.com/kivymd/KivyMD/archive/master.zip, materialyoucolor==2.0.9, asynckivy==0.6.3, asyncgui==0.6.3, python-dotenv==1.0.1, pyjnius==1.6.1
presplash.filename = %(source.dir)s/data/splash_win.gif
icon.filename = %(source.dir)s/data/app_icon.png
orientation = portrait

# OSX Specific
osx.python_version = 3
osx.kivy_version = 1.9.1

# Android specific
fullscreen = 0
icon.adaptive_background.filename = %(source.dir)s/src/data/icon_bg.png
android.permissions = android.permission.INTERNET, android.permission.READ_EXTERNAL_STORAGE, android.permission.WRITE_EXTERNAL_STORAGE
android.api = 33
android.minapi = 28
android.ndk = 25b
android.ndk_api = 28
android.private_storage = True
android.ndk_path = 
android.sdk_path = 
android.ant_path =
android.skip_update = False
android.accept_sdk_license = True
android.add_resources = src/data/icon.svg
android.enable_androidx = True
android.logcat_filters = *:S python:D
android.logcat_pid_only = True
android.archs = arm64-v8a,armeabi-v7a,x86,x86_64
android.allow_backup = True
p4a.branch = develop
p4a.bootstrap = sdl2

#
# iOS specific
ios.kivy_ios_url = https://github.com/kivy/kivy-ios
ios.kivy_ios_branch = master
ios.ios_deploy_url = https://github.com/phonegap/ios-deploy
ios.ios_deploy_branch = 1.10.0
ios.codesign.allowed = false

[buildozer]
log_level = 2
warn_on_root = 1

Logs

[INFO]:    Downloading openssl from https://www.openssl.org/source/openssl-1.1.1w.tar.gz
Traceback (most recent call last):
  File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 1256, in <module>
    main()
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/entrypoints.py", line 18, in main
    ToolchainCL()
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 685, in __init__
    getattr(self, command)(args)
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 104, in wrapper_func
    build_dist_from_args(ctx, dist, args)
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 163, in build_dist_from_args
    build_recipes(build_order, python_modules, ctx,
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 482, in build_recipes
    recipe.download_if_necessary()
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/recipe.py", line 356, in download_if_necessary
    self.download()
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/recipe.py", line 406, in download
    self.download_file(self.versioned_url, filename)
  File "/github/workspace/.buildozer/android/platform/python-for-android/pythonforandroid/recipe.py", line 210, in download_file
    urlretrieve(url, target, report_hook)
  File "/usr/lib/python3.8/urllib/request.py", line 247, in urlretrieve
    with contextlib.closing(urlopen(url, data)) as fp:
  File "/usr/lib/python3.8/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.8/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.8/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
Download failed: HTTP Error 404: Not Found; retrying in 1 second(s)...Download failed: HTTP Error 404: Not Found; retrying in 2 second(s)...Download failed: HTTP Error 404: Not Found; retrying in 4 second(s)...Download failed: HTTP Error 404: Not Found; retrying in 8 second(s)...

https://github.com/misanthropicat/spotify_tools/actions/runs/10076064788/job/27855643822?pr=15

T-Dynamos commented 1 month ago

Tmp fix:

File: pythonforandroid/recipes/openssl/__init__.py

    url = "http://mirrors.ibiblio.org/openssl/source/openssl-{url_version}.tar.gz"
misanthropicat commented 1 month ago

Well, I'm afraid that I need a fix for CI (my local environment is quite stable, and I still can build with it). Still thank you and hope for a quick fix :)