8 Punkte von GN⁺ 2025-03-31 | 10 Kommentare | Auf WhatsApp teilen

"Wir müssen Linux-Distributionen wie Windows machen."

  • Dieser Text schlägt vor, eine Linux-Distribution zu schaffen, die Windows-Programme standardmäßig über Wine ausführen kann, um die Probleme bestehender Linux-Portabilität und Distributionsmethoden zu lösen
  • Dadurch könnten Windows-Nutzer mit kaum Schulungsaufwand leicht zu Linux wechseln, und zugleich ließen sich die langjährigen Kompatibilitätsprobleme von Linux angehen

Die Instabilität der Linux-Umgebung

  • Unter Windows lässt sich selbst eine 20 Jahre alte .exe-Datei noch ausführen, während unter Linux selbst ein ein Jahr altes Binary möglicherweise nicht mehr läuft
  • Der Grund sind Unterschiede bei Bibliotheksversionen und Updates unter Linux, durch die dieselbe ausführbare Datei auf verschiedenen Distributionen nicht mehr funktioniert
  • Die System Calls von Linux sind zwar stabil, aber die darauf aufsetzende C-Bibliothek (libc) ist instabil, und der Großteil des User Space hängt von ihr ab

Probleme bei der Binary-Distribution unter Linux

  • Unter Linux gibt es nicht weniger als vier zentrale Wege, ausführbare Dateien zu verteilen, und jeder bringt eigene Probleme mit sich
    • Rohes Binary: läuft in den meisten Umgebungen nicht
    • AppImage: enthält alle Abhängigkeiten, aber die langfristige Bewahrung ist fraglich
    • Flatpak: bietet pro App eine Sandbox
    • Snap: ein weiterer sandboxbasierter Paketmanager
  • Bei allen unterscheiden sich Installation, Updates und Deinstallation, und sie können gleichzeitig nebeneinander existieren
  • Für die langfristige Bewahrung und erneute Ausführung von Apps sind die meisten ungeeignet; eine Ausführbarkeit in 20 Jahren ist nahezu ausgeschlossen

Warum Win32 die Lösung ist

  • Die Win32 API von Windows wird als die einzige stabile ABI (Application Binary Interface) unter Linux bewertet
  • Windows ruft System Calls nicht direkt auf, sondern über dynamische Bibliotheken und bewahrt so die Stabilität der API
  • Dank dieser Struktur kann Microsoft intern den Kernel verändern und den Nutzern dennoch dieselbe Schnittstelle bieten
  • Linux hingegen ruft System Calls direkt auf, und wegen instabiler Bibliotheken bleiben Kompatibilitätsprobleme bestehen
  • Wine implementiert diese Win32-Struktur und ermöglicht dadurch sogar die Ausführung von Apps aus der Windows-95-Ära der 1990er-Jahre
  • Insbesondere bei reinen Win32-Apps gibt es zwischen Wine und Windows kaum Kompatibilitätsunterschiede

Entwurf einer neuen Linux-Distribution

  • Vorgeschlagen wird eine Linux-Distribution mit einer Windows-ähnlichen Desktop-Umgebung
  • Diese Distribution hätte Wine standardmäßig installiert und könnte Windows-Programme durch kleine Kernel-Patches automatisch erkennen und ausführen
  • Für jeden Nutzer würde eine eigene Wine-Umgebung (Prefix) eingerichtet, ergänzt durch ein Dateisystem und eine GUI im Windows-Stil
  • Die bestehende Linux-Umgebung bliebe im Hintergrund erhalten und wäre für fortgeschrittene Nutzer zugänglich

Echte Multiplattform-Unterstützung

  • Wine läuft nicht nur unter Linux, sondern auch auf FreeBSD, macOS, Android und anderen Betriebssystemen
  • Wenn alle Apps ausschließlich als Win32-Apps verteilt würden, ließen sie sich ohne separates Porting auf mehreren Plattformen ausführen
  • So entstünde eine Struktur, mit der eine einzelne App mit mehreren Betriebssystemen kompatibel sein kann

Bedrohungen der Zukunft

  • macOS und Windows entwickeln sich zunehmend in eine geschlossenere Richtung und entziehen den Nutzern die Kontrolle
    • Windows ergänzt automatische Screenshots und KI-Analysefunktionen
    • macOS beschränkt über Gatekeeper die Ausführung auf genehmigte Apps
  • Beide Betriebssysteme überwachen die Aktivitäten der Nutzer und bereiten sogar Funktionen zur Suche nach illegalen Dateien und zu deren Meldung vor
  • Microsoft macht die Nutzung von Windows ohne Online-Konto immer schwieriger
  • Dadurch könnte eine Kontosperrung dazu führen, dass sich der Computer selbst nicht mehr verwenden lässt

Dieser Trend wird weniger als böswillig denn als Folge wirtschaftlichen und politischen Drucks interpretiert

Warum Linux als Windows verpacken

  • Eine neue Linux-Distribution könnte das Portabilitätsproblem lösen und Windows-Nutzern eine vertraute Wechselumgebung bieten
  • In einer Zeit, in der Upgrades auf Windows 11 erzwungen werden, könnte sie eine leicht zugängliche Alternative bieten
  • Nach Ansicht des Autors ist jetzt der richtige Zeitpunkt, eine Linux-Distribution zu entwerfen, die die Souveränität der Nutzer zurückholt

