This is the problem. Also on some Linux distros.
Short version: The intermediate CA certificate of Letsencrypt is not available and the used libs in PlayonLinux/Mac reject downloading from a server with SSL + Letsencrypt certificate.
I have the same issue on Linux, POL 4.3.4. I'm trying again and again for one hour now...
~$ env PYTHONHTTPSVERIFY=0 playonlinux
The "real" fix:
The source of all these issues is the "Let's Encrypt" SSL certificate of the referred website. To verify this certificate a so called intermediate CA certificate (cacert) is needed, which is missing in the linux distribution.
To solve this we have to do two things:
- Install te missing CA certificate
- Tell python and wget to use the system wide CA certs
Download the CA certificate from here: https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem and rename it to lets-encrypt-x3-cross-signed.crt
Make a new folder if not available (as root):
sudo mkdir /usr/share/ca-certificates/extra
Move the certificate into this folder.
Update the system wide CA certs:
sudo dpkg-reconfigure ca-certificates
You can start POL now with:
env SSL_CERT_DIR=/etc/ssl/certs playonlinux
We see the list of wine versions, but we still can't install them because wget also needs the intermediate CA certificate.
For some reason wget ignores SSL_CERT_DIR and I found only one way to determine where it looks for certificates:
strace wget -q --prefer-family=IPv4 https://phoenicis.playonlinux.com/index.php/wine?os=linux -O- 2>&1 | grep ssl
stat("/usr/local/ssl/certs/4f06f81d.0"
So, wget looks for the certs in /usr/local/ssl/certs/
To make wget accept the Let's Encryt certificate, we copy intermediate CA cert to this folder:
cp -P /etc/ssl/certs/4f06f81d.0 /etc/ssl/certs/lets-encrypt-x3-cross-signed.pem /usr/local/ssl/certs/
(-P = do not dereference links)
That's it!
At least this how it works on Ubuntu 20.04.