[Aptitude-devel] Bug#795280: Allow to force installations/removals that break the system

Yuri D'Elia wavexx at thregr.org
Wed Aug 12 15:29:32 UTC 2015

Package: aptitude
Version: 0.7-1+b1
Severity: wishlist

On development machines, when following unstable/experimental, it's sometimes
helpful to be able to force installation/removal/downloadgrade of packages even
if this results in deliberately breaking the system.

It's a rare need, but this is something that comes in handy when going through
a transition phase, without having to uninstall packages that are going to
eventually get fixed.

Since I have a /lot/ of development packages installed, often I don't care if
some libraries break since I rarely use them, but I *do* want to keep them
installed for the documentation, the headers, etc. In fact, many times I know
exactly why a package would break another, and I know it's safe for me to
perform the action anyway.

When I'm at the preview mode, pressing 'g' again however doesn't allow me to
continue if something is broken. Aptitude enforces a solution that doesn't
break any package [and mind, I find this behavior to be absolutely correct].

But I would love to have an option in the preferencies that allows to get past
that. In these cases, when pressing 'g' again at the preview, show a prompt in
the likes of "warning: you're about to break ..., continue [yes] [no]" and
proceed the installation with dpkg --force-all. We have something like that
already, when trying to remove an essential package (oh boy, that is more
annoying than it should ;)).

Currently, when this happens, I basically do the installation manually with
dpkg and all is well. But since aptitude still enforces a system without broken
packages, as soon as one dependency is not fullfulled, nothing else can be done
through aptitude anymore (besides fixing the package causing the problem).

For this reason I also have to manipulate the package control flags themselves
before installing, just to be able to use aptitude "normally".

Let me break my system(tm).

More information about the Aptitude-devel mailing list