Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-12 Thread Wesley Schwengle
On Tue, Mar 12, 2024 at 11:40:01AM +0100, Julian Andres Klode wrote:

> On Mon, Mar 11, 2024 at 10:12:33PM -0400, Wesley Schwengle wrote:
> > I do not know what the bug here is, it could be one of these options:
> > 
> > 1) apt-get/apt upgrade accepts packages to upgrade where the docs state it
> >doesn't. The behaviour needs to change to not accept packages.
> > 
> > 2) apt-get/apt upgrade accepts packages and removes packages to satisfy deps
> >where the docs state it doesn't. The behaviour need to change to not 
> > remove
> >any packages. There is a small edge case where you can say: `apt upgrade 
> > foo
> >bar-'. Technically, it shouldn't remove packages, yet you want and 
> > instruct
> >it to remove bar.
> 
> The behavior is correct if potentially unexpected, but it should be
> documented better.

Thanks, it was option 3) Works as intended, documentation needs to be updated.

> > FWIW, aptitude does not remove packages where you call `aptitude 
> > safe-upgrade
> > foo'. It does remove packages when you call `aptitude full-upgrade foo'. It
> > also removes bar when you run `aptitude safe-upgrade foo bar-'. 
> 
> That is an entirely different command; `aptitude safe-upgrade foo`
> upgrades (only) `foo`, whereas `apt upgrade foo` first does the normal
> install argument handling and then runs an upgrade, so `foo` could also
> be a new package that is not currently installed to hint the solver if
> it is unable to find a solution.

Ahhh. I was under the impression that they had a similar intent.

On a related note: While debugging I also noticed apt's update and apt-get's
update are also slightly different. apt-get will not allow for new packages to
be installed whereas apt's version does allow this. You get apt's behaviour
with the --with-new-pkgs switch in apt-get's version of upgrade.

Cheers,
Wesley



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-12 Thread Julian Andres Klode
Control: retitle -1 document package specifiers for `upgrade`

On Mon, Mar 11, 2024 at 10:12:33PM -0400, Wesley Schwengle wrote:
> On Mon, Mar 11, 2024 at 11:32:24PM +0100, Miguel Angel Rojas wrote:
> > > I see. It looks like `apt upgrade ' behaves as `apt install
> > > '. Which (to me) is unexpected behaviour, as the man page is
> > quite
> > >clear on its behaviour (man 8 apt-get):
> > 
> > Well, clearly it shouldn’t. To begin with, “apt install” should mark a
> > package as manual installed while “apt upgrade” shouldn’t (my assumption).
> > And you’re right that “apt install” can remove a package if needed to
> > satisfy dependencies.
> > 
> > On top of that, documentation clearly states that “apt upgrade” should not
> > remove any package, but it does when you specify an individual package to
> > upgrade.
> > 
> > If this is not the expected behavior, maybe this is a bug (unless I am
> > missing something here).
> 
> I do not know what the bug here is, it could be one of these options:
> 
> 1) apt-get/apt upgrade accepts packages to upgrade where the docs state it
>doesn't. The behaviour needs to change to not accept packages.
> 
> 2) apt-get/apt upgrade accepts packages and removes packages to satisfy deps
>where the docs state it doesn't. The behaviour need to change to not remove
>any packages. There is a small edge case where you can say: `apt upgrade 
> foo
>bar-'. Technically, it shouldn't remove packages, yet you want and instruct
>it to remove bar.

The behavior is correct if potentially unexpected, but it should be
documented better.

> 
> FWIW, aptitude does not remove packages where you call `aptitude safe-upgrade
> foo'. It does remove packages when you call `aptitude full-upgrade foo'. It
> also removes bar when you run `aptitude safe-upgrade foo bar-'. 

That is an entirely different command; `aptitude safe-upgrade foo`
upgrades (only) `foo`, whereas `apt upgrade foo` first does the normal
install argument handling and then runs an upgrade, so `foo` could also
be a new package that is not currently installed to hint the solver if
it is unable to find a solution.

-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer  i speak de, en



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-12 Thread Miguel Angel Rojas
Control: retitle -1 apt upgrade : it removes packages when it
shouldn't.

The case you mentioned is a tricky one, yes: *apt upgrade foo+ bar-* (I
really don't know how apt handles it internally but having this option is
very useful. Of course, I wouldn't remove it).

I think it makes a lot of sense for "apt upgrade" to allow packages as
arguments. There should be a possibility to upgrade only a set of packages
and it comes in handy in some situations (i.e.: t64 upgrade). "apt upgrade"
also doesn't mark upgraded packages as manually installed (as expected).
But "apt install" does mark them as manually installed (as expected too).

Therefore, I see 2 options here:

a) Change apt documentation to include the current behaviour. But if so, it
should *NOT* remove any packages.
b) Remove the possibility to specify packages to upgrade as arguments
(which I don't really recommend for the reasons stated above).

Anyway, I think some clarification is needed from the developers to shed
some light on this.

Regards

On Tue, Mar 12, 2024 at 3:12 AM Wesley Schwengle 
wrote:

> On Mon, Mar 11, 2024 at 11:32:24PM +0100, Miguel Angel Rojas wrote:
> > > I see. It looks like `apt upgrade ' behaves as `apt install
> > > '. Which (to me) is unexpected behaviour, as the man page is
> > quite
> > >clear on its behaviour (man 8 apt-get):
> >
> > Well, clearly it shouldn’t. To begin with, “apt install” should mark a
> > package as manual installed while “apt upgrade” shouldn’t (my
> assumption).
> > And you’re right that “apt install” can remove a package if needed to
> > satisfy dependencies.
> >
> > On top of that, documentation clearly states that “apt upgrade” should
> not
> > remove any package, but it does when you specify an individual package to
> > upgrade.
> >
> > If this is not the expected behavior, maybe this is a bug (unless I am
> > missing something here).
>
> I do not know what the bug here is, it could be one of these options:
>
> 1) apt-get/apt upgrade accepts packages to upgrade where the docs state it
>doesn't. The behaviour needs to change to not accept packages.
>
> 2) apt-get/apt upgrade accepts packages and removes packages to satisfy
> deps
>where the docs state it doesn't. The behaviour need to change to not
> remove
>any packages. There is a small edge case where you can say: `apt
> upgrade foo
>bar-'. Technically, it shouldn't remove packages, yet you want and
> instruct
>it to remove bar.
>
> FWIW, aptitude does not remove packages where you call `aptitude
> safe-upgrade
> foo'. It does remove packages when you call `aptitude full-upgrade foo'. It
> also removes bar when you run `aptitude safe-upgrade foo bar-'.
>
> I'll leave this for the maintainers to answer.
>
> Cheers,
> Wesley
>
>


Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Wesley Schwengle
On Mon, Mar 11, 2024 at 11:32:24PM +0100, Miguel Angel Rojas wrote:
> > I see. It looks like `apt upgrade ' behaves as `apt install
> > '. Which (to me) is unexpected behaviour, as the man page is
> quite
> >clear on its behaviour (man 8 apt-get):
> 
> Well, clearly it shouldn’t. To begin with, “apt install” should mark a
> package as manual installed while “apt upgrade” shouldn’t (my assumption).
> And you’re right that “apt install” can remove a package if needed to
> satisfy dependencies.
> 
> On top of that, documentation clearly states that “apt upgrade” should not
> remove any package, but it does when you specify an individual package to
> upgrade.
> 
> If this is not the expected behavior, maybe this is a bug (unless I am
> missing something here).

