Erfahrungen im Programmieren mit Windows Subsystem for Linux?

8 Antworten

ich möchte auf meinem Computer gerne Linux-Programme entwickeln, benötige aber Windows trotzdem weiterhin im täglichen Einsatz mit Microsoft Office oder auch fürs Gaming.

Ist nicht Notwendig.

Alternativen für MS Office --> Libre Office oder Free Office ,beides KOSTENLOS

Spiele zocken ( Gaming)?

-> Steam Installieren und über Proton DB kann man sich das meiste ansehen wie es korekt funktioniert. Selbst Valorant funktioniert mittlerweile unter Steam sehr gut !

Ich selbst Zocke viele Games unter Linux zusammen mit Steam.

  • PubG
  • Neverwinter nights
  • Bless Global
  • Bless Uleashed
  • Torchlight
  • Desitny 2
  • Diablo 2
  • Diablo 3
  • X2
  • X3
  • Flyff
  • Eternium
  • Sword Arts Online
  • Forníte
  • Valorant
  • Minecraft
  • Team Fortess

Und viele andere Titel.

Eine 2 TB m.2 NVME ist zu 80 % voll

Und das mit einer fast 10 Jahre alten AMD Kiste mit AMD Grafikkarte. Einige Titel sind sogar auf 4K spielbar und das Ruckelfrei auf der AMD RX 580 !!!

Daher kann ich meine Windows-Installation nicht durch eine Linux-Distribution ersetzen.

--> Ja ist möglich das Windoof durch eine Linux Distribution zu ersetzen. Niemand zwingt dich Windoof zu verwenden. Das einzigste was du musst ist aufs Klo gehen, Essen und pennen.

Daher habe ich überlegt, zum Programmieren für Linux das Windows Subsystem for Linux zu verwenden, sodass ich die erstellten Anwendungen dann zum Testen mit WSL unter Linux starten kann.

Auf Windows sachen für Linux zu Entwickeln ist genaso unverantwortlich eher Dumm ,als auf Linux Windows Sachen zu Programmieren.

Linux bietet als Entwickler Plattform --> ECLIPSE . Damit ist nahezu jede Hochsprache aber auch einfache Programmiersprache zum Programmieren möglich.

Es ist also kein Zwang auf MS Windoof zu bleiben. Denn für alles gibt es passende alternativen überwiegend KOSTENLOS unter Linux Distributionen . Vielen fehlt einfach das wissen wo wo und was. Dies kriegt man schnell wenn man sich mit der Materie Befasst.

Woher ich das weiß:Berufserfahrung – Linux Administrator

Ubuntu, Fedora und andere populären Distribution sind kompatibel mit Secure Boot.

WSL ist quasi eine vollwertige Linux Shell ohne Desktop Environment eben, es gibt auch wege Grafikanwendungen zu benutzen, dass ist aber nicht sehr solide.

Theoretisch kannst du auch eine Windows VM unter Linux erstellen und dort Gamen und Co. mit fast nativer Performance, aber das ist eher kompliziert.

Solange du keinen direkten Zugriff auf die Hardware benötigst geht das soweit klar.

Falls du mit grafischen Anwendungen hantieren willst, brauchst du allerdings einen im Windows laufenden X-Server. Dafür wäre z.B. MobaXTerm eine recht hübsche Lösung.

P.S.: Wie kommst du eigentlich darauf, dass mit SecureBoot kein Dual-Boot möglich wäre?

Wie immer kommt es auch auf genaue Nutzung an, aber grundsätzlich kannst du auch WSL für die Software Entwicklung nutzen.

Aus WSL kannst auf das Windows Dateisystem zugreifen. Es ist z.B. unter /mnt/c/ gemountet. Da die Dateiberechtigungen nicht perfekt übertragen werden können, sollte dein Source Code direkt unter Linux liegt.

Über den Windows Datei Explorer kannst du auch auf WSL Distros zugreifen.

Netzwerk Ports werden automatisch unter Windows über localhost zur Verfügung gestellt. Es setzt vorraus, das der Port unter Windows frei ist und ein bind bzgl. Berechtigung möglich ist. Ein Netzwerkanwendung unter Linux auf Port 8080 könntest du über den Windows Browser via localhost:8080 erreichen.

