mvo5 / synaptic

The synaptic package manager
GNU General Public License v2.0
154 stars 55 forks source link

Confusing UI inconsistencies when multiple versions of a package are available from different repos #88

Open hamishmb opened 2 years ago

hamishmb commented 2 years ago

Hi there,

Thanks for all the effort you've put into this UI over the years.

Synaptic version: 0.84.6 Linux Distro: Linux Mint 20.2 Cinnamon (Ubuntu 20.04 LTS base)

I've found a bug related to having multiple versions of a package available in different repos. For simplicity's sake, let's define these names:

Package Z: The package in question, let's say there's version 1 and 2 available. Repo A: The repo with version 1 of Z. Repo B: The repo with version 2 of Z.

Problem Description:

Please bear with me because I haven't found a more concise/coherent way to describe this problem. I've checked my setup a few times now to make sure I'm not making a silly error.

If I have Z-1 installed, and use the Origin selection to view Repo A/focal, I can see a variety of packages that are installed, but Z does not show up, even though Z-1 is in this repo. If I view Repo A/now, Z still doesn't show up, even though I have the version from this repo - this is very confusing.

If at this point I look at Repo B/focal, Z shows up, even though the version I have installed is from Repo A. Side note: Package X shows up 4 times (identically) in the list here, perhaps related to https://github.com/mvo5/synaptic/issues/58? Repo B/now doesn't list Z, which makes sense, because Z is installed from Repo A.

At this point, I'm wondering what version of Z I have installed, as Synaptic doesn't think either version is installed when viewing from the Origin filter. If I just search for Z under All, it shows up, and shows that I have Z-1 from Repo A, and also shows Z-2 is available from Repo B, and that Z is hence upgradable to version 2.

To summarise, I was very confused and had to use the commandline to check with apt show and apt policy and look at the repos on launchpad.net to double check what was going on.

Actual repositories and package names:

In case this is useful:

Package X is virt-manager, and the versions are 1:3.0.0-0~ppa0 and 3.2.0-3~backport20.04-202111051420~ubuntu20.04.1.

Repo A is https://launchpad.net/~jacob/+archive/ubuntu/virtualisation

Repo B is https://launchpad.net/~canonical-server/+archive/ubuntu/server-backports/

I apologise if this is incoherent. Let me know and I will try to find a clearer way to explain the problem.

If there's anything I can do to help, let me know.