I do not know what the bug here is, it could be one of these options:

1) apt-get/apt upgrade accepts packages to upgrade where the docs state it
   doesn't. The behaviour needs to change to not accept packages.

2) apt-get/apt upgrade accepts packages and removes packages to satisfy deps
   where the docs state it doesn't. The behaviour need to change to not remove
   any packages. There is a small edge case where you can say: `apt upgrade foo
   bar-'. Technically, it shouldn't remove packages, yet you want and instruct
   it to remove bar.

FWIW, aptitude does not remove packages where you call `aptitude safe-upgrade
foo'. It does remove packages when you call `aptitude full-upgrade foo'. It
also removes bar when you run `aptitude safe-upgrade foo bar-'. 

I'll leave this for the maintainers to answer.

Cheers,
Wesley



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Miguel Angel Rojas
> I see. It looks like `apt upgrade ' behaves as `apt install
> '. Which (to me) is unexpected behaviour, as the man page is
quite
>clear on its behaviour (man 8 apt-get):

Well, clearly it shouldn’t. To begin with, “apt install” should mark a
package as manual installed while “apt upgrade” shouldn’t (my assumption).
And you’re right that “apt install” can remove a package if needed to
satisfy dependencies.

On top of that, documentation clearly states that “apt upgrade” should not
remove any package, but it does when you specify an individual package to
upgrade.

If this is not the expected behavior, maybe this is a bug (unless I am
missing something here).


Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Wesley Schwengle
On Mon, Mar 11, 2024 at 10:48:53PM +0100, Miguel Angel Rojas wrote:
> Hi Wesley, David,
> 
> > You keep saying `apt upgrade' yet your command was `apt full-upgrade'.
> 
> Yes, maybe it didn't express itself properly. After your suggestion about
> not using "apt full-upgrade" during this t64 migration, I followed your
> advice and used only "apt upgrade" for individual upgrades. I was referring
> to this comment you made below:

