Nachdem wir so langsam auf den letzten Metern für die 0.2.1 sind (unter anderem kommt Unterstützung für CD-ROM und UTF-8 dazu, außerdem ein paar neue lpt-Pakete und eine Ladung Bugfixes), ist es an der Zeit, sich einmal Gedanken zu machen, was die nächsten Schritte sind und wo uns die Zukunft hinführen soll.
Dafür, daß tyndur ein Communityprojekt ist, haben wir in letzter Zeit das Forum vielleicht etwas zu wenig in die Entwicklungen einbezogen. Das möchte ich an dieser Stelle ändern: Was meint ihr, wohin die Reise gehen soll? An dieser Stelle sind spontane und möglicherweise "kreative" Ideen genauso gefragt wie ausgefeilte Vorschläge oder einfach nur Vorschläge für Features oder eine bestimmte Entwicklungrichtung.
Um einen Ausgangspunkt für Ideen zu geben, möchte ich einmal kurz die groben Felder nennen, die ich persönlich sehe:
KernkomponentenDieser Bereich umfaßt den Kernel, Treiber und die libc. Unsere Überlegung war, daß in diesem Bereich die zentralen Änderungen für 0.3 liegen werden. Als Baustellen sehe ich dabei vor allem:
- Umstellung auf kernel2, d.h. Implementierung der im Vergleich zu kernel noch fehlenden Features und Syscalls
- Mehr Dokumentation in kernel2, auf tyndur wird oft als Beispiel verwiesen und eines seiner ursprünglichen Ziele ist auch, daß es dabei hilfreich sein soll. In den Code könnte man oft fast eine Art Tutorial als Kommentar einbetten.
- LostIOv2 als neues, kernelbasiertes virtuelles Dateisystem soll das bisherige LostIO, das im Userspace läuft, ablösen und sowohl eine sauberere Schnittstelle bereitstellen als auch die Performance verbessern
- Portierung auf amd64 (niedrigere Priorität)
- Unterstützung für TCP-Server
- Evtl. mehr Hardwareunterstützung (z.B. Netzwerkkarten)
POSIX und lbuildsIn diesem Bereich geht es darum, existierende Software - vor allem aus dem *nix-Umfeld - auf tyndur zu portieren. Dazu gehört es auch, die POSIX-Emulation in der libc weiter zu vervollständigen oder ganz neue Funktionen einzubauen. An dieser Stelle könnte man unglaublich viel aufzählen, aber wichtig wären mir vor allem:
- Irgendein Mailclient, z.B. mutt
- Ein SVN- oder git-Client
Damit könnte man dann theoretisch die tyndur-Entwicklung unter tyndur vorantreiben.
Grafische BenutzeroberflächeJa, eine GUI wäre eigentlich auch mal ganz nett. Wirklich konkrete Vorstellungen habe ich dazu noch nicht, aber ich würde mir wünschen, daß sie tastaturfreundlich ist.
Freaky und ich selbst werden neben den restlichen Aufgaben vermutlich kaum die Zeit finden, viel in Sachen GUI zu unternehmen - dazu hat sie im Vergleich zum Rest noch eine zu niedrige Priorität. Wir könnten zwar in allen Feldern Verstärkung gebrauchen, aber ich sag's mal ganz direkt: In Sachen GUI wird nur was passieren, wenn sich ein paar Leute zusammenfinden, die auf diesem Gebiet zusammen was reißen wollen.
Wenn das gegeben ist, dann werden wir sicher auch die nötige Unterstützung geben können, wie man das am besten mit dem Rest von tyndur integriert. Ansonsten könnte die Entwicklung als relativ eigenständiges Projekt mit momentan noch allen Freiheiten laufen - und wer sich als Interessierter meldet, hat gute Chancen, die Sache selbst leiten zu können.
Werkzeuge und AnwendungsprogrammeDieses Feld umfaßt native tyndur-Programme, bisher in C oder Pascal geschrieben, die dem Benutzer zur Verfügung stehen. Momentan schon existierende Beispiele sind die Shell, das neue Hilfeprogramm, kedit, kirc, fdisk, build oder lpt. Die meisten dieser Programme könnten Erweiterungen vertragen (welche?) und es ist sicher noch Platz für weitere. Meine Favoriten wären:
- Ein Installationsprogramm, mit dem man tyndur von einer CD oder Netzwerk auf Platte installieren kann (für die Mutigen unter uns )
- kedit: Markieren von Text, Kopieren/Ausschneiden/Einfügen, Suchen. Syntaxhighlighting für zusätzliche Sprachen (bisher nur C)
- lpt: Upgrades, evtl. eine TUI vergleichbar mit aptitude
Das war jetzt einmal mehr oder weniger ein kompletter Braindump von mir zu den nächsten Schritten in Richtung 0.3 - wobei sich manche Punkte davon sicher auch noch auf spätere Versionen verzögern werden. Ich bin gespannt, ob andere das ähnlich sehen oder vielleicht andere gute Ideen aufkommen, worauf man sich konzentrieren könnte.
Außerdem wäre ich natürlich daran interessiert, wer von euch sich vorstellen könnte, im einen oder anderen Themengebiet selbst ein bißchen mitzumachen. Es würde mich freuen, wenn wir ein kleines GUI-Team zusammenbekommen würden - zwei, drei Mann wäre vielleicht realistisch - aber auch in den anderen Feldern gibt es genug zu tun.
Okay, genug geredet, ihr seid dran. Vielleicht bringt ihr ja revolutionärere Ideen zustande als ich.