ohmtech-rdi / eurorack-blocks

Software to Hardware Prototyping for Eurorack using C++, Max/Gen~ or Faust
Other
296 stars 19 forks source link

erbb setup fails with urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] #563

Closed daFunkyCoder closed 1 year ago

daFunkyCoder commented 1 year ago

After a fresh install of OSX, and installing Python from python.org as said in the documentation, erbb setup fails:

  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 1348, in do_open
    h.request(req.get_method(), req.selector, req.data, headers,
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 1283, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 1329, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 1278, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 1038, in _send_output
    self.send(msg)
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 976, in send
    self.connect()
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/client.py", line 1455, in connect
    self.sock = self._context.wrap_socket(self.sock,
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ssl.py", line 517, in wrap_socket
    return self.sslsocket_class._create(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ssl.py", line 1075, in _create
    self.do_handshake()
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ssl.py", line 1346, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1002)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/simon/eurorack-blocks/build-system/scripts/erbb", line 463, in <module>
    sys.exit (main ())
              ^^^^^^^
  File "/Users/simon/eurorack-blocks/build-system/scripts/erbb", line 414, in main
    setup ()
  File "/Users/simon/eurorack-blocks/build-system/scripts/erbb", line 171, in setup
    setup.install_kicad_macos ()
  File "/Users/simon/eurorack-blocks/build-system/setup/__init__.py", line 111, in install_kicad_macos
    download (
  File "/Users/simon/eurorack-blocks/build-system/setup/__init__.py", line 95, in download
    urllib.request.urlretrieve (
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 241, in urlretrieve
    with contextlib.closing(urlopen(url, data)) as fp:
                            ^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 216, in urlopen
    return opener.open(url, data, timeout)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 519, in open
    response = self._open(req, data)
               ^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 536, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 496, in _call_chain
    result = func(*args)
             ^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 1391, in https_open
    return self.do_open(http.client.HTTPSConnection, req,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/urllib/request.py", line 1351, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1002)>

I found a workaround:

Now erbb setup will work properly

eliottparis commented 1 year ago

Same issue on Windows:

$ erbb setup
Extracting msys2_mingw64.zip...
Extracting kicad_minimal_windows_6.0.11-0.tar.gz...
Traceback (most recent call last):
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 1348, in do_open
    h.request(req.get_method(), req.selector, req.data, headers,
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 1286, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 1332, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 1281, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 1041, in _send_output
    self.send(msg)
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 979, in send
    self.connect()
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\http\client.py", line 1458, in connect
    self.sock = self._context.wrap_socket(self.sock,
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\ssl.py", line 517, in wrap_socket
    return self.sslsocket_class._create(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\ssl.py", line 1075, in _create
    self.do_handshake()
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\ssl.py", line 1346, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1002)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\epa\eurorack-blocks\build-system\scripts\erbb", line 605, in <module>
    sys.exit (main ())
              ^^^^^^^
  File "C:\Users\epa\eurorack-blocks\build-system\scripts\erbb", line 569, in main
    setup (args)
  File "C:\Users\epa\eurorack-blocks\build-system\scripts\erbb", line 183, in setup
    setup.install_gnu_arm_embedded_windows ()
  File "C:\Users\epa\eurorack-blocks\build-system\setup\__init__.py", line 326, in install_gnu_arm_embedded_windows
    download (
  File "C:\Users\epa\eurorack-blocks\build-system\setup\__init__.py", line 103, in download
    urllib.request.urlretrieve (
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 241, in urlretrieve
    with contextlib.closing(urlopen(url, data)) as fp:
                            ^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 216, in urlopen
    return opener.open(url, data, timeout)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 519, in open
    response = self._open(req, data)
               ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 536, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 496, in _call_chain
    result = func(*args)
             ^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 1391, in https_open
    return self.do_open(http.client.HTTPSConnection, req,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\epa\AppData\Local\Programs\Python\Python311-arm64\Lib\urllib\request.py", line 1351, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1002)>

Installing pip-system-certs fixes the certificate issue and gcc-arm-none-eabi-10.3-2021.10-win32.zip is now successfully downloaded.