Ставим свежий Python на Debian 10

Эта инструкция является частью процесса Настройка сервера для FastAPI и Django.

Есть отличная инструкция, берем её за основу:
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev curl libbz2-dev
Далее необходимо загрузить свежую версию Питона. Чтобы узнать, какая версия на данный момент самая свежая, посети сайт Питона и подставь соответствующие значения в команды ниже. Я устанавливал Питон 3.9.6:
wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgz
tar -xzvf Python-3.9.6.tgz
cd Python-3.9.6
./configure --enable-optimizations --prefix=/home/www/.python3.9
Последняя опция - необязательна. Она размещает исполняемые файлы Питона в указанной папке (вместо стандартной /usr/bin/python) и позволяет запускать Питон командой python3.9. Это иногда бывает удобно, чтобы разделить Питонов разных версий.
Далее, непринципиально, но для оптимизации процесса узнаем количество ядер у твоего сервера:
nproc
и это число подставляем в следующее команду вместо 1 (я запускал на 1-ядерном сервере):
make -j 1
Примечание. С удивлением узнал, что у меня на ноуте 8 ядер.
После довольно длительной сборки вводим
sudo make altinstall
и Питон у нас установлен. Проверяем на всякий пожарный:
python3.9 --version
Если пожарный сработал, и ОС говорит вам, что такая команда не найдена, то прописываем путь к исполняемому файлу Питона. Открываем файл ~/.bashrc, например, vim-ом:
vim ~/.bashrc
и там в конце добавляем строчку
export PATH=$PATH:/home/www/.python3.9/bin/
сохраняем, выходим, перезапускаем конфигурацию
source ~/.bashrc
и снова проверяем наличие Питона:
python3.9 --version
Вот теперь точно всё должно работать.