[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fedora-devel-list
Subject:    Re: DNF vs YUM, $pkg, $pkg-mpi, $pkg-openmpi having same provides
From:       Sandro Mani <manisandro () gmail ! com>
Date:       2015-06-12 14:16:48
Message-ID: 557AE9D0.5080908 () gmail ! com
[Download RAW message or body]



On 12.06.2015 15:34, Orion Poplawski wrote:
> On 06/11/2015 10:01 AM, Sandro Mani wrote:
>> Hello,
>>
>> Investigating bug #1230838, I noticed that when installing mmg3d-libs,
>> dnf installs Konsole output ptscotch-mpich, whereas yum-deprecated
>> installs scotch. Both scotch and  ptscotch-mpich provide the required
>> libscotch.so.0()(64bit), albeit one in /usr/lib64/ and the other one in
>> /usr/lib64/mpich/lib/:
>>
>> $ dnf repoquery --requires mmg3d-libs
>> [...]
>> libscotch.so.0()(64bit)
>> libscotcherr.so.0()(64bit)
>> [...]
>>
>>
>> $ dnf provides 'libscotch.so.0()(64bit)'
>> ptscotch-mpich-6.0.4-2.fc23.x86_64 : PT-Scotch libraries compiled
>> against mpich
>> Repo        : rawhide
>>
>> ptscotch-openmpi-6.0.4-2.fc23.x86_64 : PT-Scotch libraries compiled
>> against openmpi
>> Repo        : rawhide
>>
>> scotch-6.0.4-2.fc23.x86_64 : Graph, mesh and hypergraph partitioning 
>> library
>> Repo        : rawhide
>>
>>
>> Konsole output $ dnf repoquery -l scotch.x86_64 | grep libscotch.so.0
>> /usr/lib64/libscotch.so.0
>> /usr/lib64/libscotch.so.0.2
>>
>>
>> Konsole output $ dnf repoquery -l ptscotch-mpich.x86_64 | grep
>> libscotch.so.0
>> /usr/lib64/mpich/lib/libscotch.so.0
>> /usr/lib64/mpich/lib/libscotch.so.0.2
>>
>>
>> $ dnf install mmg3d-libs
>> [...]
>> Installing:
>>   environment-modules                   x86_64
>> 3.2.10-14.fc23                    rawhide                   117 k
>>   hwloc-libs                            x86_64
>> 1.10.1-2.fc23                     rawhide                   1.3 M
>>   lzma-libs                             x86_64
>> 4.32.7-13.fc22                    rawhide                    38 k
>>   mmg3d-libs                            x86_64
>> 4.0.2-1.fc23                      rawhide                   211 k
>>   mpich                                 x86_64
>> 3.1.4-3.fc23                      rawhide                   1.1 M
>>   ptscotch-mpich
>>
>> $ yum-deprecated install mmg3d-libs
>> [...]
>> Installing:
>>   mmg3d-libs                     x86_64
>> 4.0.2-1.fc23                         rawhide 211 k
>> Installing for dependencies:
>>   lzma-libs                      x86_64
>> 4.32.7-13.fc22 rawhide                      38 k
>>   scotch
>>
>>
>> So, whose fault is this? Packaging of dnf? Nothing relevant for this
>> caught my eye skimming through the packaging guidelines.
>>
>> And related: trying to install some $pkg-openmpi package, I don't
>> generally see packages enforcing that the -openmpi version of some
>> dependency library is installed as opposed to just the regular libs
>> package. Should such requires need to be stated explicitly?
>
> MPI packages need to filter out the provides from the MPI versions and 
> explicitly add needed requires on the specific MPI flavors of packages 
> needed.  This probably needs to be added to the MPI guidelines.
>
Right this makes sense, though, as pointed out in an other post in this 
thread, cases like

 > gmsh: requires mmg3d
 > mmg3d: requires scotch

 > gmsh-openmpi: requires mmg3d
 > mmg3d: requires scotch -> but in this case it is actually 
ptscotch-openmpi which is desired, right?

The only "sane" way to fix this I see is extending the mmg3d.spec with 
something like
[...]
%package openmpi
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: ptscotch-openmpi

%package mpich
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: ptscotch-mpich

Better ideas?

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic