"Порочный" круг при обновлении (помогите разорвать)

Если речь о начальном посте, то нет.
В предыдущем посте вообще ничего, кроме cl-update не делалось.

Напрашивается вариант прямой установки тех пакетов, которые гуляют туда-сюда, т.е. ставятся и тут же удаляются. Это по идее занесет их в world и они не будут удаляться.
Похоже что-то поломалось в проверке зависимостей перед удалением пакетов.

Покопался весьма поверхностно в calculate-utils Бросилось в глаза, что после версии
calculate-utils-3.6.7.33 в update.py добавилась опция --dynamic-deps=n перед сканированием пакетов на предмет удаления.
Проделал експеримент. Поправил update.py убрав опцию --dynamic-deps=n
После чего удалил один пакет, к примеру consolekit, и запустил cl-update.
Как и положено установился consolekit и предложило удалить всего одну библиотеку, которая не числится в зависимостях.
Никакого предложения удаления кучи пакетов не последовало.

Проверил еще на одной машине. Замена в update.py
emerge = EmergeParser(EmergeCommand(["–depclean",
“–dynamic-deps=n”],
emerge_default_opts=deo))
на
emerge = EmergeParser(EmergeCommand(["–depclean"],
emerge_default_opts=deo))
приводит к нормальному ходу обновления.
Без этой замены предлагается удалить около сотни пакетов.
Ждем починки утилит ?!

1 Like

Аналогично, но при сборке из исходников:

