Da ich momentan so gut dabei bin meine Ideen und Gedanken nieder zu schreiben kommt hier direkt die nächste Idee.
Das ganze entstand aus der Situation heraus, dass ich auf meinem Ubuntu VServer einiges an Software nachinstallieren musste die entweder gar nicht erst im Repository war oder völlig veraltet war. Die Alternative eines Dist Upgrades oder auch ein Wechsel auf zum Beispiel Gentoo soll für die Idee aber keine Rolle spielen. Denn es ist klar, dass man mit dem nachinstallieren oder updaten von Software durchaus Probleme verursachen kann. Aber es sollte für einzelne Softwareteile deswegen keine große Hürde geben, die den Wechsel der kompletten Distribution erforderlich macht.
Fangen wir also bei den Quellen für den Source an. Zum einen sollte ein einfacher Download eines tar oder zip Archivs möglich sein. Was ich aber noch wertvoller finde, wäre ein Download direkt aus dem Sourcerepository. Schwierig wäre das jedenfalls nicht, da mit dem VCS Wrapper bereits eine sehr gute Lösung in PHP vorhanden ist.
Jetzt sind wir beim kompilieren (es ist halt der Normalfall, dass sourcecode erst kompiliert werden muss) wo man mit der Zeit je nach Software seine eigenen configure Optionen zusammen stellt. Also brauchen wir eine Möglichkeit eigene Optionen für Software hinzuzufügen, welche die vorhandenen Standardoptionen erweitert. Meine Idee wäre, in der Konfiguration Datei einen Eintrag zu haben, von welcher vorhandenen Konfiguration geerbt werden soll. So wäre es zum Beispiel einfach möglich mehrere Versionen eines Programms zu haben die alle die selbe Konfigdatei als Grundlage haben und sich lediglich in der verwendeten Sourcequelle unterscheiden.
Da ich viel mit php arbeite wäre dazu dann wohl noch eine Erweiterung praktisch, die es auch erlaubt php Anwendungen zu installieren, bzw. was viel interessanter dazu ist, den Webserver dabei gleich entsprechend zu konfigurieren.
Das ist jetzt nur ne grobe Beschreibung, die einzelnen Punkte müssten natürlich gut durchgeplant werden, damit die Anwendung auch alle nötigen Arbeitsschritte unterstützt und erweiterbar bleibt.