Grafische Linux Anwendungen können mittlerweile auch extra Window Server (z.B. X11 Server) genutzt werden. Die Programme sind als freies Fenster unter Windows nutzbar. Das Fenster Design entspricht dem Design wie unter Linux. Die Zwischenablage scheint nicht synchronisiert zu werden.

Falls du ein Linux mit systemd benötigst, musst du es manuell über die wsl.conf aktivieren. Dann kannst du auch alle Dienste, die systemd verwenden, benutzen.

Wenn es um Software Kompatibilität geht, habe ich noch keine Einschränkungen bemerkt. Es ist eben ein virtualisiertes Linux System.

Bei der Entwicklungsumgebung könntest nano oder vim über das Terminal nutzen, aber das macht nicht viel Spaß. In der WSL Umgebung nutze ich meisten Visual Studio Code als Editor. VS Code läuft in Windows und verbindet sich dann über ein VS Code in WSL. Beim Terminal hast du auch das entsprechende Linux Terminal integriert.

IntelliJ und vermutlich die anderen JetBrains IDEs sollen auch eine WSL Integration haben. Es ein Ultimate Feature ist, habe ich noch nicht getestet. Ich würde eine ähnliche Umsetzung wie bei VS Code erwarten.

Beim Thema Hardware wird es schon schwieriger.

GPU Acceleration unter WSL für z.B. Machine Learning soll mittlerweile wohl auch möglich sein. Eine extra Einrichtung soll erforderlich sein.

Ein USB hatte ich in WSL auch schon getestet. Das wäre mit usbipd möglich. Dort wird das USB Gerät über das Netzwerk in WSL eingebunden. Jedes USB Gerät muss manuell in einer WSL Distro zugewiesen werden.

Ich hatte schon Erfolg mit einem USB Relais, eigener USB Hardware vom Unternehmen und einer Canon Kamera. Bei Projekt mit der Canon Kamera hatte ich die gphot2 Library mit einer Flutter Anwendung verknüpft. Da die Library nicht mit Windows kompatibel ist, hatte ich es testweise über WSL versucht. Die Kameravorschau, die aus einzelnen Preview Bildern bestand, lief nicht sehr flüssig. Windows -> Netzwerk -> Linux -> (Netzwerk) -> Windows war dann wohl doch zu viel. Unter MacOS lief es flüssig.

Im alltaglichen Arbeitsgeschäft nutze ich vor allem folgende Tools:

ssh Client, Docker, Ansible, AWS CLI, Terraform, kubectl (Kubernets), Java, Maven

Nutze WSL hauptsächlich für DevOps Aufgaben. Wo ich noch etwas mehr mit Java entwickelt habe, hatte ich es hauptsächlich unter Windows gemacht und nur gelegentlich unter Linux getestet.

Bei Docker nutze ich die CE Version in meiner Ubuntu Distro. Docker Desktop, welches inter auch WSL nutzt, setzt kommerziell eine kostenplichtige Lizenz vorraus. Privat nutze ich Docker Desktop. Andere nutzen teils Podman als Alternative.

Die Einrichtung von Features, die u.A. eine Verbindung mit Windows hatten, waren teils etwas aufwendiger bzw. das Herausfinden wie. Die native GUI Integration kam z.B. auch erst mit Windows Updates später dazu. Davor es mit z.B. externen X11 Server möglich. Die Unterstützung von systemd hatte ich auch erst etwas später entdeckt. Die Hinbekommen der USB Verbindung hat auch etwas Zeit benötigt.

Mit bevorzugt Windows 11 (statt Windows 10) und den zahlreichen Updates von Microsoft, könnte der Start bei dir etwas runder ablaufen.

Grundsätzlich funktioniert das meiste auch unter WSL.

Für etwas weniger Stress und Probleme kann eine vollständige Linux VM oder auch eine native Linux Installation vom Vorteil sein. Es kommt eben auch auf die persönlichen Ansprüche und Vorraussetzungen an WSL an.

Ich habe es schonmal ausprobiert, es funktioniert gut.

Ich benutze momentan Oracle Virtualbox weil ich auch gerne Windows virtualisieren will, beide virtualisierungs-programme funktionieren gleichzeitig leider nur über unwege.

Die Vorteile von WSL sind das es einfach ist, nichts umgestellt werden muss und gut in Windows integriert ist.

Woher ich das weiß:Studium / Ausbildung – IT Technik