Вы хотите удалить неиспользуемые пакеты (рекомендуется)? (Yes/No): y
* Удаление (1 из 70) dev-ruby/racc-1.4.14 ...                                                                                  [ ok ]
* Удаление (2 из 70) x11-base/xcb-proto-1.14-r1 ...                                                                            [ ok ]
* Удаление (3 из 70) dev-libs/iniparser-3.1-r1 ...                                                                             [ ok ]
* Удаление (4 из 70) app-arch/cabextract-1.9-r2 ...                                                                            [ ok ]
* Удаление (5 из 70) sys-devel/autoconf-archive-2018.03.13 ...                                                                 [ ok ]
* Удаление (6 из 70) dev-java/javatoolkit-0.3.0-r9 ...                                                                         [ ok ]
* Удаление (7 из 70) app-text/docbook-xml-dtd-4.3-r2 ...                                                                       [ ok ]
* Удаление (8 из 70) app-emulation/spice-protocol-0.14.1 ...                                                                   [ ok ]
* Удаление (9 из 70) dev-libs/appstream-glib-0.7.16 ...                                                                        [ ok ]
* Удаление (10 из 70) net-wireless/b43-fwcutter-019 ...                                                                        [ ok ]
* Удаление (11 из 70) dev-util/kbuild-0.1.9998.3149 ...                                                                        [ ok ]
* Удаление (12 из 70) dev-util/netsurf-buildsystem-1.8-r1 ...                                                                  [ ok ]
* Удаление (13 из 70) dev-libs/check-0.14.0-r2 ...                                                                             [ ok ]
* Удаление (14 из 70) dev-perl/File-ShareDir-Install-0.110.0 ...                                                               [ ok ]
* Удаление (15 из 70) dev-python/sip-4.19.21 ...                                                                               [ ok ]
* Удаление (16 из 70) dev-perl/Module-Build-Tiny-0.39.0 ...                                                                    [ ok ]
* Удаление (17 из 70) sys-devel/automake-1.13.4-r2 ...                                                                         [ ok ]
* Удаление (18 из 70) x11-apps/bdftopcf-1.1 ...                                                                                [ ok ]
* Удаление (19 из 70) app-text/gnome-doc-utils-0.20.10-r2 ...                                                                  [ ok ]
* Удаление (20 из 70) media-libs/glew-2.1.0-r1 ...                                                                             [ ok ]
* Удаление (21 из 70) app-text/asciidoc-8.6.10_p20181016-r1 ...                                                                [ ok ]
* Удаление (22 из 70) dev-ruby/kpeg-1.1.0-r1 ...                                                                               [ ok ]
* Удаление (23 из 70) sys-devel/autogen-5.18.16-r1 ...                                                                         [ ok ]
* Удаление (24 из 70) app-text/po4a-0.47-r1 ...                                                                                [ ok ]
* Удаление (25 из 70) dev-go/go-md2man-1.0.3 ...                                                                               [ ok ]
* Удаление (26 из 70) dev-util/ragel-6.10 ...                                                                                  [ ok ]
* Удаление (27 из 70) dev-python/docutils-0.16 ...                                                                             [ ok ]
* Удаление (28 из 70) dev-python/cython-0.29.15 ...                                                                            [ ok ]
* Удаление (29 из 70) dev-lang/go-bootstrap-1.13.6 ...                                                                         [ ok ]
* Удаление (30 из 70) dev-python/vcversioner-2.16.0.0 ...                                                                      [ ok ]
* Удаление (31 из 70) sys-devel/bin86-0.16.21 ...                                                                              [ ok ]
* Удаление (32 из 70) sys-apps/iucode_tool-2.3.1 ...                                                                           [ ok ]
* Удаление (33 из 70) sys-power/iasl-20200326 ...                                                                              [ ok ]
* Удаление (34 из 70) dev-python/setuptools_scm-3.5.0 ...                                                                      [ ok ]
* Удаление (35 из 70) media-fonts/font-util-1.3.2-r1 ...                                                                       [ ok ]
* Удаление (36 из 70) virtual/ruby-ssl-11 ...                                                                                  [ ok ]
* Удаление (37 из 70) dev-libs/libmspack-0.9.1_alpha-r1 ...                                                                    [ ok ]
* Удаление (38 из 70) app-text/docbook-xml-dtd-4.4-r3 ...                                                                      [ ok ]
* Удаление (39 из 70) dev-perl/TermReadKey-2.370.0 ...                                                                         [ ok ]
* Удаление (40 из 70) dev-perl/ExtUtils-Helpers-0.26.0 ...                                                                     [ ok ]
* Удаление (41 из 70) dev-perl/ExtUtils-InstallPaths-0.11.0 ...                                                                [ ok ]
* Удаление (42 из 70) sys-apps/help2man-1.47.10 ...                                                                            [ ok ]
* Удаление (43 из 70) dev-perl/SGMLSpm-1.1-r1 ...                                                                              [ ok ]
* Удаление (44 из 70) app-text/scrollkeeper-dtd-1.0-r1 ...                                                                     [ ok ]
* Удаление (45 из 70) virtual/awk-1 ...                                                                                        [ ok ]
* Удаление (46 из 70) dev-perl/Text-WrapI18N-0.60.0-r1 ...                                                                     [ ok ]
* Удаление (47 из 70) dev-scheme/guile-2.2.4 ...                                                                               [ ok ]
* Удаление (48 из 70) app-text/openjade-1.3.2-r9 ...                                                                           [ ok ]
* Удаление (49 из 70) dev-go/blackfriday-1.2_p20150720 ...                                                                     [ ok ]
* Удаление (50 из 70) app-text/opensp-1.5.2-r3 ...                                                                             [ ok ]
* Удаление (51 из 70) dev-perl/Text-CharWidth-0.40.0-r1 ...                                                                    [ ok ]
* Удаление (52 из 70) dev-go/sanitized-anchor-name-0_pre20151027 ...                                                           [ ok ]
* Удаление (53 из 70) dev-perl/Module-Build-0.422.400 ...                                                                      [ ok ]
* Удаление (54 из 70) dev-perl/ExtUtils-Config-0.8.0 ...                                                                       [ ok ]
* Удаление (55 из 70) dev-perl/Locale-gettext-1.70.0 ...                                                                       [ ok ]
* Удаление (56 из 70) virtual/perl-Module-Metadata-1.0.36 ...                                                                  [ ok ]
* Удаление (57 из 70) virtual/perl-ExtUtils-Manifest-1.720.0 ...                                                               [ ok ]
* Удаление (58 из 70) virtual/perl-Perl-OSType-1.10.0-r3 ...                                                                   [ ok ]
* Удаление (59 из 70) virtual/perl-ExtUtils-ParseXS-3.400.0 ...                                                                [ ok ]
* Удаление (60 из 70) virtual/perl-podlators-4.110.0 ...                                                                       [ ok ]
* Удаление (61 из 70) virtual/perl-Text-ParseWords-3.300.0-r6 ...                                                              [ ok ]
* Удаление (62 из 70) virtual/perl-CPAN-Meta-2.150.10-r3 ...                                                                   [ ok ]
* Удаление (63 из 70) virtual/perl-ExtUtils-CBuilder-0.280.231 ...                                                             [ ok ]
* Удаление (64 из 70) virtual/perl-ExtUtils-Install-2.140.0-r2 ...                                                             [ ok ]
* Удаление (65 из 70) virtual/perl-Getopt-Long-2.500.0-r2 ...                                                                  [ ok ]
* Удаление (66 из 70) virtual/perl-ExtUtils-MakeMaker-7.340.0-r2 ...                                                           [ ok ]
* Удаление (67 из 70) virtual/perl-JSON-PP-4.20.0 ...                                                                          [ ok ]
* Удаление (68 из 70) virtual/perl-Parse-CPAN-Meta-2.150.10-r3 ...                                                             [ ok ]
* Удаление (69 из 70) virtual/perl-CPAN-Meta-YAML-0.18.0-r5 ...                                                                [ ok ]
* Удаление (70 из 70) dev-lang/go-1.14.2 ... [ ok ]

