MicrosoftDocs / WSL

Source code behind the Windows Subsystem for Linux documentation.
https://docs.microsoft.com/windows/wsl
Other
1.92k stars 579 forks source link

FAQs should call out scenarios where WSL is not suitable for development work #2049

Open kapad opened 1 month ago

kapad commented 1 month ago

Documentation Issue

Follow up from #1180, see comment added in context here

The FAQs section of the documentation should highlight scenarios in which WSL is not a suitable option for development work, including scenarios where projects would need to connect to USB devices.

Link to documentation page

https://learn.microsoft.com/en-gb/windows/wsl/faq

Suggested Improvements

Add an FAQ for scenarios where WSL is not suitable for development. In this FAQ include those scenarios where development work may need a usb device connected to WSL.

For eg: Connecting a USB thumbdrive or external HDD directly to WSL.

mattwojo commented 1 week ago

Hmm... interesting idea. One of the issues is that there are so many caveats that it can be hard to make blanket statements... a lot depends on how in the weeds you may be willing to get with set up from what I've found so far. I'll talk to Craig (the WSL PM) about it.

Out of curiosity, I asked Microsoft Copilot... here's what it listed... any thoughts?

Suitable Scenarios for WSL Web Development: Easily run a LAMP/LEMP stack, test web applications, and use tools like Node.js, Ruby, and Python. Data Science and Machine Learning: Utilize Linux-based tools and libraries such as TensorFlow, PyTorch, and Jupyter Notebooks. DevOps and System Administration: Run and test shell scripts, use Docker, and manage Linux servers directly from your Windows machine. Cross-Platform Development: Develop and test applications that need to run on both Windows and Linux environments without needing a separate Linux machine.

Not Suitable Scenarios for WSL Connecting a USB thumbdrive or external HDD directly to WSL: WSL does not support direct access to USB devices, which can limit certain development tasks that require direct hardware interaction. Graphical User Interface (GUI) Applications: While WSLg allows some GUI applications, it may not be suitable for all graphical applications, especially those requiring high performance or specific hardware acceleration. Kernel Module Development: WSL does not provide the ability to develop or test Linux kernel modules, as it does not run a full Linux kernel. Real-Time Applications: WSL may not be suitable for developing real-time applications that require precise timing and low-latency operations due to its integration with the Windows kernel.

kapad commented 3 days ago

Maybe I should have asked copilot too. Then I wouldn't have got stuck in the first place.

And yes, I think that sounds good. Would've certainly helped me had I seen that FAQ before I got started doing what I was.