Поломалось обновление, что-то с dev-lang/python

Уважаемые, здравствуйте!

Что-то поломалось при обновлении, может имеется возможность починить?

Попробовать переустановить dev-lang/python-3.9.13?

Только вроде как его в портеже нет?

Или есть?

DIST python-gentoo-patches-3.9.16_p3.tar.xz 27160 BLAKE2B 5a41a6ff135c3aca02b19cf9a61f554ca224173854274b872ce85e8c71f25c678604e50b87bae40d4b5ac082731c143338fcc6ef47acebad2b59ce0b1d600f5d SHA512 1ace0a9e929769c29082fdec6845a476c07c13fbbff8726a7a592fda09da8b50c996638b4e4e40acccb15630a796074329adbcc9a004c4305952fa5b0dc4146c

# equery list python
 * Searching for python ...
[I--] [??] dev-lang/python-3.9.13:3.9
[IP-] [  ] dev-lang/python-3.10.10_p3:3.10
[IP-] [  ] dev-lang/python-3.11.2_p2:3.11
 # cl-update
Синхронизация репозиториев
 * Проверка выбранного бинхоста ...                                                                                                                                                                                                                      [ ok ]
 * Проверка обновлений Distros ...                                                                                                                                                                                                                       [ ok ]
 * Проверка обновлений Calculate ...                                                                                                                                                                                                                     [ ok ]
 * Проверка обновлений Gentoo ...                                                                                                                                                                                                                        [ ok ]
 * Синхронизация завершена
Конфигурация системы
 * Сервер обновлений http://mirror.mephi.ru/calculate
Обновление пакетов
 * Вычисление зависимостей ...
 * Система находится в актуальном состоянии
 * Получение пакетов ...                                                                                                                                                                                                                                 [ ok ]
Очистка системы от ненужных пакетов
 * Вычисление зависимостей ...                                                                                                                                                                                                                           [ ok ]
 * Always study the list of packages to be cleaned for any obvious
 * mistakes. Packages that are part of the world set will always
 * be kept.  They can be manually added to this set with
 * `emerge --noreplace <atom>`.  Packages that are listed in
 * package.provided (see portage(5)) will be removed by
 * depclean, even if they are part of the world set.
 *
 * As a safety measure, depclean will not remove any packages
 * unless *all* required dependencies have been resolved.  As a
 * consequence of this, it often becomes necessary to run
 * `emerge --update --newuse --deep @world` prior to depclean.

 * Dependencies could not be completely resolved due to
 * the following required packages not being installed:
 *
 *   dev-lang/python-exec[python_targets_python3_9(-)] pulled in by:
 *     dev-lang/python-3.9.13
 *
 * Have you forgotten to do a complete update prior to depclean? The
 * most comprehensive command for this purpose is as follows:
 *
 *   emerge --update --newuse --deep --with-bdeps=y @world
 *
 * Note that the --with-bdeps=y option is not required in many
 * situations. Refer to the emerge manual page (run `man emerge`)
 * for more information about --with-bdeps.
 *
 * Also, note that it may be necessary to manually uninstall
 * packages that no longer exist in the repository, since it may not
 * be possible to satisfy their dependencies.
 * Выполнение Emerge завершилось с ошибкой
 * Не удалось обновить
 # emerge --update --newuse --deep --with-bdeps=y @world

Local copy of remote index is up-to-date and will be used.

Local copy of remote index is up-to-date and will be used.
Calculating dependencies... done!
Dependency resolution took 74.97 s.

>>> Jobs: 0 of 0 complete                           Load avg: 1.05, 0.69, 0.72
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

Выполнил это:

 # equery list -op dev-lang/python
 * Searching for python in dev-lang ...
[-P-] [  ] dev-lang/python-2.7.18_p16-r1:2.7
[-P-] [  ] dev-lang/python-3.8.16_p4:3.8
[I--] [??] dev-lang/python-3.9.13:3.9
[-P-] [  ] dev-lang/python-3.9.16_p3-r1:3.9
[IP-] [  ] dev-lang/python-3.10.10_p3:3.10
[-P-] [ ~] dev-lang/python-3.10.11:3.10
[IP-] [  ] dev-lang/python-3.11.2_p2:3.11
[-P-] [ ~] dev-lang/python-3.11.3:3.11
[-P-] [ ~] dev-lang/python-3.12.0_alpha6:3.12
[-P-] [ ~] dev-lang/python-3.12.0_alpha7:3.12

Увидел версию

dev-lang/python-3.9.16_p3-r1:3.9

и выполнил это:

# emerge =dev-lang/python-3.9.16_p3-r1:3.9

