Автор Тема: Обновление python  (Прочитано 1015 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4637
Обновление python
« : Ноябрь 08, 2022, 15:43:57 »
В Runtu XFCE 18.04 x64 перестал работать yt-dlp, обновил его, новая версия просит python 3.7, а в основном репозитории есть только python 3.6.9

Установил из ppa

sudo add-apt-repository ppa:deadsnakes/ppasudo apt install python3.7
Назначил python3.7 по умолчанию
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2sudo update-alternatives --config python3

Тему создал в этом разделе, чтобы предложить это все упорядочить как-то, чтобы обновлялось в синаптике само и не требовало шаманства.


PS: думал создание в альтернативах питона 3 не обязательно, попробовал убрать, получил неработающие программы на питоне. Вернул обратно.
Поэкспериментировал еще, python 3.10 слишком новая для Runtu 18.04, многие программы отказываются с ней работать. Вспомнил что yt-dlp просил именно python3.7, поставил её и все проблемы исчезли, питоновские программы из основного репозитория работают.
« Последнее редактирование: Ноябрь 09, 2022, 13:53:23 от Пользователь. »

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4637
Re: Обновление python
« Ответ #1 : Ноябрь 10, 2022, 18:52:48 »
Решил проблему по другому.

yt-dlp требует python 3.7
Программы из основного репозитория, например software-properties-gtk, требуют python 3.6

Если установлены несколько версий питона, то приходится переключаться то на одну, то на другую, в зависимости какая программа требуется в данный момент.

Пытался указать версию питона для каждой программы отдельно, для терминала это не сложно сделать через алиас, а вот внутри mpv алиасы баша не учитываются. Пытался написать скрипт запуска yt-dlp с нужной версией питона, но не получилось, сложно. Можно еще было попытаться через pyenv назначить для папки с исполняемыми файлами определенную версию питона, но это для моего случая тоже неправильно.

С помощью яндекса выяснил, что я не первый кто с этим столкнулся, для обхода этой проблемы на сайте yt-dlp есть бинарник с встроенным питоном (yt-dlp_linux 31,6 Mb), для старых версий системы нужно его использовать, и не потребуется шаманство с новыми версиями питона.

Необходимость в обновлении версии питона из сторонних репозиториев отпала.

Проблема решена, предложение по доработке системы снимаю.
Прошу перенести тему в общие вопросы.
« Последнее редактирование: Ноябрь 10, 2022, 18:54:58 от Пользователь. »