Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 633312

Summary: Unrestrict subslot dependency on dev-libs/libsodium:0/18 for dev-python/pynacl
Product: Gentoo Linux Reporter: Michal Jakubowski <kajanos>
Component: Current packagesAssignee: Tobias Klausmann (RETIRED) <klausman>
Status: RESOLVED FIXED    
Severity: normal CC: alexander, dolsen, gentoo, hendrik, hydrapolic, kaikaikai, kajanos, marco.dr, mrueg, python, sam
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge_info

Description Michal Jakubowski 2017-10-02 21:30:11 UTC
Gentoo-i7 ~ # emerge -pv libsodium

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] dev-libs/libsodium-1.0.14:0/18::gentoo  USE="asm urandom -minimal -static-libs" CPU_FLAGS_X86="aes sse4_1" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB

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

dev-libs/libsodium:0

  (dev-libs/libsodium-1.0.15:0/23::gentoo, ebuild scheduled for merge) conflicts with
    dev-libs/libsodium:0/18 required by (dev-python/pynacl-1.1.2:0/0::gentoo, installed)
                      ^^^^^
    dev-libs/libsodium:0/18= required by (net-libs/zeromq-4.2.2-r2:0/5::gentoo, installed)
                      ^^^^^^
Comment 1 Tomáš Mózes 2017-10-03 04:18:38 UTC
Try to build all those packages:

# emerge -av1 libsodium dev-python/pynacl net-libs/zeromq

Please provide your emerge --info if it fails.
Comment 2 Michal Jakubowski 2017-10-03 07:07:09 UTC
Created attachment 497478 [details]
emerge_info

emerge --info
Comment 3 Michal Jakubowski 2017-10-03 07:07:30 UTC
Gentoo-i7 ~ # emerge -av1 =dev-libs/libsodium-1.0.15

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] dev-libs/libsodium-1.0.15:0/23::gentoo [1.0.14:0/18::gentoo] USE="asm urandom -minimal -static-libs" CPU_FLAGS_X86="aes sse4_1" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

dev-libs/libsodium:0

  (dev-libs/libsodium-1.0.15:0/23::gentoo, ebuild scheduled for merge) pulled in by
    =dev-libs/libsodium-1.0.15 (Argument)

  (dev-libs/libsodium-1.0.14:0/18::gentoo, installed) pulled in by
    dev-libs/libsodium:0/18= required by (net-libs/zeromq-4.2.2-r2:0/5::gentoo, installed)
                      ^^^^^^                                                                                                  
    dev-libs/libsodium:0/18 required by (dev-python/pynacl-1.1.2:0/0::gentoo, installed)
                      ^^^^^                                                                                                 


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. You may want to try a larger value of
the --backtrack option, such as --backtrack=30, in order to see if
that will solve this conflict automatically.

For more information, see MASKED PACKAGES section in the emerge man
page or refer to the Gentoo Handbook.
Comment 4 Jouni Kosonen 2017-10-03 16:44:10 UTC
(In reply to Tomáš Mózes from comment #1)
> Try to build all those packages:
> 
> # emerge -av1 libsodium dev-python/pynacl net-libs/zeromq

That would still fail, dev-python/pynacl-1.1.2 explicitly {,R}DEPENDs on dev-libs/libsodium:0/18 instead of something like dev-libs/libsodium:0=

dev-libs/libsodium-1.0.15 has SLOT="0/23".
Comment 5 Sergei Trofimovich (RETIRED) gentoo-dev 2018-02-09 22:57:47 UTC
On my system stable =dev-python/pynacl-1.1.2 pins outdated stable =dev-libs/libsodium-1.0.11. Latest available stable is 1.0.15.

This causes slow world resolution as emerge tries hard to find upgrade via backtracks.

Should we stable newer pynacl in case it's working against latest stable libsodium?
Comment 6 Andrius Štikonas 2018-09-10 18:14:52 UTC
(In reply to Sergei Trofimovich from comment #5)
> Should we stable newer pynacl in case it's working against latest stable
> libsodium?

Yes, I think newer stable version should be stabilized. On one of my machines I was running 1.2.1 for a while, didn't notice any issues.
Comment 7 lumbrius 2018-09-18 11:39:03 UTC
I can compile both net-libs/zeromq-4.2.2-r2 and dev-python/pynacl-1.1.2 after building dev-libs/libsodium-1.0.15, all with emerge -O

Can you lift slot restriction for libsodium slot for them?
Comment 8 Brian Dolbec gentoo-dev 2018-10-05 06:34:39 UTC
1.3.0 release is just out.  We can try lifting the subslot dep for it, stable 1.2.1 in the meantime.

I am a little hesitant since pynacl upstream bundles libsodium with each release and builds some c libs for the python interface.  They do offer a system lib option at least.
Comment 9 Tobias Klausmann (RETIRED) gentoo-dev 2021-04-07 09:03:14 UTC
There haven't been any releases of libsodium in two years, and the current dep in pynacl pulls in the only version available (1.0.18:0/23). Can we close this and revisit it when-and-if there is a new libsodium?
Comment 10 Michal Jakubowski 2021-04-07 09:07:16 UTC
It looks fine to me.