Ok, thanks for all the quick answers. Still, I'm running into strange (IMHO) problems. I'm not sure if this is a bug in dpkg, or if I'm simply not getting it right ;-):
I still I fail to remove two packages at once in favour of a third. I moved the contents of python-{misc,net,bsddb,curses} back into python-base. For python-misc and python-net, I will provide empty, transitional packages that satisfy versioned dependencies for existing packages. As soon as these packages have changed their dependencies to python-base, the dummy python-misc and python-net packages will be removed in favor of unversioned Conflicts/Replaces/Provides in python-base. But since no packages in potato nor slink have dependencies on python-curses or python-bsddb, I'd like to drop them at once. I tried this: Package: python-base Version: 1.5.2-4 Section: interpreters Priority: optional Architecture: i386 Depends: libc6 (>= 2.1), libncurses4 (>= 4.2-3.1), libreadlineg2 (>= 2.1-12), libreadlineg2 (>= 2.1-13.3) Conflicts: python (<< 1.5), mailman (<< 1.0b11-2), python-bsddb, python-curses Replaces: python (<< 1.5), python-bsddb, python-curses Provides: python, python-net, python-misc, python-bsddb, python-curses Now dpkg would remove python-bsddb, but it fails to remove python-curses: freefly:23> sudo dpkg -i python-base_1.5.2-4_i386.deb dpkg: considering removing python-bsddb in favour of python-base ... dpkg: yes, will remove python-bsddb in favour of python-base. dpkg: regarding python-base_1.5.2-4_i386.deb containing python-base: python-base conflicts with python-curses python-curses (version 1.5.2-3) is installed. dpkg: error processing python-base_1.5.2-4_i386.deb (--install): conflicting packages - not installing python-base Errors were encountered while processing: python-base_1.5.2-4_i386.deb If I switch the order of python-bsddb and python-curses in python-base's Conflicts/Replaces/Provides fields, dpkg fails to remove python-bsddb! Depends: libc6 (>= 2.1), libncurses4 (>= 4.2-3.1), libreadlineg2 (>= 2.1-12), libreadlineg2 (>= 2.1-13.3) Conflicts: python (<< 1.5), mailman (<< 1.0b11-2), python-curses, python-bsddb Replaces: python (<< 1.5), python-curses, python-bsddb Provides: python, python-net, python-misc, python-curses, python-bsddb freefly:31> sudo dpkg -i python-base_1.5.2-4_i386.deb dpkg: considering removing python-curses in favour of python-base ... dpkg: yes, will remove python-curses in favour of python-base. dpkg: regarding python-base_1.5.2-4_i386.deb containing python-base: python-base conflicts with python-bsddb python-bsddb (version 1.5.2-3) is installed. dpkg: error processing python-base_1.5.2-4_i386.deb (--install): conflicting packages - not installing python-base Errors were encountered while processing: python-base_1.5.2-4_i386.deb For the sake of completeness, this is dpkg -s python-{bsddb,curses}: Package: python-bsddb Status: install ok installed Priority: optional Section: interpreters Installed-Size: 28 Maintainer: Gregor Hoffleit <[EMAIL PROTECTED]> Source: python Version: 1.5.2-3 Depends: python-base (= 1.5.2-3), libc6 (>= 2.1) Package: python-curses Status: install ok installed Priority: optional Section: interpreters Installed-Size: 40 Maintainer: Gregor Hoffleit <[EMAIL PROTECTED]> Source: python Version: 1.5.2-3 Depends: python-base (= 1.5.2-3), libc6 (>= 2.1), libncurses4 (>= 4.2-3.1)