Bug 23112 - lib(64)ntfs-3g-devel isn't replacing ntfs-3g-devel
Summary: lib(64)ntfs-3g-devel isn't replacing ntfs-3g-devel
Status: RESOLVED OLD
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal enhancement
Target Milestone: ---
Assignee: José Jorge
QA Contact:
URL:
Whiteboard:
Keywords: NEEDINFO
Depends on:
Blocks:
 
Reported: 2018-06-04 07:25 CEST by Alex Kotov
Modified: 2020-08-16 17:29 CEST (History)
4 users (show)

See Also:
Source RPM: ntfs-3g
CVE:
Status comment:


Attachments
ntfs-3g and ntfs-3g-devel packages in repository (161.47 KB, image/png)
2018-06-05 08:43 CEST, Alex Kotov
Details

Description Alex Kotov 2018-06-04 07:25:29 CEST
Description of problem:
Package versions in the Mageia-6 repository are incompatible: ntfs-3g-2017.3.23-3.mga6 & ntfs-3g-devel-2016.2.22-4.mga6

Steps to Reproduce:
[root@localhost marsik]# rpm -qa | grep ntfs-3g
lib64ntfs-3g88-2017.3.23-3.mga6
ntfs-3g-2017.3.23-3.mga6

root@localhost marsik]# urpmi ntfs-3g-devel
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
Continue installation anyway? (Y/n) Y

Sorry, bad choice, try again
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
Continue installation anyway? (Y/n) y
A requested package cannot be installed:
ntfs-3g-2016.2.22-4.mga6.x86_64 (in order to keep ntfs-3g-2017.3.23-3.mga6.x86_64)
Continue installation anyway? (Y/n) Y

The following packages have to be removed for others to be upgraded:
lib64ntfs-3g88-2017.3.23-3.mga6.x86_64
 (due to conflicts with ntfs-3g[< 2017.3.23-2])
ntfs-3g-2017.3.23-3.mga6.x86_64
 (due to missing libntfs-3g.so.88()(64bit)) (y/N) y

While some packages may have been installed, there were failures.
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
Continue installation anyway?
A requested package cannot be installed:
ntfs-3g-2016.2.22-4.mga6.x86_64 (in order to keep ntfs-3g-2017.3.23-3.mga6.x86_64)
Continue installation anyway?

Kind regards,
Alex
Comment 1 David Walser 2018-06-04 18:59:50 CEST
That's strange.  When you do "urpmi ntfs-3g-devel" it should actually be installing lib64ntfs-3g-devel-2017.3.23-3.mga6, not the older ntfs-3g-devel.  The libified one is Providing and Obsoleting the old name, so it should replace it.  It looks like that was done correctly, and there's no Epoch, so that's not the issue.  Are you sure you still have core/updates_testing enabled on your system?

Source RPM: (none) => ntfs-3g
Keywords: (none) => NEEDINFO
Assignee: bugsquad => lists.jjorge
Summary: Header files and static libraries for ntfs-3g: package versions in the Mageia-6 repository are incompatible. => lib(64)ntfs-3g-devel isn't replacing ntfs-3g-devel

Comment 2 David Walser 2018-06-04 19:00:28 CEST
Sorry, core/updates, not updates_testing.
Comment 3 Thomas Backlund 2018-06-04 19:41:37 CEST
please provide the output from:

urpmi --debug ntfs-3g-devel

It should show where it fails

CC: (none) => tmb