Local copy of remote index is up-to-date and will be used.

Local copy of remote index is up-to-date and will be used.
Calculating dependencies... done!
Dependency resolution took 10.44 s.

>>> Verifying ebuild manifests
>>> Running pre-merge checks for dev-lang/python-3.9.16_p3-r1
>>> Emerging (1 of 1) dev-lang/python-3.9.16_p3-r1::gentoo
>>> Installing (1 of 1) dev-lang/python-3.9.16_p3-r1::gentoo
>>> Recording dev-lang/python:3.9 in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 3.04, 2.71, 1.71
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

и всё починилось :upside_down_face:

# cl-update
Синхронизация репозиториев
 * Проверка выбранного бинхоста ...                                                                                                                                                                                                                      [ ok ]
 * Проверка обновлений Distros ...                                                                                                                                                                                                                       [ ok ]
 * Проверка обновлений Calculate ...                                                                                                                                                                                                                     [ ok ]
 * Проверка обновлений Gentoo ...                                                                                                                                                                                                                        [ ok ]
 * Синхронизация завершена
Конфигурация системы
 * Сервер обновлений http://mirror.mephi.ru/calculate
Пересборка зависимых модулей
 * Обновление конфигурационных файлов ...                                                                                                                                                                                                                [ ok ]
 * Обновление системы завершено!

А зачем тебе питон-3.9? Теперь он у тебя прибит к миру гвоздями.

1 Like

Хмм, хороший вопрос, на который отвечу - “даже и не знаю”.

Согласно этому выводу, он был установлен ранее, возможно по какой-то зависимости?

Поэтому и пришлось удовлетворять запрос:

Сейчас так:

# equery list python
 * Searching for python ...
