Bug 27423

Summary: Wrong "Provides" and "Obsolete" in zypper.spec
Product: Mageia Reporter: Mia Pienitz <mia>
Component: RPM PackagesAssignee: Christiaan Welvaart <cjw>
Status: RESOLVED INVALID QA Contact:
Severity: normal    
Priority: Normal CC: lewyssmith
Version: Cauldron   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Source RPM: zypper-1.14.33-2.mga8 CVE:
Status comment:

Description Mia Pienitz 2020-10-15 10:33:12 CEST
In the specfile:
Provides:       apt
Obsoletes:      apt < 1:0.6

This is wrong, as zypper has no apt functionally (as stated in Bug 27422)

But as Zypper can handle yum-repositories, Zypper is a replacement for yum and obsoletes it.

I entered this as normal bug, as this bug handles dependencies wrong.
Comment 1 Lewis Smith 2020-10-15 21:06:23 CEST
Thank you for reporting this.

This package is curious:
"Zypper is a command line package manager, which makes use of libzypp,
providing functions like repository access, dependency solving,
package installation, etc.
The XML based repository metadata used by this package manager is not
available on Mageia mirrors so it cannot be used for regular package
installation."

As for yum:
"As a Yum CLI compatibility layer, supplies /usr/bin/yum redirecting to DNF".
Indeed yes:
 $ ls -l /usr/bin/yum
 lrwxrwxrwx 1 root root 5 Med  18 10:05 /usr/bin/yum -> dnf-3*

So yum looks redundant vis a vis DNF. And what zypper is useful for is enigmatic, but Mia knows! The remark in comment 0 is valid as things stand.

We do have two apt related packages, but not apt itself:
 apt-mga "Provides tools useful to manage a Debian repository on a mageia
distribution (apt-ftparchive e.g.)".
 apt-common "This package contains the needed files for various apt-frontend,
such as synaptic, aptitude."
Neither of which we have!

Assigning to zypper's maintainer cjw.

Assignee: bugsquad => cjw
CC: (none) => lewyssmith

Comment 2 Christiaan Welvaart 2020-10-15 23:07:24 CEST
$ which apt apt-get
/usr/bin/apt
/usr/bin/apt-get
$ ls -l /usr/bin/apt /usr/bin/apt-get
lrwxrwxrwx 1 root root 8 Feb 19  2020 /usr/bin/apt -> aptitude
lrwxrwxrwx 1 root root 8 Feb 19  2020 /usr/bin/apt-get -> aptitude
$ rpm -qf /usr/bin/aptitude
zypper-1.14.33-2.mga8

'apt' in mageia was apt-rpm, a fork of debian apt with support for mageia rpm repositories as used by urpmi.

zypper supplies a limited apt front-end, and zypper works with the new repodata in mageia repositories, so I don't see the problem.

I guess debian apt is called apt-mga, but that is not a package manager for mageia as it cannot handle rpm packages.
Comment 3 Lewis Smith 2020-10-16 20:59:35 CEST
Thank you Chris for your educative explanation - but the scenario is certainly confusing:
 $ urpmq -l apt-mga | grep /bin/        includes
 /usr/bin/apt                           -> aptitude (zypper)
 /usr/bin/apt-get                       -> aptitude (zypper)
and
 $ urpmq -l zypper | grep /bin/          includes 
 /usr/bin/apt                            -> aptitude
 /usr/bin/apt-get                        -> aptitude
 /usr/bin/aptitude
 /usr/bin/zypper
Thus
 /usr/bin/apt
 /usr/bin/apt-get
occur both in apt-mga and zypper; but
 /usr/bin/aptitude
only in zypper.

Since the linkage also happens in apt-mga, which does not iteslf include 'aptitude', how does that work? I am intrigued that apt-mga does not require zypper.

That aside, if (from comment 0):
> In the specfile:            for zypper
> Provides:       apt
> Obsoletes:      apt < 1:0.6
> This is wrong, as zypper has no apt functionally
is itself wrong. please close this bug 'invalid'. You are best qualified to do that.
Comment 4 Christiaan Welvaart 2020-10-16 22:02:26 CEST
The apt-mga package conflicts with apt and zypper, so the file conflicts on /usr/bin/apt and /usr/bin/apt-get are not an issue.

apt-mga and zypper do different things, maybe the output of the 'urpmq -l apt-mga' command is not entirely correct.

Status: NEW => RESOLVED
Resolution: (none) => INVALID