Welches Betriebssystem zur Entwicklung von Programmen für ein Linux from Scratch System?

ComputerMilo

Cadet 4th Year
Registriert
Apr. 2018
Beiträge
102
Hallo Leute,

ich möchte gerne in Zukunft mit der Arbeit an einer eigenen Linux Distribution starten, die von Grund auf neu entwickelt wird. Diese basiert also nicht auf bereits bestehenden Distros wie Debian, Arch, etc.

Ich habe schon häufiger gehört, dass man am besten auf dem Betriebssystem programmieren soll, für das man seine Programme schreibt, damit man seine Programme dort auch testen kann.

Da ich diese Programme ja aber für meine neue Distribution schreibe, die, genau wie alle anderen ihre Eigenheiten haben wird und daher nicht zu den anderen kompatibel sein wird, so wie Debian z.B. auch nicht zu Arch kompatibel ist, kann ich diese Programme ja unter bereits bestehenden Distributionen auch nicht richtig testen.

Möglicherweise werde ich für die Distribution auch den Quellcode des Linux-Kernels anpassen, damit die in meiner Distribution enthaltene Kernel-Version besser auf meine Distro passt. Also wird es dort zu weiteren Unterschieden zu anderen Distros kommen.

Meine Frage ist nun, auf welchem Betriebssystem soll ich meine eigene Distro programmieren? Ist es egal, da die Programme eh nicht direkt dort getestet werden können und eine Testumgebung mit der neuen Distro notwendig sein wird? Oder sollte ich trotzdem Linux verwenden?
 
ich glaube du stellst dir das etwas einfach vor...alle linux programme neu schreiben!? das ist eine lebensaufgabe und glaube ich auch alles andere als sinnvoll. auch andere linux distris sind die selben linux programme nur eben teilweise anders konfiguriert und nicht neu geschrieben.

um zur frage zurück zu kommen würde ich linux wählen, da is ja eine linux distri werden soll.
 
  • Gefällt mir
Reaktionen: aragorn92, schwimmcoder, Burfi und 4 andere
Meine Meinung: Wenn du kompetent genug für das Projekt wärst, würdest du die Frage gar nicht stellen.
 
  • Gefällt mir
Reaktionen: [ChAoZ], up.whatever, Fusionator und 15 andere
Gut gemeinter Ratschlag - schreibe ein gutes Programm! Damit würdest Du der Welt einen größeren Gefallen machen.

Wenn Du mehr mit Linux experimentieren willst, empfehle ich Dir LFS https://www.linuxfromscratch.org/
 
  • Gefällt mir
Reaktionen: jlnprssnr
Viel Glück bei deinem Vorhaben ;)
Bitte melde dich, wenn deine Distribution fertig ist.
 
Du willst etwas für Linux machen... Aber nicht in Linux programmieren?

Oder doch?...

Distributionen sind doch auch nur Zusammenstellungen...die halt geprüft sind auf Funktion.
 
  • Gefällt mir
Reaktionen: aragorn92
ComputerMilo schrieb:
so wie Debian z.B. auch nicht zu Arch kompatibel ist, kann ich diese Programme ja unter bereits bestehenden Distributionen auch nicht richtig testen.

Kann man so pauschal nicht sagen. Wenn ein Programm statisch und für die gleiche Prozessorarchitektur kompiliert ist, wird es auf jedem Linux laufen.
 
Nimm den Linux-Kernel, darauf kann man Compiler etc installien und los. Aber ich würde an deiner Stelle mit einem einzelnden Paket für eine bereits existierende Distribution anfangen, der Linux Kernel hat bereits weit über 25Mio Zeilen Code, Debian, was ja schon eher schlank ist, weit mehr als 250Mio Zeilen, bei deinem Vorhaben sitzt du Jahrhunderte dran.
Viele Distributione sind auch nur ne Sammlung von zig Paketen, also ne eigenen Distribution zu machen ist eher nen Puzzlespiel von bereits existierenden Paketen.
 
  • Gefällt mir
Reaktionen: jlnprssnr
Linux Distribution selber bauen -> Yocto. Ist ein Werkzeug um eine Distribution i.d.R. fuer Embedded zu bauen. Anpassen von "alles" ist da der Standard, nicht die Aussnahme.
Hostsystem ist irgendeine gaengige aktuelle Linuxdistro.
 
ComputerMilo schrieb:
ch möchte gerne in Zukunft mit der Arbeit an einer eigenen Linux Distribution starten, die von Grund auf neu entwickelt wird. Diese basiert also nicht auf bereits bestehenden Distros wie Debian, Arch, etc.
darf man fragen warum?


ComputerMilo schrieb:
Da ich diese Programme ja aber für meine neue Distribution schreibe, die, genau wie alle anderen ihre Eigenheiten haben wird und daher nicht zu den anderen kompatibel sein wird, so wie Debian z.B. auch nicht zu Arch kompatibel ist, kann ich diese Programme ja unter bereits bestehenden Distributionen auch nicht richtig testen.
stimmt so nicht. Arch hat einen anderen Downstream wie z. B. Debian ja, aber ein "ls" von Arch ist auch auf Debian kompatibel. Außerdem gibt es die LSB (https://en.wikipedia.org/wiki/Linux_Standard_Base), die mit solchen Eigenheiten aufräumt.

ComputerMilo schrieb:
Möglicherweise werde ich für die Distribution auch den Quellcode des Linux-Kernels anpassen, damit die in meiner Distribution enthaltene Kernel-Version besser auf meine Distro passt. Also wird es dort zu weiteren Unterschieden zu anderen Distros kommen.
welche Teile des Kernels bzw. seiner Module passen dir den nicht?
 
Du solltest Hurd nehmen, damit hast du den nötigen Abstand zum minderwertigen Linuxkernel.
 
ComputerMilo schrieb:
ich möchte gerne in Zukunft mit der Arbeit an einer eigenen Linux Distribution starten, die von Grund auf neu entwickelt wird. Diese basiert also nicht auf bereits bestehenden Distros wie Debian, Arch, etc.
Ich würde dir drigends davon abraten. Deine Fragen alleine zeigen deutlichst, dass du nicht einmal annähernd das Wissen dazu hast um so ein Projekt umzusetzen. Eine komplette Distribution zu erstellen braucht jede Menge Knowhow und noch mehr Zeit. Als Einzelkämpfer wirst du nicht sehr weit kommen.

ComputerMilo schrieb:
Ich habe schon häufiger gehört, dass man am besten auf dem Betriebssystem programmieren soll, für das man seine Programme schreibt, damit man seine Programme dort auch testen kann.
Bei Anwendungssoftware ist der Tipp korrekt, bei einem Betriebssystem hingegen naturgemäßig schwierig, da das System, auf dem du programmieren willst ja noch gar nicht existiert.

ComputerMilo schrieb:
Da ich diese Programme ja aber für meine neue Distribution schreibe, die, genau wie alle anderen ihre Eigenheiten haben wird und daher nicht zu den anderen kompatibel sein wird, so wie Debian z.B. auch nicht zu Arch kompatibel ist, kann ich diese Programme ja unter bereits bestehenden Distributionen auch nicht richtig testen.
Hier irrst du dich. Linux-Anwendungen sind erst einmal unabhängig von der jeweiligen Distribution. Allerdings liefern verschiedene Distribution Bibliotheken häufig in unterschiedlichen Versionen aus, so dass du genötigte Abhängigkeiten selbst auflösen musst sofern du Pakete anderer Distributionen verwenden willst. Das ist nicht nur sehr lästig, sondern auch sehr fehleranfällig, so dass es in der Regel einfacher ist die Anwendung mit den eigenen, bereits vorhandenen Bibliotheken neu zu übersetzen.

ComputerMilo schrieb:
Möglicherweise werde ich für die Distribution auch den Quellcode des Linux-Kernels anpassen, damit die in meiner Distribution enthaltene Kernel-Version besser auf meine Distro passt. Also wird es dort zu weiteren Unterschieden zu anderen Distros kommen.
Kannst du ein Beispiel dafür nennen?


Falls du dein Projekt trotzdem fortsetzen möchtest, rate ich dir damit anzufangen erst einmal ein Linux-System from Scratch zu bauen. Das würde dir überhaupt erst einmal einen Eindruck verschaffen wie Umfangreich dein Projekt überhaupt ist. Eine Anleitung dazu gibt es bei Linux From Scratch.
 
Zurück
Oben