10 Kommentare

 
roxie 2025-04-02

Bei einem Ökosystem, das 20 Jahre durchhält, nickt man anerkennend – aber warum landet man am Ende bei wine..

 
yfkim97 2025-04-02

macOS scheint wohl nicht mehr brauchbar zu sein.

 
labeldock 2025-04-01

Ich will es nicht unbedingt kritisch sehen, aber als jemand, der mehrere Betriebssysteme benutzt hat, kann ich dem nicht wirklich zustimmen. Heutzutage lassen sich die meisten GUI-Tools auch im Web nutzen, und wenn man einen guten Desktop braucht, ist man mit Windows mit seiner ansprechenden UI besser bedient; auch die Treiberunterstützung ist unter Windows deutlich besser.

 
alucardkang 2025-03-31

Steam sollte es sein, aber na ja ...

 
prunusnira 2025-03-31

Tmax Windows ... Lindows/Linspire ... ReactOS ... ugh, mein Kopf ...
Es wirkt wirklich so, als würde Valve mit Proton Großes leisten.

 
aer0700 2025-03-31

Irgendwie ein ziemlich origineller Vorschlag.

 
kwj9211 2025-03-31

Wäre es nicht besser, einfach daran herumzutweaken, damit Top-Tier-Spiele / Software gut laufen?

...aber so sollte man wohl nicht denken, oder? haha

 
kandk 2025-03-31

Ich hoffe, wir erleben bald eine Zeit, in der man auch ohne einen PC mit Windows 11 oder neuer spielen kann. schluchz

 
GN⁺ 2025-03-31
Hacker-News-Kommentare
  • Es gibt den Vorschlag, eine Distribution zu bauen, die standardmäßig Wine nutzt, um Windows-Binärdateien auf einer Linux-Distribution auszuführen

    • Unter Debian lässt sich das einfach mit dem Befehl sudo apt install wine-binfmt installieren
    • Alternativ kann man es auch durch Anpassen der Konfigurationsdateien nutzen
  • Unter Windows lassen sich selbst 20 Jahre alte EXE-Dateien noch ausführen, während unter Linux selbst ein ein Jahr altes Binary durch Updates unbenutzbar werden kann

    • Windows paketiert bei der App-Installation alle dynamischen Abhängigkeiten mit, während Linux dynamische Abhängigkeiten zwischen Apps teilt
    • Wenn sich Abhängigkeiten ändern, kann eine App nicht mehr funktionieren
    • Um das zu lösen, kann man wie unter Windows ausliefern oder statisch linken
  • Ich denke nicht, dass eine neue Distribution nötig ist

    • Die meisten Windows-Apps funktionieren über Wine, aber Hacks, um eine App zum Laufen zu bringen, können andere Apps kaputtmachen
    • Jeder Nutzer muss die Einstellungen individuell anpassen, und was auf dem Computer einer Person funktioniert, läuft auf dem einer anderen möglicherweise nicht
    • Die einfachste Lösung wäre, einen Container mit Wine auszuliefern, sodass alle Nutzer dasselbe Artefakt erhalten und es immer funktioniert
    • Das ist platzineffizient, aber es braucht eine Möglichkeit, Wine für den Einsatz in Containern zu verschlanken
    • Lizenzen und Software-Anti-Patterns sind die einzigen Hürden für dieses System
  • Zorin OS bietet Unterstützung für .exe-Dateien mit Wine fast direkt ab Werk, und Steam OS/Proton hat offizielle Richtlinien, keine Linux-Ports neuer Spiele zu erstellen, sondern sie für Proton zu optimieren

  • Linux-Distributionen linken ausführbare Dateien in der Regel dynamisch und behalten ältere Versionen von Bibliotheken nicht bei

    • Windows behält ältere Versionen ausführbarer Dateien, weil es keinen Paketmanager hat
    • Es gibt den Windows Store und neuere CLI-Tools, aber traditionell erfolgt die Installation von Windows-Anwendungen über manuelles Herunterladen und Installieren
    • Unter Linux kann man es genauso machen, aber die Paketmanager von Linux-Distributionen sind im Allgemeinen sehr gut
  • Linux-Systemaufrufe sind sehr stabil, die darüberliegende C-Bibliothek jedoch nicht

    • Windows hat dasselbe Problem und verteilt libc als Teil der Visual-C++-Runtime
    • Windows hält die Abwärtskompatibilität von libc aufrecht, bis eine neue Version von Visual Studio veröffentlicht wird
  • Klingt nach jemandem, der Lindows/Linspire haben möchte

  • Wenn die Windows-ABI wirklich so stabil ist, fragt man sich, warum Rechner mit Win95 oder NT, die niemand anfasst, weil sonst bestimmte Software nicht mehr funktioniert, weiterhin existieren

    • Solche Rechner sieht man häufig in Industrieumgebungen, öffentlichen Bibliotheken, Unternehmensdatenbanken usw.
  • Für das Ausführen von EXE-Dateien ist kein Kernel-Patch nötig; binfmt_misc kann das übernehmen

    • wine-binfmt führt PE-Dateien automatisch über Wine aus