• [gentoo-user] Re: How to diagnose version conflicts?

    From Grant Edwards@21:1/5 to Jack on Wed Jan 12 01:50:02 2022
    On 2022-01-12, Jack <ostroffjh@users.sourceforge.net> wrote:

    python-exec-2.4.8 requires python-exec-conf which requires
    python-exec 2.4.6?

    I was going to wonder if you are caught in the middle of an upgrade
    that's only partly reached the mirrors. Given that (as I see it,
    having last done a sync a few hours ago) that there is ONLY one version
    each in the tree for python-exec-2.4.8 and python-exec-conf-2.4.6.

    Yep, same here.

    However, looking at the ebuilds:
    python-exe requires python-exec-conf (no version specified) python-exec-conf-2.4.6 requires "!<dev-lang/python-exec-2.4.6-r4" which should allow 2.4.8.

    I have both python 3.9.9-r1 and 3.10.0_p1-r1 installed (plus
    2.7.18_p13) so there doesn't seem to be any conflict there. What does "equery d python-exec" tell you?

    After poking around a bit, I realized that the only machine that was
    having this problem was also the only one that had python2.7
    installed. Python 2.7 was required by ipkg-utils (for which the ebuild
    seems to have long since vanished). The only thing I ever use from
    ipkg-utils is the ipkg-build bash script. I copied that script to
    ~/bin/ and unmerged ipkg-utils.

    emerge --depclean then removed python2.7, and then emerge -auvND
    happily upgraded python-exec to 2.4.8.

    Still not sure what command one uses to determine what package is
    preventing some other package from being upgraded...

    --
    Grant

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Arve Barsnes@21:1/5 to Grant Edwards on Wed Jan 12 07:40:01 2022
    On Wed, 12 Jan 2022 at 01:44, Grant Edwards <grant.b.edwards@gmail.com> wrote:
    Still not sure what command one uses to determine what package is
    preventing some other package from being upgraded...

    It should all be in the emerge output, although it's quite hard to read.

    If you want help interpreting it you could post the complete conflict
    output, but what you've posted in your initial message is just the bit
    that says that python-exec-2.4.8 requires python-exec-conf-2.4.6.
    That's not a conflict, that's just one of the packages having one
    dependency. To have a conflict, a different package would need to
    require a different version.

    Most of the times this particular kind of conflict is with an older
    package that requires older PYTHON_TARGETS than can be provided, and I
    expect something that got depcleaned with ipkg-utils, or ipkg-utils
    directly, required python-exec or python-exec-conf with PYTHON_TARGETS="python3_7". Note that dev-lang/python itself is not
    the source of any of these problems, I still have python 2.7 and 3.10
    installed (along with 3.9 which is the default version on this machine
    now).

    Regards,
    Arve

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Grant Edwards@21:1/5 to Arve Barsnes on Wed Jan 12 16:00:01 2022
    On 2022-01-12, Arve Barsnes <arve.barsnes@gmail.com> wrote:
    On Wed, 12 Jan 2022 at 01:44, Grant Edwards <grant.b.edwards@gmail.com> wrote:
    Still not sure what command one uses to determine what package is
    preventing some other package from being upgraded...

    It should all be in the emerge output, although it's quite hard to read.

    If you want help interpreting it you could post the complete conflict
    output, but what you've posted in your initial message is just the bit
    that says that python-exec-2.4.8 requires python-exec-conf-2.4.6.
    That's not a conflict, that's just one of the packages having one
    dependency. To have a conflict, a different package would need to
    require a different version.

    Right. And how to determine which package requires the older version
    is the question. Since I can't reinstall ipkg-utils, I don't have any
    way to recreate the conflict.

    Most of the times this particular kind of conflict is with an older
    package that requires older PYTHON_TARGETS than can be provided, and I
    expect something that got depcleaned with ipkg-utils, or ipkg-utils
    directly, required python-exec or python-exec-conf with PYTHON_TARGETS="python3_7". Note that dev-lang/python itself is not
    the source of any of these problems, I still have python 2.7 and 3.10 installed (along with 3.9 which is the default version on this machine
    now).

    Then it must have been ipkg-utils itself that required the older
    python_exec, but there was no ebuild present for it. I know that
    ipkg-utils was not mentioned at all in the emerge output.

    After unmerging ipkg-utils and python2.7 the conflict was gone.

    Next time I'll keep a copy of the entire emerge output.

    --
    Grant

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Neil Bothwick@21:1/5 to Grant Edwards on Wed Jan 12 16:30:01 2022
    On Wed, 12 Jan 2022 14:53:06 -0000 (UTC), Grant Edwards wrote:

    Then it must have been ipkg-utils itself that required the older
    python_exec, but there was no ebuild present for it.

    If it was installed through portage, there would have been an ebuild for
    it, in /var/db/pkg. That's what portage was referencing when if made the dependency calculations.


    --
    Neil Bothwick

    "Daddy, what does formatting drive 'C' mean?

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCAAdFiEE8k9T/rX16EJxEKG692eFu0QSMJgFAmHe87YACgkQ92eFu0QS MJjY0Q//brunWrnM5cJnNX9xY5goFr9Sx4V0x6Zo/Qi4gLQpMTEto4M6sj71ekAO phf4CDe0liMItxQkTaH3Zjvo51dMVC2PFl7h3F7qCTACcY4WGfQ7Dbx2wRNgPEx7 X1nIGkwJ5xyfTRsbMqw/FuD33rpQikRKcxdW5h4HgsZpy04V8lp3/ZBcBSJnL2jd i6RGkplyBKNfBXMBRzukCdEZP3cz+bhd2YQJIBFdl3ayIxYfTx5dTzzBIS8/1NCG psA/2Ud9qaNlCCfH+f6Eg+PKMpmqHeX7B3fEbPz42ZB6mXxQasm+2Bec6GA5a52Y K7qY2hrAJQeBdV6b0/Q927skAz+iL1egD+mufv97BFtCbT4w6HsSAdh3bfSmx12w sFspZLbctZNRtlvKRTmgQdTcPSc0nypx/1xEZnlVscChimtp1odJZW6ReI+mfTSP ej9P45vHwEqWKUIfXbq4TgPdVS49NAZzfolgn+bzgmPdcmnO4gtCXYY2WoxI/n1s NkeJmQiDyHfkaI6lQ38oRcZEhgwSlsyWmzaNEjSwXP9qEK6aElh+MUa0NPLnbZsy JAPFXIqTu/yck4srii2WluCjNC/5rereHhnjS0emkleoqipTAjiSvWxitStce0Cc UCvfekX/DjpmLV654O1BHM8jjiEW3YbooYMd2AmyKMHLuYVnBIA=
    =C0bX
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Grant Edwards@21:1/5 to Neil Bothwick on Wed Jan 12 17:30:02 2022
    On 2022-01-12, Neil Bothwick <neil@digimed.co.uk> wrote:
    On Wed, 12 Jan 2022 14:53:06 -0000 (UTC), Grant Edwards wrote:

    Then it must have been ipkg-utils itself that required the older
    python_exec, but there was no ebuild present for it.

    If it was installed through portage, there would have been an ebuild
    for it, in /var/db/pkg.

    Yes, correct past tense. There was at some point in the past when
    ipkg-utils was installed.

    That's what portage was referencing when if made the dependency
    calculations.

    There was no ipkg ebuild. There had been in the past, but it was
    removed during an emerge --sync a while back. Last rites on 1 Aug
    2020, removal 30 days later: https://www.mail-archive.com/gentoo-dev@lists.gentoo.org/msg90135.html

    My conclusion was that dependency info for currently installed
    packages is also stored somewhere else, since emerge still knew that
    python-2.7 was required for ipkg-utils.

    --
    Grant

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Neil Bothwick@21:1/5 to Grant Edwards on Wed Jan 12 19:10:01 2022
    On Wed, 12 Jan 2022 16:25:29 -0000 (UTC), Grant Edwards wrote:

    If it was installed through portage, there would have been an ebuild
    for it, in /var/db/pkg.

    Yes, correct past tense. There was at some point in the past when
    ipkg-utils was installed.

    That's what portage was referencing when if made the dependency calculations.

    There was no ipkg ebuild. There had been in the past, but it was
    removed during an emerge --sync a while back. Last rites on 1 Aug
    2020, removal 30 days later: https://www.mail-archive.com/gentoo-dev@lists.gentoo.org/msg90135.html

    The ebuild would still have been on /var/db/pkg as long as it was
    installed.

    My conclusion was that dependency info for currently installed
    packages is also stored somewhere else, since emerge still knew that python-2.7 was required for ipkg-utils.

    Yes, in /var/db/pkg. That contains all the ebuild and data for installed packages, independently of what is currently in the portage tree.


    --
    Neil Bothwick

    I'm Pink, Therefore I'm Spam

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCAAdFiEE8k9T/rX16EJxEKG692eFu0QSMJgFAmHfGKwACgkQ92eFu0QS MJixBA//agnElr0eyZQh+7ErgqXcjzAemmfXNZP5rGD5xhp7YR2W3EbL9CEpBXc0 Q+UKD2yAJChBNdYnvC3texPS7K36rXSX6qup4dH3P5THYT49XL9aFTehK0Ob9oI3 BgS/Z8pDBVuattcHpcJ4gRXTMQRdiZQkVLRYE9BXfZ1KZUH7z0HLjyaBzhgpg6MN 6jcq0mADo3m3gj5cW+lw1p77KcNgL7E33YagIxPHkIjZuY3IWlDSCeSlPPFbpYmV RZWmQs/Klra98eGxkXJM1dZL0u5IOAMji5GRplOSIGpIXmuF1lx2iBOiOGF2GVEG jUAv65yIS5pCiRTxVlvrAs8RLlC1uiZa90pul/EEn2W7Kl6+pNUDeAlQoBoDoBEK e6EZjrcycKS6rc2/MAIXBPGMzCpHEeyo0sl9C15U8b61/mQ6tkq5wmRGkVCDgJ8C kQ7xdKOvAvqrxkn1DpaJUinAZ/jC5/fDA4KuvBL75kNGpYNX8R7T7jdqKqwO8ISM LjfCJnSDNFvPrWsZTvaW6qxKHz9MoDiXHfX5XB+u7hLSGR322yeDoswfSi+H5OEx 5L7DjXg6cw2G6HsNstsotKoOKb5xNcQ/xaT50HPmom1BV9tjHLcDrlan5SJQXGYy +WY+gGmem9+kr6diu7VwF4QSwtSrRwxG0UdVgRAoOdrw8rwHCJU=
    =uyj9
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Grant Edwards@21:1/5 to Neil Bothwick on Thu Jan 13 07:40:01 2022
    On 2022-01-12, Neil Bothwick <neil@digimed.co.uk> wrote:
    On Wed, 12 Jan 2022 16:25:29 -0000 (UTC), Grant Edwards wrote:

    If it was installed through portage, there would have been an ebuild
    for it, in /var/db/pkg.

    Yes, correct past tense. There was at some point in the past when
    ipkg-utils was installed.

    That's what portage was referencing when if made the dependency
    calculations.

    There was no ipkg ebuild. [...]

    The ebuild would still have been on /var/db/pkg as long as it was
    installed.

    Doh! Of course you're right.

    I was getting /var/db/repos and /var/db/pkg mixed up. I had been
    searching /var/db/repos not /var/db/pkg

    --
    Grant

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)