|
|
Title: Предпочтения Python будут следовать за PYTHON_TARGETS
|
|
|
Author: Michał Górny <mgorny@gentoo.org>
|
|
|
Translator: Alexey Sokolov <alexey+gentoo@asokolov.org>
|
|
|
Posted: 2021-01-30
|
|
|
Revision: 1
|
|
|
News-Item-Format: 2.0
|
|
|
|
|
|
1 февраля 2021 пользователи стабильной ветки перейдут на новый метод обновления
|
|
|
предпочтительной версии Python, который будет использовать значение переменной
|
|
|
PYTHON_TARGETS и применять механизм обновления конфигураций. Также мы
|
|
|
объявляем app-eselect/eselect-python устаревшим и по умолчанию перестанем его
|
|
|
устанавливать. Если вы хотите использовать самую новую версию Python из
|
|
|
указанных в PYTHON_TARGETS, вам надо только принять изменения конфигурации.
|
|
|
Если же вам нужно настроить индивидуальное поведение, продолжайте читать.
|
|
|
|
|
|
С 2017 года /usr/bin/python и тому подобные символические ссылки без версии
|
|
|
являются обёртками с помощью dev-lang/python-exec. Список предпочтительных
|
|
|
реализаций Python хранится в /etc/python-exec/python-exec.conf и/или в
|
|
|
/etc/python-exec/<программа>.conf для программ с конфигурацией не по умолчанию.
|
|
|
Для обратной совместимости app-eselect/eselect-python остался обёрткой, которая
|
|
|
обновляла этот файл.
|
|
|
|
|
|
Однако сам по себе этот механизм оказался неудобен пользователям, которым
|
|
|
теперь приходилось обновлять python-exec.conf каждый раз, когда менялась
|
|
|
переменная PYTHON_TARGETS. Благодаря логике запасных вариантов это не было
|
|
|
большой проблемой для программ, установленных из репозитория Gentoo, т.к. они
|
|
|
гарантируют использование поддерживаемой реализации Python. Но пользователи
|
|
|
сообщали, что, когда предпочтение для /usr/bin/python не совпадало с их
|
|
|
PYTHON_TARGETS, из-за неудовлетворённых зависимостей ломались пользовательские
|
|
|
программы, что противоречит принципу наименьшего удивления.
|
|
|
|
|
|
Поэтому мы решили изменить стандартную настройку python-exec, теперь она будет
|
|
|
совпадать с PYTHON_TARGETS в порядке предпочтения, используемым eclass'ом:
|
|
|
сначала все CPython, начиная с новейшей версии и заканчивая старейшей, затем
|
|
|
другие реализации Python. Это изменение будет установлено в систему с помощью
|
|
|
механизма защиты конфигураций каждый раз при установке или пересборке
|
|
|
dev-lang/python-exec-conf из-за изменения PYTHON_TARGETS. При этом у
|
|
|
пользователей будет возможность интерактивно подтвердить данные изменения.
|
|
|
|
|
|
Если новые настройки вам не подходят, пожалуйста, используйте ваш любимый
|
|
|
инструмент обновления конфигурации, чтобы отбросить изменения или
|
|
|
отредактировать новый файл.
|
|
|
|
|
|
Более того, dev-lang/python больше не будет пытаться автоматически обновить
|
|
|
предпочтительную версию Python и больше не будет автоматически затягивать
|
|
|
eselect-python. Если вы хотите продолжать его использовать, пожалуйста,
|
|
|
установите его вручную, чтобы он не удалился:
|
|
|
|
|
|
emerge -n app-eselect/eselect-python
|