Comment 4 Alex Kotov 2018-06-05 08:38:23 CEST
(In reply to David Walser from comment #2)
> Sorry, core/updates, not updates_testing.

Hi, David.
[root@localhost marsik]# urpmi --auto --auto-update
medium "Core Release" is up-to-date
medium "Core Updates" is up-to-date
medium "Nonfree Release" is up-to-date
medium "Nonfree Updates" is up-to-date
medium "Core 32bit Release" is up-to-date
medium "Core 32bit Updates" is up-to-date
medium "Nonfree 32bit Release" is up-to-date
medium "Nonfree 32bit Updates" is up-to-date
Packages are up to date
Comment 5 Alex Kotov 2018-06-05 08:40:28 CEST
(In reply to Thomas Backlund from comment #3)
> please provide the output from:
> 
> urpmi --debug ntfs-3g-devel
> 
> It should show where it fails

Hello, Thomas.

[root@localhost marsik]# urpmi --debug ntfs-3g-devel
getting lock on urpmi
parsing: /etc/urpmi/mediacfg.d/Official-6-x86_64
examining synthesis file [/var/lib/urpmi/Core Release/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Core Updates/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Nonfree Release/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Nonfree Updates/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Core 32bit Release/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Core 32bit Updates/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Nonfree 32bit Release/synthesis.hdlist.cz]
examining synthesis file [/var/lib/urpmi/Nonfree 32bit Updates/synthesis.hdlist.cz]
getting exclusive lock on rpm
search_packages: found ntfs-3g-devel-2016.2.22-4.mga6.x86_64 matching ntfs-3g-devel
found package(s): ntfs-3g-devel-2016.2.22-4.mga6.x86_64
opening rpmdb (root=, write=)
selecting ntfs-3g-devel-2016.2.22-4.mga6.x86_64
requiring ntfs-3g[== 2016.2.22] for ntfs-3g-devel-2016.2.22-4.mga6.x86_64
chosen ntfs-3g-2016.2.22-4.mga6.x86_64 for ntfs-3g[== 2016.2.22]
the more recent ntfs-3g-2017.3.23-3.mga6.x86_64 is installed, but does not provide ntfs-3g[== 2016.2.22] whereas ntfs-3g-2016.2.22-4.mga6.x86_64 does
selecting ntfs-3g-2016.2.22-4.mga6.x86_64
unselecting ntfs-3g-2016.2.22-4.mga6.x86_64
unselecting ntfs-3g-devel-2016.2.22-4.mga6.x86_64
installed package lib64ntfs-3g88-2017.3.23-3.mga6.x86_64 is conflicting with ntfs-3g-2016.2.22-4.mga6.x86_64 (Conflicts: ntfs-3g[< 2017.3.23-2])
set_rejected: lib64ntfs-3g88-2017.3.23-3.mga6.x86_64
installed ntfs-3g-2017.3.23-3.mga6.x86_64 is conflicting because of unsatisfied libntfs-3g.so.88()(64bit)
set_rejected: ntfs-3g-2017.3.23-3.mga6.x86_64
installed udisks2-2.1.8-2.mga6.x86_64 is conflicting because of unsatisfied ntfsprogs
promoting ntfs-3g-2016.2.22-4.mga6.x86_64 because of conflict above
not selecting ntfs-3g-2016.2.22-4.mga6.x86_64 since the more recent ntfs-3g-2017.3.23-3.mga6.x86_64 is installed
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
Continue installation anyway? (Y/n)
Comment 6 Alex Kotov 2018-06-05 08:43:40 CEST
Created attachment 10223 [details]
ntfs-3g and ntfs-3g-devel packages in repository

ntfs-3g and ntfs-3g-devel packages in repository
Comment 7 Alex Kotov 2018-06-05 09:40:23 CEST
For David Walser...

Here is a more detailed with cleaning of mirrors. Connecting native mirrors from France. Let me know what result you get when you install ntfs-3g-devel, if you have time? Thanks in advance.

Step-1...
[root@localhost marsik]# urpmi.removemedia -a
removing medium "Core Release"
removing medium "Core Release Debug"
removing medium "Core Updates"
removing medium "Core Updates Debug"
removing medium "Core Updates Testing"
removing medium "Core Updates Testing Debug"
removing medium "Core Backports"
removing medium "Core Backports Debug"
removing medium "Core Backports Testing"
removing medium "Core Backports Testing Debug"
removing medium "Nonfree Release"
removing medium "Nonfree Release Debug"
removing medium "Nonfree Updates"
removing medium "Nonfree Updates Debug"
removing medium "Nonfree Updates Testing"
removing medium "Nonfree Updates Testing Debug"
removing medium "Nonfree Backports"
removing medium "Nonfree Backports Debug"
removing medium "Nonfree Backports Testing"
removing medium "Nonfree Backports Testing Debug"
removing medium "Tainted Release"
removing medium "Tainted Release Debug"
removing medium "Tainted Updates"
removing medium "Tainted Updates Debug"
removing medium "Tainted Updates Testing"
removing medium "Tainted Updates Testing Debug"
removing medium "Tainted Backports"
removing medium "Tainted Backports Debug"
removing medium "Tainted Backports Testing"
removing medium "Tainted Backports Testing Debug"
removing medium "Core 32bit Release"
removing medium "Core 32bit Updates"
removing medium "Core 32bit Updates Testing"
removing medium "Core 32bit Backports"
removing medium "Core 32bit Backports Testing"
removing medium "Nonfree 32bit Release"
removing medium "Nonfree 32bit Updates"
removing medium "Nonfree 32bit Updates Testing"
removing medium "Nonfree 32bit Backports"
removing medium "Nonfree 32bit Backports Testing"
removing medium "Tainted 32bit Release"
removing medium "Tainted 32bit Updates"
removing medium "Tainted 32bit Updates Testing"
removing medium "Tainted 32bit Backports"
removing medium "Tainted 32bit Backports Testing"

Step-2...
[root@localhost marsik]# urpmi.addmedia --distrib http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64
adding medium "Core Release"
adding medium "Core Release Debug" (ignored by default)
adding medium "Core Updates"
adding medium "Core Updates Debug" (ignored by default)
adding medium "Core Updates Testing" (ignored by default)
adding medium "Core Updates Testing Debug" (ignored by default)
adding medium "Core Backports" (ignored by default)
adding medium "Core Backports Debug" (ignored by default)
adding medium "Core Backports Testing" (ignored by default)
adding medium "Core Backports Testing Debug" (ignored by default)
adding medium "Nonfree Release"
adding medium "Nonfree Release Debug" (ignored by default)
adding medium "Nonfree Updates"
adding medium "Nonfree Updates Debug" (ignored by default)
adding medium "Nonfree Updates Testing" (ignored by default)
adding medium "Nonfree Updates Testing Debug" (ignored by default)
adding medium "Nonfree Backports" (ignored by default)
adding medium "Nonfree Backports Debug" (ignored by default)
adding medium "Nonfree Backports Testing" (ignored by default)
adding medium "Nonfree Backports Testing Debug" (ignored by default)
adding medium "Tainted Release" (ignored by default)
adding medium "Tainted Release Debug" (ignored by default)
adding medium "Tainted Updates" (ignored by default)
adding medium "Tainted Updates Debug" (ignored by default)
adding medium "Tainted Updates Testing" (ignored by default)
adding medium "Tainted Updates Testing Debug" (ignored by default)
adding medium "Tainted Backports" (ignored by default)
adding medium "Tainted Backports Debug" (ignored by default)
adding medium "Tainted Backports Testing" (ignored by default)
adding medium "Tainted Backports Testing Debug" (ignored by default)
adding medium "Core 32bit Release"
adding medium "Core 32bit Updates"
adding medium "Core 32bit Updates Testing" (ignored by default)
adding medium "Core 32bit Backports" (ignored by default)
adding medium "Core 32bit Backports Testing" (ignored by default)
adding medium "Nonfree 32bit Release"
adding medium "Nonfree 32bit Updates"
adding medium "Nonfree 32bit Updates Testing" (ignored by default)
adding medium "Nonfree 32bit Backports" (ignored by default)
adding medium "Nonfree 32bit Backports Testing" (ignored by default)
adding medium "Tainted 32bit Release" (ignored by default)
adding medium "Tainted 32bit Updates" (ignored by default)
adding medium "Tainted 32bit Updates Testing" (ignored by default)
adding medium "Tainted 32bit Backports" (ignored by default)
adding medium "Tainted 32bit Backports Testing" (ignored by default)
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64/media/core/release/media_info/20170714-192548-synthesis.hdlist.cz
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64/media/core/updates/media_info/20180604-145004-synthesis.hdlist.cz    
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64/media/nonfree/release/media_info/20170714-184104-synthesis.hdlist.cz 
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64/media/nonfree/updates/media_info/20180529-192422-synthesis.hdlist.cz 
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/i586/media/core/release/media_info/20170714-192023-synthesis.hdlist.cz      
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/i586/media/core/updates/media_info/20180604-144617-synthesis.hdlist.cz      
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/i586/media/nonfree/release/media_info/20170714-184101-synthesis.hdlist.cz   
    http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/i586/media/nonfree/updates/media_info/20180529-192421-synthesis.hdlist.cz   

Step-3...
[root@localhost marsik]# urpmi --auto --auto-update
medium "Core Release" is up-to-date
medium "Core Updates" is up-to-date
medium "Nonfree Release" is up-to-date
medium "Nonfree Updates" is up-to-date
medium "Core 32bit Release" is up-to-date
medium "Core 32bit Updates" is up-to-date
medium "Nonfree 32bit Release" is up-to-date
medium "Nonfree 32bit Updates" is up-to-date
Packages are up to date

Step-4...
[root@localhost marsik]# urpmi ntfs-3g
Package ntfs-3g-2017.3.23-3.mga6.x86_64 is already installed

Step-5...
[root@localhost marsik]# urpmi --auto ntfs-3g-devel
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
A requested package cannot be installed:
ntfs-3g-2016.2.22-4.mga6.x86_64 (in order to keep ntfs-3g-2017.3.23-3.mga6.x86_64)
The following packages have to be removed for others to be upgraded:
lib64ntfs-3g88-2017.3.23-3.mga6.x86_64
 (due to conflicts with ntfs-3g[< 2017.3.23-2])
ntfs-3g-2017.3.23-3.mga6.x86_64
 (due to missing libntfs-3g.so.88()(64bit))
While some packages may have been installed, there were failures.
The following package cannot be installed because it depends on packages
that are older than the installed ones:
ntfs-3g-devel-2016.2.22-4.mga6
A requested package cannot be installed:
ntfs-3g-2016.2.22-4.mga6.x86_64 (in order to keep ntfs-3g-2017.3.23-3.mga6.x86_64)
Comment 8 David Walser 2018-06-06 19:02:42 CEST
I don't have a Mageia 6 installation to test it.  Why is RPM not seeing that lib64ntfs-3g-devel provides/obsoletes ntfs-3g-devel?  That is a mystery.

Does "urpmq --whatprovides ntfs-3g-devel" show lib64ntfs-3g-devel?
Comment 9 Jani Välimaa 2018-06-06 19:15:29 CEST
It tries to install pkg called ntfs-3g-devel from Core and not lib64ntfs-3g-devel providing ntfs-3g-devel for Core Updates.

Probably a feature (bug) of urpmi when 'real pkg' is in Core and other pkg providing the same is available in Updates. 

'urpmi ntfs-3g-devel --media Updates' works.

CC: (none) => jani.valimaa

Comment 10 David Walser 2018-06-06 23:33:41 CEST
Hopefully Thierry has an idea of what to do about this.

CC: (none) => thierry.vignaud

Comment 11 Thierry Vignaud 2018-06-15 11:20:31 CEST
Here, when looking for ntfs-3g-devel libntfs-3g-devel, _search_packages() will return the same pkgs set in both cases.
eg on x86_64:

ntfs-3g-devel-2016.2.22-4.mga6.x86_64
lib64ntfs-3g-devel-2017.3.23-3.mga6.x86_64
ntfs-3g-devel-2016.2.22-4.mga6.i586
libntfs-3g-devel-2017.3.23-3.mga6.i586

Then _search_packages_keep_best() will:
1) only keep those having the best arch:
   ntfs-3g-devel-2016.2.22-4.mga6.x86_64
   lib64ntfs-3g-devel-2017.3.23-3.mga6.x86_64
2) if one pkg has the exact name, only keep it

