|
Advanced Software Perspectives
|
This is obvious.
Anyone who uses it has run into the X.rpm has 226 dependencies, of which your system will have 10 unresolved, of various unknown degrees of criticality. Attempting to resolve those 10 involves serveral more rpm files, that have their own 826 dependcies, of which yet more are unresolved, of course.
Not to be pointing fingers, but if people were A. actually to want to get work done, or to B. have a life outside of masturbating their operating systems, then this situation would not have gone on like this for as long as it has. I am in the A category. Masturbating OSes is a whole lotta fun, but it interferes with A.
One solution, which seems simple and straight forward, something the *nix’s have usually been pretty good at, is to have several global repositories on the net. Actually they can be distributed anyway people see fit, the repositories just have to be registered and secure.
From these repositories, the RPM install process, say for App-X, has a list of App-X files, its dependent files, and access to their dependencies, recursively, and just downloads and installs all the software required to run the darn thing.
For example, an ‘install program’ would just be a list of pseudo URIs of the files and libs it needs, the URIs encoding the OS species, version number, and whatever else is needed to uniquely identify a file of some sort.
This could be expanded so that these ‘neo rpm’ scripts could download and run programs locally, being a kind of service that runs on your box, whether the component programs of the service is stored / cached locally or not - a kind of mirror image of SOA - but that is for another day.
Â
You must be logged in to post a comment.
RubyGems does this exactly right - fetching dependencies for you as needed.