Bug#569578: aptitude: Mark package as having been manually removed

2010-02-13 Thread Justin B Rye
Christophe Lohr wrote:
 Severity: wishlist

Pardon me butting in on your wishlist; I'm just a random bystander,
but you reminded me of an unsubmitted wishlist item of my own that
might in fact be a better match for what you're after.
 
 Hi,
   aptitude can mark a package as manual installed or
 automatically installed. Symmetrically, I suggest to introduce a
 way to mark a package as being manually removed or
 automatically removed.
 
 Similarly, aptitude should avoid to automatically reconsider a
 manual decision. 
 
 For example, if a packet is marked as having been manually
 removed, aptitude should not try to install it again on the pretext
 that another package recommends or suggests it.

This could easily lead to trouble in day-to-day use.  Imagine:

 * I install package foo.  It depends on either bar or baz, so I let
it pull in the default, bar.
 * When I decide to try foo with baz, I manually remove bar (since
that's the easiest way to get foo to switch to using baz);
aptitude silently blacklists it.
 * Later I discover the package quux, and ask aptitude to install
it.  It would also like to pull in bar, but doesn't.
 * Unfortunately, quux needs bar - it's just that in principle it
can be configured to use a remote bar-server, so it only has
a Recommends instead of a Depends.
 * Thus I end up with an inoperable quux install.

Most of the time when I uninstall a package, I'm not ruling out the
possibility I might someday want it back.  A package I genuinely
want to tell to get out and stay out is an exceptional case; and it
seems to me that what I'm after there is something more like purging
it and then putting it on hold.  At present, hold means keep
version X.Y-Z installed, and can only be applied when the package
is in fact installed; maybe it could be generalised to let me hold
off unwanted packages (keep version NULL installed).

Thus for instance if I wanted to install individual GNOME-compatible
apps without them automatically inviting all their friends along
with them I would be able to put gconf2 on hold-off to break the
dependency chain.  Notice that doing it this way means I never need
to have had it installed in the first place.  It would also make
sense to let it apply to virtual packages.

Another way of getting there would be to extend forbid-version so it
interprets aptitude forbid-version gconf2=* as forbid all
versions.  Oh, except that forbid-version doesn't seem to stop
packages being pulled in by dependencies.

Yet another approach that's already possible (with some effort) is
to use equivs to create a dummy dependency package that declares a
Conflicts: gconf2. 
-- 
JBR
PS: and a pony!



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#569578: aptitude: Mark package as having been manually removed

2010-02-12 Thread Christophe Lohr
Package: aptitude
Version: 0.4.11.11-1+b2
Severity: wishlist

Hi,
  aptitude can mark a package as manual installed or automatically 
installed.
Symmetrically, I suggest to introduce a way to mark a package as being 
manually removed or automatically removed.

Similarly, aptitude should avoid to automatically reconsider a manual 
decision.

For example, if a packet is marked as having been manually removed, aptitude 
should not try to install it again on the pretext that another package 
recommends or suggests it.

A package manually removed can not be automatically reinstated unless another 
package really depends on it.

Of course, it can also be reinstalled manually.

A package automatically removed may be reinstalled automatically.

Regards.


-- Package-specific info:
aptitude 0.4.11.11 compiled at Aug  3 2009 17:14:11
Compiler: g++ 4.3.3
Compiled against:
  apt version 4.8.0
  NCurses version 5.7
  libsigc++ version: 2.0.18
  Ept support enabled.

Current library versions:
  NCurses version: ncurses 5.7.20090803
  cwidget version: 0.5.16
  Apt version: 4.8.0
linux-gate.so.1 =  (0xb77fc000)
libapt-pkg-libc6.9-6.so.4.8 = /usr/lib/libapt-pkg-libc6.9-6.so.4.8 
(0xb7718000)
libncursesw.so.5 = /lib/libncursesw.so.5 (0xb76d4000)
libsigc-2.0.so.0 = /usr/lib/libsigc-2.0.so.0 (0xb76cd000)
libcwidget.so.3 = /usr/lib/libcwidget.so.3 (0xb760d000)
libept.so.0 = /usr/lib/libept.so.0 (0xb759a000)
libxapian.so.15 = /usr/lib/libxapian.so.15 (0xb7449000)
libz.so.1 = /usr/lib/libz.so.1 (0xb7435000)
libpthread.so.0 = /lib/i686/cmov/libpthread.so.0 (0xb741c000)
libstdc++.so.6 = /usr/lib/libstdc++.so.6 (0xb732a000)
libm.so.6 = /lib/i686/cmov/libm.so.6 (0xb7304000)
libgcc_s.so.1 = /lib/libgcc_s.so.1 (0xb72e7000)
libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb71a)
libutil.so.1 = /lib/i686/cmov/libutil.so.1 (0xb719c000)
libdl.so.2 = /lib/i686/cmov/libdl.so.2 (0xb7197000)
/lib/ld-linux.so.2 (0xb77fd000)
Terminal: xterm
$DISPLAY is set.
`which aptitude`: /usr/bin/aptitude
aptitude version information:

aptitude linkage:

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (200, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-trunk-686 (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages aptitude depends on:
ii  apt [libapt-pkg-libc6.9 0.7.25.3 Advanced front-end for dpkg
ii  libc6   2.10.2-2 GNU C Library: Shared libraries
ii  libcwidget3 0.5.16-3 high-level terminal interface libr
ii  libept0 0.5.30   High-level library for managing De
ii  libgcc1 1:4.4.2-9GCC support library
ii  libncursesw55.7+20090803-2   shared libraries for terminal hand
ii  libsigc++-2.0-0c2a  2.2.4.2-1type-safe Signal Framework for C++
ii  libstdc++6  4.4.2-9  The GNU Standard C++ Library v3
ii  libxapian15 1.0.17-1 Search engine library
ii  zlib1g  1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages aptitude recommends:
pn  aptitude-doc-en | aptitude-do none (no description available)
ii  libparse-debianchangelog-perl 1.1.1-2parse Debian changelogs and output

Versions of packages aptitude suggests:
ii  debtags   1.7.9+b2   Enables support for package tags
ii  tasksel   2.81   Tool for selecting tasks for insta

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org