Ah, and I meant upgrading as individually installing packages ala: `apt install
foo'. I get the confusion now :)

> Now, If I type"apt upgrade" doesn't give me any option to update anything:

Ok, that is expected behaviour.

> But, in some situations, as you mentioned, individual package upgrades can
> work and remove some problems. So what I did was to try some "apt upgrade"
> on individual packages from that list. This time I try the ppp package:
> 
> # apt upgrade ppp
> Reading package lists... Done
> Building dependency tree... Done
> Reading state information... Done
> Calculating upgrade... Done
> The following packages were automatically installed and are no longer
> required:
>  linux-headers-6.6.15-amd64 linux-headers-6.6.15-common
> linux-image-6.6.15-amd64 linux-kbuild-6.6.15
> Use 'apt autoremove' to remove them.
> The following packages will be REMOVED: <--- PACKAGE TO BE REMOVED
>  libpcap0.8
> The following NEW packages will be installed:
>  libpcap0.8t64
>
> [snip]
>
> The following packages will be upgraded:
>  ppp
> 1 upgraded, 1 newly installed, 1 to remove and 22 not upgraded.
> Need to get 511 kB of archives.
> After this operation, 15.4 kB disk space will be freed.
> ,
> 
> As you can see here, I'm typing "apt upgrade ppp" and it removes a package
> in this case: libpcap0.8 (sometimes more packages are removed).
> 
> Which is good, because libpcap0.8 is replaced by libpcap0.8t64 (as expected
> in this t64 migration) but "apt upgrade ppp" is REMOVING a package (which
> contradicts the specification).

I see. It looks like `apt upgrade ' behaves as `apt install
'. Which (to me) is unexpected behaviour, as the man page is quite
clear on its behaviour (man 8 apt-get):

upgrade
   upgrade is used to install the newest versions of **all** (emphasis mine)
   packages currently installed on the system from the sources enumerated in
   /etc/apt/sources.list.

It shouldn't accept the arguments you feed it, apt-get has the same
"feature". And with an install you do remove packages to satisfy the deps.

Cheers,
Wesley



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Miguel Angel Rojas
Hi Wesley, David,

> You keep saying `apt upgrade' yet your command was `apt full-upgrade'.

Yes, maybe it didn't express itself properly. After your suggestion about
not using "apt full-upgrade" during this t64 migration, I followed your
advice and used only "apt upgrade" for individual upgrades. I was referring
to this comment you made below:

> My advice to you is: don't expect full-upgrade to work until the
transitioning
> is done. You can do `apt upgrade' without too much hassle. If you feel
like it
> you can inspect individual upgrades possibilities  via `apt list
--upgradable'
> and upgrade each package individually.

Therefore, that's the advice I'm following right now.

Now, If I type"apt upgrade" doesn't give me any option to update anything:

# apt upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer
required:
 linux-headers-6.6.15-amd64 linux-headers-6.6.15-common
linux-image-6.6.15-amd64 linux-kbuild-6.6.15
Use 'apt autoremove' to remove them.
The following packages have been kept back:
 gstreamer1.0-plugins-bad gstreamer1.0-plugins-good
gstreamer1.0-plugins-ugly kaddressbook kmail knotes
 libgstreamer-plugins-bad1.0-0 libkf5akonadisearch-bin
libkf5akonadisearch-plugins
 libkf5messagecomposer5abi1 libkf5messagecore5abi1 libkf5messagelist5abi1
libkf5messageviewer5abi1
 libkf5mimetreeparser5abi1 libkf5pimcommonakonadi5abi1
libkf5templateparser5 libkf5webengineviewer5abi1
 libkpimaddressbookimportexport5 libldb2 libopenconnect5 libqt5webengine5
ppp samba-libs
0 upgraded, 0 newly installed, 0 to remove and 23 not upgraded.


But, in some situations, as you mentioned, individual package upgrades can
work and remove some problems. So what I did was to try some "apt upgrade"
on individual packages from that list. This time I try the ppp package:

# apt upgrade ppp
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer
required:
 linux-headers-6.6.15-amd64 linux-headers-6.6.15-common
linux-image-6.6.15-amd64 linux-kbuild-6.6.15
Use 'apt autoremove' to remove them.
The following packages will be REMOVED: <--- PACKAGE TO BE REMOVED
 libpcap0.8
The following NEW packages will be installed:
 libpcap0.8t64
The following packages have been kept back:
 gstreamer1.0-plugins-bad gstreamer1.0-plugins-good
gstreamer1.0-plugins-ugly kaddressbook kmail knotes
 libgstreamer-plugins-bad1.0-0 libkf5akonadisearch-bin
libkf5akonadisearch-plugins
 libkf5messagecomposer5abi1 libkf5messagecore5abi1 libkf5messagelist5abi1
libkf5messageviewer5abi1
 libkf5mimetreeparser5abi1 libkf5pimcommonakonadi5abi1
libkf5templateparser5 libkf5webengineviewer5abi1
 libkpimaddressbookimportexport5 libldb2 libopenconnect5 libqt5webengine5
samba-libs
The following packages will be upgraded:
 ppp
