diff --git a/cross/cython/Makefile b/cross/cython/Makefile index 3330a0b7de5..382276200bf 100644 --- a/cross/cython/Makefile +++ b/cross/cython/Makefile @@ -1,5 +1,5 @@ PKG_NAME = cython -PKG_VERS = 0.29.21 +PKG_VERS = 0.29.24 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://github.com/$(PKG_NAME)/$(PKG_NAME)/archive diff --git a/cross/cython/digests b/cross/cython/digests index 90f3b2e76f5..479727f8f35 100644 --- a/cross/cython/digests +++ b/cross/cython/digests @@ -1,3 +1,3 @@ -cython-0.29.21.tar.gz SHA1 718dcfee83132421e2df4eb6fa0ef7f3917bf7b9 -cython-0.29.21.tar.gz SHA256 e2e38e1f0572ca54d6085df3dec8b607d20e81515fb80215aed19c81e8fe2079 -cython-0.29.21.tar.gz MD5 e14ffbc4019f9bbb37d977dac46f7d0d +cython-0.29.24.tar.gz SHA1 36a2a5fe9730758cebf3de28c0ff7ae33595700f +cython-0.29.24.tar.gz SHA256 a5efb97612f0f97164e87c54cc295b2e2d06c539487670079963adeab872de80 +cython-0.29.24.tar.gz MD5 6a7bd0c2d7a9f1630d82e957197ea6e8 diff --git a/cross/dtlssocket/PLIST b/cross/dtlssocket/PLIST index 9e299ad71f7..8b137891791 100644 --- a/cross/dtlssocket/PLIST +++ b/cross/dtlssocket/PLIST @@ -1 +1 @@ -rsc:bin/wheel + diff --git a/cross/homeassistant.pillow/Makefile b/cross/homeassistant.pillow/Makefile deleted file mode 100644 index 340392f45f6..00000000000 --- a/cross/homeassistant.pillow/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -PKG_NAME = Pillow -# pillow version for homeassistant package -PKG_VERS = 8.2.0 -PKG_EXT = tar.gz -PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) -PKG_DIST_SITE = https://files.pythonhosted.org/packages/source/P/$(PKG_NAME) -PKG_DIR = $(PKG_NAME)-$(PKG_VERS) - -DEPENDS = cross/freetype cross/libjpeg cross/zlib - -HOMEPAGE = https://python-pillow.org -COMMENT = The friendly PIL fork. PIL is the Python Imaging Library. -LICENSE = HPND - -ENV += STAGING_INSTALL_PREFIX=$(STAGING_INSTALL_PREFIX) - -include ../../mk/spksrc.python-wheel.mk diff --git a/cross/homeassistant.pillow/PLIST b/cross/homeassistant.pillow/PLIST deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/cross/homeassistant.pillow/digests b/cross/homeassistant.pillow/digests deleted file mode 100644 index 352dbfc9a2e..00000000000 --- a/cross/homeassistant.pillow/digests +++ /dev/null @@ -1,3 +0,0 @@ -Pillow-8.2.0.tar.gz SHA1 a9b32caf6ff1d5160ad41265c7ad3b090114eefc -Pillow-8.2.0.tar.gz SHA256 a787ab10d7bb5494e5f76536ac460741788f1fbce851068d73a87ca7c35fc3e1 -Pillow-8.2.0.tar.gz MD5 21c03274a9f59b9c00419852a8faebe7 diff --git a/cross/homeassistant.pillow/patches/001-fix-paths.patch b/cross/homeassistant.pillow/patches/001-fix-paths.patch deleted file mode 100644 index a7c408bc167..00000000000 --- a/cross/homeassistant.pillow/patches/001-fix-paths.patch +++ /dev/null @@ -1,40 +0,0 @@ -# avoid the use of system include and lib directories -# take the STAGING_INSTALL_PREFIX variable from environment as defined by spk Makefile ---- setup.py.orig 2021-04-01 17:58:27.000000000 +0000 -+++ setup.py 2021-05-13 11:53:05.171525534 +0000 -@@ -28,15 +28,16 @@ - - NAME = "Pillow" - PILLOW_VERSION = get_version() --FREETYPE_ROOT = None -+lib_include = os.path.join(os.environ['STAGING_INSTALL_PREFIX'], "lib"), os.path.join(os.environ['STAGING_INSTALL_PREFIX'], "include") -+FREETYPE_ROOT = lib_include - HARFBUZZ_ROOT = None - FRIBIDI_ROOT = None - IMAGEQUANT_ROOT = None - JPEG2K_ROOT = None --JPEG_ROOT = None -+JPEG_ROOT = lib_include - LCMS_ROOT = None - TIFF_ROOT = None --ZLIB_ROOT = None -+ZLIB_ROOT = lib_include - FUZZING_BUILD = "LIB_FUZZING_ENGINE" in os.environ - - if sys.platform == "win32" and sys.version_info >= (3, 10): -@@ -574,13 +575,8 @@ - - # standard locations - if not self.disable_platform_guessing: -- _add_directory(library_dirs, "/usr/local/lib") -- _add_directory(include_dirs, "/usr/local/include") -- -- _add_directory(library_dirs, "/usr/lib") -- _add_directory(include_dirs, "/usr/include") -- # alpine, at least -- _add_directory(library_dirs, "/lib") -+ _add_directory(library_dirs, os.environ['STAGING_INSTALL_PREFIX'] + "/lib") -+ _add_directory(include_dirs, os.environ['STAGING_INSTALL_PREFIX'] + "/include") - - if sys.platform == "win32": - # on Windows, look for the OpenJPEG libraries in the location that diff --git a/cross/numpy/Makefile b/cross/numpy/Makefile index 7587fe46e56..669efb6458a 100644 --- a/cross/numpy/Makefile +++ b/cross/numpy/Makefile @@ -1,5 +1,5 @@ PKG_NAME = numpy -PKG_VERS = 1.21.1 +PKG_VERS = 1.21.4 PKG_EXT = zip PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://files.pythonhosted.org/packages/source/n/$(PKG_NAME) diff --git a/cross/numpy/digests b/cross/numpy/digests index 39c26214953..a71cce3ed9c 100644 --- a/cross/numpy/digests +++ b/cross/numpy/digests @@ -1,3 +1,3 @@ -numpy-1.21.1.zip SHA1 09b07eb84f565ab67d1d0d1c45ec47f74dbe2a1c -numpy-1.21.1.zip SHA256 dff4af63638afcc57a3dfb9e4b26d434a7a602d225b42d746ea7fe2edf1342fd -numpy-1.21.1.zip MD5 1d016e05851a4ba85307f3246eb569aa +numpy-1.21.4.zip SHA1 91a1faeb617601453ebf6e2855e5ce6bf94d3588 +numpy-1.21.4.zip SHA256 e6c76a87633aa3fa16614b61ccedfae45b91df2767cf097aa9c933932a7ed1e0 +numpy-1.21.4.zip MD5 b3c4477a027d5b6fba5e1065064fd076 diff --git a/cross/pillow/Makefile b/cross/pillow/Makefile index 8ccbdb4abd4..63e178f2e1e 100644 --- a/cross/pillow/Makefile +++ b/cross/pillow/Makefile @@ -1,5 +1,5 @@ PKG_NAME = Pillow -PKG_VERS = 8.4.0 +PKG_VERS = 8.2.0 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://files.pythonhosted.org/packages/source/P/$(PKG_NAME) diff --git a/cross/pillow/digests b/cross/pillow/digests index fa8e9c72885..352dbfc9a2e 100644 --- a/cross/pillow/digests +++ b/cross/pillow/digests @@ -1,3 +1,3 @@ -Pillow-8.4.0.tar.gz SHA1 ca8d057aec64ccd0804044bc71c17921afbe2e4e -Pillow-8.4.0.tar.gz SHA256 b8e2f83c56e141920c39464b852de3719dfbfb6e3c99a2d8da0edf4fb33176ed -Pillow-8.4.0.tar.gz MD5 7a1eb5a250c7ccbd549a89e16404f09f +Pillow-8.2.0.tar.gz SHA1 a9b32caf6ff1d5160ad41265c7ad3b090114eefc +Pillow-8.2.0.tar.gz SHA256 a787ab10d7bb5494e5f76536ac460741788f1fbce851068d73a87ca7c35fc3e1 +Pillow-8.2.0.tar.gz MD5 21c03274a9f59b9c00419852a8faebe7 diff --git a/cross/pip/Makefile b/cross/pip/Makefile index a256f8b5c71..da29a576948 100644 --- a/cross/pip/Makefile +++ b/cross/pip/Makefile @@ -1,6 +1,6 @@ PKG_NAME = pip # use the same version in native/python3/Makefile (python3_native_post_install) -PKG_VERS = 21.3 +PKG_VERS = 21.3.1 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://files.pythonhosted.org/packages/source/p/$(PKG_NAME) diff --git a/cross/pip/digests b/cross/pip/digests index a04b0e2785f..e56f342323d 100644 --- a/cross/pip/digests +++ b/cross/pip/digests @@ -1,3 +1,3 @@ -pip-21.3.tar.gz SHA1 e6c8b84c60a290818079ce7ebc71ccbf9cd7d294 -pip-21.3.tar.gz SHA256 741a61baab1dbce2d8ca415effa48a2b6a964564f81a9f4f1fce4c433346c034 -pip-21.3.tar.gz MD5 fc20feba27bd36f046c2fbd59bc8f9ea +pip-21.3.1.tar.gz SHA1 a243525070cf70f22a185447ebd3e1435dabb218 +pip-21.3.1.tar.gz SHA256 fd11ba3d0fdb4c07fbc5ecbba0b1b719809420f25038f8ee3cd913d3faa3033a +pip-21.3.1.tar.gz MD5 0d3f27f4b7fecb33fd573e4f46cc6788 diff --git a/cross/python3/Makefile b/cross/python3/Makefile index ef9ff47c911..a2c95ebec45 100644 --- a/cross/python3/Makefile +++ b/cross/python3/Makefile @@ -83,18 +83,26 @@ python3_custom_install: @install -m 644 src/mime.types $(STAGING_INSTALL_PREFIX)/etc/ $(RUN) _PYTHON_HOST_PLATFORM=$(TC_TARGET) $(MAKE) install prefix=$(STAGING_INSTALL_PREFIX) +# Create the crossenv in preparation for +# cross-compiling all the necessary wheels .PHONY: python3_post_install python3_post_install: $(WORK_DIR)/python-cc.mk mkdir -p $(PYTHON_LIB_CROSS) cp -R $(HOSTPYTHON_LIB_NATIVE) $(PYTHON_LIB_CROSS)/../ @$(RUN) $(PYTHON_NATIVE) -m crossenv $(STAGING_INSTALL_PREFIX)/bin/python$(PKG_VERS_MAJOR_MINOR) $(WORK_DIR)/crossenv/ . $(WORK_DIR)/crossenv/bin/activate && $(RUN) wget https://bootstrap.pypa.io/get-pip.py - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==21.3" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==21.3" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "setuptools==58.2.0" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "setuptools==58.2.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==21.3.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==21.3.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "setuptools==58.3.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "setuptools==58.3.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "wheel==0.37.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "wheel==0.37.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cffi==1.15.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cffi==1.15.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "poetry==1.1.11" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "poetry==1.1.11" ifneq ($(PYTHON_LIB_NATIVE),$(PYTHON_LIB_CROSS)) cp $(PYTHON_LIB_CROSS)/_sysconfigdata_*.py $(PYTHON_LIB_NATIVE)/_sysconfigdata.py endif diff --git a/cross/python310/Makefile b/cross/python310/Makefile index edb59d2e033..7d1322180d7 100644 --- a/cross/python310/Makefile +++ b/cross/python310/Makefile @@ -125,6 +125,8 @@ python310_install: @install -m 644 src/mime.types $(STAGING_INSTALL_PREFIX)/etc/ $(RUN) _PYTHON_HOST_PLATFORM=$(TC_TARGET) $(MAKE) install prefix=$(STAGING_INSTALL_PREFIX) +# Create the crossenv in preparation for +# cross-compiling all the necessary wheels .PHONY: python310_post_install python310_post_install: $(WORK_DIR)/python-cc.mk mkdir -p $(PYTHON_LIB_CROSS) @@ -139,11 +141,15 @@ python310_post_install: $(WORK_DIR)/python-cc.mk . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "wheel==0.37.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cffi==1.15.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cffi==1.15.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "poetry==1.1.11" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "poetry==1.1.11" ifneq ($(PYTHON_LIB_NATIVE),$(PYTHON_LIB_CROSS)) cp $(PYTHON_LIB_CROSS)/_sysconfigdata_*.py $(PYTHON_LIB_NATIVE)/_sysconfigdata.py endif -$(WORK_DIR)/python-cc.mk: +$(WORK_DIR)/python-cc.mk: @echo HOSTPYTHON=$(HOSTPYTHON) > $@ @echo CROSSENV=$(WORK_DIR)/crossenv/bin/activate >> $@ @echo HOSTPYTHON_LIB_NATIVE=$(HOSTPYTHON_LIB_NATIVE) >> $@ diff --git a/cross/python38/Makefile b/cross/python38/Makefile index 452b9ef79ae..735b94c5447 100644 --- a/cross/python38/Makefile +++ b/cross/python38/Makefile @@ -124,20 +124,26 @@ python38_install: @install -m 644 src/mime.types $(STAGING_INSTALL_PREFIX)/etc/ $(RUN) _PYTHON_HOST_PLATFORM=$(TC_TARGET) $(MAKE) install prefix=$(STAGING_INSTALL_PREFIX) +# Create the crossenv in preparation for +# cross-compiling all the necessary wheels .PHONY: python38_post_install python38_post_install: $(WORK_DIR)/python-cc.mk mkdir -p $(PYTHON_LIB_CROSS) cp -R $(HOSTPYTHON_LIB_NATIVE) $(PYTHON_LIB_CROSS)/../ @$(RUN) $(PYTHON_NATIVE) -m crossenv $(STAGING_INSTALL_PREFIX)/bin/python$(PKG_VERS_MAJOR_MINOR) $(WORK_DIR)/crossenv/ . $(WORK_DIR)/crossenv/bin/activate && $(RUN) wget https://bootstrap.pypa.io/get-pip.py - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==21.3" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==21.3" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "setuptools==58.2.0" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "setuptools==58.2.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==21.3.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==21.3.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "setuptools==58.3.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "setuptools==58.3.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "wheel==0.37.0" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "wheel==0.37.0" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cffi==1.14.6" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cffi==1.14.6" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cffi==1.15.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cffi==1.15.0" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "cryptography==3.3.2" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip install "poetry==1.1.11" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip install "poetry==1.1.11" ifneq ($(PYTHON_LIB_NATIVE),$(PYTHON_LIB_CROSS)) cp $(PYTHON_LIB_CROSS)/_sysconfigdata_*.py $(PYTHON_LIB_NATIVE)/_sysconfigdata.py endif diff --git a/cross/setuptools/Makefile b/cross/setuptools/Makefile index 344c522749a..63d17095f83 100644 --- a/cross/setuptools/Makefile +++ b/cross/setuptools/Makefile @@ -1,5 +1,5 @@ PKG_NAME = setuptools -PKG_VERS = 58.2.0 +PKG_VERS = 58.3.0 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://files.pythonhosted.org/packages/source/s/$(PKG_NAME) diff --git a/cross/setuptools/digests b/cross/setuptools/digests index e9aa5829c9c..55d31a57079 100644 --- a/cross/setuptools/digests +++ b/cross/setuptools/digests @@ -1,3 +1,3 @@ -setuptools-58.2.0.tar.gz SHA1 5d97de0e774b2269c85685a4aa8fd5956bcfd2bb -setuptools-58.2.0.tar.gz SHA256 2c55bdb85d5bb460bd2e3b12052b677879cffcf46c0c688f2e5bf51d36001145 -setuptools-58.2.0.tar.gz MD5 ff20ab7e0d51c5ad0a9438c50e598c06 +setuptools-58.3.0.tar.gz SHA1 d5354718cb8c9330d3abc27445467ce8a5ed9d70 +setuptools-58.3.0.tar.gz SHA256 b0c2461641b58fe30e11d4c3dfba316c513bdf9ec85f9fed0c871c678447205e +setuptools-58.3.0.tar.gz MD5 7a2c32ef46b0f91acc8c2756af56a711 diff --git a/cross/znc/Makefile b/cross/znc/Makefile index c01c0d3a75c..e962103b665 100644 --- a/cross/znc/Makefile +++ b/cross/znc/Makefile @@ -5,7 +5,7 @@ PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://znc.in/releases/archive PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -BUILD_DEPENDS = cross/python38 +BUILD_DEPENDS = cross/python310 DEPENDS = cross/openssl cross/libicu # due to libicu: diff --git a/mk/spksrc.common.mk b/mk/spksrc.common.mk index 0c62b8043ae..36f920cb3f7 100644 --- a/mk/spksrc.common.mk +++ b/mk/spksrc.common.mk @@ -13,13 +13,19 @@ MSG = echo "===> " # Launch command in the working dir of the package source and the right environment RUN = cd $(WORK_DIR)/$(PKG_DIR) && env $(ENV) -# Pip command +# fallback by default to native/python* PIP ?= pip + +# Cross compiling must call "pip" directly to ensure using +# $(WORK_DIR)/crossenv pip version instead from adjusted $PATH +PIP_CROSS = $(shell . $(CROSSENV) && $(RUN) which pip) + +# System default pip outside from build environment +PIP_SYSTEM = $(shell which pip) + # Why ask for the same thing twice? Always cache downloads PIP_CACHE_OPT ?= --cache-dir $(PIP_DIR) PIP_WHEEL_ARGS = wheel --no-binary :all: $(PIP_CACHE_OPT) --no-deps --wheel-dir $(WHEELHOUSE) -PIP_WHEEL = $(PIP) $(PIP_WHEEL_ARGS) -PIP_DOWNLOAD = $(PIP) download $(PIP_ARGS) --dest $(BASE_DISTRIB_DIR) # Available languages LANGUAGES = chs cht csy dan enu fre ger hun ita jpn krn nld nor plk ptb ptg rus spn sve trk diff --git a/mk/spksrc.python-wheel.mk b/mk/spksrc.python-wheel.mk index 45f0363e300..fff7b39560f 100644 --- a/mk/spksrc.python-wheel.mk +++ b/mk/spksrc.python-wheel.mk @@ -7,10 +7,13 @@ ifeq ($(strip $(CONFIGURE_TARGET)),) CONFIGURE_TARGET = nop endif ifeq ($(strip $(COMPILE_TARGET)),) -COMPILE_TARGET = build_python_wheel +COMPILE_TARGET = build_python_wheel_target endif ifeq ($(strip $(INSTALL_TARGET)),) -INSTALL_TARGET = install_python_wheel +INSTALL_TARGET = nop +endif +ifeq ($(strip $(POST_INSTALL_TARGET)),) +POST_INSTALL_TARGET = post_install_python_wheel_target endif # Resume with standard spksrc.cross-cc.mk @@ -22,9 +25,11 @@ include ../../mk/spksrc.cross-cc.mk # Python module variables PYTHONPATH = $(PYTHON_LIB_NATIVE):$(INSTALL_DIR)$(INSTALL_PREFIX)/$(PYTHON_LIB_DIR)/site-packages/ +## python wheel specific configurations +include ../../mk/spksrc.wheel-env.mk ### Python wheel rules -build_python_wheel: +build_python_wheel_target: ifeq ($(strip $(CROSSENV)),) # Python 2 way @$(RUN) PYTHONPATH=$(PYTHONPATH) $(HOSTPYTHON) -c "import setuptools;__file__='setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" $(BUILD_ARGS) bdist_wheel -d $(WHEELHOUSE) @@ -32,14 +37,8 @@ else # Python 3 case: using crossenv helper @. $(CROSSENV) && $(RUN) PYTHONPATH=$(PYTHONPATH) python -c "import setuptools;__file__='setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" $(BUILD_ARGS) bdist_wheel -d $(WHEELHOUSE) endif + @$(RUN) echo "$(PKG_NAME)==$(PKG_VERS)" >> $(WHEELHOUSE)/$(WHEELS_CROSS_COMPILE) -install_python_wheel: $(WHEEL_TARGET) - @if [ -d "$(WHEELHOUSE)" ] ; then \ - mkdir -p $(STAGING_INSTALL_WHEELHOUSE) ; \ - cd $(WHEELHOUSE) && \ - for w in *.whl; do \ - cp -f $$w $(STAGING_INSTALL_WHEELHOUSE)/`echo $$w | cut -d"-" -f -3`-none-any.whl; \ - done ; \ - fi +post_install_python_wheel_target: $(WHEEL_TARGET) install_python_wheel all: install diff --git a/mk/spksrc.wheel-env.mk b/mk/spksrc.wheel-env.mk new file mode 100644 index 00000000000..3401da35da1 --- /dev/null +++ b/mk/spksrc.wheel-env.mk @@ -0,0 +1,97 @@ +# +# Configuration for python wheel build +# + +ifeq ($(strip $(WHEELS_DEFAULT)),) +WHEELS_DEFAULT = requirements.txt +endif +ifeq ($(strip $(WHEELS_LIMITED_API)),) +WHEELS_LIMITED_API = requirements-abi3.txt +endif +ifeq ($(strip $(WHEELS_PURE_PYTHON)),) +WHEELS_PURE_PYTHON = requirements-pure.txt +endif +ifeq ($(strip $(WHEELS_CROSS_COMPILE)),) +WHEELS_CROSS_COMPILE = requirements-cross.txt +endif +ifeq ($(strip $(WHEELS_CROSSENV_COMPILE)),) +WHEELS_CROSSENV_COMPILE = requirements-crossenv.txt +endif + +ifeq ($(strip $(WHEEL_DEFAULT_PREFIX)),) +# If no ARCH then pure by default +ifeq ($(strip $(ARCH)),) +WHEEL_DEFAULT_PREFIX = pure +else +WHEEL_DEFAULT_PREFIX = cross +endif +endif + +ifeq ($(strip $(WHEEL_DEFAULT_PREFIX)),pure) +WHEELS_DEFAULT_REQUIREMENT = $(WHEELS_PURE_PYTHON) +else +WHEELS_DEFAULT_REQUIREMENT = $(WHEELS_CROSSENV_COMPILE) +endif + +# For generating abi3 wheels with limited +# python API (e.g cp35 = Python 3.5) +ifeq ($(strip $(PYTHON_LIMITED_API)),) +PYTHON_LIMITED_API = cp35 +endif + +# +# Define _PYTHON_HOST_PLATFORM so wheel +# prefix in file naming matches `uname -m` +# +ifeq ($(findstring $(ARCH),$(ARMv5_ARCHS)),$(ARCH)) +PYTHON_ARCH = armv5tel +endif + +ifeq ($(findstring $(ARCH),$(ARMv7_ARCHS)),$(ARCH)) +PYTHON_ARCH = armv7 +endif + +ifeq ($(findstring $(ARCH),$(ARMv7L_ARCHS)),$(ARCH)) +PYTHON_ARCH = armv7l +endif + +ifeq ($(findstring $(ARCH),$(ARMv8_ARCHS)),$(ARCH)) +PYTHON_ARCH = aarch64 +endif + +ifeq ($(findstring $(ARCH),$(PPC_ARCHS)),$(ARCH)) +PYTHON_ARCH = ppc +endif + +ifeq ($(findstring $(ARCH),$(x64_ARCHS)),$(ARCH)) +PYTHON_ARCH = x86_64 +endif + +ifeq ($(findstring $(ARCH),$(i686_ARCHS)),$(ARCH)) +PYTHON_ARCH += i686 +endif + +install_python_wheel: + @if [ -d "$(WHEELHOUSE)" ] ; then \ + mkdir -p $(STAGING_INSTALL_WHEELHOUSE) ; \ + cd $(WHEELHOUSE) ; \ + $(MSG) Copying $(WHEELS_DEFAULT) wheelhouse ; \ + if stat -t requirements*.txt >/dev/null 2>&1; then \ + cat requirements*.txt >> $(STAGING_INSTALL_WHEELHOUSE)/$(WHEELS_DEFAULT) ; \ + sort -u -o $(STAGING_INSTALL_WHEELHOUSE)/$(WHEELS_DEFAULT) $(STAGING_INSTALL_WHEELHOUSE)/$(WHEELS_DEFAULT) ; \ + fi ; \ + if [ "$(EXCLUDE_PURE_PYTHON_WHEELS)" = "yes" ] ; then \ + echo "Pure python wheels are excluded from the package wheelhouse." ; \ + for w in *.whl; do \ + if echo $${w} | grep -viq "-none-any\.whl" ; then \ + cp -f $$w $(STAGING_INSTALL_WHEELHOUSE)/`echo $$w | cut -d"-" -f -3`-none-any.whl ; \ + fi ; \ + done ; \ + else \ + for w in *.whl; do \ + $(MSG) Copying to wheelhouse: $$(echo $$w | sed -E "s/(.*linux_).*(\.whl)/\1$(PYTHON_ARCH)\2/") ; \ + cp -f $$w $(STAGING_INSTALL_WHEELHOUSE)/$$(echo $$w | sed -E "s/(.*linux_).*(\.whl)/\1$(PYTHON_ARCH)\2/") ; \ + done ; \ + fi ; \ + fi + diff --git a/mk/spksrc.wheel.mk b/mk/spksrc.wheel.mk index ce1317777cb..21c4911a8a7 100644 --- a/mk/spksrc.wheel.mk +++ b/mk/spksrc.wheel.mk @@ -14,12 +14,10 @@ WHEEL_COOKIE = $(WORK_DIR)/.$(COOKIE_PREFIX)wheel_done -ifeq ($(strip $(WHEELS_PURE_PYTHON)),) -WHEELS_PURE_PYTHON = requirements.txt -endif -ifeq ($(strip $(WHEELS_CROSS_COMPILE)),) -WHEELS_CROSS_COMPILE = requirements-cross.txt -endif +## python wheel specific configurations +include ../../mk/spksrc.wheel-env.mk + +## ifeq ($(strip $(PRE_WHEEL_TARGET)),) PRE_WHEEL_TARGET = pre_wheel_target @@ -50,18 +48,27 @@ pre_wheel_target: wheel_msg_target if [ -n "$(PIP_CACHE_OPT)" ] ; then \ mkdir -p $(PIP_DIR) ; \ fi; \ - rm -fr $(WHEELHOUSE) ; \ mkdir -p $(WHEELHOUSE) ; \ for wheel in $(WHEELS) ; \ do \ if [ -f $$wheel ] ; then \ - $(MSG) "Using existing $$wheel file" ; \ - $(MSG) cp -f $$wheel $(WHEELHOUSE)/$$(basename $$wheel) ; \ - cp -f $$wheel $(WHEELHOUSE)/$$(basename $$wheel) ; \ - sed -i -e '$$a\\' $(WHEELHOUSE)/$$(basename $$wheel) ; \ + if [ $$(basename $$wheel) = $(WHEELS_PURE_PYTHON) ]; then \ + $(MSG) "Adding existing $$wheel file as pure-python (discarding any cross-compiled)" ; \ + sed -e '/^cross:\|^#\|^$$/d' -e /^pure:/s/^pure://g $$wheel >> $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ + elif [ $$(basename $$wheel) = $(WHEELS_CROSSENV_COMPILE) ]; then \ + $(MSG) "Adding existing $$wheel file as cross-compiled (discarding any pure-python)" ; \ + sed -e '/^pure:\|^#\|^$$/d' -e /^cross:/s/^cross://g $$wheel >> $(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE) ; \ + elif [ $$(basename $$wheel) = $(WHEELS_LIMITED_API) ]; then \ + $(MSG) "Adding existing $$wheel file as ABI-limited" ; \ + cat $$wheel >> $(WHEELHOUSE)/$(WHEELS_LIMITED_API) ; \ + else \ + $(MSG) "Adapting existing $$wheel file" ; \ + sed -rn /^pure:/s/^pure://gp $$wheel >> $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ + sed -rn /^cross:/s/^cross://gp $$wheel >> $(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE) ; \ + sed -e '/^pure:\|^cross:\|^#\|^$$/d' $$wheel >> $(WHEELHOUSE)/$(WHEELS_DEFAULT_REQUIREMENT) ; \ + fi ;\ else \ - $(MSG) "Adding to $(WHEELS_PURE_PYTHON) file" ; \ - echo $$wheel >> $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ + $(MSG) "ERROR: File $$wheel does not exist" ; \ fi ; \ done \ fi @@ -71,42 +78,26 @@ pre_wheel_target: wheel_msg_target build_wheel_target: $(PRE_WHEEL_TARGET) @if [ -n "$(WHEELS)" ] ; then \ $(foreach e,$(shell cat $(WORK_DIR)/python-cc.mk),$(eval $(e))) \ - if [ -f "$(WHEELHOUSE)/$(WHEELS_CROSS_COMPILE)" ]; then \ + if [ -s "$(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE)" ]; then \ $(MSG) "Force cross-compile" ; \ if [ -z "$(CROSSENV)" ]; then \ - $(RUN) _PYTHON_HOST_PLATFORM="$(TC_TARGET)" CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR) $(WHEELS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(WHEELS_LDFLAGS)" $(PIP_WHEEL) --requirement $(WHEELHOUSE)/$(WHEELS_CROSS_COMPILE) ; \ + $(RUN) _PYTHON_HOST_PLATFORM="$(TC_TARGET)" CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR) $(WHEELS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(WHEELS_LDFLAGS)" $(PIP) $(PIP_WHEEL_ARGS) --requirement $(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE) ; \ else \ - . $(CROSSENV) && $(RUN) _PYTHON_HOST_PLATFORM="$(TC_TARGET)" CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR) $(WHEELS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(WHEELS_LDFLAGS)" pip $(PIP_WHEEL_ARGS) --no-build-isolation --requirement $(WHEELHOUSE)/$(WHEELS_CROSS_COMPILE) ; \ + . $(CROSSENV) && $(RUN) _PYTHON_HOST_PLATFORM="$(TC_TARGET)" CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR) $(WHEELS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(WHEELS_LDFLAGS)" $(PIP_CROSS) $(PIP_WHEEL_ARGS) --no-build-isolation --requirement $(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE) ; \ fi ; \ fi ; \ - if [ -f "$(WHEELHOUSE)/$(WHEELS_PURE_PYTHON)" ]; then \ + if [ -s "$(WHEELHOUSE)/$(WHEELS_LIMITED_API)" ]; then \ + $(MSG) "Force limited API $(PYTHON_LIMITED_API)" ; \ + . $(CROSSENV) && $(RUN) _PYTHON_HOST_PLATFORM="$(TC_TARGET)" CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR) $(WHEELS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(WHEELS_LDFLAGS)" $(PIP_CROSS) $(PIP_WHEEL_ARGS) --build-option='--py-limited-api=$(PYTHON_LIMITED_API)' --no-build-isolation --requirement $(WHEELHOUSE)/$(WHEELS_LIMITED_API) ; \ + fi ; \ + if [ -s "$(WHEELHOUSE)/$(WHEELS_PURE_PYTHON)" ]; then \ $(MSG) "Force pure-python" ; \ export LD= LDSHARED= CPP= NM= CC= AS= RANLIB= CXX= AR= STRIP= OBJDUMP= READELF= CFLAGS= CPPFLAGS= CXXFLAGS= LDFLAGS= && \ - $(RUN) $(PIP_WHEEL) --requirement $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ - fi ; \ - fi - -post_wheel_target: $(WHEEL_TARGET) - @if [ -d "$(WHEELHOUSE)" ] ; then \ - mkdir -p $(STAGING_INSTALL_WHEELHOUSE) ; \ - cd $(WHEELHOUSE) ; \ - if stat -t requirements*.txt >/dev/null 2>&1; then \ - cat requirements*.txt > $(STAGING_INSTALL_WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ - fi ;\ - if [ "$(EXCLUDE_PURE_PYTHON_WHEELS)" = "yes" ] ; then \ - echo "Pure python wheels are excluded from the package wheelhouse." ; \ - for w in *.whl; do \ - if echo $${w} | grep -viq "-none-any\.whl" ; then \ - cp -f $$w $(STAGING_INSTALL_WHEELHOUSE)/`echo $$w | cut -d"-" -f -3`-none-any.whl; \ - fi ; \ - done ; \ - else \ - for w in *.whl; do \ - cp -f $$w $(STAGING_INSTALL_WHEELHOUSE)/`echo $$w | cut -d"-" -f -3`-none-any.whl; \ - done ; \ + $(RUN) $(PIP) $(PIP_WHEEL_ARGS) --requirement $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ fi ; \ fi +post_wheel_target: $(WHEEL_TARGET) install_python_wheel ifeq ($(wildcard $(WHEEL_COOKIE)),) wheel: $(WHEEL_COOKIE) diff --git a/native/python3/Makefile b/native/python3/Makefile index e295a702a13..98a72bd8c1e 100644 --- a/native/python3/Makefile +++ b/native/python3/Makefile @@ -26,8 +26,8 @@ PIP_NATIVE = $(WORK_DIR)/../../../native/$(PKG_NAME)/work-native/install/usr/loc python3_native_post_install: $(WORK_DIR)/python-native.mk @$(MSG) Installing pip, setuptools, cffi and cross env @$(RUN) wget https://bootstrap.pypa.io/get-pip.py - @$(RUN) $(PYTHON) get-pip.py "pip==21.3" - @$(PIP) install "setuptools==58.2.0" "cffi==1.14.6" "crossenv==1.0" + @$(RUN) $(PYTHON) get-pip.py "pip==21.3.1" + @$(PIP) install "setuptools==58.3.0" "cffi==1.14.6" "crossenv==1.0" $(WORK_DIR)/python-native.mk: @echo PIP=$(PIP_NATIVE) >> $@ diff --git a/native/python310/Makefile b/native/python310/Makefile index 0a773b534df..48d64a4c10a 100644 --- a/native/python310/Makefile +++ b/native/python310/Makefile @@ -28,7 +28,7 @@ PIP_NATIVE = $(WORK_DIR)/../../../native/$(PKG_NAME)/work-native/install/usr/loc .PHONY: python310_native_post_install python310_native_post_install: $(WORK_DIR)/python-native.mk - @$(MSG) Installing pip, setuptools, cffi and cross env + @$(MSG) Installing pip, setuptools and crossenv @$(RUN) wget https://bootstrap.pypa.io/get-pip.py @$(RUN) $(PYTHON) get-pip.py "pip==21.3.1" @$(PIP) install "setuptools==58.3.0" "cffi==1.15" "crossenv==1.1.4" diff --git a/native/python38/Makefile b/native/python38/Makefile index 439245cfb3d..38a65834979 100644 --- a/native/python38/Makefile +++ b/native/python38/Makefile @@ -31,8 +31,8 @@ PIP_NATIVE = $(WORK_DIR)/../../../native/$(PKG_NAME)/work-native/install/usr/loc python38_native_post_install: $(WORK_DIR)/python-native.mk @$(MSG) Installing pip, setuptools, cffi and cross env @$(RUN) wget https://bootstrap.pypa.io/get-pip.py - @$(RUN) $(PYTHON) get-pip.py "pip==21.3" - @$(PIP) install "setuptools==58.2.0" "cffi==1.14.6" "crossenv==1.0" + @$(RUN) $(PYTHON) get-pip.py "pip==21.3.1" + @$(PIP) install "setuptools==58.3.0" "cffi==1.14.6" "crossenv==1.0" $(WORK_DIR)/python-native.mk: @echo PIP=$(PIP_NATIVE) >> $@ diff --git a/spk/beets/Makefile b/spk/beets/Makefile index 574089dd147..af13dda95db 100644 --- a/spk/beets/Makefile +++ b/spk/beets/Makefile @@ -1,19 +1,19 @@ SPK_NAME = beets -SPK_VERS = 1.4.9 -SPK_REV = 6 +SPK_VERS = 1.5.0 +SPK_REV = 7 SPK_ICON = src/beets.png -PIP = $(WORK_DIR)/../../../native/python3/work-native/install/usr/local/bin/pip -BUILD_DEPENDS = native/python3 +PIP = $(WORK_DIR)/../../../native/python310/work-native/install/usr/local/bin/pip +BUILD_DEPENDS = native/python310 WHEELS = src/requirements.txt -SPK_DEPENDS = "python3>=3.7.7" +SPK_DEPENDS = "python310" MAINTAINER = ymartin59 DESCRIPTION = "Beets is the media library management system for obsessive-compulsive music geeks. The purpose of beets is to get your music collection right once and for all. It catalogs your collection, automatically improving its metadata as it goes. It then provides a bouquet of tools for manipulating and accessing your music. Plugins not available due to lacking dependencies: AcousticBrainz Submit, Gmusic, ReplayGain." DISPLAY_NAME = beets -CHANGELOG = "1. Upgraded minimum version of python 3." +CHANGELOG = "1. Updated minimum version of python to 3.10" HOMEPAGE = http://beets.io/ LICENSE = GPL diff --git a/spk/beets/src/requirements.txt b/spk/beets/src/requirements.txt index 2c92340c71b..057073b512d 100644 --- a/spk/beets/src/requirements.txt +++ b/spk/beets/src/requirements.txt @@ -1,42 +1,44 @@ -beets==1.4.9 +beets==1.5.0 # Direct dependencies -# six>=1.10.0 ==> included in python3 package installation +confuse==1.6.0 +#six>=1.10.0 ==> python310 +#MarkupSafe>=0.23 ==> python310 +mediafile==0.8.1 mutagen==1.44.0 -Unidecode==1.1.1 musicbrainzngs==0.7.1 -#PyYAML>=3.12 ==> included in python3 package installation -#MarkupSafe>=0.23 ==> included in python3 package installation munkres==1.1.2 +#PyYAML>=3.12 ==> python310 +#Unidecode==1.1.1 ==> python310 # Plugin dependencies -beautifulsoup4==4.10.0 -certifi==2019.11.28 -chardet==3.0.4 +#beautifulsoup4==4.10.0 ==> python310 +#certifi==2019.11.28 ==> python310 +#chardet==3.0.4 ==> python310 discogs-client==2.2.2 langdetect==1.0.7 -# Pillow==7.0.0 # arch dependent, would need cross compilation -oauthlib==3.1.0 +#Pillow==7.0.0 ==> python310 +#oauthlib==3.1.0 ==> python310 pyacoustid==1.1.7 pylast==3.2.0 -python-mpd2==1.0.0 +python-mpd2==1.1.0 pyxdg==0.26 rarfile==3.1 -requests==2.23.0 -requests-oauthlib==1.3.0 +#requests==2.23.0 ==> python310 +#requests-oauthlib==1.3.0 ==> python310 soupsieve==2.0 soco==0.18.1 -urllib3==1.25.8 +#urllib3==1.25.8 ==> python310 xmltodict==0.12.0 # For web plugin -Flask==1.1.1 +#Flask==1.1.1 ==> python310 Flask-Cors==3.0.8 -Click==7.0 -itsdangerous==1.1.0 +#Click==7.0 ==> python310 +#itsdangerous==1.1.0 ==> python310 jellyfish==0.7.2 -Jinja2==2.11.1 -Werkzeug==1.0.0 +#Jinja2==2.11.1 ==> python310 +#Werkzeug==1.0.0 ==> python310 # For gmusic plugin # Despite installing following wheels 'google' is not found at runtime diff --git a/spk/beets/src/service-setup.sh b/spk/beets/src/service-setup.sh index 9cfe5f1bcdc..7223943c02f 100644 --- a/spk/beets/src/service-setup.sh +++ b/spk/beets/src/service-setup.sh @@ -1,5 +1,5 @@ -PYTHON_DIR="/var/packages/python3/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" PATH="${SYNOPKG_PKGDEST}/bin:${SYNOPKG_PKGDEST}/env/bin:${PYTHON_DIR}:${PATH}" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PIP=${SYNOPKG_PKGDEST}/env/bin/pip diff --git a/spk/borgbackup/Makefile b/spk/borgbackup/Makefile index d9b8e69620e..90f135d96ca 100644 --- a/spk/borgbackup/Makefile +++ b/spk/borgbackup/Makefile @@ -1,29 +1,29 @@ SPK_NAME = borgbackup SPK_VERS = 1.1.17 -SPK_REV = 9 +SPK_REV = 10 SPK_ICON = src/$(SPK_NAME).png -BUILD_DEPENDS = cross/python38 +BUILD_DEPENDS = cross/python310 DEPENDS = cross/$(SPK_NAME) -SPK_DEPENDS = "python38" +SPK_DEPENDS = "python310" # Requirements file generation # cd src -# /spksrc/native/python38/work-native/install/usr/local/bin/python3 -m venv borg-env +# /spksrc/native/python310/work-native/install/usr/local/bin/python3 -m venv borg-env # . borg-env/bin/activate # pip install ../work-x64-6.1/install/var/packages/borgbackup/target/share/wheelhouse/borgbackup*.whl borgmatic # pip freeze > requirements.txt # deactivate # adjust the first line in requirements.txt to "#borgbackup==1.1.17" -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt MAINTAINER = SynoCommunity DESCRIPTION = Deduplicating backup program with compression and authenticated encryption. DISPLAY_NAME = Borg STARTABLE = no -CHANGELOG = "1. Update borgbackup to v1.1.17 and borgmatic to v1.5.18.
2. Update OpenSSL to v1.1.1l." +CHANGELOG = "1. Update borgbackup to v1.1.17 and borgmatic to v1.5.18.
2. Update OpenSSL to v1.1.1l.
3. Update to Python 3.10" HOMEPAGE = https://borgbackup.readthedocs.io LICENSE = BSD-3-Clause diff --git a/spk/borgbackup/src/requirements-cross.txt b/spk/borgbackup/src/requirements-cross.txt deleted file mode 100644 index 8cc21ddf2f6..00000000000 --- a/spk/borgbackup/src/requirements-cross.txt +++ /dev/null @@ -1,2 +0,0 @@ -pyrsistent==0.18.0 -ruamel.yaml.clib==0.2.6 diff --git a/spk/borgbackup/src/requirements-crossenv.txt b/spk/borgbackup/src/requirements-crossenv.txt new file mode 100644 index 00000000000..6675d503857 --- /dev/null +++ b/spk/borgbackup/src/requirements-crossenv.txt @@ -0,0 +1,17 @@ +# For reference +#borgbackup==1.1.17 + +#attrs==21.2.0 ==> python310 +borgmatic==1.5.18 +#certifi==2021.5.30 ==> python310 +#charset-normalizer==2.0.4 ==> python310 +colorama==0.4.4 +#idna==3.2 ==> python310 +#packaging==21.0 ==> python310 +#pyparsing==2.4.7 ==> python310 +pyrsistent==0.18.0 +#requests==2.26.0 ==> python310 +#ruamel.yaml==0.17.16 ==> python310 +ruamel.yaml.clib==0.2.6 +#six==1.16.0 ==> python310 +#urllib3==1.26.6 ==> python310 diff --git a/spk/borgbackup/src/requirements-pure.txt b/spk/borgbackup/src/requirements-pure.txt new file mode 100644 index 00000000000..ac21472ca67 --- /dev/null +++ b/spk/borgbackup/src/requirements-pure.txt @@ -0,0 +1,3 @@ +# Wheels that absolutely needs +# to be managed as pure-python +jsonschema==3.2.0 diff --git a/spk/borgbackup/src/requirements.txt b/spk/borgbackup/src/requirements.txt deleted file mode 100644 index fa7f95e8381..00000000000 --- a/spk/borgbackup/src/requirements.txt +++ /dev/null @@ -1,14 +0,0 @@ -attrs==21.2.0 -#borgbackup==1.1.17 -borgmatic==1.5.18 -certifi==2021.5.30 -charset-normalizer==2.0.4 -colorama==0.4.4 -idna==3.2 -jsonschema==3.2.0 -packaging==21.0 -pyparsing==2.4.7 -requests==2.26.0 -ruamel.yaml==0.17.16 -six==1.16.0 -urllib3==1.26.6 diff --git a/spk/borgbackup/src/service-setup.sh b/spk/borgbackup/src/service-setup.sh index a6d9c8e8b35..34430d3d754 100644 --- a/spk/borgbackup/src/service-setup.sh +++ b/spk/borgbackup/src/service-setup.sh @@ -1,5 +1,5 @@ -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PIP=${SYNOPKG_PKGDEST}/env/bin/pip3 PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" diff --git a/spk/deluge/Makefile b/spk/deluge/Makefile index d26715c8f05..7d6c8a61066 100644 --- a/spk/deluge/Makefile +++ b/spk/deluge/Makefile @@ -1,11 +1,11 @@ SPK_NAME = deluge SPK_VERS = 2.0.3 -SPK_REV = 13 +SPK_REV = 14 SPK_ICON = src/deluge.png BUILD_DEPENDS = cross/python2 cross/setuptools_py2 cross/pip_py2 cross/wheel DEPENDS = cross/$(SPK_NAME) -WHEELS = src/requirements.txt src/requirements-cross.txt +WHEELS = src/requirements.txt SPK_DEPENDS = "python>=2.7.18" REQUIRED_DSM = 5.0 diff --git a/spk/deluge/src/requirements-cross.txt b/spk/deluge/src/requirements-cross.txt deleted file mode 100644 index cc18fb90b69..00000000000 --- a/spk/deluge/src/requirements-cross.txt +++ /dev/null @@ -1,2 +0,0 @@ -setproctitle==1.1.10 -rencode==1.0.6 diff --git a/spk/deluge/src/requirements.txt b/spk/deluge/src/requirements.txt index 7ccc86e2f05..0cd88e3161b 100644 --- a/spk/deluge/src/requirements.txt +++ b/spk/deluge/src/requirements.txt @@ -1,7 +1,9 @@ characteristic==14.3.0 chardet==3.0.4 +Mako==1.1.2 pyasn1-modules==0.2.8 +PyHamcrest==1.10.1 pyxdg==0.26 -Mako==1.1.2 +rencode==1.0.6 service-identity==18.1.0 -PyHamcrest==1.10.1 +setproctitle==1.1.10 diff --git a/spk/duplicity/Makefile b/spk/duplicity/Makefile index e8b76c362ac..ebbea81f4d5 100644 --- a/spk/duplicity/Makefile +++ b/spk/duplicity/Makefile @@ -1,20 +1,20 @@ SPK_NAME = duplicity SPK_VERS = 0.8.19 -SPK_REV = 7 +SPK_REV = 8 SPK_ICON = src/duplicity.png -BUILD_DEPENDS = cross/python38 -DEPENDS = cross/cffi cross/lxml cross/duplicity cross/duply +BUILD_DEPENDS = cross/python310 +DEPENDS = cross/duplicity cross/duply -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt -SPK_DEPENDS = "python38>=3.8.8:gnupg>=2.1.6" +SPK_DEPENDS = "python310:gnupg>=2.1.6" MAINTAINER = SynoCommunity DESCRIPTION = Encrypted bandwidth-efficient backup using the rsync algorithm. Also contains duply wrapper script (duply is supported only for DSM >= 6.0). STARTABLE = no DISPLAY_NAME = Duplicity -CHANGELOG = "1. Update duplicity to v0.8.19 and duply to v2.3.1
2. Update to Python 3.8
3. Add supported backend libraries:
4. Update includes a security update urllib3" +CHANGELOG = "1. Update duplicity to v0.8.19 and duply to v2.3.1
2. Update to Python 3.10
3. Add supported backend libraries:
4. Update includes a security update urllib3" HOMEPAGE = http://duplicity.nongnu.org/ LICENSE = GPLv2 diff --git a/spk/duplicity/src/requirements-cross.txt b/spk/duplicity/src/requirements-cross.txt deleted file mode 100644 index b0c574bf3d8..00000000000 --- a/spk/duplicity/src/requirements-cross.txt +++ /dev/null @@ -1,53 +0,0 @@ -##### basic requirements ##### -chardet==4.0.0 -future==0.18.2 -### idna==2.10 # idna==2.9 is included in python38 -python-gettext==4.0 - - -##### backend libraries ##### -# some libs no longer support py27 -# some libs never supported py36+ -#b2sdk ; python_version >= '3.6' -#boto -#boto3 -#boxsdk[jwt] ; python_version >= '3.6' -#dropbox -### gdata ; python_version == '2.7' -#google_auth_oauthlib -#jottalib -### mediafire ### Development Status 3 - Alpha: outdated (Nov 2016), not supported by Python >3.4 -#pydrive ; python_version >= '3.6' -#pyrax ; python_version >= '3.6' -#python-swiftclient -#requests_oauthlib - - -### backend libraries except gdata mediafire -args==0.1.0 -b2sdk==1.7.0 -### cffi==1.14.5 # cffi==1.14.1 is included as cross compiled wheel -clint==0.5.1 -### cryptography==3.4.7 # cryptography==2.9.2 is included in python38 -### importlib-metadata==4.0.1 # importlib-metadata==1.5.0 is included in python38 -ip-associations-python-novaclient-ext==0.2 -iso8601==0.1.14 -#jeepney==0.6.0 ### cross compile wheel fails to find flit_core -jottalib==0.5.1 -### lxml==4.6.3 # lxml==4.6.3 is included as cross compiled wheel -### msgpack-python==0.5.6 # msgpack-python==0.5.6 is included in python38 -netifaces==0.10.9 -oauth2client==4.1.3 -os-networksv2-python-novaclient-ext==0.26 -os-virtual-interfacesv2-python-novaclient-ext==0.20 -positional==1.2.1 -protobuf==3.15.8 -### pyasn1==0.4.8 # pyasn1==0.4.8 is included in python38 -pyasn1-modules==0.2.8 -### PyYAML==5.4.1 # PyYAML==5.3 is included as module in python38 -rackspace-auth-openstack==1.3 -rackspace-novaclient==2.1 -rax-default-network-flags-python-novaclient-ext==0.4.0 -rax-scheduled-images-python-novaclient-ext==0.3.1 -simplejson==3.17.2 -wrapt==1.12.1 diff --git a/spk/duplicity/src/requirements.txt b/spk/duplicity/src/requirements-crossenv.txt similarity index 53% rename from spk/duplicity/src/requirements.txt rename to spk/duplicity/src/requirements-crossenv.txt index e00e553b670..902a438b6d2 100644 --- a/spk/duplicity/src/requirements.txt +++ b/spk/duplicity/src/requirements-crossenv.txt @@ -29,73 +29,97 @@ ##### Included for reference ##### #duplicity==0.8.19 -##### basic requirements ##### -certifi==2020.12.5 -fasteners==0.16 -requests==2.25.1 -#setuptools-scm==6.0.1 -setuptools-scm==5.0.2 -six==1.15.0 -urllib3==1.26.4 - -### backend libraries except gdata mediafire +args==0.1.0 arrow==0.17.0 -attrs==20.3.0 +#attrs==20.3.0 ==> python310 azure-core==1.13.0 azure-storage-blob==12.8.1 +b2sdk==1.7.0 Babel==2.9.1 boto==2.49.0 boto3==1.17.62 botocore==1.20.62 boxsdk==2.12.0 cachetools==4.2.2 +#certifi==2020.12.5 ==> python310 +#cffi==1.14.5 ==> python310 +#chardet==4.0.0 ==> python310 +clint==0.5.1 +#cryptography==3.4.7 ==> python310 debtcollector==1.11.0 dropbox==11.7.0 +#duplicity==0.8.19 +fasteners==0.16 funcsigs==1.0.2 +#future==0.18.2 ==> python310 +# gdata ; python_version == '2.7' google-api-core==1.26.3 google-api-python-client==2.3.0 +googleapis-common-protos==1.53.0 google-auth==1.30.0 google-auth-httplib2==0.1.0 google-auth-oauthlib==0.4.4 -googleapis-common-protos==1.53.0 httplib2==0.19.1 -humanize==3.5.0 +#idna==2.10 ==> python310 +ip-associations-python-novaclient-ext==0.2 +iso8601==0.1.14 isodate==0.6.0 +#jeepney==0.7.1 ### cross compile wheel fails to find flit_core jmespath==0.10.0 -keyring==23.0.1 +jottalib==0.5.1 keystoneauth1==2.18.0 logfury==0.1.2 +#lxml==4.6.3 ==> python310 +#mediafire ### Development Status 3 - Alpha: outdated (Nov 2016), not supported by Python >3.4 #monotonic==1.6 +#msgpack-python==0.5.6 ==> python310 msrest==0.6.21 netaddr==0.8.0 -oauthlib==3.1.0 +#netifaces==0.10.9 ==> python310 +oauth2client==4.1.3 +#oauthlib==3.1.0 ==> python310 os-diskconfig-python-novaclient-ext==0.1.3 oslo.config==4.12.0 oslo.i18n==3.12.0 oslo.serialization==2.16.1 oslo.utils==3.22.3 -packaging==20.9 -pbr==1.10.0 +os-networksv2-python-novaclient-ext==0.26 +os-virtual-interfacesv2-python-novaclient-ext==0.20 +#packaging==20.9 ==> python310 +pbr==5.7.0 ply==3.11 +positional==1.2.1 prettytable==0.7.2 -### pycparser==2.20 # pycparser==2.19 is included in python38 +protobuf==3.15.8 +#pyasn1==0.4.8 ==> python310 +pyasn1-modules==0.2.8 +#pycparser==2.20 ==> python310 PyDrive==1.3.1 PyJWT==2.1.0 -pyparsing==2.4.7 +#pyparsing==2.4.7 ==> python310 pyrax==1.10.0 -python-dateutil==2.8.1 +python-gettext==4.0 python-keystoneclient==3.10.0 python-novaclient==2.27.0 python-swiftclient==3.11.1 -pytz==2021.1 -requests-oauthlib==1.3.0 -requests-toolbelt==0.9.1 +#pytz==2021.1 ==> python310 +#PyYAML==5.4.1 ==> python310 +rackspace-auth-openstack==1.3 +rackspace-novaclient==2.1 +rax-default-network-flags-python-novaclient-ext==0.4.0 +rax-scheduled-images-python-novaclient-ext==0.3.1 +#requests==2.25.1 ==> python310 +#requests-oauthlib==1.3.0 ==> python310 +#requests-toolbelt==0.9.1 ==> python310 rfc3986==1.4.0 rsa==4.7.2 s3transfer==0.4.2 SecretStorage==3.3.1 +setuptools-scm==5.0.2 +simplejson==3.17.2 +#six==1.15.0 ==> python310 stevedore==1.20.1 stone==3.2.1 -tqdm==4.60.0 uritemplate==3.0.1 -### zipp==3.4.1 # zipp==3.1.0 is included in python38 +#urllib3==1.26.4 ==> python310 +wrapt==1.12.1 diff --git a/spk/duplicity/src/requirements-pure.txt b/spk/duplicity/src/requirements-pure.txt new file mode 100644 index 00000000000..71f4f9a4af9 --- /dev/null +++ b/spk/duplicity/src/requirements-pure.txt @@ -0,0 +1,8 @@ +# Wheels that absolutely needs +# to be managed as pure-python +humanize==3.5.0 +#importlib-metadata==4.0.1 ==> python310 +keyring==23.0.1 +#python-dateutil==2.8.1 ==> python310 +tqdm==4.60.0 +#zipp==3.4.1 ==> python310 diff --git a/spk/duplicity/src/service-setup.sh b/spk/duplicity/src/service-setup.sh index 0c0fa94e526..d468d3a42af 100644 --- a/spk/duplicity/src/service-setup.sh +++ b/spk/duplicity/src/service-setup.sh @@ -1,7 +1,7 @@ ### service-setup.sh -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" diff --git a/spk/ffsync/Makefile b/spk/ffsync/Makefile index f5893919640..82b59c4f1ca 100644 --- a/spk/ffsync/Makefile +++ b/spk/ffsync/Makefile @@ -8,7 +8,7 @@ BUILD_DEPENDS = cross/python2 cross/setuptools_py2 cross/pip_py2 cross/wheel BUILD_DEPENDS += cross/gevent cross/greenlet cross/cffi DEPENDS = cross/busybox -WHEELS = src/requirements.txt src/requirements-cross.txt +WHEELS = src/requirements.txt MAINTAINER = SynoCommunity DESCRIPTION = Firefox Sync Server 1.5, used for Firefox 29 and later. You can use Firefox Sync Server to synchronize your bookmarks, passwords, settings, history, add-ons and tabs with Firefox on other computers. The service runs on port 8132. diff --git a/spk/ffsync/src/requirements-cross.txt b/spk/ffsync/src/requirements-cross.txt deleted file mode 100644 index da68f120864..00000000000 --- a/spk/ffsync/src/requirements-cross.txt +++ /dev/null @@ -1,5 +0,0 @@ -cffi==1.14.1 -MarkupSafe==1.1.1 -msgpack==0.6.2 -simplejson==3.10.0 -zope.interface==5.1.0 diff --git a/spk/ffsync/src/requirements.txt b/spk/ffsync/src/requirements.txt index a8e78fc0879..995df7d7573 100644 --- a/spk/ffsync/src/requirements.txt +++ b/spk/ffsync/src/requirements.txt @@ -7,6 +7,7 @@ appdirs==1.4.3 boto==2.49.0 CacheControl==0.12.6 certifi==2019.11.28 +cffi==1.14.1 chardet==3.0.4 colorama==0.4.3 configparser==3.5.0 @@ -23,7 +24,9 @@ konfig==1.1 linecache2==1.0.0 lockfile==0.12.2 Mako==1.1.2 +MarkupSafe==1.1.1 mozsvc==0.9 +msgpack==0.6.2 packaging==20.3 Paste==3.4.0 PasteDeploy==2.1.0 @@ -42,6 +45,7 @@ pytoml==0.1.21 repoze.lru==0.7 requests==2.13.0 retrying==1.3.3 +simplejson==3.10.0 #six==1.14.0 #SQLAlchemy==1.1.5 #testfixtures==6.14.0 @@ -56,6 +60,7 @@ WebOb==1.4.1 zope.component==4.2.1 zope.deprecation==4.4.0 zope.event==4.4 +zope.interface==5.1.0 https://github.com/mozilla-services/tokenserver/archive/1.5.11.tar.gz https://github.com/mozilla-services/server-syncstorage/archive/1.8.0.tar.gz diff --git a/spk/flexget/Makefile b/spk/flexget/Makefile index 04f824975f1..845f0d65327 100644 --- a/spk/flexget/Makefile +++ b/spk/flexget/Makefile @@ -1,17 +1,16 @@ SPK_NAME = flexget SPK_VERS = 3.1.129 -SPK_REV = 10 +SPK_REV = 11 SPK_ICON = src/${SPK_NAME}.png -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel -DEPENDS = cross/poetry -WHEELS = src/requirements-cross.txt src/requirements.txt -SPK_DEPENDS = "python38" +BUILD_DEPENDS = cross/python310 +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt +SPK_DEPENDS = "python310" MAINTAINER = manowark DESCRIPTION = FlexGet is a multipurpose automation tool for content like torrents, nzbs, podcasts, comics, series, movies, etc. It can use different kinds of sources like RSS-feeds, html pages, csv files, search engines and there are even plugins for sites that do not provide any kind of useful feeds. DISPLAY_NAME = FlexGet -CHANGELOG = "1. Update FlexGet to version 3.1.129.
2. Include transmission-rpc again." +CHANGELOG = "1. Update FlexGet to version 3.1.129.
2. Include transmission-rpc again.
3. Update to python 3.10" STARTABLE = yes HOMEPAGE = https://flexget.com/ diff --git a/spk/flexget/src/requirements-cross.txt b/spk/flexget/src/requirements-cross.txt deleted file mode 100644 index 202f0584bb7..00000000000 --- a/spk/flexget/src/requirements-cross.txt +++ /dev/null @@ -1,15 +0,0 @@ -Brotli==1.0.9 -click==7.1.2 -colorclass==2.2.0 -greenlet==1.0.0 -MarkupSafe==2.0.0 -progressbar==2.5 -psutil==5.8.0 -pynzb==0.1.0 -pyrsistent==0.17.3 -PyRSS2Gen==1.1 -PyYAML==5.4.1 -sgmllib3k==1.0.0 -SQLAlchemy==1.4.15 -terminaltables==3.1.0 -zxcvbn-python==4.4.24 diff --git a/spk/flexget/src/requirements-crossenv.txt b/spk/flexget/src/requirements-crossenv.txt new file mode 100644 index 00000000000..4a329534545 --- /dev/null +++ b/spk/flexget/src/requirements-crossenv.txt @@ -0,0 +1,62 @@ +# This file is a copy of the https://raw.githubusercontent.com/Flexget/Flexget/v3.1.129/requirements.txt file +# including the https://raw.githubusercontent.com/Flexget/Flexget/v3.1.129/requirements.in +# Additionally added the flexget and the transmission-rpc packages. +# plumbum and rpyc packages are adjusted as the proposed versions are not accepted. + +aniso8601==9.0.1 +APScheduler==3.7.0 +#attrs==20.3.0 ==> python310 +babelfish==0.5.5 +#beautifulsoup4==4.10.0 ==> python310 +Brotli==1.0.9 +#certifi==2020.12.5 ==> python310 +#chardet==4.0.0 ==> python310 +CherryPy==18.6.0 +#click==7.1.2 ==> python310 +colorama==0.4.4 +colorclass==2.2.0 +feedparser==6.0.2 +#Flask==1.1.2 ==> python310 +Flask-Compress==1.9.0 +Flask-Cors==3.0.10 +Flask-Login==0.5.0 +Flask-RESTful==0.3.8 +flask-restx==0.4.0 +FlexGet==3.1.129 +#greenlet==1.0.0 ==> python310 +guessit==3.2.0 +#html5lib==1.1 ==> python310 +#idna==2.10 ==> python310 +#itsdangerous==1.1.0 ==> python310 +#Jinja2==2.11.3 ==> python310 +loguru==0.5.3 +#MarkupSafe==2.0.0 ==> python310 +more-itertools==8.7.0 +plumbum==1.6.9 +#plumbum==1.7.0 +#poetry==1.1.11 ==> python310 +progressbar==2.5 +#psutil==5.8.0 ==> python310 +pynzb==0.1.0 +#pyparsing==2.4.7 ==> python310 +pyrsistent==0.17.3 +PyRSS2Gen==1.1 +#pytz==2021.1 ==> python310 +#PyYAML==5.4.1 ==> python310 +rebulk==3.0.1 +#requests==2.25.1 ==> python310 +rpyc==4.1.2 +#rpyc==5.0.1 +sgmllib3k==1.0.0 +#six==1.16.0 ==> python310 +soupsieve==2.2.1 +#SQLAlchemy==1.4.15 ==> python310 +terminaltables==3.1.0 +transmission-rpc==3.2.5 +typing-extensions==3.10.0.0 +#tzlocal==2.1 ==> python310 +#urllib3==1.26.5 ==> python310 +#webencodings==0.5.1 ==> python310 +#Werkzeug==1.0.1 ==> python310 +zc.lockfile==2.0 +zxcvbn-python==4.4.24 diff --git a/spk/flexget/src/requirements-pure.txt b/spk/flexget/src/requirements-pure.txt new file mode 100644 index 00000000000..dabbcdd7ecf --- /dev/null +++ b/spk/flexget/src/requirements-pure.txt @@ -0,0 +1,13 @@ +# Wheels that absolutely needs +# to be managed as pure-python +cheroot==8.5.2 +#importlib-metadata==4.0.1 ==> python310 +jaraco.classes==3.2.1 +jaraco.collections==3.3.0 +jaraco.functools==3.3.0 +jaraco.text==3.5.0 +jsonschema==3.2.0 +portend==2.7.1 +#python-dateutil==2.8.1 ==> python310 +tempora==4.0.2 +#zipp==3.4.1 ==> python310 diff --git a/spk/flexget/src/requirements.txt b/spk/flexget/src/requirements.txt deleted file mode 100644 index d58805bc4ac..00000000000 --- a/spk/flexget/src/requirements.txt +++ /dev/null @@ -1,57 +0,0 @@ -# This file is a copy of the https://raw.githubusercontent.com/Flexget/Flexget/v3.1.129/requirements.txt file -# including the https://raw.githubusercontent.com/Flexget/Flexget/v3.1.129/requirements.in -# Additionally added the flexget and the transmission-rpc packages. -# plumbum and rpyc packages are adjusted as the proposed versions are not accepted. - -aniso8601==9.0.1 -APScheduler==3.7.0 -attrs==20.3.0 -babelfish==0.5.5 -beautifulsoup4==4.10.0 -certifi==2020.12.5 -chardet==4.0.0 -cheroot==8.5.2 -CherryPy==18.6.0 -colorama==0.4.4 -feedparser==6.0.2 -Flask==1.1.2 -Flask-Compress==1.9.0 -Flask-Cors==3.0.10 -Flask-Login==0.5.0 -Flask-RESTful==0.3.8 -flask-restx==0.4.0 -FlexGet==3.1.129 -guessit==3.2.0 -html5lib==1.1 -idna==2.10 -importlib-metadata==4.0.1 -itsdangerous==1.1.0 -jaraco.classes==3.2.1 -jaraco.collections==3.3.0 -jaraco.functools==3.3.0 -jaraco.text==3.5.0 -Jinja2==2.11.3 -jsonschema==3.2.0 -loguru==0.5.3 -more-itertools==8.7.0 -#plumbum==1.7.0 -plumbum==1.6.9 -portend==2.7.1 -pyparsing==2.4.7 -python-dateutil==2.8.1 -pytz==2021.1 -rebulk==3.0.1 -requests==2.25.1 -#rpyc==5.0.1 -rpyc==4.1.2 -six==1.16.0 -soupsieve==2.2.1 -tempora==4.0.2 -transmission-rpc==3.2.5 -typing-extensions==3.10.0.0 -tzlocal==2.1 -urllib3==1.26.5 -webencodings==0.5.1 -Werkzeug==1.0.1 -zc.lockfile==2.0 -zipp==3.4.1 diff --git a/spk/flexget/src/service-setup.sh b/spk/flexget/src/service-setup.sh index b33b59ae4cb..2de4b841275 100644 --- a/spk/flexget/src/service-setup.sh +++ b/spk/flexget/src/service-setup.sh @@ -1,4 +1,4 @@ -PYTHON_DIR="/var/packages/python3/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" diff --git a/spk/homeassistant/Makefile b/spk/homeassistant/Makefile index 5e31993374f..27de262e8ce 100644 --- a/spk/homeassistant/Makefile +++ b/spk/homeassistant/Makefile @@ -1,21 +1,17 @@ SPK_NAME = homeassistant SPK_VERS = 2021.9.7 -SPK_REV = 15 +SPK_REV = 17 SPK_ICON = src/${SPK_NAME}.png -SPK_DEPENDS = "python38" +SPK_DEPENDS = "python310" -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel +BUILD_DEPENDS = cross/python310 -DEPENDS += cross/libyaml cross/bcrypt cross/cryptography cross/pycrypto cross/pycryptodomex cross/pycryptodome DEPENDS += cross/gevent -DEPENDS += cross/homeassistant.pillow # for iqvia DEPENDS += cross/numpy # for python-libnmap DEPENDS += cross/nmap -# for mobile_app -DEPENDS += cross/PyNaCl # for tradfri DEPENDS += cross/dtlssocket # for denonavr @@ -24,7 +20,7 @@ DEPENDS += cross/asyncstdlib DEPENDS += cross/ujson # Include cross compiled wheels only, the package installer downloads pure python wheels at installation time. -WHEELS = src/requirements-cross.txt +WHEELS = src/requirements-crossenv.txt MAINTAINER = hgy59 DESCRIPTION = "Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control." diff --git a/spk/homeassistant/src/postinst_components_requirements.txt b/spk/homeassistant/src/postinst_components_requirements.txt index d3633809de5..a085e2cd2cf 100644 --- a/spk/homeassistant/src/postinst_components_requirements.txt +++ b/spk/homeassistant/src/postinst_components_requirements.txt @@ -34,7 +34,7 @@ authcaptureproxy==1.0.2 authlib==0.15.4 axis==44 backoff==1.11.1 -beautifulsoup4==4.9.3 +#beautifulsoup4==4.9.3 ==> python310 bellows==0.27.0 bidict==0.21.2 bimmer-connected==0.7.20 @@ -146,7 +146,7 @@ stringcase==1.2.0 tenacity==8.0.1 teslajsonpy==0.18.3 typing-inspect==0.7.1 -tzlocal==3.0 +#tzlocal==3.0 ==> python310 WSDiscovery==2.0.0 xmltodict==0.12.0 yalexs==1.1.13 diff --git a/spk/homeassistant/src/postinst_default_config_requirements.txt b/spk/homeassistant/src/postinst_default_config_requirements.txt index 03004ac5480..87a5fd7cd61 100644 --- a/spk/homeassistant/src/postinst_default_config_requirements.txt +++ b/spk/homeassistant/src/postinst_default_config_requirements.txt @@ -15,11 +15,11 @@ awesomeversion==21.4.0 ### bcrypt==3.1.7 boto3==1.18.18 botocore==1.21.18 -certifi==2021.5.30 +#certifi==2021.5.30 ==> python310 ### cffi==1.14.1 chardet==4.0.0 ### ciso8601 @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/ciso8601-2.1.3-cp38-none-any.whl -click==7.1.2 +#click==7.1.2 ==> python310 ### cryptography @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/cryptography-3.3.2-cp38-none-any.whl deepmerge==0.3.0 defusedxml==0.7.1 @@ -37,9 +37,9 @@ home-assistant-frontend==20210830.0 homeassistant==2021.9.7 httpcore==0.13.6 httpx==0.19.0 -idna==2.9 +#idna==2.9 ==> python310 ifaddr==0.1.7 -Jinja2==3.0.1 +#Jinja2==3.0.1 ==> python310 jmespath==0.10.0 jose==1.0.0 josepy==1.8.0 @@ -53,14 +53,14 @@ ply==3.11 py-synologydsm-api==1.0.4 pyasn1==0.4.8 pycognito==2021.3.1 -pycparser==2.19 +#pycparser==2.19 ==> python310 ### pycrypto==2.6.1 ### pycryptodomex @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/pycryptodomex-3.10.1-cp35-abi3-linux_aarch64.whl pyipp==0.11.0 ### PyJWT @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/PyJWT-1.7.1-py2.py3-none-any.whl PyMetno==0.8.3 ### PyNaCl @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/PyNaCl-1.4.0-cp38-cp38-linux_aarch64.whl -pyOpenSSL==20.0.1 +#pyOpenSSL==20.0.1 ==> python310 pyotp==2.3.0 PyQRCode==1.2.1 pyRFC3339==1.1 @@ -80,10 +80,10 @@ python-jose==3.2.0 python-miio==0.5.8 python-slugify==4.0.1 PythonDNS==0.1 -pytz==2021.1 +#pytz==2021.1 ==> python310 ### PyYAML @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/PyYAML-5.4.1-cp38-cp38-linux_aarch64.whl pyudev==0.22.0 -requests==2.25.1 +#requests==2.25.1 ==> python310 requests-toolbelt==0.9.1 rfc3986==1.5.0 rsa==4.7.2 @@ -97,8 +97,8 @@ spotipy==2.18.0 ### SQLAlchemy @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/SQLAlchemy-1.4.23-cp38-cp38-linux_aarch64.whl text-unidecode==1.3 typing-extensions==3.10.0.0 -Unidecode==1.2.0 -urllib3==1.26.6 +#Unidecode==1.2.0 ==> python310 +#urllib3==1.26.6 ==> python310 voluptuous==0.12.1 voluptuous-serialize==2.4.0 ### yarl @ file:///volume1/%40appstore/homeassistant/share/wheelhouse/yarl-1.6.3-cp38-cp38-linux_aarch64.whl diff --git a/spk/homeassistant/src/requirements-cross.txt b/spk/homeassistant/src/requirements-crossenv.txt similarity index 50% rename from spk/homeassistant/src/requirements-cross.txt rename to spk/homeassistant/src/requirements-crossenv.txt index 39436fe371b..9e3fabf547a 100644 --- a/spk/homeassistant/src/requirements-cross.txt +++ b/spk/homeassistant/src/requirements-crossenv.txt @@ -1,6 +1,6 @@ # Home Assistant core # requirements are splitted into multiple files -# - requirements.txt (this file, containing requirements that need cross compilation) +# - requirements-cross.txt (this file, containing requirements that need cross compilation) # - postinst_default_requirements.txt (requirements for default_config) # - postinst_integration_requirements.txt (requirements for integrations) # postinst requirements must be pure python wheels. @@ -10,25 +10,27 @@ # Home Assistant Core aiohttp==3.7.4.post0 -#astral==2.2 -#async_timeout==3.0.1 -#attrs==21.2.0 -#awesomeversion==21.4.0 -backports.zoneinfo;python_version<"3.9" -bcrypt==3.1.7 -#certifi==2021.5.30 +# astral==2.2 +# async_timeout==3.0.1 +# attrs==21.2.0 ==> python310 +# awesomeversion==21.4.0 +# backports.zoneinfo;python_version<"3.9" ==> Does not build with python310 +# bcrypt==3.1.7 ==> python310 +# certifi==2021.5.30 ==> python310 ciso8601==2.1.3 -#httpx==0.19.0 -## jinja2==3.0.1 # fails to build, moved to postinst_default_config_requirements.txt +# cryptography==3.3.2 ==> python310 +# httpx==0.19.0 +# jinja2==3.0.1 # fails to build, moved to postinst_default_config_requirements.txt +# numpy==1.21.4 # requires to be built as cross/numpy PyJWT==1.7.1 -## cryptography==3.3.2 +# PyNaCl ==> python310 # for mobile_app ## pip>=8.0.3,<20.3 -#python-slugify==4.0.1 -pyyaml==5.4.1 -#requests==2.25.1 -ruamel.yaml==0.15.100 -#voluptuous==0.12.1 -#voluptuous-serialize==2.4.0 +# python-slugify==4.0.1 +# pyyaml==5.4.1 ==> python310 +# requests==2.25.1 ==> python310 +# ruamel.yaml==0.15.100 ==> python310 +# voluptuous==0.12.1 +# voluptuous-serialize==2.4.0 yarl==1.6.3 # homeassistant.components.frontend @@ -38,12 +40,12 @@ yarl==1.6.3 #hass-nabucasa==0.46.0 ### other default dependencies that need cross compiled wheel -MarkupSafe==2.0.1 +# MarkupSafe==2.0.1 ==> python310 aiokafka==0.6.0 -cffi==1.14.1 -greenlet==1.1.1 +# cffi==1.14.1 ==> python310 +# greenlet==1.1.1 ==> python310 multidict==5.1.0 -sqlalchemy==1.4.23 +# sqlalchemy==1.4.23 ==> python310 # Failed to build: av clx-sdk-xms homeassistant-pyozw python-twitch-client @@ -61,18 +63,17 @@ sqlalchemy==1.4.23 ephem==3.7.7.0 -###gevent==21.8.0 -guppy3==3.1.0 +# gevent==21.8.0 +guppy3==3.1.2 ###homeassistant-pyozw==0.1.10 # deprecated open-z-wave, fails to cross compile -netifaces==0.11.0 -psutil==5.8.0 +# netifaces==0.11.0 ==> python310 +# psutil==5.8.0 ==> python310 pyads==3.2.2 -pycares==4.0.0 -# pybluez==0.22 # for fjaraskupan fails to build -# pycocotools==2.0.1 # fails to cross compile (aarch64) +# pycares==4.0.0 ==> python310 +# pybluez==0.22 # for fjaraskupan fails to build +# pycocotools==2.0.1 # fails to cross compile (aarch64) pyitachip2ir==0.0.7 -regex==2021.8.3 -#ujson==4.2.0 # dependency of pyflunearyou +# regex==2021.8.3 ==> python310 websockets==9.1 -# pandas==1.3.1 # depends on numpy... +# pandas==1.3.1 # depends on numpy... wrapt==1.12.1 diff --git a/spk/homeassistant/src/service-setup.sh b/spk/homeassistant/src/service-setup.sh index b1d14280cbe..9595676de71 100644 --- a/spk/homeassistant/src/service-setup.sh +++ b/spk/homeassistant/src/service-setup.sh @@ -3,7 +3,7 @@ # - installer # - start-stop-status -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" @@ -13,17 +13,6 @@ SVC_CWD="${SYNOPKG_PKGVAR}" HOME="${SYNOPKG_PKGVAR}" -rename_file () -{ - _from=$1 - _to=$2 - if [ ! "${_from}" -ef "${_to}" ]; then - echo "- rename ${_from##*/} to ${_to##*/}" - mv -f ${_from} ${_to} - fi -} - - service_postinst () { # Create a Python virtualenv @@ -37,19 +26,6 @@ service_postinst () separator="====================================================" wheelhouse=${SYNOPKG_PKGDEST}/share/wheelhouse - echo ${separator} - echo "Rename arch specific wheels" - uname_m=$(uname -m) - for wheel_file in ${wheelhouse}/pycryptodome*-none-any.whl ; do - new_wheel_file=$(echo ${wheel_file} | sed "s|cp35-none-any|cp35-abi3-linux_${uname_m}|g") - rename_file "${wheel_file}" "${new_wheel_file}" - done - none_name="-cp38-none-any.whl" - arch_name="-cp38-cp38-linux_${uname_m}.whl" - for wheel_file in ${wheelhouse}/*${none_name} ; do - rename_file "${wheel_file}" "${wheel_file%${none_name}}${arch_name}" - done - echo ${separator} echo "Install packages from wheels" ${SYNOPKG_PKGDEST}/env/bin/pip install --no-deps --no-input --no-index ${wheelhouse}/*.whl diff --git a/spk/mercurial/Makefile b/spk/mercurial/Makefile index 9c8c10307ac..e20abd8554d 100644 --- a/spk/mercurial/Makefile +++ b/spk/mercurial/Makefile @@ -1,19 +1,19 @@ SPK_NAME = mercurial SPK_VERS = 5.7.1 -SPK_REV = 7 +SPK_REV = 8 SPK_ICON = src/mercurial.png -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel +BUILD_DEPENDS = cross/python310 BUILD_DEPENDS += cross/$(SPK_NAME) WHEELS = src/requirements.txt -SPK_DEPENDS = "python38" +SPK_DEPENDS = "python310" MAINTAINER = Dr-Bean DESCRIPTION = Mercurial is a free, distributed source control management tool STARTABLE = no DISPLAY_NAME = Mercurial -CHANGELOG = Update mercurial to 5.7.1 with python 3.8 +CHANGELOG = Update mercurial to 5.7.1 with python 3.10 HOMEPAGE = https://www.mercurial-scm.org/ LICENSE = MPL1.1 diff --git a/spk/mercurial/src/service-setup.sh b/spk/mercurial/src/service-setup.sh index 4bbe263cabf..4acd60f0082 100644 --- a/spk/mercurial/src/service-setup.sh +++ b/spk/mercurial/src/service-setup.sh @@ -1,5 +1,5 @@ -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" diff --git a/spk/octoprint/Makefile b/spk/octoprint/Makefile index e34f66c7a07..3248a623b40 100644 --- a/spk/octoprint/Makefile +++ b/spk/octoprint/Makefile @@ -1,25 +1,25 @@ SPK_NAME = octoprint SPK_VERS = 1.7.2 -SPK_REV = 6 +SPK_REV = 7 SPK_ICON = src/octoprint.png DSM_UI_DIR = app -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel +BUILD_DEPENDS = cross/python310 DEPENDS = cross/octoprint -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements.txt -SPK_DEPENDS = "python38" +SPK_DEPENDS = "python310" MAINTAINER = SynoCommunity DESCRIPTION = The snappy web interface for your 3D printer. SERVICE_PORT = 8088 -ADMIN_PORT = $(SERVICE_PORT) +ADMIN_PORT = $(SERVICE_PORT) DISPLAY_NAME = OctoPrint HOMEPAGE = https://octoprint.org/ LICENSE = AGPLv3 -CHANGELOG = "Update OctoPrint to v1.7.2 and python38" +CHANGELOG = "Update OctoPrint to v1.7.2 and Python 3.10" # SERVICE_COMMAND is in src/service-setup.sh STARTABLE = yes diff --git a/spk/octoprint/src/requirements-cross.txt b/spk/octoprint/src/requirements-cross.txt deleted file mode 100644 index 10aa3d06114..00000000000 --- a/spk/octoprint/src/requirements-cross.txt +++ /dev/null @@ -1,11 +0,0 @@ -# all requirements are taken from the list "INSTALL_REQUIRES" in the -# original setup.py at: https://github.com/OctoPrint/OctoPrint/blob/master/setup.py -# this file contains the wheels to cross compile only - -MarkupSafe==1.1.1 -netifaces==0.11.0 -psutil==5.8.0 -PyYAML==5.4.1 -regex==2021.10.23 -tornado==6.1 -wrapt==1.12.1 diff --git a/spk/octoprint/src/requirements.txt b/spk/octoprint/src/requirements.txt index 767ccf54d4d..dfcc712b6a7 100644 --- a/spk/octoprint/src/requirements.txt +++ b/spk/octoprint/src/requirements.txt @@ -1,38 +1,44 @@ # all requirements are taken from the list "INSTALL_REQUIRES" in the # original setup.py at: https://github.com/OctoPrint/OctoPrint/blob/master/setup.py -# this file contains the pure python wheels only -Flask==1.1.4 +#Flask==1.1.4 ==> python310 Flask_Assets==2.0 Flask_Babel==1.0.0 Flask_Login==0.5.0 -Jinja2==2.11.3 +#Jinja2==2.11.3 ==> python310 Markdown==3.1.1 OctoPrint_FileCheck==2021.2.23 OctoPrint_FirmwareCheck==2021.10.11 OctoPrint_PiSupport==2021.10.28 -Unidecode==1.3.2 -Werkzeug==1.0.1 +#Unidecode==1.3.2 ==> python310 +#Werkzeug==1.0.1 ==> python310 blinker==1.4 cachelib==0.1.1 -click==7.1.2 +#click==7.1.2 ==> python310 colorlog==5.0.1 emoji==1.6.1 feedparser==6.0.8 filetype==1.0.8 -future==0.18.2 +#future==0.18.2 ==> python310 immutabledict==2.2.1 -itsdangerous==1.1.0 +#itsdangerous==1.1.0 ==> python310 +#MarkupSafe==1.1.1 ==> python310 netaddr==0.8.0 +#netifaces==0.11.0 ==> python310 pathvalidate==2.5.0 +#psutil==5.8.0 ==> python310 pkginfo==1.7.1 pylru==1.2.0 pyserial==3.5 -requests==2.26.0 +#PyYAML==5.4.1 ==> python310 +#regex==2021.10.23 ==> python310 +#requests==2.26.0 ==> python310 sarge==0.1.6 semantic_version==2.8.5 sentry_sdk==1.4.3 +tornado==6.1 watchdog==0.10.4 websocket_client==0.59.0 +wrapt==1.12.1 zeroconf==0.33.4 zipstream_new==1.1.8 diff --git a/spk/octoprint/src/service-setup.sh b/spk/octoprint/src/service-setup.sh index 4168b57e741..1316802baac 100644 --- a/spk/octoprint/src/service-setup.sh +++ b/spk/octoprint/src/service-setup.sh @@ -1,5 +1,5 @@ -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PATH="${SYNOPKG_PKGDEST}/env/bin:${SYNOPKG_PKGDEST}/bin:${PYTHON_DIR}:${PATH}" diff --git a/spk/python2/Makefile b/spk/python2/Makefile index 299d40cde7d..6c08f30759a 100644 --- a/spk/python2/Makefile +++ b/spk/python2/Makefile @@ -16,7 +16,7 @@ DEPENDS += cross/lxml cross/m2crypto cross/msgpack-python cross/pillow_py2 DEPENDS += cross/pyalsa cross/pyaudio cross/pycrypto cross/pycurl DEPENDS += cross/pyyaml cross/pyzmq cross/uwsgi -WHEELS = src/requirements.txt src/requirements-cross.txt +WHEELS = src/requirements.txt MAINTAINER = Safihre diff --git a/spk/python2/src/requirements-cross.txt b/spk/python2/src/requirements-cross.txt deleted file mode 100644 index 98545469f77..00000000000 --- a/spk/python2/src/requirements-cross.txt +++ /dev/null @@ -1,36 +0,0 @@ -## Modules cross-compiled via spksrc.python-wheel.mk -## These modules require patches or have cross dependencies -# Included for reference -#lxml==4.5.0 -#m2crypto==0.25.1 -#msgpack-python==0.5.6 -#pillow==5.3.0 -#pyalsa==1.0.29 -#pyaudio==0.2.9 -#pycrypto==2.6.1 -#pycurl==7.43.0 -#PyYAML==5.4.1 -#pyzmq==16.0.2 -#uwsgi==2.0.14 -#pycparser==2.19 - -## Cross-compiled via spksrc.wheel.mk -markupsafe==1.1.1 -psutil==5.7.0 -pymongo==3.10.1 -sqlalchemy==1.3.17 - -# Cheetah -cheetah==2.4.4 - -# Cryptography/pyOpenSSL/M2Crypto dependencies -# These also depends on cross/cffi and cross/openssl, -# which are installed through cross/bcrypt -#cryptography==2.9.2 now built as buildtime dependency - -# Twisted and dependencies -twisted==20.3.0 -zope.interface==5.1.0 - -# pillow dependencies -olefile==0.46 diff --git a/spk/python2/src/requirements.txt b/spk/python2/src/requirements.txt index b09858257b6..28130e36fb9 100644 --- a/spk/python2/src/requirements.txt +++ b/spk/python2/src/requirements.txt @@ -1,3 +1,40 @@ +## Modules cross-compiled via spksrc.python-wheel.mk +## These modules require patches or have cross dependencies +# Included for reference +#lxml==4.5.0 +#m2crypto==0.25.1 +#msgpack-python==0.5.6 +#pillow==5.3.0 +#pyalsa==1.0.29 +#pyaudio==0.2.9 +#pycrypto==2.6.1 +#pycurl==7.43.0 +#PyYAML==5.4.1 +#pyzmq==16.0.2 +#uwsgi==2.0.14 +#pycparser==2.19 + +## Cross-compiled via spksrc.wheel.mk +markupsafe==1.1.1 +psutil==5.7.0 +pymongo==3.10.1 +sqlalchemy==1.3.17 + +# Cheetah +cheetah==2.4.4 + +# Cryptography/pyOpenSSL/M2Crypto dependencies +# These also depends on cross/cffi and cross/openssl, +# which are installed through cross/bcrypt +#cryptography==2.9.2 now built as buildtime dependency + +# Twisted and dependencies +twisted==20.3.0 +zope.interface==5.1.0 + +# pillow dependencies +olefile==0.46 + # General support six==1.16.0 virtualenv==16.7.10 diff --git a/spk/python3/Makefile b/spk/python3/Makefile index 0f1d0192c0b..80fab07d5eb 100644 --- a/spk/python3/Makefile +++ b/spk/python3/Makefile @@ -1,7 +1,7 @@ SPK_NAME = python3 SPK_VERS = 3.7.12 SPK_SHORT_VERS = $(word 1,$(subst ., ,$(SPK_VERS))).$(word 2,$(subst ., ,$(SPK_VERS))) -SPK_REV = 20 +SPK_REV = 21 SPK_ICON = src/python3.png DEPENDS = cross/busybox cross/$(SPK_NAME) @@ -12,7 +12,7 @@ DEPENDS += cross/lxml cross/pycrypto cross/pycurl cross/pyyaml DEPENDS += cross/msgpack-python cross/ruamel.yaml cross/immutables DEPENDS += cross/cryptography -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt MAINTAINER = Allan Clark DESCRIPTION = Python Programming Language. diff --git a/spk/python3/src/requirements-cross.txt b/spk/python3/src/requirements-crossenv.txt similarity index 69% rename from spk/python3/src/requirements-cross.txt rename to spk/python3/src/requirements-crossenv.txt index d1193ee8348..bfc4c6e9d83 100644 --- a/spk/python3/src/requirements-cross.txt +++ b/spk/python3/src/requirements-crossenv.txt @@ -1,3 +1,18 @@ +## default +appdirs==1.4.4 +distlib==0.3.3 +markupsafe==2.0.1 +poetry==1.1.11 +psutil==5.8.0 +pyopenssl==21.0.0 +six==1.16.0 +sqlalchemy==1.4.26 +zope.interface==5.4.0 + +# cryptography dependencies +idna==3.3 +ipaddress==1.0.23 + ## Modules cross-compiled via spksrc.python-wheel.mk # Included for reference #lxml==4.6.3 @@ -7,12 +22,6 @@ #pyyaml==5.4.1 #immutables==0.16 -## Cross-compiled via spksrc.wheel.mk -markupsafe==2.0.1 -psutil==5.8.0 -sqlalchemy==1.4.26 -zope.interface==5.4.0 - # cryptography dependencies pyasn1==0.4.8 diff --git a/spk/python3/src/requirements-pure.txt b/spk/python3/src/requirements-pure.txt new file mode 100644 index 00000000000..ef89b77c0c1 --- /dev/null +++ b/spk/python3/src/requirements-pure.txt @@ -0,0 +1,8 @@ +# Wheels that absolutely needs +# to be managed as pure-python +filelock==3.0.12 +importlib-resources==5.2.2 +importlib-metadata==4.8.1 +platformdirs==2.4.0 +virtualenv==20.4.6 +zipp==3.6.0 diff --git a/spk/python3/src/requirements.txt b/spk/python3/src/requirements.txt deleted file mode 100644 index b2620325dd3..00000000000 --- a/spk/python3/src/requirements.txt +++ /dev/null @@ -1,15 +0,0 @@ -## Pure-python via spksrc.wheel.mk -appdirs==1.4.4 -distlib==0.3.3 -filelock==3.0.12 -importlib-resources==5.2.2 -importlib-metadata==4.8.1 -platformdirs==2.4.0 -pyopenssl==21.0.0 -six==1.16.0 -virtualenv==20.4.6 -zipp==3.6.0 - -# cryptography dependencies -idna==3.3 -ipaddress==1.0.23 diff --git a/spk/python310/Makefile b/spk/python310/Makefile index 7da98ae5373..8469040b2bc 100644 --- a/spk/python310/Makefile +++ b/spk/python310/Makefile @@ -1,10 +1,15 @@ SPK_NAME = python310 SPK_VERS = 3.10.0 SPK_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(SPK_VERS))).$(word 2,$(subst ., ,$(SPK_VERS))) -SPK_REV = 1 +SPK_REV = 3 SPK_ICON = src/python3.png DEPENDS = cross/$(SPK_NAME) +# Mandatory binaries for wheel +# setup during package install +DEPENDS += cross/setuptools cross/pip cross/wheel + +# Required for misc wheels DEPENDS += cross/libxml2 DEPENDS += cross/libxslt DEPENDS += cross/libyaml @@ -21,7 +26,11 @@ ENV += SODIUM_INSTALL=system # https://github.com/python-pillow/Pillow/issues/5799 DEPENDS += cross/pillow -WHEELS = src/requirements-cross.txt src/requirements.txt +# Required for pycares +DEPENDS += cross/c-ares +ENV += PYCARES_USE_SYSTEM_LIB=1 + +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt src/requirements-abi3.txt MAINTAINER = SynoCommunity DESCRIPTION = Python Programming Language. diff --git a/spk/python310/src/requirements-abi3.txt b/spk/python310/src/requirements-abi3.txt new file mode 100644 index 00000000000..1b3382f6bbe --- /dev/null +++ b/spk/python310/src/requirements-abi3.txt @@ -0,0 +1,2 @@ +pycryptodome==3.11.0 +pycryptodomex==3.11.0 diff --git a/spk/python310/src/requirements-cross.txt b/spk/python310/src/requirements-cross.txt deleted file mode 100644 index 6adc36024e9..00000000000 --- a/spk/python310/src/requirements-cross.txt +++ /dev/null @@ -1,15 +0,0 @@ -## Cross-compiled via spksrc.wheel.mk -bcrypt==3.2.0 -cffi==1.15.0 -cryptography==3.3.2 -greenlet==1.1.2 -immutables==0.16 -lxml==4.6.3 -markupsafe==2.0.1 -msgpack-python==0.5.6 -psutil==5.8.0 -pycurl==7.44.1 -PyNaCl==1.4.0 -PyYAML==6.0 -sqlalchemy==1.4.26 -zope.interface==5.4.0 diff --git a/spk/python310/src/requirements.txt b/spk/python310/src/requirements-crossenv.txt similarity index 57% rename from spk/python310/src/requirements.txt rename to spk/python310/src/requirements-crossenv.txt index 21d548b89d2..0da0ce13c78 100644 --- a/spk/python310/src/requirements.txt +++ b/spk/python310/src/requirements-crossenv.txt @@ -1,50 +1,59 @@ -# Basic wheels +# basic default wheels setuptools==58.3.0 pip==21.3.1 wheel==0.37.0 -# cryptography dependencies -idna==3.3 - -# Pure-python via spksrc.wheel.mk # commonly used wheels appdirs==1.4.4 attrs==21.2.0 +bcrypt==3.2.0 beautifulsoup4==4.10.0 certifi==2021.10.8 +cffi==1.15.0 chardet==4.0.0 +charset-normalizer==2.0.7 click==8.0.3 +cryptography==3.3.2 distlib==0.3.3 -filelock==3.3.2 Flask==2.0.2 future==0.18.2 +greenlet==1.1.2 html5lib==1.1 idna==3.3 -importlib-metadata==4.8.1 -importlib-resources==5.3.0 +immutables==0.16 +ipaddress==1.0.23 itsdangerous==2.0.1 Jinja2==3.0.2 +lxml==4.6.3 +MarkupSafe==2.0.1 +msgpack-python==0.5.6 +netifaces==0.11.0 olefile==0.46 oauthlib==3.1.1 packaging==21.0 paramiko==2.8.0 -platformdirs==2.4.0 +poetry==1.1.11 +psutil==5.8.0 pyasn1==0.4.8 +pycares==4.1.2 pycparser==2.20 -PyJWT==2.3.0 +pycurl==7.44.1 +#PyJWT==2.3.0 ==> some packages needs version < 2.0 +PyNaCl==1.4.0 pyOpenSSL==21.0.0 pyparsing==3.0.1 -python-dateutil==2.8.2 pytz==2021.3 +PyYAML==6.0 +regex==2021.11.2 requests==2.26.0 requests-oauthlib==1.3.0 requests-toolbelt==0.9.1 ruamel.yaml==0.17.16 six==1.16.0 -tzlocal==4.0.1 +sqlalchemy==1.4.26 +tzlocal==4.1 Unidecode==1.3.2 urllib3==1.26.7 -virtualenv==20.9.0 webencodings==0.5.1 Werkzeug==2.0.2 -zipp==3.6.0 +zope.interface==5.4.0 diff --git a/spk/python310/src/requirements-pure.txt b/spk/python310/src/requirements-pure.txt new file mode 100644 index 00000000000..6962809a528 --- /dev/null +++ b/spk/python310/src/requirements-pure.txt @@ -0,0 +1,9 @@ +# Wheels that absolutely needs +# to be managed as pure-python +filelock==3.3.2 +importlib-metadata==4.8.1 +importlib-resources==5.3.0 +platformdirs==2.4.0 +python-dateutil==2.8.2 +virtualenv==20.9.0 +zipp==3.6.0 diff --git a/spk/python38/Makefile b/spk/python38/Makefile index c73606eeec6..8f869cdabfd 100644 --- a/spk/python38/Makefile +++ b/spk/python38/Makefile @@ -1,7 +1,7 @@ SPK_NAME = python38 SPK_VERS = 3.8.12 SPK_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(SPK_VERS))).$(word 2,$(subst ., ,$(SPK_VERS))) -SPK_REV = 6 +SPK_REV = 7 SPK_ICON = src/python3.png DEPENDS = cross/$(SPK_NAME) @@ -13,7 +13,7 @@ DEPENDS += cross/lxml cross/msgpack-python DEPENDS += cross/pycrypto cross/pycurl DEPENDS += cross/pyyaml cross/ruamel.yaml cross/sqlite -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt MAINTAINER = SynoCommunity DESCRIPTION = Python Programming Language. diff --git a/spk/python38/src/requirements-cross.txt b/spk/python38/src/requirements-crossenv.txt similarity index 69% rename from spk/python38/src/requirements-cross.txt rename to spk/python38/src/requirements-crossenv.txt index d1193ee8348..bfc4c6e9d83 100644 --- a/spk/python38/src/requirements-cross.txt +++ b/spk/python38/src/requirements-crossenv.txt @@ -1,3 +1,18 @@ +## default +appdirs==1.4.4 +distlib==0.3.3 +markupsafe==2.0.1 +poetry==1.1.11 +psutil==5.8.0 +pyopenssl==21.0.0 +six==1.16.0 +sqlalchemy==1.4.26 +zope.interface==5.4.0 + +# cryptography dependencies +idna==3.3 +ipaddress==1.0.23 + ## Modules cross-compiled via spksrc.python-wheel.mk # Included for reference #lxml==4.6.3 @@ -7,12 +22,6 @@ #pyyaml==5.4.1 #immutables==0.16 -## Cross-compiled via spksrc.wheel.mk -markupsafe==2.0.1 -psutil==5.8.0 -sqlalchemy==1.4.26 -zope.interface==5.4.0 - # cryptography dependencies pyasn1==0.4.8 diff --git a/spk/python38/src/requirements-pure.txt b/spk/python38/src/requirements-pure.txt new file mode 100644 index 00000000000..c7ed16cf732 --- /dev/null +++ b/spk/python38/src/requirements-pure.txt @@ -0,0 +1,8 @@ +# Wheels that absolutely needs +# to be managed as pure-python +filelock==3.3.1 +importlib-resources==5.2.2 +importlib-metadata==4.8.1 +platformdirs==2.4.0 +virtualenv==20.4.6 +zipp==3.6.0 diff --git a/spk/python38/src/requirements.txt b/spk/python38/src/requirements.txt deleted file mode 100644 index 397e49a5ba8..00000000000 --- a/spk/python38/src/requirements.txt +++ /dev/null @@ -1,15 +0,0 @@ -## Pure-python via spksrc.wheel.mk -appdirs==1.4.4 -distlib==0.3.3 -filelock==3.3.1 -importlib-resources==5.2.2 -importlib-metadata==4.8.1 -platformdirs==2.4.0 -pyopenssl==21.0.0 -six==1.16.0 -virtualenv==20.4.6 -zipp==3.6.0 - -# cryptography dependencies -idna==3.3 -ipaddress==1.0.23 diff --git a/spk/rdiff-backup/Makefile b/spk/rdiff-backup/Makefile index 1e507d63c29..60f7209a747 100644 --- a/spk/rdiff-backup/Makefile +++ b/spk/rdiff-backup/Makefile @@ -1,20 +1,20 @@ SPK_NAME = rdiff-backup SPK_VERS = 2.0.3 -SPK_REV = 3 +SPK_REV = 4 SPK_ICON = src/rdiff-backup.png -BUILD_DEPENDS = cross/python3 +BUILD_DEPENDS = cross/python310 DEPENDS = cross/librsync cross/attr cross/acl -WHEELS = src/requirements-cross.txt +WHEELS = src/requirements.txt -SPK_DEPENDS = "python3>=3.7" +SPK_DEPENDS = "python310" MAINTAINER = SynoCommunity DESCRIPTION = Reverse differential backup tool, over a network or locally. STARTABLE = no DISPLAY_NAME = rdiff-backup -CHANGELOG = "Update to v2.0.3 and update dependencies for python3." +CHANGELOG = "Update to v2.0.3 and update dependencies for Python 3.10" HOMEPAGE = https://rdiff-backup.net/ LICENSE = GPLv2 diff --git a/spk/rdiff-backup/src/requirements-cross.txt b/spk/rdiff-backup/src/requirements.txt similarity index 100% rename from spk/rdiff-backup/src/requirements-cross.txt rename to spk/rdiff-backup/src/requirements.txt diff --git a/spk/rdiff-backup/src/service-setup.sh b/spk/rdiff-backup/src/service-setup.sh index 4f8684620c7..26c800329c9 100644 --- a/spk/rdiff-backup/src/service-setup.sh +++ b/spk/rdiff-backup/src/service-setup.sh @@ -3,7 +3,7 @@ service_postinst () { # Create a Python virtualenv - /var/packages/python3/target/bin/python3 -m venv ${SYNOPKG_PKGDEST}/env + /var/packages/python310/target/bin/python3 -m venv ${SYNOPKG_PKGDEST}/env # Install the wheels wheelhouse=${SYNOPKG_PKGDEST}/share/wheelhouse diff --git a/spk/sabnzbd/Makefile b/spk/sabnzbd/Makefile index e23f5914530..c383af844d1 100644 --- a/spk/sabnzbd/Makefile +++ b/spk/sabnzbd/Makefile @@ -1,15 +1,15 @@ SPK_NAME = sabnzbd SPK_VERS = 3.4.2 -SPK_REV = 50 +SPK_REV = 51 SPK_ICON = src/sabnzbd.png -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel cross/poetry +BUILD_DEPENDS = cross/python310 DEPENDS = cross/busybox cross/par2cmdline cross/unrar cross/p7zip cross/$(SPK_NAME) -SPK_DEPENDS = "python38>=3.8.1-1" +SPK_DEPENDS = "python310" # To generate full requirements.txt, extend SABnzbd's own # requirements.txt with the depedencies of cherrypy and cheroot -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements-crossenv.txt src/requirements-pure.txt MAINTAINER = Safihre DESCRIPTION = SABnzbd makes Usenet as simple and streamlined as possible by automating everything we can. All you have to do is add an .nzb. SABnzbd takes over from there, where it will be automatically downloaded, verified, repaired, extracted and filed away with zero human interaction. @@ -17,7 +17,7 @@ DESCRIPTION_FRE = SABnzbd rend Usenet aussi simple et automatisé que possible. DESCRIPTION_SPN = SABnzbd hace que Usenet sea lo más simple posible, automatizando todo lo que se puede. Todo lo que tienes que hacer es agregar un archivo .nzb. SABnzbd empieza desde ahí. Tus archivos serán automáticamente descargados, verificados, reparados, descomprimidos y archivados. DISPLAY_NAME = SABnzbd STARTABLE = yes -CHANGELOG = "Update SABnzbd to 3.4.2." +CHANGELOG = "1. Update SABnzbd to 3.4.2.
2. Update to python 3.10" HOMEPAGE = https://sabnzbd.org LICENSE = GPL diff --git a/spk/sabnzbd/src/requirements-cross.txt b/spk/sabnzbd/src/requirements-cross.txt deleted file mode 100644 index c7e8b424669..00000000000 --- a/spk/sabnzbd/src/requirements-cross.txt +++ /dev/null @@ -1,2 +0,0 @@ -cheetah3==3.2.6 -sabyenc3==4.0.2 diff --git a/spk/sabnzbd/src/requirements-crossenv.txt b/spk/sabnzbd/src/requirements-crossenv.txt new file mode 100644 index 00000000000..5906556e8db --- /dev/null +++ b/spk/sabnzbd/src/requirements-crossenv.txt @@ -0,0 +1,14 @@ +babelfish==0.6.0 +#chardet==4.0.0 ==> python310 +cheetah3==3.2.6 +cherrypy==18.6.1 +configobj==5.0.6 +feedparser==6.0.8 +guessit==3.3.1 +more-itertools==8.9.0 +puremagic==1.10 +#pytz==2021.1 ==> python310 +rebulk==3.0.1 +sabyenc3==4.0.2 +sgmllib3k==1.0.0 +zc.lockfile==2.0 diff --git a/spk/sabnzbd/src/requirements-pure.txt b/spk/sabnzbd/src/requirements-pure.txt new file mode 100644 index 00000000000..9f13d4df3a6 --- /dev/null +++ b/spk/sabnzbd/src/requirements-pure.txt @@ -0,0 +1,10 @@ +# Wheels that absolutely needs +# to be managed as pure-python +cheroot==8.5.2 +jaraco.classes==3.2.1 +jaraco.collections==3.4.0 +jaraco.functools==3.3.0 +jaraco.text==3.5.1 +portend==2.7.1 +#python-dateutil==2.8.2 ==> python310 +tempora==4.1.1 diff --git a/spk/sabnzbd/src/requirements.txt b/spk/sabnzbd/src/requirements.txt deleted file mode 100644 index efefe41bb41..00000000000 --- a/spk/sabnzbd/src/requirements.txt +++ /dev/null @@ -1,20 +0,0 @@ -chardet==4.0.0 -cheroot==8.5.2 -cherrypy==18.6.1 -configobj==5.0.6 -sgmllib3k==1.0.0 -feedparser==6.0.8 -jaraco.classes==3.2.1 -jaraco.collections==3.4.0 -jaraco.functools==3.3.0 -jaraco.text==3.5.1 -more-itertools==8.9.0 -portend==2.7.1 -pytz==2021.1 -tempora==4.1.1 -zc.lockfile==2.0 -guessit==3.3.1 -babelfish==0.6.0 -rebulk==3.0.1 -python-dateutil==2.8.2 -puremagic==1.10 diff --git a/spk/sabnzbd/src/service-setup.sh b/spk/sabnzbd/src/service-setup.sh index a7e9a621658..8f2545f1dbc 100644 --- a/spk/sabnzbd/src/service-setup.sh +++ b/spk/sabnzbd/src/service-setup.sh @@ -1,5 +1,5 @@ BIN="${SYNOPKG_PKGDEST}/bin" -PYTHON_DIR="/var/packages/python38/target/bin" +PYTHON_DIR="/var/packages/python310/target/bin" PATH="${BIN}:${SYNOPKG_PKGDEST}/env/bin:${PYTHON_DIR}:${PATH}" VIRTUALENV="${PYTHON_DIR}/python3 -m venv" PYTHON="${SYNOPKG_PKGDEST}/env/bin/python3" diff --git a/spk/salt-minion/Makefile b/spk/salt-minion/Makefile index 5f0dff2d8e7..a49cf43ba57 100644 --- a/spk/salt-minion/Makefile +++ b/spk/salt-minion/Makefile @@ -14,7 +14,7 @@ UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) # source salt-env/bin/activate # pip install salt # pip freeze > requirements.txt -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements.txt MAINTAINER = SynoCommunity DESCRIPTION = Salt, a new approach to infrastructure management, is easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with those servers in seconds. diff --git a/spk/salt-minion/src/requirements-cross.txt b/spk/salt-minion/src/requirements-cross.txt deleted file mode 100644 index 8d60568221b..00000000000 --- a/spk/salt-minion/src/requirements-cross.txt +++ /dev/null @@ -1,7 +0,0 @@ -chardet==3.0.4 -MarkupSafe==1.1.1 -msgpack==1.0.0 -pycryptodomex==3.9.8 -PyYAML==5.3.1 -pyzmq==19.0.2 -salt==3001.1 diff --git a/spk/salt-minion/src/requirements.txt b/spk/salt-minion/src/requirements.txt index fbddc6eca44..3201dd10c9d 100644 --- a/spk/salt-minion/src/requirements.txt +++ b/spk/salt-minion/src/requirements.txt @@ -1,6 +1,13 @@ certifi==2020.6.20 +chardet==3.0.4 distro==1.5.0 idna==2.10 Jinja2==2.11.2 +MarkupSafe==1.1.1 +msgpack==1.0.0 +pycryptodomex==3.9.8 +PyYAML==5.3.1 +pyzmq==19.0.2 requests==2.24.0 +salt==3001.1 urllib3==1.25.10 diff --git a/spk/sickchill/Makefile b/spk/sickchill/Makefile index 8ad88a5a68e..18f152acf22 100644 --- a/spk/sickchill/Makefile +++ b/spk/sickchill/Makefile @@ -1,20 +1,19 @@ SPK_NAME = sickchill SPK_VERS = 20211110 -SPK_REV = 4 +SPK_REV = 5 SPK_ICON = src/sickchill.png -BUILD_DEPENDS = cross/python38 cross/setuptools cross/pip cross/wheel cross/poetry cross/lxml -# cross/cffi cross/setuptools cross/cryptography cross/poetry -DEPENDS = cross/PyNaCl cross/$(SPK_NAME) -SPK_DEPENDS = "python38>=3.8.12-6" +BUILD_DEPENDS = cross/python310 +DEPENDS = cross/$(SPK_NAME) +SPK_DEPENDS = "python310" -WHEELS = src/requirements-cross.txt src/requirements.txt +WHEELS = src/requirements.txt MAINTAINER = miigotu DESCRIPTION = Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic. STARTABLE = yes DISPLAY_NAME = SickChill -CHANGELOG = "1. SickChill environment fix
2. Move to Python 3.8 without git
3. Added DSM7 Support
4. cryptography resolution for armv7" +CHANGELOG = "1. Migration to Python 3.10
2. SickChill environment fix
3. Added DSM7 Support
4. cryptography resolution for armv7" HOMEPAGE = https://sickchill.github.io/ LICENSE = GPLv3+ diff --git a/spk/sickchill/src/requirements-cross.txt b/spk/sickchill/src/requirements-cross.txt deleted file mode 100755 index d8b71bdd033..00000000000 --- a/spk/sickchill/src/requirements-cross.txt +++ /dev/null @@ -1,17 +0,0 @@ -cffi==1.15.0 -chardet==4.0.0 -click==8.0.3 -###cryptography==3.4.7 -future==0.18.2 -###py38 greenlet==1.1.2 -###importlib-metadata==1.7.0 -kodipydent-alt==2021.7.16 -###py38 lxml==4.6.3 -MarkupSafe==2.0.1 -msgpack==1.0.2 -###PyNaCl==1.4.0 -sgmllib3k==1.0.0 -SQLAlchemy==1.4.26 #py38 -wrapt==1.13.3 -###python-dateutil==2.8.2 -backports.zoneinfo==0.2.1 diff --git a/spk/sickchill/src/requirements.txt b/spk/sickchill/src/requirements.txt index 147290dd1e0..5fbae65b6ed 100644 --- a/spk/sickchill/src/requirements.txt +++ b/spk/sickchill/src/requirements.txt @@ -1,70 +1,81 @@ -###poetry adds with removal of cross/poetry -###poetry==1.2.0a2 -###poetry-core==1.1.0a6 -###poetry-date-version-plugin==2021.7.16-6 -###py38 appdirs==1.4.4 +#appdirs==1.4.4 ==> python310 babelfish==0.6.0 -beautifulsoup4==4.10.0 +#beautifulsoup4==4.10.0 ==> python310 beekeeper-alt==2021.7.16 bencode.py==4.0.0 cachecontrol==0.12.9 -certifi==2021.10.8 -charset-normalizer==2.0.7 +#certifi==2021.10.8 ==> python310 +#cffi==1.15.0 ==> python310 +#chardet==4.0.0 ==> python310 +#charset-normalizer==2.0.7 ==> python310 +#click==8.0.3 ==> python310 cloudscraper==1.2.58 colorama==0.4.4 configobj==5.0.6 +#cryptography==3.4.7 ==> python310:cryptography==3.3.2 decorator==5.1.0 deluge-client==1.9.0 deprecated==1.2.13 dogpile.cache==1.1.4 enzyme==0.4.1 feedparser==6.0.8 +future==0.18.2 gntp==1.0.3 +#greenlet==1.1.2 ==> python310 guessit==3.4.0 -html5lib==1.1 +#html5lib==1.1 ==> python310 httplib2==0.20.2 -###py38 idna==3.3 +#idna==3.3 ==> python310 ifaddr==0.1.7 imagesize==1.2.0 IMDbPY==2021.4.18 -###py38 ipaddress==1.0.23 +#importlib-metadata==1.7.0 ==> python310:importlib-metadata==4.8.1 +#ipaddress==1.0.23 ==> python310 Js2Py==0.71 jsonrpclib-pelix==0.4.3.1 -###kodipydent-alt==2021.7.16 +kodipydent-alt==2021.7.16 +#lxml==4.6.3 ==> python310 Mako==1.1.5 markdown2==2.4.1 +#MarkupSafe==2.0.1 ==> python310 +msgpack==1.0.2 new-rtorrent-python==1.0.1a0 -oauthlib==3.1.1 -packaging==20.9 +#oauthlib==3.1.1 ==> python310 +#packaging==20.9 ==> python310 pbr==5.7.0 +poetry==1.2.0a2 +poetry-core==1.1.0a6 +poetry-date-version-plugin==2021.7.16-6 profilehooks==1.12.0 putio.py==8.7.0 +#pycparser==2.20 ==> python310 +#pyopenssl==21.0.0 ==> python310 pyaes==1.6.1 -###py38 pycparser==2.20 pygithub==1.55 -###py38 pyopenssl==21.0.0 pyjsparser==2.7.1 -pyjwt==2.3.0 +PyJWT==2.3.0 pymediainfo==5.1.0 +#PyNaCl==1.4.0 ==> python310 pynma==1.0 -###py38 pyopenssl==20.0.1 -pyparsing==2.4.7 +#pyparsing==2.4.7 ==> python310 pysocks==1.7.1 pysrt==1.1.2 -###python-dateutil==2.8.2 +python3-fanart==2.0.0 +#python-dateutil==2.8.2 ==> python310 python-slugify==5.0.2 python-twitter==3.5 -python3-fanart==2.0.0 pytz==2021.3 qbittorrent-api==2021.8.23 rarfile==4.0 rebulk==3.1.0 -requests==2.26.0 -requests-oauthlib==1.3.0 -requests-toolbelt==0.9.1 +#requests==2.26.0 ==> python310 +#requests-oauthlib==1.3.0 ==> python310 +#requests-toolbelt==0.9.1 ==> python310 send2trash==1.8.0 -###py38 six==1.16.0 +#six==1.16.0 ==> python310 +sgmllib3k==1.0.0 soupsieve==2.3 +#SQLAlchemy==1.4.26 ==> python310 stevedore==3.5.0 subliminal==2.1.0 text-unidecode==1.3 @@ -73,11 +84,12 @@ tmdbsimple==2.8.0 tornado==6.1 tus.py==1.3.4 tvdbsimple==1.0.6 -tzlocal==4.1 -unidecode==1.3.2 -urllib3==1.26.7 +#tzlocal==4.1 ==> python310 +#unidecode==1.3.2 ==> python310 +#urllib3==1.26.7 ==> python310 validators==0.18.2 webencodings==0.5.1 win-inet-pton==1.1.0 +wrapt==1.13.3 xmltodict==0.12.0 -###py38 zipp==3.6.0 +#zipp==3.6.0 ==> python310 diff --git a/spk/sickchill/src/service-setup.sh b/spk/sickchill/src/service-setup.sh index 0b47f2ac3aa..68115108d1e 100755 --- a/spk/sickchill/src/service-setup.sh +++ b/spk/sickchill/src/service-setup.sh @@ -1,4 +1,4 @@ -PYTHON_DIR="/var/packages/python38/target" +PYTHON_DIR="/var/packages/python310/target" PIP=${SYNOPKG_PKGDEST}/env/bin/pip3 PATH="${SYNOPKG_PKGDEST}/bin:${SYNOPKG_PKGDEST}/env/bin:${PYTHON_DIR}/bin:${PATH}" HOME="${SYNOPKG_PKGVAR}" diff --git a/spk/znc/Makefile b/spk/znc/Makefile index c60c7b4b01f..7936b3dd62f 100644 --- a/spk/znc/Makefile +++ b/spk/znc/Makefile @@ -5,7 +5,7 @@ SPK_ICON = src/znc.png DSM_UI_DIR = app DEPENDS = cross/$(SPK_NAME) -SPK_DEPENDS = "python38" +SPK_DEPENDS = "python310" MAINTAINER = worstje DESCRIPTION = Advanced IRC bouncer. An IRC bouncer is nothing more than an IRC proxy. ZNC will always be connected in your chat rooms, and will be the gateway between your clients, and your IRC servers. You can, for instance, consult messages while you were offline or hide your identity. diff --git a/spk/znc/src/service-setup.sh b/spk/znc/src/service-setup.sh index b455593d59b..bc14c4b0e2a 100644 --- a/spk/znc/src/service-setup.sh +++ b/spk/znc/src/service-setup.sh @@ -6,7 +6,7 @@ PATH="${SYNOPKG_PKGDEST}/bin:${PATH}" ZNC="${SYNOPKG_PKGDEST}/bin/znc" CERT_FILE="${SYNOPKG_PKGVAR}/znc.pem" -PYTHON3_LIB_PATH="/var/packages/python38/target/lib" +PYTHON3_LIB_PATH="/var/packages/python310/target/lib" SERVICE_COMMAND="env LD_LIBRARY_PATH=${PYTHON3_LIB_PATH} ${ZNC} -d ${SYNOPKG_PKGVAR}" SVC_BACKGROUND=yes CONF_FILE=${SYNOPKG_PKGVAR}/configs/znc.conf