emerge --newuse --update --deep --with-bdeps=y @world
Calculating dependencies... done!
[ebuild  N     ] sys-devel/autoconf-archive-2018.03.13 
[ebuild  N     ] app-emulation/spice-protocol-0.14.1 
[ebuild  N     ] dev-lang/go-bootstrap-1.13.6  USE="(-big-endian)" 
[ebuild  N     ] sys-apps/iucode_tool-2.3.1 
[ebuild  N     ] net-wireless/b43-fwcutter-019 
[ebuild  N     ] dev-util/netsurf-buildsystem-1.8-r1 
[ebuild  N     ] sys-devel/bin86-0.16.21 
[ebuild  N     ] dev-lang/go-1.14.2 
[ebuild  N     ] dev-go/sanitized-anchor-name-0_pre20151027 
[ebuild  N     ] dev-go/blackfriday-1.2_p20150720 
[ebuild  N     ] dev-go/go-md2man-1.0.3 
[ebuild  N     ] sys-power/iasl-20200326  USE="-test" 
[ebuild  N     ] virtual/awk-1 
[ebuild  N     ] virtual/perl-ExtUtils-MakeMaker-7.340.0-r2 
[ebuild  N     ] virtual/perl-Getopt-Long-2.500.0-r2 
[ebuild  N     ] virtual/perl-Text-ParseWords-3.300.0-r6 
[ebuild  N     ] virtual/perl-ExtUtils-CBuilder-0.280.231 
[ebuild  N     ] virtual/perl-ExtUtils-Install-2.140.0-r2 
[ebuild  N     ] virtual/perl-ExtUtils-ParseXS-3.400.0 
[ebuild  N     ] virtual/perl-JSON-PP-4.20.0 
[ebuild  N     ] virtual/perl-podlators-4.110.0 
[ebuild  N     ] virtual/perl-CPAN-Meta-YAML-0.18.0-r5 
[ebuild  N     ] virtual/perl-Parse-CPAN-Meta-2.150.10-r3 
[ebuild  N     ] dev-perl/Text-CharWidth-0.40.0-r1 
[ebuild  N     ] virtual/perl-ExtUtils-Manifest-1.720.0 
[ebuild  N     ] virtual/perl-Module-Metadata-1.0.36 
[ebuild  N     ] virtual/perl-Perl-OSType-1.10.0-r3 
[ebuild  N     ] dev-perl/ExtUtils-Config-0.8.0  USE="-test" 
[ebuild  N     ] virtual/perl-CPAN-Meta-2.150.10-r3 
[ebuild  N     ] dev-perl/File-ShareDir-Install-0.110.0  USE="-test" 
[ebuild  N     ] dev-perl/ExtUtils-Helpers-0.26.0  USE="-test" 
[ebuild  N     ] dev-perl/TermReadKey-2.370.0  USE="-examples" 
[ebuild  N     ] dev-perl/Text-WrapI18N-0.60.0-r1 
[ebuild  N     ] dev-perl/Module-Build-0.422.400  USE="-test" 
[ebuild  N     ] dev-perl/ExtUtils-InstallPaths-0.11.0  USE="-test" 
[ebuild  N     ] dev-perl/Module-Build-Tiny-0.39.0  USE="-test" 
[ebuild  N     ] dev-perl/SGMLSpm-1.1-r1 
[ebuild  N     ] dev-libs/libmspack-0.9.1_alpha-r1  USE="-debug -doc -static-libs" ABI_X86="(64) -32 (-x32)" 
[ebuild  N     ] dev-util/ragel-6.10  USE="-vim-syntax" 
[ebuild  N     ] x11-base/xcb-proto-1.14-r1  ABI_X86="32 (64) (-x32)" PYTHON_TARGETS="python3_6 python3_7 (-python3_8)" 
[ebuild  N     ] media-fonts/font-util-1.3.2-r1 
[ebuild  N     ] app-text/scrollkeeper-dtd-1.0-r1 
[ebuild  N     ] dev-python/sip-4.19.21  USE="-doc" PYTHON_TARGETS="python2_7 python3_6 python3_7 (-python3_8)" 
[ebuild  N     ] dev-python/cython-0.29.15  USE="-doc -emacs -test" PYTHON_TARGETS="python2_7 python3_6 python3_7 (-pypy3) (-python3_8)" 
[ebuild  N     ] dev-java/javatoolkit-0.3.0-r9  PYTHON_TARGETS="python2_7" 
[ebuild  N     ] x11-apps/bdftopcf-1.1 
[ebuild  N     ] app-arch/cabextract-1.9-r2  USE="-extras" 
[ebuild  N     ] dev-python/vcversioner-2.16.0.0  USE="-test" PYTHON_TARGETS="python2_7 python3_6 python3_7 (-pypy3)" 
[ebuild  N     ] dev-python/setuptools_scm-3.5.0  USE="-test" PYTHON_TARGETS="python2_7 python3_6 python3_7 (-pypy3) (-python3_8)" 
[ebuild  N     ] dev-perl/Locale-gettext-1.70.0 
[ebuild  N     ] dev-scheme/guile-2.2.4  USE="deprecated networking nls regex threads -debug -debug-malloc" 
[ebuild  N     ] app-text/opensp-1.5.2-r3  USE="nls -doc -static-libs -test" 
[ebuild  N     ] media-libs/glew-2.1.0-r1  USE="-doc -static-libs" ABI_X86="(64) -32 (-x32)" 
[ebuild  N     ] dev-python/docutils-0.16  PYTHON_TARGETS="python2_7 python3_6 python3_7 (-pypy3) (-python3_8)" 
[ebuild  N     ] dev-util/kbuild-0.1.9998.3149 
[ebuild  N     ] sys-apps/help2man-1.47.10  USE="nls" 
[ebuild  NS    ] app-text/docbook-xml-dtd-4.3-r2 [4.1.2-r7, 4.2-r3, 4.5-r2]
[ebuild  NS    ] app-text/docbook-xml-dtd-4.4-r3 [4.1.2-r7, 4.2-r3, 4.5-r2]
[ebuild  N     ] sys-devel/autogen-5.18.16-r1  USE="libopts -static-libs" 
[ebuild  N     ] app-text/openjade-1.3.2-r9 
[ebuild  N     ] app-text/asciidoc-8.6.10_p20181016-r1  USE="-examples -graphviz -highlight -test" PYTHON_SINGLE_TARGET="python3_7 (-pypy3) -python3_6" 
[ebuild  NS    ] sys-devel/automake-1.13.4-r2 [1.16.1-r1]
[ebuild  N     ] app-text/gnome-doc-utils-0.20.10-r2  PYTHON_TARGETS="python3_6 python3_7 (-python3_8)" 
[ebuild  N     ] app-text/po4a-0.47-r1  USE="-test" 
[ebuild  N     ] dev-libs/check-0.14.0-r2  USE="-doc -subunit -test" ABI_X86="(64) -32 (-x32)" 
[ebuild  N     ] virtual/ruby-ssl-11  RUBY_TARGETS="ruby24 ruby25 (-ruby26) (-ruby27)" 
[ebuild  N     ] dev-ruby/kpeg-1.1.0-r1  USE="-doc -test" RUBY_TARGETS="ruby24 ruby25 (-ruby26) (-ruby27)" 
[ebuild  N     ] dev-ruby/racc-1.4.14  USE="-doc -test" RUBY_TARGETS="ruby24 ruby25 (-ruby26)" 
[ebuild  N     ] dev-libs/appstream-glib-0.7.16  USE="introspection -fonts -gtk-doc -stemmer" 

WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:

dev-python/pygments:0

(dev-python/pygments-2.6.1:0/0::gentoo, ebuild scheduled for merge) USE="-doc -test" ABI_X86="(64)" PYTHON_TARGETS="python3_6 python3_7 (-pypy3) (-python3_8)" conflicts with
dev-python/pygments[python_targets_python2_7(-),python_targets_python3_6(-),python_targets_python3_7(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] required by (dev-python/docutils-0.16:0/0::gentoo, ebuild scheduled for merge) USE="" ABI_X86="(64)" PYTHON_TARGETS="python2_7 python3_6 python3_7 (-pypy3) (-python3_8)"

emerge --depclean

* 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.

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

dev-lang/go-bootstrap
selected: 1.13.6 
protected: none 
omitted: none 

All selected packages: =dev-lang/go-bootstrap-1.13.6

И по кругу…

Сегодня обновились calculate-utils до версии 3.6.7.36
Что интересно, на одной машине с xfce обновление прошло успешно, на другой с mate по завершению предложило удалить 99 пакетов.

Это нормально. Мы доработали механизм чистки неиспользуемых пакетов, вот они и удаляются. Раньше из-за таких пакетов периодически возникали блокировки при обновлении.

Да, но удаляются нужные пакеты, которые при следующем обновлении снова ставятся.

А зачем вы обновляете систему с --with-bdeps=y? Удаляются пакеты, которые являются сборочными зависимостями бинарных пакетов. Если использовать автоматический режим bdeps, то сборочные зависимсоти будут вытянуты только для компилируемых пакетов.

В том то и дело, что использую штатный cl-update , без всяких параметров.

Что выводит?
cl-core-variables-show --filter cl_update_with_bdeps

На проблемной машине
update.cl_update_with_bdeps_opt_set| wb | | on |
update.cl_update_with_bdeps_set | wb | system | on |
На той, где хорошо, тоже.
Проверил на 4-х машинах. Только на одной - auto, на остальных - on
Сам я ничего не менял.

Попробовал на проблемной машине установить эти переменныей в auto - не помогло,
cl-update снова зовет удалить сотню пакетов.
И только правка update.py с дефолтной опцией “–dynamic-deps=y” дает cl-update завершиться без удаления кучи пакетов.
Может это и неправильное решение, но тем не менее.

После сегоднешного обновления все само выравнелось.

У кого как. Я снова увидел предложение на удаление кучи нужных пакетов.
На одной машине немного, но тенденция та же

     * Список удаляемых пакетов  
 * FAudio - Accuracy-focused XAudio reimplementation for open platforms app-emulation/faudio-20.02
 * Free implementation of Windows(tm) on Unix, with Wine-Staging patchset app-emulation/wine-staging-5.9
 * Удобный переносимый API для определения цепочки вызовов программы sys-libs/libunwind-1.2.1-r3

Вы хотите удалить неиспользуемые пакеты (рекомендуется)? (Yes/No): y
все удалилось
Снова запускаю

cl-update
Синхронизация репозиториев
.....
 * Вычисление зависимостей ...
 * Список пакетов для установки  
 * FAudio - Accuracy-focused XAudio reimplementation for open platforms (N) app-emulation/faudio-20.02 (0 KiB)
 * Free implementation of Windows(tm) on Unix, with Wine-Staging patchset (N) app-emulation/wine-staging-5.9 (0 KiB)
 * Удобный переносимый API для определения цепочки вызовов программы (N) sys-libs/libunwind-1.2.1-r3 (0 KiB)
 * 3 пакетов будет установлено, 0 KiB будет загружено
Вы хотите установить эти пакеты? (Yes/No): y
 * (1 из 3) Удобный переносимый API для определения цепочки вызовов программы
 * Сборка sys-libs/libunwind-1.2.1-r3 ...                                                     [ ok ]
 * (2 из 3) FAudio - Accuracy-focused XAudio reimplementation for open platforms
 * Сборка app-emulation/faudio-20.02 ...                                                      [ ok ]
 * Установка sys-libs/libunwind-1.2.1-r3 ...                                                  [ ok ]
 * Установка app-emulation/faudio-20.02 ...                                                   [ ok ]
 * (3 из 3) Free implementation of Windows(tm) on Unix, with Wine-Staging patchset
 * Сборка app-emulation/wine-staging-5.9 ...                                                  [ ok ]
 * Установка app-emulation/wine-staging-5.9 ...                                               [ ok ]
Очистка системы от ненужных пакетов
 * Вычисление зависимостей ...
 * Список удаляемых пакетов  
 * FAudio - Accuracy-focused XAudio reimplementation for open platforms app-emulation/faudio-20.02
 * Free implementation of Windows(tm) on Unix, with Wine-Staging patchset app-emulation/wine-staging-5.9
 * Удобный переносимый API для определения цепочки вызовов программы sys-libs/libunwind-1.2.1-r3

Вы хотите удалить неиспользуемые пакеты (рекомендуется)? (Yes/No):
и опять замкнутый круг.

На другой машине таких пакетов больше сотни.

Наверно еще рано. Видимо работа во всю кипит.

Вот сейчас прошло обновление.

+------------------------------------+-----+------------+--------+
|             Переменная             |Режим|Расположение|Значение|
+------------------------------------+-----+------------+--------+
| update.cl_update_with_bdeps_opt_set| wb  |            | auto   |
| update.cl_update_with_bdeps_set    | wb  | system     | auto   |
+------------------------------------+-----+------------+--------+

Вроде все удачно.
Скажу больше, решилось и это окончательно.
Супер! Надеюсь так и дальше будет.

Увы, обновился, но снова предложение удалить явно нужные пакеты,которых нет в world, но которые есть в зависимостях.

Не знаю что и посоветовать. Подождите знающих людей.

Если Вы экстремал и не боитесь ламерских подходов то на СВОЙ СТРАХ И РИСК

cl-update --verbose --with-bdeps=OFF

если там будет мало пакетов для обновления то обновите их и после смотрите что там получается

cl-core-variables-show --filter cl_update_with_bdeps

и еще раз

cl-update --verbose --with-bdeps=AUTO

надеюсь это поможет.

Я так понимаю что --with-bdeps лучше вообще не использовать даже с emerge.

Кажется и у меня на одной из машин очередное обновление прошло без сюрпризов.
Правда

cl-core-variables-show --filter cl_update_with_bdeps
 * Список переменных
+-----------------------------------------------------+----------+---------------------+--------------+
|             Переменная                              |Режим|Расположение|Значение|
+-----------------------------------------------------+----------+---------------------+--------------+
| update.cl_update_with_bdeps_opt_set| wb      |                         | on             |
| update.cl_update_with_bdeps_set        | wb     | system            | on             |

Не знаю хорошо это, или плохо.

Утилиты calculate-utils-3.6.7.37 должны работать корректно. А какие конкретно пакеты пытаются удалиться?

Использовать нужно, если вы действительно хотите удалить лишние пакеты (сборочные зависимости) или же наоборот установиь в систему все сборочные пакеты.

В “качелях” были
app-emulation/faudio-20.02
app-emulation/wine-gecko-2.47.1
app-emulation/wine-mono-5.0.0
app-emulation/wine-staging-5.9
sys-libs/libunwind-1.2.1-r3
После маскирования wine-staging по совету Дорошкевича “качели”, т.е. установка и тут же удаление вродь прекратились. Дальше будем посмотреть.