1 upgraded, 1 newly installed, 1 to remove and 22 not upgraded.
Need to get 511 kB of archives.
After this operation, 15.4 kB disk space will be freed.
,

As you can see here, I'm typing "apt upgrade ppp" and it removes a package
in this case: libpcap0.8 (sometimes more packages are removed).

Which is good, because libpcap0.8 is replaced by libpcap0.8t64 (as expected
in this t64 migration) but "apt upgrade ppp" is REMOVING a package (which
contradicts the specification).

@David: I will send you the file as you requested.

Regards

On Mon, Mar 11, 2024 at 5:44 PM Wesley Schwengle 
wrote:

>
> Hi Miguel,
>
> On Mon, Mar 11, 2024 at 05:09:47PM +0100, Miguel Angel Rojas wrote:
> > > I do not know, at times I'm also wondering why it doesn't do it, but I
> > didn't
> > > take time to look at the code to understand what the resolver is doing.
> > Also,
> > > it was sort of expected. I think we can probably solve this is a more
> > > controlled manner. With the current t64 transitioning in unstable it is
> > > difficult to track down. Many updates so the situation now may differ
> > from the
> > > situation in an hour from now.
> >
> > Yes, it is confusing for me too. Without considering this t64 migration,
> > “apt upgrade” should *NOT* remove any package (just upgrading a package
> to
> > a newer version or install new dependencies). But it is removing packages
> > right now! i.e. again, with this t64 migration, it makes the old
> libraries
> > to be uninstalled and install the new *t64 version.
> >
> > Any thoughts why “apt upgrade” is removing packages even when
> documentation
> > says it shouldn’t? or is it a bug?
>
> You keep saying `apt upgrade' yet your command was `apt full-upgrade'. As
> said
> earlier, full-upgrade does indeed remove packages to be able to perform an
> upgrade. I haven't seen `apt upgrade' do that. So I cannot comment on apt
> doing
> something wrong when it isn't :)
>
> Cheers,
> Wesley
>


Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread David Kalnischkies
On Mon, Mar 11, 2024 at 05:09:47PM +0100, Miguel Angel Rojas wrote:
> Yes, it is confusing for me too. Without considering this t64 migration,
> “apt upgrade” should *NOT* remove any package (just upgrading a package to
> a newer version or install new dependencies). But it is removing packages
> right now! i.e. again, with this t64 migration, it makes the old libraries
> to be uninstalled and install the new *t64 version.
> 
> Any thoughts why “apt upgrade” is removing packages even when documentation
> says it shouldn’t? or is it a bug?

If "apt upgrade" is saying that it removes packages, that is a bug, yes.

Please run: apt upgrade -s -o Dir::Log::Solver=/tmp/apt-upgrade-bug.edsp.xz
(as normal user; the -s enables simulation so nothing bad can happen)

That will create a /tmp/apt-upgrade-bug.edsp.xz file (a few MBs big) you
can sent to me (it might be too big for a bug and/or the mailinglist).
That file contains information about all packages currently available to
you and which of them you have installed – as that changes quiet often
and its near impossible to reproduce a problem, especially while a big
transition is underway, otherwise.

If that package-removing upgrade happened in the past, you can look it
up in /var/log/apt/history.log – far less details and harder to
reproduce, but at least some chance…


I do have to note that I am somewhat dubious through. I have heard that
claim quiet often recently and so far it turned out not to be an "apt
upgrade" invocation in the end, confusing it with autoremove remarks or
didn't expect that some non-t64 and t64 packages became co-installable…
but never say never.


Best regards

David Kalnischkies


signature.asc
Description: PGP signature


Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Wesley Schwengle


Hi Miguel,

On Mon, Mar 11, 2024 at 05:09:47PM +0100, Miguel Angel Rojas wrote:
> > I do not know, at times I'm also wondering why it doesn't do it, but I
> didn't
> > take time to look at the code to understand what the resolver is doing.
> Also,
> > it was sort of expected. I think we can probably solve this is a more
> > controlled manner. With the current t64 transitioning in unstable it is
> > difficult to track down. Many updates so the situation now may differ
> from the
> > situation in an hour from now.
> 
> Yes, it is confusing for me too. Without considering this t64 migration,
> “apt upgrade” should *NOT* remove any package (just upgrading a package to
> a newer version or install new dependencies). But it is removing packages
> right now! i.e. again, with this t64 migration, it makes the old libraries
> to be uninstalled and install the new *t64 version.
> 
> Any thoughts why “apt upgrade” is removing packages even when documentation
> says it shouldn’t? or is it a bug?

You keep saying `apt upgrade' yet your command was `apt full-upgrade'. As said
earlier, full-upgrade does indeed remove packages to be able to perform an
upgrade. I haven't seen `apt upgrade' do that. So I cannot comment on apt doing
something wrong when it isn't :)

Cheers,
Wesley



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Miguel Angel Rojas
Hi Wesley,

