On Tue, 2005-01-25 at 02:24 -0200, Alexandre Oliva wrote: > Having package installers pin user-selected packages, or unpin > packages brought in only to satisfy dependencies, would enable all > cases to work, not only the shared library case, even without a > special provides or the too-inclusive mechanism proposed by jeff. The pacman package manager from Arch Linux (which I used to package GNOME for) seems to have recently gained a feature like this. It's fortunately better then just pinning; pinning means the package can't be upgraded. Basically, pacman marks for each installed package whether the package was pulled in explicitly by the user or as a dependency of another package. There is then a command that can remove any package which was not explicitly requested by the user and which is not depended on. If this was combined and made a little smarter to deal with RPM groups (something else that pacman supports, albeit in a much different way) then the method could be used in rpm and would probably work very well. Debian also has the deborphan utility, although it isn't very intelligent at all; it just bases its decisions on whether a package has dependencies, which can lead to a lot of manual intervention after it generates a package removal list. I think the model used by pacman is superior here.