Ich bin nicht sicher, dass ich dieses Problem voll verstehe.
Deshalb möchte ich mal etwas laienhaft ausdrücken: wenn ich ein Programm als selbstständige Funktionseinheit einspiele, die unabhängig von meinem Rest-System laufen kann und dann zum Beispiel nur Daten über bekannte Schnittstellen austauscht, wie etwa den X-Server, dann wäre doch solch ein Programm immer lauffähig. Quasi würde jedes solche Programm sein "eigenes System" mitbringen, möglicherweise bis hinab zum Kernel und so wie eine virtuelle Maschine in der Umgebung des Systems, aber ohne Zugriff auf dessen Bibliotheken zuverlässig laufen können. Alles müsste in eigenen Pfaden installiert sein, aber das wäre doch kein grundsätzliches Problem.
Es leuchtet mir ein, dass das ein nicht vertretbarer Aufwand für sehr kleine Programme ist und dass ich wohl einige Einbußen an möglicher Performance hätte, aber solche Programme wären dann vielleicht sehr einfach auf unterschiedliche Systeme portierbar und in sich immer konsistent und lauffähig.
Über definierte Schnittstellen wäre nicht nur der Datenaustausch zum Grundsystem möglich, sondern Systemweite Parameter könnten von vorher festgelegten Orten gelesen werden und so systemweite Gültigkeit erlangen, ohne dass jedes einzelne Programm wieder komplex konfiguriert werden müsste.
Es ist ist mir klar, dass heute kein Hersteller sein System so ausrichtet, aber das ist für mich mehr eine Frage des Designs, als der mangelnden Realisierbarkeit. Heute denken wir uns Programme immer als Bestandteile des installierten Systems und bauen die zusätzliche SW in die bestehende Installation ein. Das ist ein Schaffensprozess, der ein komplettes, individuell zugeschnittenes System als Endprodukt sieht, in dem möglichst Ressourcen (vor allem Plattenplatz) -sparend vorgegangen wird. Ich liebe diesen Ansatz! Aber ich sehe auch, dass der andere Ansatz, der Programme als selbstständige Funktionseinheiten auf einem fertig installierten System betreibt einige Vorteile haben könnte und wegen der geänderten Voraussetzung hinsichtlich der verfügbaren Ressourcen vielleicht nicht mehr so abwegig erscheint.
Neben Fragen der Technik würden so vielleicht auch Fragen hinsichtlich der Lizenz ganz neu zu überdenken sein. Die SW funktioniert für sich in einem entsprechend lizenzierten Umfeld und tauscht mit dem umgebenden System lediglich Daten aus. Das dürfte keinerlei Lizenz-Bedenken aufwerfen, glaube ich, wie wir sie heute gelegentlich sehen. Im Grunde hasse ich es aber, bei jeder möglichen Frage gleich so zu denken, als sei ich gerne Anwalt geworden!
Wenn ich das richtig sehe, macht OS-X mit seinen Sandboxen und wir mit unseren Jails ja schon beinahe so etwas ähnliches. Wir implementieren da keine vollständig lauffähigen Programme, aber wir stellen Programmen "eine lauffähige Kopie" des installierten Systems in einem abgeschlossenen Raum zur Verfügung.
Vielleicht sollte die nächste Entwicklung in der Richtung so weit gehen, Programme mit solchen kompletten Umgebungen zu versehen.