Good conversation here. Let me give you some comments from my side:

> No, there is (or was) something going on with the dependencies of
gdm-minimal
> for sure. I think it is related to libdebuginfod1, which has a t64
variant.
> This one has a dependency to libelf1 and libdw1. Now the libdebuginfod1t64
> depends on libelf1t64 and libdw1t64. These two replace libelf1 and
libdw1, the
> former having a relative high count of reverse dependencies.

I didn’t catch this one (and I spent a fair amount of time trying to find
out what was going on) ;) Thank you for spotting it!

> I do not know, at times I'm also wondering why it doesn't do it, but I
didn't
> take time to look at the code to understand what the resolver is doing.
Also,
> it was sort of expected. I think we can probably solve this is a more
> controlled manner. With the current t64 transitioning in unstable it is
> difficult to track down. Many updates so the situation now may differ
from the
> situation in an hour from now.

Yes, it is confusing for me too. Without considering this t64 migration,
“apt upgrade” should *NOT* remove any package (just upgrading a package to
a newer version or install new dependencies). But it is removing packages
right now! i.e. again, with this t64 migration, it makes the old libraries
to be uninstalled and install the new *t64 version.

Any thoughts why “apt upgrade” is removing packages even when documentation
says it shouldn’t? or is it a bug?

> I disagree (or agree) to some extent. The gdb-minimal has been held back
on my
> system for a long time. I removed it after I saw it was a remnant of a KDE
> experiment I did. The fact that I can install it now is a change from a
couple
> of days ago. The bug may be the same, but with how unstable it is now with
> this big transition, it's wise to leave it where we are now and break it
down
> into a more controlled reproduction path, where we don't have so many
moving
> pieces.

Yes, I fully agreed with that! Let’s wait until packages are fully settled
down. I have a feeling that it is the same bug but there is no way to probe
it with this transition going on.

Regards



On Mon, Mar 11, 2024 at 3:04 PM Wesley Schwengle 
wrote:

>
> Hello Miguel,
>
> On Mon, Mar 11, 2024 at 09:50:12AM +0100, Miguel Angel Rojas wrote:
>
> > >This problem isn't because of apt, the problem is that gdb-minimal/gdb
> > >  dependencies cannot be satified. A full-upgrade is the equivalent of a
> > >  dist-upgrade which will remove packages to resolve the dependencies.
> The
> > > problem you are facing is the t64 transition[1][2] where not all
> packages
> > are
> > >  transitioned.
> >
> > I haven't detected any "gdb | gdb-minimal dependencies that can't be
> > satisfied at this point. Everything seems to be OK with those packages.
>
> No, there is (or was) something going on with the dependencies of
> gdm-minimal
> for sure. I think it is related to libdebuginfod1, which has a t64 variant.
> This one has a dependency to libelf1 and libdw1. Now the libdebuginfod1t64
> depends on libelf1t64 and libdw1t64. These two replace libelf1 and libdw1,
> the
> former having a relative high count of reverse dependencies.
>
> > >  My advice to you is: don't expect full-upgrade to work until the
> > transitioning
> > >   is done.
> >
> > You nail it here! I have managed to upgrade package by package but it is
> a
> > tedious process until the whole transition is completed.
>
> Some of them yes, but often after doing one, you can use `apt upgrade' to
> see if it resolved other problems (which in my case it does from time to
> time).
>
> > But "apt upgrade"
> > should not remove any packages according to its documentation (man apt)
>
> That is correct, but you were executing full-upgrade:
>
> > > On Sun, Mar 10, 2024 at 02:13:34PM +0100, Miguel Angel wrote:
> > >
> > > > # apt full-upgrade
> > > > Reading package lists... Done
> > > > Building dependency tree... Done
> > > > Reading state information... Done
> > > > Calculating upgrade... Error!
> > > > Some packages could not be installed. This may mean that you have
> > > > requested an impossible situation or if you are using the unstable
> > > > distribution that some required packages have not yet been created
> > > > or been moved out of Incoming.
> > > > The following information may help to resolve the situation:
>
> > Why is this t64 upgrade working then as it is removing deprecated
> packages
> > for *t64 packages?
>
> I do not know, at times I'm also wondering why it doesn't do it, but I
> didn't
> take time to look at the code to understand what the resolver is doing.
> Also,
> it was sort of expected. I think we can probably solve this is a more
> controlled manner. With the current t64 transitioning in unstable it is
> difficult to track down. Many updates so the situation now may differ from
> the
> situation in an hour from now.
>
> > >  This seems to be an more of an actual issue where dependencies are
> > declared but
> > >apt 

Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Wesley Schwengle


Hello Miguel,

On Mon, Mar 11, 2024 at 09:50:12AM +0100, Miguel Angel Rojas wrote:

> >This problem isn't because of apt, the problem is that gdb-minimal/gdb
> >  dependencies cannot be satified. A full-upgrade is the equivalent of a
> >  dist-upgrade which will remove packages to resolve the dependencies. The
> > problem you are facing is the t64 transition[1][2] where not all packages
> are
> >  transitioned.
> 
> I haven't detected any "gdb | gdb-minimal dependencies that can't be
> satisfied at this point. Everything seems to be OK with those packages.

No, there is (or was) something going on with the dependencies of gdm-minimal
for sure. I think it is related to libdebuginfod1, which has a t64 variant.
This one has a dependency to libelf1 and libdw1. Now the libdebuginfod1t64
depends on libelf1t64 and libdw1t64. These two replace libelf1 and libdw1, the
former having a relative high count of reverse dependencies.

> >  My advice to you is: don't expect full-upgrade to work until the
> transitioning
> >   is done.
> 
> You nail it here! I have managed to upgrade package by package but it is a
> tedious process until the whole transition is completed. 

Some of them yes, but often after doing one, you can use `apt upgrade' to
see if it resolved other problems (which in my case it does from time to time).

