The only real thing that makes all Linux/Unix distros incredibly difficult to use is libhell. Ever install something that was made for KDE 3.5.1 but you are running KDE 3.5.2 and so libqtcore* is all set for version 3.5.2 and not 3.5.1 which has lost the key functionality and now Pidgin/Skype/etc wont work? Windows basically solves this by saying "if you need the lib, ship it with your own copy, if we update and your stuff doesn't work, too bad for you". Anyways, long story short, my suggestion is to keep a reference of older versions for software, never clean them. Access the most recent version first and if the application fails on that they can do one of two things: A) Setup a standard that allows the application to load a specific set of libraries by name and version instead of just name or B) If an application fails to run due to an out of date library, have the OS iterate through each version of those libraries till it finds one that works. Associate that library with that application and every time it loads in it's libs it loads the proper ones. This honestly wouldn't be that hard, it would just have to be loaded into the OS class loader framework.
My question for you guys is this: I can probably branch a copy of the distro off and add this in, would the fbsd foundation want something like this? I'd rather not waste my time if I was just fixing this for me and I don't feel like making RasperinBSD. It's a fairly core change. But would add solve a lot of serious headaches with your advanced and run-of-the-mill users.
If I confused people I can go into more detail, I'm running on one hour of sleep (3 day old just joined my wife and I) and I am assuming a lot on how the class loader works. But I have a few ideas on how to make a similar system to this work.
My question for you guys is this: I can probably branch a copy of the distro off and add this in, would the fbsd foundation want something like this? I'd rather not waste my time if I was just fixing this for me and I don't feel like making RasperinBSD. It's a fairly core change. But would add solve a lot of serious headaches with your advanced and run-of-the-mill users.
If I confused people I can go into more detail, I'm running on one hour of sleep (3 day old just joined my wife and I) and I am assuming a lot on how the class loader works. But I have a few ideas on how to make a similar system to this work.