Error with Python Virtual Enviroment

Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g., so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is:
I ran this command:
sudo /usr/local/bin/certbot-auto --nginx
It produced this output:
Bootstrapping dependencies for Debian-based OSes… (you can skip this with --no-bootstrap)
Hit:1 buster InRelease
Hit:2 buster InRelease
Reading package lists… Done
Reading package lists… Done
Building dependency tree
Reading state information… Done
augeas-lenses is already the newest version (1.11.0-3).
ca-certificates is already the newest version (20190110).
gcc is already the newest version (4:8.3.0-1+rpi2).
libaugeas0 is already the newest version (1.11.0-3).
libffi-dev is already the newest version (3.2.1-9).
python is already the newest version (2.7.16-1).
python-dev is already the newest version (2.7.16-1).
python-virtualenv is already the newest version (15.1.0+ds-2).
virtualenv is already the newest version (15.1.0+ds-2).
libssl-dev is already the newest version (1.1.1d-0+deb10u2+rpt1).
openssl is already the newest version (1.1.1d-0+deb10u2+rpt1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Creating virtual environment…
Installing Python packages…
Had a problem while installing Python packages.

pip prints the following errors:

Collecting ConfigArgParse==1.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 12))
Downloading (40kB)
Collecting certifi==2019.11.28 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 14))
Downloading (156kB)
Collecting cffi==1.13.2 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 17))
Downloading (460kB)
Collecting chardet==3.0.4 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 51))
Downloading (133kB)
Collecting configobj==5.0.6 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 54))
Collecting cryptography==2.8 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 56))
Downloading (504kB)
Collecting distro==1.4.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 78))
Collecting enum34==1.1.6 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 81))
Collecting funcsigs==1.0.2 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 86))
Collecting idna==2.8 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 89))
Downloading (58kB)
Collecting ipaddress==1.0.23 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 92))
Collecting josepy==1.2.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 95))
Downloading (57kB)
Collecting mock==1.3.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 98))
Downloading (56kB)
Collecting parsedatetime==2.5 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 101))
Downloading (40kB)
Collecting pbr==5.4.4 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 104))
Downloading (110kB)
Collecting pyOpenSSL==19.1.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 107))
Downloading (53kB)
Collecting pyRFC3339==1.1 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 110))
Collecting pycparser==2.19 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 113))
Downloading (111kB)
Collecting pyparsing==2.4.6 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 115))
Downloading (67kB)
Collecting python-augeas==0.5.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 118))
Downloading (90kB)
Collecting pytz==2019.3 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 120))
Downloading (509kB)
Collecting requests==2.22.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 123))
Downloading (57kB)
Collecting requests-toolbelt==0.9.1 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 126))
Downloading (54kB)
Collecting six==1.14.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 129))
Collecting urllib3==1.25.8 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 132))
Downloading (125kB)
Collecting zope.component==4.6 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 135))
Downloading (70kB)
Collecting zope.deferredimport==4.3.1 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 137))
Collecting zope.deprecation==4.4.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 140))
Collecting zope.event==4.4 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 143))
Collecting zope.hookable==5.0.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 146))
Collecting zope.interface==4.7.1 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 186))
Downloading (151kB)
Collecting zope.proxy==4.3.3 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 226))
Downloading (44kB)
Collecting letsencrypt==0.7.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 274))
Collecting certbot==1.3.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 278))
Downloading (231kB)
Collecting acme==1.3.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 281))
Collecting certbot-apache==1.3.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 284))
Downloading (86kB)
Collecting certbot-nginx==1.3.0 (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 287))
Downloading (45kB)
Requirement already satisfied: setuptools>=1.0 in /opt/ (from josepy==1.2.0->-r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 95))
THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.
pycparser==2.19 from (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 113)):
Expected sha256 a988718abfad80b6b157acce7bf130a30876d27603738ac39f140993246b25b3
Got bc15573b7c6edd24407526dbbc7a0bd33d80d8af44231c37f58d73f56ff9cab6

zope.component==4.6 from (from -r /tmp/tmp.L4howrOwSU/letsencrypt-auto-requirements.txt (line 135)):
    Expected sha256 ec2afc5bbe611dcace98bb39822c122d44743d635dafc7315b9aef25097db9e6
         Got        74f55521dec189c08d98341edce929eba6bb2404662d1878f1b289af46f6f6a5


Certbot has problem setting up the virtual environment.

We were not be able to guess the right solution from your pip

for possible solutions.
You may also find some support resources at .

My web server is (include version):

The operating system my web server runs on is (include version):
Nginx (Latest)
My hosting provider, if applicable, is:
I can login to a root shell on my machine (yes or no, or I don’t know): Yes

I’m using a control panel to manage my site (no, or provide the name and version of the control panel): Yes

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you’re using Certbot): Latest Version (Ran the command and it tried to make the certificate…)

1 Like

this is not a domain, it’s an ip (v4) address.

It looks like a corrupted download. Did you only try once? – I’m wrong, it’s probably certbot’s requirements.txt that doesn’t have the hashes from There’s not an easy solution, you should open an issue on certbot’s github to add them.

1 Like

HOWEVER, you can install certbot from raspbian’s repositories:

apt-get install certbot python3-certbot-nginx

Perhaps we should Raspbian to the certbot instructions. Shouldn’t be too hard, as Raspbian is as far as I know almost the same as Debian :stuck_out_tongue:


I gave the IP because I don’t have a domain yet… so that’s the way to the website until then.

Hi @BentonGrayson

you can’t create a certificate with an ip address.

A worldwide unique domain name is required.


I just bought a domain and configured it with google. Ran the program and it appears to be working now. It says that the certificate is good and will expire on 2020-6-20. Now I just need to wait for google to update the domain name to make my website appear. I’ll let you know if any further issues appear. Thank you for your help!

1 Like

If http validation worked, your domain is working already.


My domain is: “”. The website won’t load though, probably because google hasn’t updated their cloud yet. They said it can take up to 48 hours.

1 Like

This worked. I made sure to check on the install pages as well to see if I missed this, turns out I didn’t. I just used the Debian (Other). Maybe it’s worth making one specifically for Raspberry Pi… :man_shrugging:

Anyway, thanks for helping me figure this out. I’ll see if the certificate truly worked when google updates their servers in the next 48 hours and makes my domain live. Thanks!

1 Like

Yep. I agree with this.

1 Like

is the right ip address?

then it’s not google, it’s your server timing out.

it could be some firewall somewhere (not likely, validation worked) or you just have no webserver on.

Yes the IP address is correct. Google did say that it can take up to 48 hours to work though… so I’m not sure. I’ll look into it more. Thanks for letting me know

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.