Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DietPi-Software | SABnzbd: Install fails on Buster and Stretch #4997

Closed
bensp opened this issue Nov 27, 2021 · 11 comments · Fixed by #4999
Closed

DietPi-Software | SABnzbd: Install fails on Buster and Stretch #4997

bensp opened this issue Nov 27, 2021 · 11 comments · Fixed by #4999
Milestone

Comments

@bensp
Copy link

bensp commented Nov 27, 2021

Details:

  • Date | Fri Nov 26 18:12:17 GMT 2021
  • DietPi version | v7.2.3 (MichaIng/master)
  • Image creator | DietPi Core Team
  • Pre-image | Raspbian Lite
  • Hardware | RPi 4 Model B (armv7l) (ID=4)
  • Kernel version | Linux DietPi 5.10.63-v7l+ #1459 SMP Wed Oct 6 16:41:57 BST 2021 armv7l GNU/Linux
  • Distro | buster (ID=5,RASPBIAN=1)
  • Command | pip3 install -Ur requirements.txt
  • Exit code | 1
  • Software title | DietPi-Software

Steps to reproduce:

  1. SABnzbd was out of date, so I ran dietpi-software reinstall 139
  2. Reinstallation failed due to the error below: it appears to be due to crytography?
  3. I restored to a five-month old backup and it restored working functionality - great!
  4. I fully updated from 7.2 to the latest updat (7.8?), tried to reinstall again, thinking perhaps I had changed something: it failed. Sadly, it created a backup point that overwrote my working backup copy.. :(
  5. One of the recommendations was upgrading pip. It doesn't seem to want me to do this.
  6. Now, SABnzbd won't start as it's not installed
  7. I've researched here, the forums, searched online, to no joy. Can you help please?

Error:

Logfile attached. Click to expand!
copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-.7/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  running build_ext
  running build_rust
  
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation/ for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq/
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation/#rust
  
      Python: 3.7.3
      platform: Linux-5.10.63-v7l+-armv7l-with-debian-10.11
      pip: 21.3.1
      setuptools: 50.3.0
      setuptools_rust: 1.0.0
      =============================DEBUG ASSISTANCE=============================
  
  error: can't find Rust compiler
  
  If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.
  
  To update pip, run:
  
      pip install --upgrade pip
  
  and then retry package installation.
  
  If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs) is the recommended way to download and update the Rust compiler toolchain.
  
  This package requires Rust >=1.41.0.
  ----------------------------------------
  ERROR: Failed building wheel for cryptography`

1. ...
2. ...
#### Expected behaviour:
1. DietPi update should keep SABnzbd up to date - is this a bug in itself
2. The reinstallation script should work as a fall back
3. SABnzbd to work
- ...
#### Actual behaviour:
SABnzbd update failed and it isn't running
- ...
#### Extra details:
The above log is from 7.2.3 (my restored backup).  After fully updating the issue still persists.

Any help greatly appreciated.. 
- ...
#### Additional logs:

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
Ignoring pyobjc: markers 'sys_platform == "darwin"' don't match your environment
Requirement already satisfied: sabyenc3>=4.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 1)) (4.0.2)
Requirement already satisfied: cheetah3>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 2)) (3.2.6.post1)
Requirement already satisfied: cryptography in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 3)) (3.4.7)
Collecting cryptography
  Downloading cryptography-36.0.0.tar.gz (571 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: feedparser>=6.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 4)) (6.0.2)
Collecting feedparser>=6.0.0
  Downloading https://www.piwheels.org/simple/feedparser/feedparser-6.0.8-py3-none-any.whl (81 kB)
Requirement already satisfied: configobj in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 5)) (5.0.6)
Requirement already satisfied: cheroot in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 6)) (8.5.2)
Requirement already satisfied: cherrypy in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 7)) (18.6.0)
Collecting cherrypy
  Downloading https://www.piwheels.org/simple/cherrypy/CherryPy-18.6.1-py2.py3-none-any.whl (419 kB)
Requirement already satisfied: portend in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 8)) (2.7.1)
Collecting portend
  Downloading https://www.piwheels.org/simple/portend/portend-3.1.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: chardet in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 9)) (4.0.0)
Requirement already satisfied: notify2 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 10)) (0.3.1)
Collecting puremagic
  Downloading https://www.piwheels.org/simple/puremagic/puremagic-1.11-py3-none-any.whl (31 kB)
Collecting guessit>=3.1.0
  Downloading https://www.piwheels.org/simple/guessit/guessit-3.4.3-py3-none-any.whl (173 kB)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography->-r requirements.txt (line 3)) (1.14.3)
Requirement already satisfied: sgmllib3k in /usr/local/lib/python3.7/dist-packages (from feedparser>=6.0.0->-r requirements.txt (line 4)) (1.0.0)
Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from configobj->-r requirements.txt (line 5)) (1.15.0)
Requirement already satisfied: more-itertools>=2.6 in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (8.5.0)
Requirement already satisfied: jaraco.functools in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (3.0.1)
Requirement already satisfied: jaraco.collections in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (3.0.0)
Requirement already satisfied: zc.lockfile in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (2.0)
Requirement already satisfied: tempora>=1.8 in /usr/local/lib/python3.7/dist-packages (from portend->-r requirements.txt (line 8)) (4.0.0)
Collecting babelfish>=0.6.0
  Downloading https://www.piwheels.org/simple/babelfish/babelfish-0.6.0-py3-none-any.whl (93 kB)
Collecting importlib-resources
  Downloading https://www.piwheels.org/simple/importlib-resources/importlib_resources-5.4.0-py3-none-any.whl (28 kB)
Collecting python-dateutil
  Downloading https://www.piwheels.org/simple/python-dateutil/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting rebulk>=3.1.0
  Downloading https://www.piwheels.org/simple/rebulk/rebulk-3.1.0-py3-none-any.whl (63 kB)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.12->cryptography->-r requirements.txt (line 3)) (2.20)
Requirement already satisfied: pytz in /usr/local/lib/python3.7/dist-packages (from tempora>=1.8->portend->-r requirements.txt (line 8)) (2020.1)
Collecting zipp>=3.1.0
  Downloading https://www.piwheels.org/simple/zipp/zipp-3.6.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: jaraco.classes in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.1.0)
Requirement already satisfied: jaraco.text in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.2.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from zc.lockfile->cherrypy->-r requirements.txt (line 7)) (50.3.0)
Building wheels for collected packages: cryptography
  Building wheel for cryptography (pyproject.toml): started
  Building wheel for cryptography (pyproject.toml): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpjpxgyfyn
       cwd: /tmp/pip-install-3_vj7zjs/cryptography_d66e727d66dd4eee85355cf4a640cf8f
  Complete output (164 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-armv7l-3.7
  creating build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/utils.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/fernet.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/exceptions.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__init__.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__about__.py -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/oid.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/ocsp.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/general_name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/extensions.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/base.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/_oid.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/types.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  running build_ext
  running build_rust
  
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation/ for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq/
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation/#rust
  
      Python: 3.7.3
      platform: Linux-5.10.63-v7l+-armv7l-with-debian-10.11
      pip: 21.3.1
      setuptools: 50.3.0
      setuptools_rust: 1.0.0
      =============================DEBUG ASSISTANCE=============================
  
  error: can't find Rust compiler
  
  If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.
  
  To update pip, run:
  
      pip install --upgrade pip
  
  and then retry package installation.
  
  If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs) is the recommended way to download and update the Rust compiler toolchain.
  
  This package requires Rust >=1.41.0.
  ----------------------------------------
  ERROR: Failed building wheel for cryptography
Failed to build cryptography
ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects
@Joulinar
Copy link
Collaborator

Joulinar commented Nov 27, 2021

Hi,

issue is with cryptography module. The version 36 your system is trying to download, is now available as pre-build wheel for Buster on https://www.piwheels.org/project/cryptography/

You could try to install version 35.

sudo pip3 install cryptography==35.0.0

Hope this satisfy installation and you could try to reinstall again. Similar issue as this #4987

@bensp
Copy link
Author

bensp commented Nov 27, 2021

Thanks for your prompt response.

It didn't work, sadly.

The log is below.

Note that Downloading cryptography-36.0.0.tar.gz (571 kB) appears in the log

Logfile attached. Click to expand!
root@DietPi:~# sudo pip3 install cryptography==35.0.0
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Collecting cryptography==35.0.0
  Downloading https://www.piwheels.org/simple/cryptography/cryptography-35.0.0-cp37-cp37m-linux_armv7l.whl (2.1 MB)
     |████████████████████████████████| 2.1 MB 2.9 MB/s            
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography==35.0.0) (1.14.3)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.12->cryptography==35.0.0) (2.20)
Installing collected packages: cryptography
  Attempting uninstall: cryptography
    Found existing installation: cryptography 3.4.7
    Uninstalling cryptography-3.4.7:
      Successfully uninstalled cryptography-3.4.7
Successfully installed cryptography-35.0.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
root@DietPi:~# dietpi-software reinstall 139
[  OK  ] DietPi-Software | Initialised database
[  OK  ] DietPi-Software | Reading database

 DietPi-Software
─────────────────────────────────────────────────────
 Mode: Automated reinstall

[  OK  ] DietPi-Software | Reinstalling SABnzbd: nzb download manager
[ SUB1 ] DietPi-Backup > Backup
[  OK  ] DietPi-Backup | mkdir -p /mnt/dietpi-backup/data
[ SUB2 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[ INFO ] DietPi-Backup | Checking for required APT packages: rsync
[  OK  ] DietPi-Backup | All required APT packages are already installed.
[  OK  ] DietPi-Backup | Free space check: path=/mnt/dietpi-backup/data | available=52626 MiB | required=528 MiB
[ INFO ] DietPi-Backup | Backup to /mnt/dietpi-backup in progress, please wait...
sending incremental file list
deleting boot/dietpi-CHANGELOG.txt
deleting boot/dietpi/boot
deleting boot/dietpi/func/obtain_network_details
      1,469,456   2%   29.19MB/s    0:00:00 (xfr#52, ir-chk=1003/1763)
deleting etc/apt/apt.conf.d/99-dietpi-force-ipv4
    697,199,074  82%    5.05MB/s    0:02:11 (xfr#65, ir-chk=1004/2874)
deleting etc/systemd/system/dietpi-boot.service
deleting etc/systemd/system/multi-user.target.wants/dietpi-boot.service
    705,037,929  52%    4.44MB/s    0:02:31 (xfr#449, ir-chk=1001/15202)
deleting root/.kodi/addons/service.xbmc.versioncheck/changelog.txt
deleting root/.kodi/temp/archive_cache/10025-e6f083c5.fi
deleting root/.kodi/temp/archive_cache/10025-1140787e.fi
    708,901,805  28%    4.41MB/s    0:02:33 (xfr#573, ir-chk=1035/26023)
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/top_level.txt
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/WHEEL
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/REQUESTED
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/RECORD
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/METADATA
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/LICENSE.PSF
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/LICENSE.BSD
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/LICENSE.APACHE
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/LICENSE
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/INSTALLER
deleting usr/local/lib/python3.7/dist-packages/cryptography-3.4.7.dist-info/
    708,902,468  28%    4.40MB/s    0:02:33 (xfr#576, ir-chk=1002/27025)
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/_types.py
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/_der.py
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/__pycache__/_types.cpython-37.pyc
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/__pycache__/_der.cpython-37.pyc
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/backends/openssl/ocsp.py
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/backends/openssl/__pycache__/ocsp.cpython-37.pyc
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/bindings/_padding.abi3.so
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/primitives/twofactor/utils.py
deleting usr/local/lib/python3.7/dist-packages/cryptography/hazmat/primitives/twofactor/__pycache__/utils.cpython-37.pyc
    726,235,346  26%    4.46MB/s    0:02:35 (xfr#1592, ir-chk=2402/49301)
deleting var/tmp/dietpi/logs/dietpi-ramlog_store/dietpi-backup.log
    726,317,758  25%    4.46MB/s    0:02:35 (xfr#1630, to-chk=0/50002)   

sent 727,788,764 bytes  received 42,766 bytes  4,650,680.70 bytes/sec
total size is 2,795,881,219  speedup is 3.84
[ SUB2 ] DietPi-Services > start 
[  OK  ] DietPi-Services | start : avahi-daemon
[  OK  ] DietPi-Services | start : php7.3-fpm
[  OK  ] DietPi-Services | start : lighttpd
[  OK  ] DietPi-Services | start : sabnzbd
[  OK  ] DietPi-Services | start : cron
[  OK  ] DietPi-Backup: Backup | Completed
[  OK  ] DietPi-Backup | Completed
[  OK  ] DietPi-Software | Free space check: path=/ | available=52623 MiB | required=500 MiB
[  OK  ] DietPi-Software | DietPi-Userdata validation: /mnt/dietpi_userdata
[  OK  ] DietPi-Software | Checking network connectivity
[  OK  ] DietPi-Software | Checking DNS resolver
[  OK  ] Network time sync | Completed
[ SUB1 ] DietPi-Services > unmask 
[  OK  ] DietPi-Services | unmask : avahi-daemon
[  OK  ] DietPi-Services | unmask : php7.3-fpm
[  OK  ] DietPi-Services | unmask : lighttpd
[  OK  ] DietPi-Services | unmask : sabnzbd
[  OK  ] DietPi-Services | unmask : cron
[ SUB1 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[  OK  ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads /var/www /opt /usr/local/bin
[  OK  ] DietPi-Software | chown dietpi:dietpi /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[  OK  ] DietPi-Software | chmod 0775 /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ INFO ] DietPi-Software | APT update, please wait...
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 https://archive.raspberrypi.org/debian buster InRelease
Reading package lists...
[  OK  ] DietPi-Software | APT update

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Checking for prerequisite software

[ INFO ] DietPi-Software | Python 3 will be reinstalled
[ INFO ] DietPi-Software | UnRAR will be reinstalled
[ INFO ] DietPi-Software | Build-Essential will be reinstalled

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Build-Essential: GNU C/C++ compiler, development libraries and headers

[ INFO ] DietPi-Software | APT install for: g++ make automake, please wait...
[  OK  ] DietPi-Software | APT install for: g++ make automake

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Python 3: Runtime system, pip package installer and development headers

[  OK  ] DietPi-Software | Checking URL: https://bootstrap.pypa.io/pip/get-pip.py
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://bootstrap.pypa.io/pip/get-pip.py -o get-pip.py
[ INFO ] DietPi-Software | APT install for: python3-dev, please wait...
[  OK  ] DietPi-Software | APT install for: python3-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[ INFO ] DietPi-Software | python3 ./get-pip.py, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Collecting pip
  Using cached https://www.piwheels.org/simple/pip/pip-21.3.1-py3-none-any.whl (1.7 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 21.3.1
    Uninstalling pip-21.3.1:
      Successfully uninstalled pip-21.3.1
Successfully installed pip-21.3.1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[  OK  ] DietPi-Software | python3 ./get-pip.py
[  OK  ] DietPi-Software | rm get-pip.py

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing UnRAR: unarchiver for .rar files

[  OK  ] DietPi-Software | Checking URL: https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[  OK  ] DietPi-Software | curl -sSfL https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb -o unrar-armhf-buster.deb
[ INFO ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb, please wait...
[  OK  ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb
[  OK  ] DietPi-Software | rm unrar-armhf-buster.deb

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing SABnzbd: nzb download manager

[  OK  ] DietPi-Software | Checking URL: https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz -o master.tar.gz
[ INFO ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev, please wait...
[  OK  ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[  OK  ] DietPi-Software | tar xf master.tar.gz
[  OK  ] DietPi-Software | rm master.tar.gz
[  OK  ] DietPi-Software | mv /etc/sabnzbd/sabnzbd.ini sabnzbd-master/sabnzbd.ini
[  OK  ] DietPi-Software | rm -R /etc/sabnzbd
[  OK  ] DietPi-Software | mv sabnzbd-master /etc/sabnzbd
[  OK  ] DietPi-Software | cd /etc/sabnzbd
[ INFO ] DietPi-Software | pip3 install --no-cache-dir -Ur requirements.txt, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
Ignoring pyobjc: markers 'sys_platform == "darwin"' don't match your environment
Requirement already satisfied: sabyenc3>=4.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 1)) (4.0.2)
Requirement already satisfied: cheetah3>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 2)) (3.2.6.post1)
Requirement already satisfied: cryptography in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 3)) (35.0.0)
Collecting cryptography
  Downloading cryptography-36.0.0.tar.gz (571 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: feedparser>=6.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 4)) (6.0.2)
Collecting feedparser>=6.0.0
  Downloading https://www.piwheels.org/simple/feedparser/feedparser-6.0.8-py3-none-any.whl (81 kB)
Requirement already satisfied: configobj in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 5)) (5.0.6)
Requirement already satisfied: cheroot in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 6)) (8.5.2)
Requirement already satisfied: cherrypy in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 7)) (18.6.0)
Collecting cherrypy
  Downloading https://www.piwheels.org/simple/cherrypy/CherryPy-18.6.1-py2.py3-none-any.whl (419 kB)
Requirement already satisfied: portend in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 8)) (2.7.1)
Collecting portend
  Downloading https://www.piwheels.org/simple/portend/portend-3.1.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: chardet in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 9)) (4.0.0)
Requirement already satisfied: notify2 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 10)) (0.3.1)
Collecting puremagic
  Downloading https://www.piwheels.org/simple/puremagic/puremagic-1.11-py3-none-any.whl (31 kB)
Collecting guessit>=3.1.0
  Downloading https://www.piwheels.org/simple/guessit/guessit-3.4.3-py3-none-any.whl (173 kB)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography->-r requirements.txt (line 3)) (1.14.3)
Requirement already satisfied: sgmllib3k in /usr/local/lib/python3.7/dist-packages (from feedparser>=6.0.0->-r requirements.txt (line 4)) (1.0.0)
Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from configobj->-r requirements.txt (line 5)) (1.15.0)
Requirement already satisfied: more-itertools>=2.6 in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (8.5.0)
Requirement already satisfied: jaraco.functools in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (3.0.1)
Requirement already satisfied: zc.lockfile in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (2.0)
Requirement already satisfied: jaraco.collections in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (3.0.0)
Requirement already satisfied: tempora>=1.8 in /usr/local/lib/python3.7/dist-packages (from portend->-r requirements.txt (line 8)) (4.0.0)
Collecting python-dateutil
  Downloading https://www.piwheels.org/simple/python-dateutil/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting rebulk>=3.1.0
  Downloading https://www.piwheels.org/simple/rebulk/rebulk-3.1.0-py3-none-any.whl (63 kB)
Collecting importlib-resources
  Downloading https://www.piwheels.org/simple/importlib-resources/importlib_resources-5.4.0-py3-none-any.whl (28 kB)
Collecting babelfish>=0.6.0
  Downloading https://www.piwheels.org/simple/babelfish/babelfish-0.6.0-py3-none-any.whl (93 kB)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.12->cryptography->-r requirements.txt (line 3)) (2.20)
Requirement already satisfied: pytz in /usr/local/lib/python3.7/dist-packages (from tempora>=1.8->portend->-r requirements.txt (line 8)) (2020.1)
Collecting zipp>=3.1.0
  Downloading https://www.piwheels.org/simple/zipp/zipp-3.6.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: jaraco.classes in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.1.0)
Requirement already satisfied: jaraco.text in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.2.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from zc.lockfile->cherrypy->-r requirements.txt (line 7)) (50.3.0)
Building wheels for collected packages: cryptography
  Building wheel for cryptography (pyproject.toml): started
  Building wheel for cryptography (pyproject.toml): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpqatrz1jo
       cwd: /tmp/pip-install-reqj6gwg/cryptography_d14d7aaeba6b4d1db37780615ebce614
  Complete output (164 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-armv7l-3.7
  creating build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/utils.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/fernet.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/exceptions.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__init__.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__about__.py -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/oid.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/ocsp.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/general_name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/extensions.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/base.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/_oid.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/types.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  running build_ext
  running build_rust
  
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation/ for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq/
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation/#rust
  
      Python: 3.7.3
      platform: Linux-5.10.63-v7l+-armv7l-with-debian-10.11
      pip: 21.3.1
      setuptools: 50.3.0
      setuptools_rust: 1.0.0
      =============================DEBUG ASSISTANCE=============================
  
  error: can't find Rust compiler
  
  If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.
  
  To update pip, run:
  
      pip install --upgrade pip
  
  and then retry package installation.
  
  If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs) is the recommended way to download and update the Rust compiler toolchain.
  
  This package requires Rust >=1.41.0.
  ----------------------------------------
  ERROR: Failed building wheel for cryptography
Failed to build cryptography
ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects
[FAILED] DietPi-Software | pip3 install --no-cache-dir -Ur requirements.txt

@MichaIng
Copy link
Owner

MichaIng commented Nov 27, 2021

It keeps failing because of the pip -U flag so that it keeps trying to update the module.

I btw reported the failing build to piwheels now: piwheels/packages#264
Hopefully this buys us some time. But earlier or later we need to implement Rust anyway. They btw decided to use Debians cargo instead of rustup exactly because of the issue that is cannot be natively installed as system package/compiler but only on user level: piwheels/packages#188 (comment)

If the wheel is not fixed until next DietPi release, I'll follow this and implement the either the rustc or cargo package as dependency to all software options which pull the Python cryptography module for Stretch and Buster ARMv6 and ARMv7 systems.

@bensp
You can do the same. Please give this a try first:

apt install rustc
dietpi-software reinstall 139

If it still fails:

apt install cargo
dietpi-software reinstall 139

@MichaIng MichaIng added this to the v7.9 milestone Nov 27, 2021
@MichaIng MichaIng changed the title SABnzbd reinstallation issue DietPi-Software | Add Rust compiler dependency for Python cryptography build Nov 27, 2021
@bensp
Copy link
Author

bensp commented Nov 27, 2021

No joy I'm afraid.

Error log after installing Rust:

Logfile attached. Click to expand!
root@DietPi:~# apt install rustc
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libllvm7 libstd-rust-1.41 libstd-rust-dev
Suggested packages:
  rust-doc rust-src lld-7
Recommended packages:
  cargo rust-gdb | rust-lldb
The following NEW packages will be installed:
  libllvm7 libstd-rust-1.41 libstd-rust-dev rustc
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 49.1 MB of archives.
After this operation, 176 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive-bm.raspbian.org/raspbian buster/main armhf libllvm7 armhf 1:7.0.1-8+rpi3+deb10u2 [11.4 MB]
Get:2 http://archive-bm.raspbian.org/raspbian buster/main armhf libstd-rust-1.41 armhf 1.41.1+dfsg1-1~deb10u1+rpi1 [12.0 MB]
Get:3 http://archive-bm.raspbian.org/raspbian buster/main armhf libstd-rust-dev armhf 1.41.1+dfsg1-1~deb10u1+rpi1 [24.0 MB]
Get:4 http://archive-bm.raspbian.org/raspbian buster/main armhf rustc armhf 1.41.1+dfsg1-1~deb10u1+rpi1 [1703 kB]                                                                                                                                                       
Fetched 49.1 MB in 12s (4255 kB/s)                                                                                                                                                                                                                                      
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libllvm7:armhf.
(Reading database ... 37181 files and directories currently installed.)
Preparing to unpack .../libllvm7_1%3a7.0.1-8+rpi3+deb10u2_armhf.deb ...
Unpacking libllvm7:armhf (1:7.0.1-8+rpi3+deb10u2) ...
Selecting previously unselected package libstd-rust-1.41:armhf.
Preparing to unpack .../libstd-rust-1.41_1.41.1+dfsg1-1~deb10u1+rpi1_armhf.deb ...
Unpacking libstd-rust-1.41:armhf (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Selecting previously unselected package libstd-rust-dev:armhf.
Preparing to unpack .../libstd-rust-dev_1.41.1+dfsg1-1~deb10u1+rpi1_armhf.deb ...
Unpacking libstd-rust-dev:armhf (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Selecting previously unselected package rustc.
Preparing to unpack .../rustc_1.41.1+dfsg1-1~deb10u1+rpi1_armhf.deb ...
Unpacking rustc (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Setting up libllvm7:armhf (1:7.0.1-8+rpi3+deb10u2) ...
Setting up libstd-rust-1.41:armhf (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Setting up libstd-rust-dev:armhf (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Setting up rustc (1.41.1+dfsg1-1~deb10u1+rpi1) ...
Processing triggers for libc-bin (2.28-10+rpt2+rpi1) ...
root@DietPi:~# dietpi-software reinstall 139
[  OK  ] DietPi-Software | Initialised database
[  OK  ] DietPi-Software | Reading database

 DietPi-Software
─────────────────────────────────────────────────────
 Mode: Automated reinstall

[  OK  ] DietPi-Software | Reinstalling SABnzbd: nzb download manager
[ SUB1 ] DietPi-Backup > Backup
[  OK  ] DietPi-Backup | mkdir -p /mnt/dietpi-backup/data
[ SUB2 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[ INFO ] DietPi-Backup | Checking for required APT packages: rsync
[  OK  ] DietPi-Backup | All required APT packages are already installed.
[  OK  ] DietPi-Backup | Free space check: path=/mnt/dietpi-backup/data | available=52456 MiB | required=688 MiB
[ INFO ] DietPi-Backup | Backup to /mnt/dietpi-backup in progress, please wait...
sending incremental file list
    190,031,063   6%    7.21MB/s    0:00:25 (xfr#924, to-chk=0/50078)   

sent 191,342,282 bytes  received 25,624 bytes  7,504,623.76 bytes/sec
total size is 2,971,869,995  speedup is 15.53
[ SUB2 ] DietPi-Services > start 
[  OK  ] DietPi-Services | start : avahi-daemon
[  OK  ] DietPi-Services | start : php7.3-fpm
[  OK  ] DietPi-Services | start : lighttpd
[  OK  ] DietPi-Services | start : sabnzbd
[  OK  ] DietPi-Services | start : cron
[  OK  ] DietPi-Backup: Backup | Completed
[  OK  ] DietPi-Backup | Completed
[  OK  ] DietPi-Software | Free space check: path=/ | available=52287 MiB | required=500 MiB
[  OK  ] DietPi-Software | DietPi-Userdata validation: /mnt/dietpi_userdata
[  OK  ] DietPi-Software | Checking network connectivity
[  OK  ] DietPi-Software | Checking DNS resolver
[  OK  ] Network time sync | Completed
[ SUB1 ] DietPi-Services > unmask 
[  OK  ] DietPi-Services | unmask : avahi-daemon
[  OK  ] DietPi-Services | unmask : php7.3-fpm
[  OK  ] DietPi-Services | unmask : lighttpd
[  OK  ] DietPi-Services | unmask : sabnzbd
[  OK  ] DietPi-Services | unmask : cron
[ SUB1 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[  OK  ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads /var/www /opt /usr/local/bin
[  OK  ] DietPi-Software | chown dietpi:dietpi /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[  OK  ] DietPi-Software | chmod 0775 /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ INFO ] DietPi-Software | APT update, please wait...
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 https://archive.raspberrypi.org/debian buster InRelease
Reading package lists...
[  OK  ] DietPi-Software | APT update

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Checking for prerequisite software

[ INFO ] DietPi-Software | Python 3 will be reinstalled
[ INFO ] DietPi-Software | UnRAR will be reinstalled
[ INFO ] DietPi-Software | Build-Essential will be reinstalled

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Build-Essential: GNU C/C++ compiler, development libraries and headers

[ INFO ] DietPi-Software | APT install for: g++ make automake, please wait...
[  OK  ] DietPi-Software | APT install for: g++ make automake

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Python 3: Runtime system, pip package installer and development headers

[  OK  ] DietPi-Software | Checking URL: https://bootstrap.pypa.io/pip/get-pip.py
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://bootstrap.pypa.io/pip/get-pip.py -o get-pip.py
[ INFO ] DietPi-Software | APT install for: python3-dev, please wait...
[  OK  ] DietPi-Software | APT install for: python3-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[ INFO ] DietPi-Software | python3 ./get-pip.py, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Collecting pip
  Using cached https://www.piwheels.org/simple/pip/pip-21.3.1-py3-none-any.whl (1.7 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 21.3.1
    Uninstalling pip-21.3.1:
      Successfully uninstalled pip-21.3.1
Successfully installed pip-21.3.1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[  OK  ] DietPi-Software | python3 ./get-pip.py
[  OK  ] DietPi-Software | rm get-pip.py

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing UnRAR: unarchiver for .rar files

[  OK  ] DietPi-Software | Checking URL: https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[  OK  ] DietPi-Software | curl -sSfL https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb -o unrar-armhf-buster.deb
[ INFO ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb, please wait...
[  OK  ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb
[  OK  ] DietPi-Software | rm unrar-armhf-buster.deb

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing SABnzbd: nzb download manager

[  OK  ] DietPi-Software | Checking URL: https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz -o master.tar.gz
[ INFO ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev, please wait...
[  OK  ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[  OK  ] DietPi-Software | tar xf master.tar.gz
[  OK  ] DietPi-Software | rm master.tar.gz
[  OK  ] DietPi-Software | mv /etc/sabnzbd/sabnzbd.ini sabnzbd-master/sabnzbd.ini
[  OK  ] DietPi-Software | rm -R /etc/sabnzbd
[  OK  ] DietPi-Software | mv sabnzbd-master /etc/sabnzbd
[  OK  ] DietPi-Software | cd /etc/sabnzbd
[ INFO ] DietPi-Software | pip3 install --no-cache-dir -Ur requirements.txt, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
Ignoring pyobjc: markers 'sys_platform == "darwin"' don't match your environment
Requirement already satisfied: sabyenc3>=4.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 1)) (4.0.2)
Requirement already satisfied: cheetah3>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 2)) (3.2.6.post1)
Requirement already satisfied: cryptography in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 3)) (35.0.0)
Collecting cryptography
  Downloading cryptography-36.0.0.tar.gz (571 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: feedparser>=6.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 4)) (6.0.2)
Collecting feedparser>=6.0.0
  Downloading https://www.piwheels.org/simple/feedparser/feedparser-6.0.8-py3-none-any.whl (81 kB)
Requirement already satisfied: configobj in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 5)) (5.0.6)
Requirement already satisfied: cheroot in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 6)) (8.5.2)
Requirement already satisfied: cherrypy in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 7)) (18.6.0)
Collecting cherrypy
  Downloading https://www.piwheels.org/simple/cherrypy/CherryPy-18.6.1-py2.py3-none-any.whl (419 kB)
Requirement already satisfied: portend in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 8)) (2.7.1)
Collecting portend
  Downloading https://www.piwheels.org/simple/portend/portend-3.1.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: chardet in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 9)) (4.0.0)
Requirement already satisfied: notify2 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 10)) (0.3.1)
Collecting puremagic
  Downloading https://www.piwheels.org/simple/puremagic/puremagic-1.11-py3-none-any.whl (31 kB)
Collecting guessit>=3.1.0
  Downloading https://www.piwheels.org/simple/guessit/guessit-3.4.3-py3-none-any.whl (173 kB)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography->-r requirements.txt (line 3)) (1.14.3)
Requirement already satisfied: sgmllib3k in /usr/local/lib/python3.7/dist-packages (from feedparser>=6.0.0->-r requirements.txt (line 4)) (1.0.0)
Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from configobj->-r requirements.txt (line 5)) (1.15.0)
Requirement already satisfied: jaraco.functools in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (3.0.1)
Requirement already satisfied: more-itertools>=2.6 in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (8.5.0)
Requirement already satisfied: jaraco.collections in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (3.0.0)
Requirement already satisfied: zc.lockfile in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (2.0)
Requirement already satisfied: tempora>=1.8 in /usr/local/lib/python3.7/dist-packages (from portend->-r requirements.txt (line 8)) (4.0.0)
Collecting rebulk>=3.1.0
  Downloading https://www.piwheels.org/simple/rebulk/rebulk-3.1.0-py3-none-any.whl (63 kB)
Collecting python-dateutil
  Downloading https://www.piwheels.org/simple/python-dateutil/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting babelfish>=0.6.0
  Downloading https://www.piwheels.org/simple/babelfish/babelfish-0.6.0-py3-none-any.whl (93 kB)
Collecting importlib-resources
  Downloading https://www.piwheels.org/simple/importlib-resources/importlib_resources-5.4.0-py3-none-any.whl (28 kB)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.12->cryptography->-r requirements.txt (line 3)) (2.20)
Requirement already satisfied: pytz in /usr/local/lib/python3.7/dist-packages (from tempora>=1.8->portend->-r requirements.txt (line 8)) (2020.1)
Collecting zipp>=3.1.0
  Downloading https://www.piwheels.org/simple/zipp/zipp-3.6.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: jaraco.text in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.2.0)
Requirement already satisfied: jaraco.classes in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.1.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from zc.lockfile->cherrypy->-r requirements.txt (line 7)) (50.3.0)
Building wheels for collected packages: cryptography
  Building wheel for cryptography (pyproject.toml): started
  Building wheel for cryptography (pyproject.toml): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmp57rnh08l
       cwd: /tmp/pip-install-soc9r786/cryptography_2b338a9892ce4962badeac8953e2f174
  Complete output (152 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-armv7l-3.7
  creating build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/utils.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/fernet.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/exceptions.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__init__.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__about__.py -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/oid.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/ocsp.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/general_name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/extensions.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/base.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/_oid.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/types.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  running build_ext
  running build_rust
  
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation/ for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq/
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation/#rust
  
      Python: 3.7.3
      platform: Linux-5.10.63-v7l+-armv7l-with-debian-10.11
      pip: 21.3.1
      setuptools: 50.3.0
      setuptools_rust: 1.0.0
      =============================DEBUG ASSISTANCE=============================
  
  error: [Errno 2] No such file or directory: 'cargo': 'cargo'
  ----------------------------------------
  ERROR: Failed building wheel for cryptography
Failed to build cryptography
ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects

Error log after installing cargo:

root@DietPi:~# dietpi-software reinstall 139
[  OK  ] DietPi-Software | Initialised database
[  OK  ] DietPi-Software | Reading database

 DietPi-Software
─────────────────────────────────────────────────────
 Mode: Automated reinstall

[  OK  ] DietPi-Software | Reinstalling SABnzbd: nzb download manager
[ SUB1 ] DietPi-Backup > Backup
[  OK  ] DietPi-Backup | mkdir -p /mnt/dietpi-backup/data
[ SUB2 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[ INFO ] DietPi-Backup | Checking for required APT packages: rsync
[  OK  ] DietPi-Backup | All required APT packages are already installed.
[  OK  ] DietPi-Backup | Free space check: path=/mnt/dietpi-backup/data | available=52279 MiB | required=528 MiB
[ INFO ] DietPi-Backup | Backup to /mnt/dietpi-backup in progress, please wait...
sending incremental file list
     23,103,317   0%    4.64MB/s    0:00:04 (xfr#944, to-chk=0/50139)   

sent 24,376,445 bytes  received 25,979 bytes  4,436,804.36 bytes/sec
total size is 2,980,790,756  speedup is 122.15
[ SUB2 ] DietPi-Services > start 
[  OK  ] DietPi-Services | start : avahi-daemon
[  OK  ] DietPi-Services | start : php7.3-fpm
[  OK  ] DietPi-Services | start : lighttpd
[  OK  ] DietPi-Services | start : sabnzbd
[  OK  ] DietPi-Services | start : cron
[  OK  ] DietPi-Backup: Backup | Completed
[  OK  ] DietPi-Backup | Completed
[  OK  ] DietPi-Software | Free space check: path=/ | available=52270 MiB | required=500 MiB
[  OK  ] DietPi-Software | DietPi-Userdata validation: /mnt/dietpi_userdata
[  OK  ] DietPi-Software | Checking network connectivity
[  OK  ] DietPi-Software | Checking DNS resolver
[  OK  ] Network time sync | Completed
[ SUB1 ] DietPi-Services > unmask 
[  OK  ] DietPi-Services | unmask : avahi-daemon
[  OK  ] DietPi-Services | unmask : php7.3-fpm
[  OK  ] DietPi-Services | unmask : lighttpd
[  OK  ] DietPi-Services | unmask : sabnzbd
[  OK  ] DietPi-Services | unmask : cron
[ SUB1 ] DietPi-Services > stop 
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : sabnzbd
[  OK  ] DietPi-Services | stop : lighttpd
[  OK  ] DietPi-Services | stop : php7.3-fpm
[  OK  ] DietPi-Services | stop : avahi-daemon
[  OK  ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads /var/www /opt /usr/local/bin
[  OK  ] DietPi-Software | chown dietpi:dietpi /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[  OK  ] DietPi-Software | chmod 0775 /mnt/dietpi_userdata/Music /mnt/dietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ INFO ] DietPi-Software | APT update, please wait...
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 https://archive.raspberrypi.org/debian buster InRelease
Reading package lists...
[  OK  ] DietPi-Software | APT update

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Checking for prerequisite software

[ INFO ] DietPi-Software | Python 3 will be reinstalled
[ INFO ] DietPi-Software | UnRAR will be reinstalled
[ INFO ] DietPi-Software | Build-Essential will be reinstalled

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Build-Essential: GNU C/C++ compiler, development libraries and headers

[ INFO ] DietPi-Software | APT install for: g++ make automake, please wait...
[  OK  ] DietPi-Software | APT install for: g++ make automake

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Python 3: Runtime system, pip package installer and development headers

[  OK  ] DietPi-Software | Checking URL: https://bootstrap.pypa.io/pip/get-pip.py
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://bootstrap.pypa.io/pip/get-pip.py -o get-pip.py
[ INFO ] DietPi-Software | APT install for: python3-dev, please wait...
[  OK  ] DietPi-Software | APT install for: python3-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[ INFO ] DietPi-Software | python3 ./get-pip.py, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Collecting pip
  Using cached https://www.piwheels.org/simple/pip/pip-21.3.1-py3-none-any.whl (1.7 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 21.3.1
    Uninstalling pip-21.3.1:
      Successfully uninstalled pip-21.3.1
Successfully installed pip-21.3.1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[  OK  ] DietPi-Software | python3 ./get-pip.py
[  OK  ] DietPi-Software | rm get-pip.py

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing UnRAR: unarchiver for .rar files

[  OK  ] DietPi-Software | Checking URL: https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[  OK  ] DietPi-Software | curl -sSfL https://dietpi.com/downloads/binaries/rpi/unrar-armhf-buster.deb -o unrar-armhf-buster.deb
[ INFO ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb, please wait...
[  OK  ] DietPi-Software | APT install for: ./unrar-armhf-buster.deb
[  OK  ] DietPi-Software | rm unrar-armhf-buster.deb

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing SABnzbd: nzb download manager

[  OK  ] DietPi-Software | Checking URL: https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://github.com/sabnzbd/sabnzbd/archive/master.tar.gz -o master.tar.gz
[ INFO ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev, please wait...
[  OK  ] DietPi-Software | APT install for: par2 p7zip-full libffi-dev libssl-dev
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[  OK  ] DietPi-Software | tar xf master.tar.gz
[  OK  ] DietPi-Software | rm master.tar.gz
[  OK  ] DietPi-Software | mv /etc/sabnzbd/sabnzbd.ini sabnzbd-master/sabnzbd.ini
[  OK  ] DietPi-Software | rm -R /etc/sabnzbd
[  OK  ] DietPi-Software | mv sabnzbd-master /etc/sabnzbd
[  OK  ] DietPi-Software | cd /etc/sabnzbd
[ INFO ] DietPi-Software | pip3 install --no-cache-dir -Ur requirements.txt, please wait...
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple/
Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
Ignoring pyobjc: markers 'sys_platform == "darwin"' don't match your environment
Requirement already satisfied: sabyenc3>=4.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 1)) (4.0.2)
Requirement already satisfied: cheetah3>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 2)) (3.2.6.post1)
Requirement already satisfied: cryptography in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 3)) (35.0.0)
Collecting cryptography
  Downloading cryptography-36.0.0.tar.gz (571 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: feedparser>=6.0.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 4)) (6.0.2)
Collecting feedparser>=6.0.0
  Downloading https://www.piwheels.org/simple/feedparser/feedparser-6.0.8-py3-none-any.whl (81 kB)
Requirement already satisfied: configobj in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 5)) (5.0.6)
Requirement already satisfied: cheroot in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 6)) (8.5.2)
Requirement already satisfied: cherrypy in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 7)) (18.6.0)
Collecting cherrypy
  Downloading https://www.piwheels.org/simple/cherrypy/CherryPy-18.6.1-py2.py3-none-any.whl (419 kB)
Requirement already satisfied: portend in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 8)) (2.7.1)
Collecting portend
  Downloading https://www.piwheels.org/simple/portend/portend-3.1.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: chardet in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 9)) (4.0.0)
Requirement already satisfied: notify2 in /usr/local/lib/python3.7/dist-packages (from -r requirements.txt (line 10)) (0.3.1)
Collecting puremagic
  Downloading https://www.piwheels.org/simple/puremagic/puremagic-1.11-py3-none-any.whl (31 kB)
Collecting guessit>=3.1.0
  Downloading https://www.piwheels.org/simple/guessit/guessit-3.4.3-py3-none-any.whl (173 kB)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.7/dist-packages (from cryptography->-r requirements.txt (line 3)) (1.14.3)
Requirement already satisfied: sgmllib3k in /usr/local/lib/python3.7/dist-packages (from feedparser>=6.0.0->-r requirements.txt (line 4)) (1.0.0)
Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from configobj->-r requirements.txt (line 5)) (1.15.0)
Requirement already satisfied: more-itertools>=2.6 in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (8.5.0)
Requirement already satisfied: jaraco.functools in /usr/local/lib/python3.7/dist-packages (from cheroot->-r requirements.txt (line 6)) (3.0.1)
Requirement already satisfied: zc.lockfile in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (2.0)
Requirement already satisfied: jaraco.collections in /usr/local/lib/python3.7/dist-packages (from cherrypy->-r requirements.txt (line 7)) (3.0.0)
Requirement already satisfied: tempora>=1.8 in /usr/local/lib/python3.7/dist-packages (from portend->-r requirements.txt (line 8)) (4.0.0)
Collecting python-dateutil
  Downloading https://www.piwheels.org/simple/python-dateutil/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting rebulk>=3.1.0
  Downloading https://www.piwheels.org/simple/rebulk/rebulk-3.1.0-py3-none-any.whl (63 kB)
Collecting babelfish>=0.6.0
  Downloading https://www.piwheels.org/simple/babelfish/babelfish-0.6.0-py3-none-any.whl (93 kB)
Collecting importlib-resources
  Downloading https://www.piwheels.org/simple/importlib-resources/importlib_resources-5.4.0-py3-none-any.whl (28 kB)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.12->cryptography->-r requirements.txt (line 3)) (2.20)
Requirement already satisfied: pytz in /usr/local/lib/python3.7/dist-packages (from tempora>=1.8->portend->-r requirements.txt (line 8)) (2020.1)
Collecting zipp>=3.1.0
  Downloading https://www.piwheels.org/simple/zipp/zipp-3.6.0-py3-none-any.whl (5.3 kB)
Requirement already satisfied: jaraco.text in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.2.0)
Requirement already satisfied: jaraco.classes in /usr/local/lib/python3.7/dist-packages (from jaraco.collections->cherrypy->-r requirements.txt (line 7)) (3.1.0)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from zc.lockfile->cherrypy->-r requirements.txt (line 7)) (50.3.0)
Building wheels for collected packages: cryptography
  Building wheel for cryptography (pyproject.toml): started
  Building wheel for cryptography (pyproject.toml): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpcc_t2uci
       cwd: /tmp/pip-install-xoydks4d/cryptography_5e6abd3f7477488986c605bb1cbe873c
  Complete output (200 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-armv7l-3.7
  creating build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/utils.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/fernet.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/exceptions.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__init__.py -> build/lib.linux-armv7l-3.7/cryptography
  copying src/cryptography/__about__.py -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/oid.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/ocsp.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/general_name.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/extensions.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/base.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  copying src/cryptography/x509/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/x509
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/_oid.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  copying src/cryptography/hazmat/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/twofactor
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/serialization
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/kdf
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/ciphers
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/types.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/primitives/asymmetric
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/openssl
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-3.7/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.linux-armv7l-3.7/cryptography
  creating build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-3.7/cryptography/hazmat/bindings/_rust
  running build_ext
  running build_rust
      Updating crates.io index
  
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation/ for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq/
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation/#rust
  
      Python: 3.7.3
      platform: Linux-5.10.63-v7l+-armv7l-with-debian-10.11
      pip: 21.3.1
      setuptools: 50.3.0
      setuptools_rust: 1.0.0
      =============================DEBUG ASSISTANCE=============================
  
  Traceback (most recent call last):
    File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
      main()
    File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 262, in build_wheel
      metadata_directory)
    File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 217, in build_wheel
      wheel_directory, config_settings)
    File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 202, in _build_with_temp_dir
      self.run_setup()
    File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 145, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 54, in <module>
      rust_version=">=1.41.0",
    File "/usr/local/lib/python3.7/dist-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/usr/lib/python3.7/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/usr/local/lib/python3.7/dist-packages/wheel/bdist_wheel.py", line 290, in run
      self.run_command('build')
    File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/usr/lib/python3.7/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-uecppy4q/overlay/lib/python3.7/site-packages/setuptools_rust/setuptools_ext.py", line 123, in run
      build_rust.run()
    File "/tmp/pip-build-env-uecppy4q/overlay/lib/python3.7/site-packages/setuptools_rust/command.py", line 72, in run
      self.run_for_extension(ext)
    File "/tmp/pip-build-env-uecppy4q/overlay/lib/python3.7/site-packages/setuptools_rust/build.py", line 163, in run_for_extension
      dylib_paths = self.build_extension(ext)
    File "/tmp/pip-build-env-uecppy4q/overlay/lib/python3.7/site-packages/setuptools_rust/build.py", line 211, in build_extension
      metadata = json.loads(check_output(metadata_command))
    File "/usr/lib/python3.7/subprocess.py", line 395, in check_output
      **kwargs).stdout
    File "/usr/lib/python3.7/subprocess.py", line 487, in run
      output=stdout, stderr=stderr)
  subprocess.CalledProcessError: Command '['cargo', 'metadata', '--manifest-path', 'src/rust/Cargo.toml', '--format-version', '1']' died with <Signals.SIGSEGV: 11>.
  ----------------------------------------
  ERROR: Failed building wheel for cryptography
Failed to build cryptography
ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects
[FAILED] DietPi-Software | pip3 install --no-cache-dir -Ur requirements.txt
root@DietPi:/etc/sabnzbd#

Any ideas?

@MichaIng
Copy link
Owner

MichaIng commented Nov 27, 2021

This matches the error which the piwheels guys face as well, and which it the reason why the is no pre-compiled wheel available: piwheels/packages#264 (comment)

Can you try:

sudo pip3 install -U pip setuptools wheel
sudo pip3 install -U cryptography

Let's skip the overhead of dietpi-software for now and concentrate on getting the module compiled. I'll also spin up my RPi Buster testing container now.

@MichaIng
Copy link
Owner

Okay, nope does not work with the cargo, rustc from Debian, regardless which Python module versions are used. No way around rustup:

# Do this as root user!
apt purge --autoremove cargo rustc
curl -sSfL 'https://sh.rustup.rs' | dash -s -- --profile minimal
. ~/.cargo/env
pip3 install -U cryptography

@MichaIng
Copy link
Owner

Ah, awesome, the Python 3.7 wheel has just been uploaded, so all above is not required anymore and dietpi-software reinstall 139 will now succeed 🥳.

@MichaIng MichaIng added the Solution available 🥂 Definite solution has been done label Nov 27, 2021
@MichaIng
Copy link
Owner

Issue persists on Stretch, but I'm not gonna implement the whole rustup block only for a Debian version where we gonna drop support for in ~1 month 😉. Obviously the amount of users still running Stretch is sufficiently low by now.

@bensp
Copy link
Author

bensp commented Nov 27, 2021

Thanks for your amazing responsiveness, technical knowledge and the time you've invested: issue resolved!

Micha, I made a small donation, thank you again.

@bensp bensp closed this as completed Nov 27, 2021
@MichaIng
Copy link
Owner

Many thanks, highly appreciated 🙂.

@MichaIng MichaIng changed the title DietPi-Software | Add Rust compiler dependency for Python cryptography build DietPi-Software | SABnzbd: Install fails on Buster and Stretch Nov 27, 2021
@MichaIng
Copy link
Owner

Fixed for Stretch as well, simply by defining the cryptography version explicitly that is still pre-compiled for Stretch (Python 3.5): #4999

Build dependencies shouldn't be required on any architecture or distro version anymore, file logging disabled in favour of journal logs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants