G'd day everyone, I have to say that after years of happily using RPM I'm little by little getting tired of it. Sooner or later this thing needs to be given some new thinking. Pain with RPM is not as much caused by the RPM tool itself, but by the fact that it's trying to solve a problem we should not be having in the first place. That is, if we ever intend to get Linux into average Joes desktop. Paid admins don't necessarily mind having to deal with some level of pain if it brings them more power, but end users are a whole different story. IMHO problem with RPM arises from few key issues: 1) We have thousands of packages. Even _base_ system consists of hundreds of relatively small packages that can be installed in gazillion different combinations. This is the Unix legacy. 2) Packages depend on each other in several different ways 3) Linux is not Linux is not Linux (distributions, versions, etc). So to get famous software 'Zardoz' installed, user has million ways to get it wrong, but just one to get it right. RPM dependency hell is almost impossible to handle properly by the packager, so how can we expect the user to? So far the approach taken to handle this has been to build overly complex tools on top of RPM to handle the mess ( apt, smart, yast, yum etc ). While this is neat and all, in the end these tools are just introducing more complexity to the already complex system. Tools itself are relatively tricky to implement (error prone) and on several occasions it's just plain impossible to hide the complexity of the underlying RPM dependency jungle. IMHO in the long run all of these tools are facing a dead end. There are no easy ways to deal with this, but one possible approach might be to decrease the amount of base packages drastically. This alone makes the life A LOT easier for packagers, 3rd party SW vendors and end users. Developers would have a lot less packages to depend on and users would have lot less possibilities to get it wrong. Less is more once again. This idea could be extended as well. It might be worthwhile to discuss between different distributors to have common base package names and content. Even without perfect ABIs there would be some chance users might possibly be able to exchange RPMs between distributions. Hell will probably freeze way before different distributors would agree on something as big as this, but in the end it would help even if just few of them did. LSB is doing some fine job on this already. -- // Janne