[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

cleanly getting rid of manually installed transitional packages due to rename



Sometimes packages get renamed. A renamed package becomes a
"transitional package", which can be tracked by deborphan and
can safely removed if it no longer has any reverse dependencies.

The issue is that if this was a manually installed package,
typically with no past dependencies on it (i.e. no dependencies
that were updated from the old package to the new one), and if one
wants to remove it, then apt or aptitude will also want to remove
the new package because this new package has not been installed
manually and its only reverse dependency (the transitional package)
has just been removed by this operation. Note: as shown below, with
apt, this is proposed via "apt autoremove", and with aptitude, this
is automatically proposed at the same time.

Is there a way to avoid this behavior automatically, i.e. by
forwarding the "manually installed" state automatically to the
new package? Shouldn't this be done by default?

Note: As an exmaple, this has recently happened with the rename of
dnsutils to bind9-dnsutils.

For instance, with apt:

The following package was automatically installed and is no longer required:
  bind9-dnsutils
Use 'apt autoremove' to remove it.
The following packages will be REMOVED:
  dnsutils* libbind9-161* libirs161* liblwres161*

and with aptitude:

The following packages will be REMOVED:  
  bind9-dnsutils{u} dnsutils{p} libbind9-161{p} libirs161{p} liblwres161{p} 

-- 
Vincent Lefèvre <vincent@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)


Reply to: