I tried following this guide to install Python 3.10 on my system. I ran the commands to add the PPA, did an
apt update, and then ran
apt install python3.10.
I was very surprised when I was handed this message:
Note, selecting 'postgresql-plpython3-10' for regex 'python3.10' The following additional packages will be installed: postgresql-10 postgresql-client-10 postgresql-client-common postgresql-common Suggested packages: locales-all postgresql-doc-10 The following NEW packages will be installed: postgresql-10 postgresql-client-10 postgresql-client-common postgresql-common postgresql-plpython3-10 0 upgraded, 5 newly installed, 0 to remove and 60 not upgraded. Need to get 4,958 kB of archives. After this operation, 19.4 MB of additional disk space will be used.
I later realised it's because my internet temporarily dropped while adding the PPA, and the operation subsequently failed. Adding the PPA resolved the issue, and I was now given the correct option:
The following NEW packages will be installed: libpython3.10-minimal libpython3.10-stdlib python3.10 python3.10-minimal
I was caught off guard by how different the results were. Given that I've at this point spend over 50% of my life running Linux distros, things should not catch me off guard. Running the exact same command, I'm no longer offered Postgres. I'm very concerned it even offered Postgres in the first place. I've helped friends with Ubuntu installs in the past, and walls of text confuse and bewilder them until they gain experience, so I can imagine someone ending up with an unsecured untouched DB running on their system waiting to be used as an attack vector.
My questions are:
- Why does apt try hold my hand instead of simply saying "This does not exist"? (I mean, I get it, regex match, but why blindly use regex? I've not noticed it mention regex before unless I added something like
- Can I disable this behaviour?