Script for SSL certificate creation broken on 20.04 Focal Fossa

certbot-auto was last updated 2 months ago

certbot-apache was modified 8 days ago.

so i guess we can expect a new release for certbot-auto

I spun up a fresh Ubuntu 20.04 in Virtualbox to dig into this issue.
Then i downloaded the certbot-auto script:

wget https://dl.eff.org/certbot-auto
chmod a+x ./certbot-auto

Executed it with:

sudo ./certbot-auto --install-only --verbose

Script failed with exactly the same error message:

Reading state information... Done
Note, selecting 'python-is-python2' instead of 'python'
Note, selecting 'python-dev-is-python2' instead of 'python-dev'
Package python-virtualenv is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'python-virtualenv' has no installation candidate

I tried different things, but couldn’t find a quick solution either… :unamused:
I assume it has something to do with Python 3 not detected.
I wrote an issue in the certbot GitHub.
Hope they will fix it soon.

1 Like

it’s not clear what you did exactly.
to set an env variable for a script myscript.sh do

USE_PYTHON_3=1 myscript.sh

or

export USE_PYTHON_3=1
myscript.sh

I also tried this, it doesn’t work.

@damencho

News from the certbot GitHub:

We’re planning on deprecating certbot-auto later this year though so we’re not going to add support for Ubuntu 20.04 to it. Our recommended instructions for installing Certbot on Ubuntu 20.04 can be found at https://certbot.eff.org/lets-encrypt/ubuntuother-other.

This means that the install-letsencrypt-cert.sh script for jitsi should be changed too?
Meanwhile it should be clearly stated in the documentation of the easy install, that the installation (with letsencrypt certificates) in Ubuntu 20.04 will not work?

In the meantime, before that’s fixed in certbot-auto, a quick and dirty fix:
Install certbot

# apt -y install certbot

Edit the /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh and replace all occurrences of
./certbot-auto
with
certbot

then run the script.

7 Likes

Awesome, thanks for the tip. worked perfectly :slight_smile:

Do you have universe repo enabled? just add them & it should work

apt install software-properties-common 
apt-add-repository universe

No it still doesn’t work.
Just quickly tried this on a fresh 20.04 in Virtualbox:

sudo apt install software-properties-common
sudo apt-add-repository universe
sudo apt update

wget https://dl.eff.org/certbot-auto
sudo chmod a+x ./certbot-auto

sudo ./certbot-auto --install-only --verbose

and still the same error:

E: Package 'python-virtualenv' has no installation candidate

then using certbot is the only alternative until a new package for certbot-auto is released

PS: I prefer certbot over certbot-auto

There will be no new release for cerbot-auto, it is no longer maintained.
The certbot installation scripts for jitsi have to be adjusted.
Or at least the documentation.
Otherwise this forum will be flooded with even more avoidable threads…

2 Likes

maybe you can suggest in github

sudo apt install python3_venv
sudo USE_PYTHON_3=1 ./certbot-auto --install-only --verbose --no-bootstrap

@gpatel-fr

It doesn’t solve the problem, since certbot-auto is called in the script install-letsencrypt-cert.sh. At least the script or the documentation needs to be adjusted?

Yep, just wrote an issue

Thanks Franky1. Just ran into this problem as well on 20.04

You are a life-saver to me as well! It worked for me.
Should be careful on the bleeding edge new 20.04 release. I learned my lesson this time.

Actually I was not exactly looking to solve this issue since desktop browsers all worked ok.
I had the problem that iPhone app complained about “You have been disconnected. Please check your network connection.” Or “Reconnecting in 15 seconds…” I got the hint from Safari browser access page and had the chance to see the certificate complaint that the certificate is no-good or expired. That was unexpected and that was the reason I found myself here.

Guess what, I got rid of the " python-virtualenv" problem and ALSO got the iphone app to work alright!

There were some threads about the iPhone/Android issues and I bet some of them are related to this. Especially when mysteriously things stopped working for no good reason. Their /etc/cron.weekly/letsenscrypt-renew should be manually tested. That might have failed when the cert expired, and mystery cannot be explained.

For all the impatient Ubuntu 20.04 users, here is a good step by step guide that also covers the issues about certbot:

1 Like

In Ubuntu 20.04, apt / apt-get installs certbot in /usr/bin/. The script install-letsencrypt-cert.sh expects certbot to be at /usr/sbin. I did a symbolic link to solve this issue sudo ln -s /usr/bin/certbot /usr/sbin/certbot.

Hope this is of help.

2 Likes

This worked for me. Thanks!