[Aptitude-devel] Bug#993751: aptitude: add a do-exactly-as-specified-mode-without-further-questions

Christoph Anton Mitterer calestyo at scientia.net
Mon Sep 6 00:48:35 BST 2021


Package: aptitude
Version: 0.8.13-3
Severity: wishlist


Hi.

I couldn't find a way in the documentation to get the following done.

What's often wanted when maintaining large clusters of systems, which have
a similar (but not exactly equal) set of packages is a mode where apitude
would contine perform the selected actions if - and only if - exactly those
(and those alone) could be performed.

Imagine I want to replace package foo with a similar package bar:

aptitude install foo_ bar+

This would then required interactive input, which could of course be
avoided with --assume-yes.

The problem with --assume-yes is, that it affects all Y/N question.



Imagine that there's one package baz which stricly depends on foo.

aptitude --assume-yes install foo_ bar+

Would now also delete baz, but this is not what was specified, but
rather just a consequence of the --assume-yes.


So ideally there would be some --magic option which behaves like this:

aptitude --magic install foo_ bar+

- If nothing (pre-)depends on foo AND nothing conflicts/breaks bar => do it.
- Recommens on foo would be ignored, so even if something would Recommend it
  since exactly foo_ bar+ could be done, the Recommend doesn't count.
- I think it would not be possible to combine --magic with e.g.
  --with-recommends, --purge-unused or any other option, that would automatically
  change what's done in terms of changing the package status.
  But maybe, one might want to add another variant, e.g. --magic-with-installs
  which would allow any non-explicitly named installations (e.g. Dependencies
  or Recommends).
- If there would be an option, that allows removal of Essential packages, the
  logic should still apply, say if one would say:
  aptitude --allow-removing-essentials --magic install base-files_
  this would still not work, as e.g. bash, which depends on base-files would
  also needed to be removed but is not specified to be so

Also --magic should mean, that actions are only performed if *all* of them can
be done, consider:
aptitude --magic install bash&M foo_

If something depends on foo (and thus foo wouldn't be removed with --maigc)
bash&M shouldn't be performed either; neither should e.g. any installations).



Cheers,
Chris



More information about the Aptitude-devel mailing list