Ubuntu/Python/3.14: Difference between revisions
| (2 intermediate revisions by the same user not shown) | |||
| Line 14: | Line 14: | ||
## BETTER, should also install virtual-env | ## BETTER, should also install virtual-env | ||
sudo apt -y install python3.14-dev python3.14-venv | sudo apt -y install python3.14-dev python3.14-venv | ||
## EVEN BETTER, | |||
sudo apt -y install python3.14-dev python3.14-venv python3.14-full | |||
python3.14 --version | python3.14 --version | ||
| Line 48: | Line 50: | ||
# system wide | # system wide | ||
curl -sS https://bootstrap.pypa.io/get-pip.py | sudo python3.14 | curl -sS https://bootstrap.pypa.io/get-pip.py | sudo python3.14 | ||
# Ubuntu 26 | |||
sudo apt install python3-pip | |||
sudo python3.14 -m pip install --upgrade --ignore-installed --break-system-packages pip | |||
# or user only: | # or user only: | ||
| Line 147: | Line 153: | ||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 312 | sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 312 | ||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.14 314 | sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.14 314 | ||
sudo update-alternatives --set python3 /usr/bin/python3.14 | |||
## maybe don't do this one... it seems to break things on ubuntu, like 'apt update' | |||
# sudo update-alternatives --set python3 /usr/bin/python3.14 | |||
# if you did you can revert it... | |||
sudo update-alternatives --set python3 /usr/bin/python3.12 | |||
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.12 312 | sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.12 312 | ||
Latest revision as of 09:25, 20 September 2026
Install with DeadSnakes PPA
Dependency:
apt update ; sudo apt -y install software-properties-common
Add Deadsnakes and install python 3.14
sudo add-apt-repository ppa:deadsnakes/ppa # respond to prompts # OR yes | sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update
# sudo apt install python3.14 ## BETTER, should also install virtual-env sudo apt -y install python3.14-dev python3.14-venv ## EVEN BETTER, sudo apt -y install python3.14-dev python3.14-venv python3.14-full
python3.14 --version
(dup) For development, virtuan env (dup above)
# sudo apt install python3.14-dev python3.14-venv
For a more complete installation including the ensurepip, Tkinter IDE and other utilities, you can use:
sudo apt install python3.14-full
# ensurepip [1] python3.14 -m ensurepip --version
Pip 3.14:
# First, try and see if pip responds sudo python3.14 -m pip --version
If it is happy, try upgrading it:
sudo python3.14 -m pip install --upgrade pip
If it fails to upgrade, or there is an issue, or if Pip was previously installed, but is sad:
sudo apt -y remove python3-pip
## OR try force upgrading it sudo python3.14 -m pip install --upgrade --ignore-installed pip
If Pip was not previously installed:
## not needed # mkdir ~/.src ; cd ~/.src # mkdir pip3.14 ; cd pip3.14
# system wide curl -sS https://bootstrap.pypa.io/get-pip.py | sudo python3.14
# Ubuntu 26 sudo apt install python3-pip sudo python3.14 -m pip install --upgrade --ignore-installed --break-system-packages pip
# or user only: curl -sS https://bootstrap.pypa.io/get-pip.py | python3.14
Verify:
sudo python3.14 -m pip --version python3.14 -m pip --version
sudo pip3.14 --version pip3.14 --version
sudo which pip3.14 which pip3.14
Upgrade:
sudo python3.14 -m pip install pip --upgrade # or python3.14 -m pip install pip --upgrade
sudo python3.14 -m pip --version python3.14 -m pip --version
List
python3.14 -m pip list
venv: (requires pip)
python3.14 -m venv -h
# check if pip is working python3.14 -m ensurepip # /usr/bin/python3.14: No module named ensurepip # if this fails with the above, install pip and python3.14-venv ^
cd ~ ; rm -rf .test-venv ; mkdir .test-venv ; cd .test-venv ; python3.14 -m venv venv
Version checks:
pip --version pip3.14 --version python3.14 -m pip --version
# as root with apt pip package: pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12) pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.14) # as user with apt pip package pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12) pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.14)
# as root with pypa install: pip 26.2.1 from /usr/local/lib/python3.14/dist-packages/pip (python 3.14) # as user pypa install: pip 26.2.1 from /home/kenneth/.local/lib/python3.14/site-packages/pip (python 3.14)
pip3.14 script
Dead-Snakes doesn't install the pip3.14 script for reasons (as you will see...) You can manually install, by copying the python 3.12 version, and changing the shebang header from python3 to python3.14. Only useful as a convenience for regular users, not for root.
cd /usr/bin cp pip3.12 pip3.14 sed -i "s/python3/python3.14/" pip3.14
Note, calling pip directly as root will error out, but at least as users you can call it to install local packages
pip3.14 install pip --upgrade ERROR: Cannot uninstall pip 24.0, RECORD file not found. Hint: The package was installed by debian.
/usr/bin/pip3.14
#!/usr/bin/python3.14
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
sys.exit(main())
Alternatively, you could also just create an alias:
alias pip3.14="python3.14 -m pip"
alternatives
Python 3.14
sudo yum install python3.14 python3.14-pip
sudo update-alternatives --list
sudo update-alternatives --display python3 sudo update-alternatives --display python sudo update-alternatives --display pip3 sudo update-alternatives --display pip
# sudo update-alternatives --config python
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 312 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.14 314
## maybe don't do this one... it seems to break things on ubuntu, like 'apt update' # sudo update-alternatives --set python3 /usr/bin/python3.14 # if you did you can revert it... sudo update-alternatives --set python3 /usr/bin/python3.12
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.12 312 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.14 314 sudo update-alternatives --set python /usr/bin/python3.14 sudo update-alternatives --install /usr/bin/pip3 pip3 /usr/bin/pip3.14 314 sudo update-alternatives --set pip3 /usr/bin/pip3.14
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3.14 314 sudo update-alternatives --set pip /usr/bin/pip3.14