Thus when removing the "lib" prefix, the search will only return:
ntfs-3g-devel-2016.2.22-4.mga6.x86_64

when trying to install "foobar", URPM first look for a packages named "foobar", then if not found, look for a package providing it.
Comment 12 David Walser 2018-06-17 19:15:44 CEST
OK, so how do we fix this then?  We want lib64ntfs-3g-devel to replace ntfs-3g-devel.
Comment 13 Thierry Vignaud 2018-06-18 11:27:14 CEST
This should still works.
Here, this happens as one manually ask for the old name.
Comment 14 Aurelien Oudelet 2020-08-16 17:29:25 CEST
Mageia 6 changed to end-of-life (EOL) status on 2019-09-30. It is no longer 
maintained, which means that it will not receive any further security or bug 
fix updates.

Package Maintainer: If you wish for this bug to remain open because you plan 
to fix it in a currently maintained version, simply change the 'version' to 
a later Mageia version.

Bug Reporter: Thank you for reporting this issue and we are sorry that we 
weren't able to fix it before Mageia 6's end of life. If you are able to 
reproduce it against a later version of Mageia, you are encouraged to click 
on "Version" and change it against that version of Mageia.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a more recent
Mageia release includes newer upstream software that fixes bugs or makes them
obsolete.

If you would like to help fixing bugs in the future, don't hesitate to join the
packager team via our mentoring program [1] or join the teams that fit you 
most [2].

[1] https://wiki.mageia.org/en/Becoming_a_Mageia_Packager
[2] http://www.mageia.org/contribute/

Best regards,
Aurélien
Bugsquad Team

Status: NEW => RESOLVED
CC: (none) => ouaurelien
Resolution: (none) => OLD


Note You need to log in before you can comment on or make changes to this bug.