[IP-] [  ] dev-lang/python-3.9.16_p3-r1:3.9
[IP-] [  ] dev-lang/python-3.10.11:3.10
[IP-] [  ] dev-lang/python-3.11.3:3.11
# equery g dev-lang/python:3.9
 * Searching for python in dev-lang ...

 * dependency graph for dev-lang/python-3.9.16_p3-r1
 `--  dev-lang/python-3.9.16_p3-r1  amd64
   `--  app-arch/bzip2-1.0.8-r4  (app-arch/bzip2) amd64
   `--  app-arch/xz-utils-5.4.2  (app-arch/xz-utils) amd64
   `--  dev-libs/libffi-3.4.4-r1  (dev-libs/libffi) amd64
   `--  dev-python/gentoo-common-1  (dev-python/gentoo-common) amd64
   `--  sys-libs/zlib-1.2.13-r1  (>=sys-libs/zlib-1.1.3) amd64
   `--  virtual/libcrypt-2-r1  (virtual/libcrypt) amd64
   `--  virtual/libintl-0-r2  (virtual/libintl) amd64
   `--  dev-python/ensurepip-wheels-100  (dev-python/ensurepip-wheels) amd64
   `--  sys-libs/gdbm-1.23  (sys-libs/gdbm) amd64  [berkdb]
   `--  sys-apps/util-linux-2.38.1-r2  (sys-apps/util-linux) amd64
   `--  sys-libs/ncurses-6.4_p20230401  (>=sys-libs/ncurses-5.2) amd64
   `--  sys-libs/readline-8.1_p2-r1  (>=sys-libs/readline-4.1) amd64
   `--  dev-db/sqlite-3.41.2-r1  (>=dev-db/sqlite-3.3.8) amd64
   `--  dev-libs/openssl-1.1.1t-r3  (>=dev-libs/openssl-1.1.1) amd64
   `--  dev-lang/tcl-8.6.12-r1  (>=dev-lang/tcl-8.0) amd64
   `--  dev-lang/tk-8.6.12  (>=dev-lang/tk-8.0) amd64
   `--  dev-tcltk/blt-2.5.3-r2  (dev-tcltk/blt) amd64
   `--  dev-tcltk/tix-8.4.3-r4  (dev-tcltk/tix) amd64
   `--  dev-libs/expat-2.5.0  (>=dev-libs/expat-2.1) amd64
   `--  net-wireless/bluez-5.66-r1  (net-wireless/bluez) amd64
   `--  dev-util/valgrind-3.20.0-r2  (dev-util/valgrind) amd64
   `--  app-misc/mime-types-2.1.53  (app-misc/mime-types) amd64
   `--  sys-devel/autoconf-archive-2023.02.20  (sys-devel/autoconf-archive) amd64
   `--  app-alternatives/awk-4  (app-alternatives/awk) amd64
   `--  virtual/pkgconfig-2-r1  (virtual/pkgconfig) amd64
   `--  sec-keys/openpgp-keys-python-20221025  (sec-keys/openpgp-keys-python) amd64
   `--  sys-devel/gnuconfig-20221007  (sys-devel/gnuconfig) amd64
   `--  app-portage/elt-patches-20221210  (>=app-portage/elt-patches-20170815) amd64
   `--  sys-devel/automake-1.16.5  (>=sys-devel/automake-1.16.5) amd64
   `--  sys-devel/autoconf-2.71-r5  (>=sys-devel/autoconf-2.71-r5) amd64
   `--  app-crypt/gnupg-2.2.41  (app-crypt/gnupg) amd64
   `--  app-portage/gemato-20.1  (>=app-portage/gemato-16) amd64
[ dev-lang/python-3.9.16_p3-r1 stats: packages (33), max depth (1) ]

И да, он в world:

$ cat /var/lib/portage/world | grep -i dev-lang/python
dev-lang/python:3.9

А что теперь следует предпринять?
Попробовать его оттуда удалить?
А к чему это приведёт?

# emerge -pv --depclean dev-lang/python:3.9

Calculating dependencies... done!
>>> Calculating removal order...

>>> These are the packages that would be unmerged:

 dev-lang/python
    selected: 3.9.16_p3-r1
   protected: none
     omitted: 3.10.11 3.11.3

All selected packages: =dev-lang/python-3.9.16_p3-r1

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

Packages installed:   1476
Packages in world:    204
Packages in system:   48
Required packages:    1475
Number to remove:     1

Ну вот, он вроде как никому и не нужен уже.

Хех, пойди, разберись - одному нужен “3.10”, второму он не нужен, а третьему нужен “3.11”.
При этом последнего в системе конечно же нету, а установиться он самостоятельно не желает:

Спойлер
cl-update
Синхронизация репозиториев
 * Проверка текущего сервера обновлений ...                                                                                                                                                                                           [ ok ]
 * Проверка обновлений Distros ...                                                                                                                                                                                                    [ ok ]
 * Проверка обновлений Calculate ...                                                                                                                                                                                                  [ ok ]
 * Проверка обновлений Gentoo ...                                                                                                                                                                                                     [ ok ]
 * Синхронизация завершена
Конфигурация системы
 * Сервер обновлений https://mirror.yandex.ru/calculate
Обновление пакетов
 * Вычисление зависимостей ...                                                                                                                                                                                                        [ ok ]

dev-python/six:0

  (dev-python/six-1.16.0-r1:0/0::gentoo, binary scheduled for merge) USE="userland_GNU -doc -test" ABI_X86="(64)" PYTHON_TARGETS="python3_11 (-pypy3) -python3_10" pulled in by
    dev-python/six[python_targets_python3_11] required by (sys-apps/calculate-utils-3.7.4.1-r1:3/3::calculate, binary scheduled for merge) USE="backup client console dbus desktop gpg install qt5 userland_GNU -minimal -pxe" ABI_X86="(64)" PYTHON_TARGETS="python3_11"
                   ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        

  (dev-python/six-1.16.0-r1:0/0::gentoo, installed) USE="userland_GNU -doc -test" ABI_X86="(64)" PYTHON_TARGETS="python3_10 (-pypy3) -python3_11" pulled in by
    dev-python/six[python_targets_pypy3(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?] required by (dev-python/urllib3-1.26.15:0/0::gentoo, installed) USE="userland_GNU -brotli -test" ABI_X86="(64)" PYTHON_TARGETS="python3_10 (-pypy3) -python3_11"
                                                                                                                                                                                                                                                                                                                                                                                                                               

It may be possible to solve this problem by using package.mask to
prevent one of those packages from being selected. However, it is also
possible that conflicting dependencies exist such that they are
impossible to satisfy simultaneously.  If such a conflict exists in
the dependencies of two different packages, then those packages can
not be installed simultaneously.

For more information, see MASKED PACKAGES section in the emerge man
page or refer to the Gentoo Handbook.

emerge: there are no ebuilds built with USE flags to satisfy "dev-python/setuptools[python_targets_pypy3(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?]".
!!! One of the following packages is required to complete your request:
- dev-python/setuptools-67.7.2::gentoo (Change USE: +python_targets_python3_10)
- dev-python/certifi-3021.3.16-r3::gentoo (Change USE: -python_targets_python3_10)
(dependency required by "dev-python/certifi-3021.3.16-r3::gentoo" [installed])
(dependency required by "dev-python/requests-2.28.2::gentoo" [installed])
(dependency required by "dev-python/ssl-fetch-0.4-r1::gentoo" [installed])
(dependency required by "app-portage/layman-2.4.3::gentoo" [installed])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])
 * Выполнение Emerge завершилось с ошибкой
 * Не удалось обновить

И как это разруливать?

Ручной установкой “3.11”?

А хуже от этого не станет?

Была не была:

Спойлер
# emerge =dev-lang/python-3.11.3:3.11

Local copy of remote index is up-to-date and will be used.

Local copy of remote index is up-to-date and will be used.
Calculating dependencies... done!
Dependency resolution took 13.58 s.

>>> Running pre-merge checks for dev-lang/python-3.11.3
--2023-05-30 10:05:08--  https://mirror.yandex.ru/calculate/grp/x86_64/dev-lang/python/python-3.11.3-10.xpak
Resolving mirror.yandex.ru (mirror.yandex.ru)... 213.180.204.183, 2a02:6b8::183
Connecting to mirror.yandex.ru (mirror.yandex.ru)|213.180.204.183|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 29549218 (28M) [application/octet-stream]
Saving to: ‘/var/calculate/packages/x86_64/dev-lang/python-3.11.3.tbz2.partial’

/var/calculate/packages/x86_64/dev-lang/python-3.11.3.tbz2 100%[========================================================================================================================================>]  28.18M  5.08MB/s    in 5.5s    

2023-05-30 10:05:19 (5.11 MB/s) - ‘/var/calculate/packages/x86_64/dev-lang/python-3.11.3.tbz2.partial’ saved [29549218/29549218]

>>> Emerging binary (1 of 1) dev-lang/python-3.11.3::gentoo
>>> Installing (1 of 1) dev-lang/python-3.11.3::gentoo
>>> Recording dev-lang/python:3.11 in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 0.89, 0.63, 0.65
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

Ну вот, что-то, вроде как изменилось:

Спойлер
...
Обновление пакетов
 * Вычисление зависимостей ...
 * Список пакетов для установки  
 * Альтернатива Syslog, предоставляющая улучшенные функции фильтрации (rR) app-admin/syslog-ng-4.0.1 (978 KiB)
...
 * Открытая версия веб-браузера Google Chrome (U) www-client/chromium-113.0.5672.126 (127704 KiB)
 * 206 пакетов будет установлено, 1196017 KiB будет загружено

Вы хотите установить эти пакеты? (Yes/No): 

Дождусь окончания установки.

Тоже было весь апрель - питон-3.9 сначала ставится, затем удаляется. Но в апреле это было бинарём а уже в мае начало компилиться из сырцов. И я в начале мая просто пересобрал МИР (emerge -e @world) - да питон-39 притянулся один (последний) раз и затем удалился. Больше проблем с ним не было.
И кстати - на тот момент поудалял все (вообще все) бинари и сырцы и качал всё по новой.

1 Like

Лайман устарел, снести его нафиг и пользоваться eselect-ом.

Да, это было сделано по прочтению выдачи сообщения.

Вопрос вроде как решился - обновление прошло, посмотрим, не вылезет ли проделанное:

в будущем, боком.

вылезет и туда и сюда

если очень захотеть

Опять 25…

Как разрулить с питоном, которого в оверлее уже нет?

Спойлер
Очистка системы от ненужных пакетов
 * Вычисление зависимостей ...                                                                                                                                                                                                                           [ ok ]
 * Always study the list of packages to be cleaned for any obvious
 * mistakes. Packages that are part of the world set will always
 * be kept.  They can be manually added to this set with
 * `emerge --noreplace <atom>`.  Packages that are listed in
 * package.provided (see portage(5)) will be removed by
 * depclean, even if they are part of the world set.
 *
 * As a safety measure, depclean will not remove any packages
 * unless *all* required dependencies have been resolved.  As a
 * consequence of this, it often becomes necessary to run
 * `emerge --update --newuse --deep @world` prior to depclean.

 * Dependencies could not be completely resolved due to
 * the following required packages not being installed:
 *
 *   >=dev-libs/openssl-1.1.1:0/1.1= pulled in by:
 *     dev-lang/python-3.10.11
 *
 * Have you forgotten to do a complete update prior to depclean? The
 * most comprehensive command for this purpose is as follows:
 *
 *   emerge --update --newuse --deep --with-bdeps=y @world
 *
 * Note that the --with-bdeps=y option is not required in many
 * situations. Refer to the emerge manual page (run `man emerge`)
 * for more information about --with-bdeps.
 *
 * Also, note that it may be necessary to manually uninstall
 * packages that no longer exist in the repository, since it may not
 * be possible to satisfy their dependencies.
 * Выполнение Emerge завершилось с ошибкой
 * Не удалось обновить
emerge -s dev-libs/openssl

Local copy of remote index is up-to-date and will be used.
[ Results for search key : dev-libs/openssl ]
Searching...

*  dev-libs/openssl
      Latest version available: 3.0.9-r1
      Latest version installed: 3.0.9-r1
      Size of files: 14826 KiB
      Homepage:      https://www.openssl.org/
      Description:   Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)
      License:       Apache-2.0

*  dev-libs/openssl-compat
      Latest version available: 1.1.1u
      Latest version installed: [ Not Installed ]
      Size of files: 9661 KiB
      Homepage:      https://www.openssl.org/
      Description:   Full-strength general purpose cryptography library (including SSL and TLS)
      License:       openssl

[ Applications found : 2 ]
equery list -op dev-libs/openssl
 * Searching for openssl in dev-libs ...
[-P-] [M ] dev-libs/openssl-1.0.2u-r1:0
[-P-] [  ] dev-libs/openssl-1.1.1u:0/1.1
[IP-] [  ] dev-libs/openssl-3.0.9-r1:0/3
[-P-] [ ~] dev-libs/openssl-3.1.1-r1:0/3
equery list -op dev-lang/python
 * Searching for python in dev-lang ...
[-P-] [  ] dev-lang/python-2.7.18_p16-r1:2.7
[-P-] [  ] dev-lang/python-3.8.17:3.8
[-P-] [  ] dev-lang/python-3.9.17:3.9
[I--] [??] dev-lang/python-3.10.11:3.10
[-P-] [  ] dev-lang/python-3.10.12:3.10
[IP-] [  ] dev-lang/python-3.11.4:3.11
[-P-] [ ~] dev-lang/python-3.12.0_beta3:3.12

удалить старый :3.10 и установить новый
emerge -C dev-lang/python:3.10 -O1pv
emerge -C dev-lang/python:3.10 -O1
emerge dev-lang/python:3.10 -O1

emerge уже на питоне 3.11 потому с десятым так вполне можно

2 Likes

Благодарю!

Ход Вашей мысли понятен, попробую исполнить.

Выполнил:

Спойлер
# emerge -C dev-lang/python:3.10 -O1pv
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.

>>> These are the packages that would be unmerged:

 dev-lang/python
    selected: 3.10.11 
   protected: none 
     omitted: 3.11.4 

All selected packages: =dev-lang/python-3.10.11

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.
# emerge -C dev-lang/python:3.10 -O1
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.

 dev-lang/python
    selected: 3.10.11 
   protected: none 
     omitted: 3.11.4 

All selected packages: =dev-lang/python-3.10.11

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2 1
>>> Unmerging (1 of 1) dev-lang/python-3.10.11...

 * GNU info directory index is up-to-date.
 # emerge dev-lang/python:3.10 -O1

Local copy of remote index is up-to-date and will be used.
>>> Running pre-merge checks for dev-lang/python-3.10.12
--2023-07-10 16:21:50--  http://mirror.mephi.ru/calculate/grp/x86_64/dev-lang/python/python-3.10.12-10.xpak
Resolving mirror.mephi.ru (mirror.mephi.ru)... 85.143.112.112
Connecting to mirror.mephi.ru (mirror.mephi.ru)|85.143.112.112|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 20902503 (20M) [application/octet-stream]
Saving to: ‘/var/calculate/packages/x86_64/dev-lang/python-3.10.12.tbz2.partial’

/var/calculate/packages/x86_64/dev-lang/pyth 100%[===========================================================================================>]  19.93M  6.73MB/s    in 3.0s    

2023-07-10 16:21:53 (6.73 MB/s) - ‘/var/calculate/packages/x86_64/dev-lang/python-3.10.12.tbz2.partial’ saved [20902503/20902503]

>>> Emerging binary (1 of 1) dev-lang/python-3.10.12::gentoo
>>> Installing (1 of 1) dev-lang/python-3.10.12::gentoo
>>> Completed (1 of 1) dev-lang/python-3.10.12::gentoo
>>> Jobs: 1 of 1 complete                           Load avg: 1.26, 0.67, 0.28
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

Сейчас так:

$ equery list -op dev-lang/python
 * Searching for python in dev-lang ...
[-P-] [  ] dev-lang/python-2.7.18_p16-r1:2.7
[-P-] [  ] dev-lang/python-3.8.17:3.8
[-P-] [  ] dev-lang/python-3.9.17:3.9
[IP-] [  ] dev-lang/python-3.10.12:3.10
[IP-] [  ] dev-lang/python-3.11.4:3.11
[-P-] [ ~] dev-lang/python-3.12.0_beta3:3.12