> But "apt upgrade"
> should not remove any packages according to its documentation (man apt)

That is correct, but you were executing full-upgrade:

> > On Sun, Mar 10, 2024 at 02:13:34PM +0100, Miguel Angel wrote:
> >
> > > # apt full-upgrade
> > > Reading package lists... Done
> > > Building dependency tree... Done
> > > Reading state information... Done
> > > Calculating upgrade... Error!
> > > Some packages could not be installed. This may mean that you have
> > > requested an impossible situation or if you are using the unstable
> > > distribution that some required packages have not yet been created
> > > or been moved out of Incoming.
> > > The following information may help to resolve the situation:

> Why is this t64 upgrade working then as it is removing deprecated packages
> for *t64 packages?

I do not know, at times I'm also wondering why it doesn't do it, but I didn't
take time to look at the code to understand what the resolver is doing. Also,
it was sort of expected. I think we can probably solve this is a more
controlled manner. With the current t64 transitioning in unstable it is
difficult to track down. Many updates so the situation now may differ from the
situation in an hour from now.

> >  This seems to be an more of an actual issue where dependencies are
> declared but
> >apt doing something weird. But that is an issue on bookworm where we
> aren't
> >getting poluted results because of a transitioning.
> 
> I'm glad you were able to replicate in bookworm (stable) it but I don't
> think (at least in this case) it is related to the t64 transition. Same
> errors on both distributions and I checked that gdb dependencies were
> satisfied in unstable (I don't have a system running stable).

I disagree (or agree) to some extent. The gdb-minimal has been held back on my
system for a long time. I removed it after I saw it was a remnant of a KDE
experiment I did. The fact that I can install it now is a change from a couple
of days ago. The bug may be the same, but with how unstable it is now with
this big transition, it's wise to leave it where we are now and break it down
into a more controlled reproduction path, where we don't have so many moving
pieces.

> Appreciate your support.

Yw and good luck!

Cheers,
Wesley



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-11 Thread Miguel Angel Rojas
Hi Wesley,

>This problem isn't because of apt, the problem is that gdb-minimal/gdb
>  dependencies cannot be satified. A full-upgrade is the equivalent of a
>  dist-upgrade which will remove packages to resolve the dependencies. The
> problem you are facing is the t64 transition[1][2] where not all packages
are
>  transitioned.

I haven't detected any "gdb | gdb-minimal dependencies that can't be
satisfied at this point. Everything seems to be OK with those packages.

>  My advice to you is: don't expect full-upgrade to work until the
transitioning
>   is done.

You nail it here! I have managed to upgrade package by package but it is a
tedious process until the whole transition is completed. But "apt upgrade"
should not remove any packages according to its documentation (man apt)

*"upgrade is used to install available upgrades of all packages currently
installed on the system from the sources configured via sources.list(5).
New packages will be installed if required to satisfy dependencies, but
existing packages will never be removed. If an upgrade for apackage
requires the remove of an installed package the upgrade for thispackage
isn't performed."*

Why is this t64 upgrade working then as it is removing deprecated packages
for *t64 packages?

>  This seems to be an more of an actual issue where dependencies are
declared but
>apt doing something weird. But that is an issue on bookworm where we
aren't
>getting poluted results because of a transitioning.

I'm glad you were able to replicate in bookworm (stable) it but I don't
think (at least in this case) it is related to the t64 transition. Same
errors on both distributions and I checked that gdb dependencies were
satisfied in unstable (I don't have a system running stable).

> I don't know either and that question should be redirected to the
> plasma-workspace maintainer.

good advice! I will.

Appreciate your support.

Thanks!


On Sun, Mar 10, 2024 at 8:20 PM Wesley Schwengle 
wrote:

> On Sun, Mar 10, 2024 at 02:13:34PM +0100, Miguel Angel wrote:
>
> > # apt full-upgrade
> > Reading package lists... Done
> > Building dependency tree... Done
> > Reading state information... Done
> > Calculating upgrade... Error!
> > Some packages could not be installed. This may mean that you have
> > requested an impossible situation or if you are using the unstable
> > distribution that some required packages have not yet been created
> > or been moved out of Incoming.
> > The following information may help to resolve the situation:
> >
> > The following packages have unmet dependencies:
> >  plasma-workspace : Depends: gdb-minimal but it is not going to be
> installed or
> >  gdb
> > E: Error, pkgProblemResolver::Resolve generated breaks, this may be
> caused by held packages.
> >
>
> This problem isn't because of apt, the problem is that gdb-minimal/gdb
> dependencies cannot be satified. A full-upgrade is the equivalent of a
> dist-upgrade which will remove packages to resolve the dependencies. The
> problem you are facing is the t64 transition[1][2] where not all packages
> are
> transitioned.
>
> My advice to you is: don't expect full-upgrade to work until the
> transitioning
> is done. You can do `apt upgrade' without too much hassle. If you feel
> like it
> you can inspect individual upgrades possibilities  via `apt list
> --upgradable'
> and upgrade each package individually. That has worked well for me in the
> past
> week with aptitude, but it requires going through many offered solutions.
>
> > I've seen other users are experimenting the same issue:
> > https://groups.google.com/g/linux.debian.user/c/7gpQImSH-Cs
>
> This seems to be an more of an actual issue where dependencies are
> declared but
> apt doing something weird. But that is an issue on bookworm where we aren't
> getting poluted results because of a transitioning. It differs from yours
> because your apt output says "gdb-minimal but it is not going to be
> installed
> or gdb" so apt sees the alternative, but cannot install it either. IMHO,
> that should
> be filed as a seperate bug against apt on bookworm. And if possible
> checked on
> testing as well. FWIW, I can reproduce it on bookwork with apt, apt-get and
> aptitude, where the latter offers a solution to install gdb and not
> deinstall
> plasma-workspace.
>
> > I don't know why plasma-workspace depends on gdb
>
> I don't know either and that question should be redirected to the
> plasma-workspace maintainer.
>
> Cheers,
> Wesley
>
> [1] https://lists.debian.org/debian-devel-announce/2024/02/msg0.html
> [2]
> https://www.reddit.com/r/debian/comments/1b2ncdn/64bit_time_t_transition_in_progress_in_unstable/
>
>


Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-10 Thread Wesley Schwengle
On Sun, Mar 10, 2024 at 02:13:34PM +0100, Miguel Angel wrote:
 
> # apt full-upgrade
> Reading package lists... Done
> Building dependency tree... Done
> Reading state information... Done
> Calculating upgrade... Error!
> Some packages could not be installed. This may mean that you have
> requested an impossible situation or if you are using the unstable
> distribution that some required packages have not yet been created
> or been moved out of Incoming.
> The following information may help to resolve the situation:
> 
> The following packages have unmet dependencies:
>  plasma-workspace : Depends: gdb-minimal but it is not going to be installed 
> or
>  gdb
> E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by 
> held packages.
>

This problem isn't because of apt, the problem is that gdb-minimal/gdb
dependencies cannot be satified. A full-upgrade is the equivalent of a
dist-upgrade which will remove packages to resolve the dependencies. The
problem you are facing is the t64 transition[1][2] where not all packages are
transitioned.

My advice to you is: don't expect full-upgrade to work until the transitioning
is done. You can do `apt upgrade' without too much hassle. If you feel like it
you can inspect individual upgrades possibilities  via `apt list --upgradable'
and upgrade each package individually. That has worked well for me in the past
week with aptitude, but it requires going through many offered solutions.

> I've seen other users are experimenting the same issue:
> https://groups.google.com/g/linux.debian.user/c/7gpQImSH-Cs

This seems to be an more of an actual issue where dependencies are declared but
apt doing something weird. But that is an issue on bookworm where we aren't
getting poluted results because of a transitioning. It differs from yours
because your apt output says "gdb-minimal but it is not going to be installed
or gdb" so apt sees the alternative, but cannot install it either. IMHO, that 
should
be filed as a seperate bug against apt on bookworm. And if possible checked on
testing as well. FWIW, I can reproduce it on bookwork with apt, apt-get and
aptitude, where the latter offers a solution to install gdb and not deinstall
plasma-workspace.

> I don't know why plasma-workspace depends on gdb

I don't know either and that question should be redirected to the
plasma-workspace maintainer.

Cheers,
Wesley

[1] https://lists.debian.org/debian-devel-announce/2024/02/msg0.html
[2] 
https://www.reddit.com/r/debian/comments/1b2ncdn/64bit_time_t_transition_in_progress_in_unstable/



Bug#1065831: apt tries to uninstall kde & plasma (full-upgrade)

2024-03-10 Thread Miguel Angel
Package: apt
Version: 2.7.13+b1
Severity: normal
X-Debbugs-Cc: mianro...@gmail.com

# apt full-upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Error!
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 plasma-workspace : Depends: gdb-minimal but it is not going to be installed or
 gdb
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by 
held packages.

I don't know why plasma-workspace depends on gdb, but nevertheless,
full-upgrade doesn't work.

I've seen other users are experimenting the same issue: 
https://groups.google.com/g/linux.debian.user/c/7gpQImSH-Cs

If you mark plasma-workspace as hold, apt is still trying to remove
other kde & plasma package (its reverse dependencies).


-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "1";
APT::Install-Suggests "0";
APT::Key "";
APT::Key::Assert-Pubkey-Algo ">=rsa2048,ed25519,ed448";
APT::Sandbox "";
APT::Sandbox::User "_apt";
APT::Authentication "";
APT::Authentication::TrustCDROM "true";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*-[a-z0-9]*$";
APT::VersionedKernelPackages "";
APT::VersionedKernelPackages:: "linux-.*";
APT::VersionedKernelPackages:: "kfreebsd-.*";
APT::VersionedKernelPackages:: "gnumach-.*";
APT::VersionedKernelPackages:: ".*-modules";
APT::VersionedKernelPackages:: ".*-kernel";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "tasks";
APT::Move-Autobit-Sections "";
APT::Move-Autobit-Sections:: "oldlibs";
APT::Update "";
APT::Update::Post-Invoke-Success "";
APT::Update::Post-Invoke-Success:: "/usr/bin/test -e 
/usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && 
/usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call 
--system --dest org.freedesktop.PackageKit --object-path 
/org/freedesktop/PackageKit --timeout 4 --method 
org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo 
> /dev/null";
APT::Update::Post-Invoke-Success:: "if /usr/bin/test -w /var/cache/swcatalog -a 
-e /usr/bin/appstreamcli; then appstreamcli refresh --source=os > /dev/null || 
true; fi";
APT::Architectures "";
APT::Architectures:: "amd64";
APT::Compressor "";
APT::Compressor::. "";
APT::Compressor::.::Name ".";
APT::Compressor::.::Extension "";
APT::Compressor::.::Binary "";
APT::Compressor::.::Cost "0";
APT::Compressor::zstd "";
APT::Compressor::zstd::Name "zstd";
APT::Compressor::zstd::Extension ".zst";
APT::Compressor::zstd::Binary "zstd";
APT::Compressor::zstd::Cost "60";
APT::Compressor::zstd::CompressArg "";
APT::Compressor::zstd::CompressArg:: "-19";
APT::Compressor::zstd::UncompressArg "";
APT::Compressor::zstd::UncompressArg:: "-d";
APT::Compressor::lz4 "";
APT::Compressor::lz4::Name "lz4";
APT::Compressor::lz4::Extension ".lz4";
APT::Compressor::lz4::Binary "false";
APT::Compressor::lz4::Cost "50";
APT::Compressor::gzip "";
APT::Compressor::gzip::Name "gzip";
APT::Compressor::gzip::Extension ".gz";
APT::Compressor::gzip::Binary "gzip";
APT::Compressor::gzip::Cost "100";
APT::Compressor::gzip::CompressArg "";
APT::Compressor::gzip::CompressArg:: "-6n";
APT::Compressor::gzip::UncompressArg "";
APT::Compressor::gzip::UncompressArg:: "-d";
APT::Compressor::xz "";
APT::Compressor::xz::Name "xz";
APT::Compressor::xz::Extension ".xz";
APT::Compressor::xz::Binary "xz";
APT::Compressor::xz::Cost "200";
APT::Compressor::xz::CompressArg "";
APT::Compressor::xz::CompressArg:: "-6";
APT::Compressor::xz::UncompressArg "";
APT::Compressor::xz::UncompressArg:: "-d";
APT::Compressor::bzip2 "";
APT::Compressor::bzip2::Name "bzip2";
APT::Compressor::bzip2::Extension ".bz2";
APT::Compressor::bzip2::Binary "bzip2";
APT::Compressor::bzip2::Cost "300";
APT::Compressor::bzip2::CompressArg "";
APT::Compressor::bzip2::CompressArg:: "-6";
APT::Compressor::bzip2::UncompressArg "";
APT::Compressor::bzip2::UncompressArg:: "-d";
APT::Compressor::lzma "";
APT::Compressor::lzma::Name "lzma";
APT::Compressor::lzma::Extension ".lzma";
APT::Compressor::lzma::Binary "xz";
APT::Compressor::lzma::Cost "400";
APT::Compressor::lzma::CompressArg "";
APT::Compressor::lzma::CompressArg:: "--format=lzma";
APT::Compressor::lzma::CompressArg:: "-6";
APT::Compressor::lzma::UncompressArg "";
APT::Compressor::lzma::UncompressArg:: "--format=lzma";