On Tuesday 07 July 2015 09:49:03 Damian Ivanov wrote:
> When installed in parallel, multilib RPM packages may contain files that
> live in common paths. When this happens, RPM uses the following algorithm:
>
> - If the file in both packages is identical, installation is allowed
> and the file is written
> - If the file in both packages is an ELF binary, the file used is the
> file in the package for the primary architecture
> - If the file in both packages is not an ELF binary a RPM conflict is
> raised
>
>
> So my suggestion here would be zypper also not to warn about a file
> conflict if you're installing a package for a secondary architecture that
> contains an elf file that conflicts with an elf file for your primary
> architecture.
> RPM heuristics will anyway not overwrite the elf file for you primary
> architecture,
> so zypper warning about that happening makes no sense (as it won't happen).
File conflicts are detected and reported by libzypp/libsov; zypper just
visualizes them.
On Fedora it's important that libsolv was built passing "-DFEDORA=1" to cmake.
This will set the solver option 'implicitobsoleteusescolors=1', which enables
support for installing multilib RPM package in parallel. (you can grep for
implicitobsoleteusescolors in /var/log/zypper.log to check it's value).
If the reported conflicts are nevertheless wrong, you should file an issue at
https://github.com/openSUSE/libsolv/issues.
(Somehow related to https://github.com/openSUSE/libzypp/issues/46; zypper is
not familiar with Fedoras way of installing multilib RPM package in
parallel.)
> You open to patches? :)
Of course. Preferred via github.
(https://github.com/openSUSE/{libsolv,libzypp,zypeper})
--
cu,
Michael Andres
+------------------------------------------------------------------+
Key fingerprint = 2DFA 5D73 18B1 E7EF A862 27AC 3FB8 9E3A 27C6 B0E4
+------------------------------------------------------------------+
Michael Andres SUSE LINUX GmbH, Development, ma(a)suse.com
Maxfeldstrasse 5, D-90409 Nuernberg, Germany, ++49 (0)911 - 74 053-0
+------------------------------------------------------------------+
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Dilip Upmanyu
Graham Norton, HRB 21284 (AG Nürnberg)
+------------------------------------------------------------------+
--
To unsubscribe, e-mail: zypp-devel+unsubscribe(a)opensuse.org
To contact the owner, e-mail: zypp-devel+owner(a)opensuse.org
Hello all,
As a fun test I compiled libsolv+libzypp+zypper for Fedora 22
https://build.opensuse.org/project/show/home:damianator:fedora:zypper
On a vanilla Fedora 22 install I installed libsolv+libzypp+zypper and did
zypper remove yum* dnf*
Actually Fedora is completely usually with only zypper, impressive!
(the only real problem would be the anaconda installer)
I encountered one more issue though.
On Fedora the 32-bit lib packages are the 'normal' i686 packages of
the lib copied to the x86-64 repos.
So when you install a lib like alsa-lib.i686 it contains the same
files (the .so files reside in their respective /usr/lib or /usr/lib64
folders) the x86-64 version does.
For non binary files (which on both architectures are the same) no
conflict is there.
But alsa-lib (and other packages) contains also binaries like
'aserver' which differs for both architectures and zypper warns about
a file conflict and if I continue the
/usr/bin/aserver file from the x86-64 will be replaced with the one
from the i686 package, zypper says.
I was wondering why zypper warns about that and yum/dnf doesn't and
just installs the alsa-lib package.
Turns out even with zypper the file won't be replaced with the one
from the i686 package!
Explanation here:
https://lists.fedoraproject.org/pipermail/devel/2010-January/129725.html
When installed in parallel, multilib RPM packages may contain files that
live in common paths. When this happens, RPM uses the following algorithm:
- If the file in both packages is identical, installation is allowed
and the file is written
- If the file in both packages is an ELF binary, the file used is the
file in the package for the primary architecture
- If the file in both packages is not an ELF binary a RPM conflict is
raised
So my suggestion here would be zypper also not to warn about a file conflict
if you're installing a package for a secondary architecture that
contains an elf file that conflicts with an elf file for your primary
architecture.
RPM heuristics will anyway not overwrite the elf file for you primary
architecture,
so zypper warning about that happening makes no sense (as it won't happen).
You open to patches? :)
Best regards,
Damian
--
To unsubscribe, e-mail: zypp-devel+unsubscribe(a)opensuse.org
To contact the owner, e-mail: zypp-devel+owner(a)opensuse.org
Hello all,
I am interested in zypper/libzypp and found that it BuildRequires:
graphviz-gnome
I found: https://github.com/openSUSE/libzypp/pull/25
but not actually anything using graphviz-gnome is that still required?
(grep for graphviz shows only the buildrequire and cmake looking for it)
Thanks in advance!
--
To unsubscribe, e-mail: zypp-devel+unsubscribe(a)opensuse.org
To contact the owner, e-mail: zypp-devel+owner(a)opensuse.org