17 पॉइंट द्वारा GN⁺ 2025-05-20 | 6 टिप्पणियां | WhatsApp पर शेयर करें
  • Microsoft ने घोषणा की है कि उसने पूरे WSL को open source में बदल दिया है, और यह Microsoft/WSL रिपॉजिटरी के पहले issue “क्या यह open source बनेगा?” का जवाब भी है
  • GitHub के Microsoft/WSL से source डाउनलोड करके उसे सीधे build किया जा सकता है, या features जोड़े जा सकते हैं और bugs ठीक किए जा सकते हैं
  • सार्वजनिक किए गए code में command-line tools, services, Linux के लिए daemons, और Plan9-आधारित file sharing server तक शामिल हैं
  • WSL, Windows execution layer और Linux virtual machine (VM) के भीतर चलने वाले कई components से मिलकर बना है
    • CLI tools: wsl.exe, wslconfig.exe, wslg.exe
    • WSL service: VM boot, distribution चलाना, file sharing आदि संभालने वाला wslservice.exe
    • Linux daemons: init, gns, localhost आदि, जो networking और port forwarding functions संभालते हैं
    • Plan9 server: Windows और Linux के बीच file sharing की भूमिका
  • वे components जो पहले से open source के रूप में उपलब्ध थे
    • WSLg: Wayland और X server को support करने वाले graphical environment से जुड़े components
    • WSL2-Linux-Kernel: Linux kernel source
  • वे components जो अभी भी open नहीं किए गए हैं
    • Lxcore.sys: WSL1 का core driver
    • P9rdr.sys, p9np.dll: Windows में \\wsl.localhost path को support करने वाला file redirection system

open source में बदलाव की पृष्ठभूमि और WSL का इतिहास

  • WSL की पहली घोषणा 2016 BUILD में हुई थी, और इसे Windows 10 Anniversary Update में शामिल किया गया था
  • WSL1, Windows kernel के भीतर Linux syscalls को संभालने वाली lxcore.sys-आधारित संरचना थी
  • WSL2 को 2019 में पहली बार घोषित किया गया था, और इसने वास्तविक Linux kernel का उपयोग करके compatibility और functionality में सुधार किया
  • इसके बाद GPU support, GUI apps चलाना (wslg), systemd support जैसी सुविधाएँ जुड़ती गईं और यह विकसित होता गया
  • 2021 से इसे Windows से अलग एक स्वतंत्र package के रूप में Microsoft Store के जरिए उपलब्ध कराया गया
    • पहली release 0.47.1 (preview) थी, और बाद में 2022 की 1.0.0 release में support को Windows 10 तक बढ़ाया गया
  • Windows 11 24H2 से पुराने built-in WSL से नए package-आधारित WSL में बदलाव किया गया
    • wsl.exe को यथावत रखा गया ताकि users का transition आसान हो

नवीनतम version और features

  • नवीनतम release WSL 2.5.7 है, जिसे 4 वर्षों में लगभग 9 पन्नों जितनी GitHub release notes के जरिए लगातार बेहतर बनाया गया है
  • प्रमुख सुधारों में mirrored networking, DNS tunneling, Session 0, proxy/firewall support शामिल हैं

community का योगदान

  • कई वर्षों से community bug reporting, feature suggestions और अनौपचारिक analysis के जरिए WSL को बेहतर बनाने में योगदान देती रही है
  • source code सार्वजनिक होने से पहले भी वास्तविक योगदान सक्रिय था, और अब सीधे code contribution संभव हो गया है
  • Microsoft ने इस community support के लिए आभार जताया है, और आगे भी WSL के विकास में और बड़े synergy की उम्मीद जताई है

योगदान कैसे करें

  • अगर आप source structure या feature implementation को समझना चाहते हैं, या उसमें सुधार करना चाहते हैं, तो
    • microsoft/WSL रिपॉजिटरी में भाग लिया जा सकता है
    • सीधे build करना, PR जमा करना, issue report करना आदि कई तरीकों से योगदान दिया जा सकता है

6 टिप्पणियां

 
ing03201 2025-05-27

Endeavour +lustre / windows11 + wsl + wsa का इस्तेमाल करने वाले के नज़रिए से
बाद वाले की सुविधा बेहतर है
लेकिन performance पहले वाले की बेहतर है

 
iolothebard 2025-05-21

लगता है इस बार WSL टीम में भी काफी कटौती हुई है…

 
forgotdonkey456 2025-05-21

अगर लोगों की कमी हो, तो आजकल MS बस उसे community driven कहकर open source बना देता है lol..

 
zihado 2025-05-21

बस बचा-खुचा निपटा रहे हैं।

 
ksb9770 2025-05-20

WSL1 cross development environment के लिए बेहतरीन मशीन है। इसका IO भी तेज़ है और Linux-आधारित commands भी तुरंत चलाए जा सकते हैं। WSL2 में 1 की तुलना में cross compile धीमा है।

 
GN⁺ 2025-05-20
Hacker News की राय
  • जब भी मैं Hacker News पर WSL की तारीफ़ में कमेंट लिखता हूँ, मुझे लगता है जैसे मुझे karma tax देना पड़ रहा है। WSL की वजह से एक ही कंप्यूटर पर कई Linux versions को एक साथ बहुत आसानी से चलाया जा सकता है, इसलिए यह Linux से भी ज़्यादा ताकतवर लगता है। docker जैसी device support, local storage, network mapping वगैरह बिना किसी खास script के, डेस्कटॉप या लैपटॉप पर बिना अतिरिक्त setup के तुरंत इस्तेमाल कर पाना इसकी बहुत बड़ी खूबी है। उदाहरण के लिए, अगर एक project को Ubuntu22 और दूसरे को Ubuntu24 चाहिए, तो OS update की चिंता में पड़े रहने की ज़रूरत नहीं रहती — यह सच में बहुत सुखद है

    • "Linux से ज़्यादा ताकतवर" कहना बढ़ा-चढ़ाकर कहना है; असल में WSL एक virtual machine है। WSL की सबसे बड़ी ताकत यह है कि यह तरह-तरह की convenience features को अपने-आप उपलब्ध कराता है। लेकिन सच में उससे भी ज़्यादा सुविधाजनक माहौल वह है, जहाँ virtual machine की ज़रूरत ही न हो। Distrobox और toolbx जैसे tools भी मिलती-जुलती सुविधाएँ देते हैं, और NixOS में भी सामान्य Linux environments को आसानी से test किया जा सकता है। इसके अलावा hardware acceleration, graphics apps का सीधे चलना, धीमे 9p bridge की समस्या न होना, और VM memory balloon जैसी दिक्कतों का न होना भी फायदे हैं। Windows users के लिए WSL क्रांतिकारी है, लेकिन Linux users को ऐसे VM की ज़रूरत नहीं पड़ती — यही राय है

    • Linux पर भी Distrobox से ऐसा किया जा सकता है, लेकिन Windows + WSL को साथ में चला पाना वाकई आकर्षक है — यह मानता हूँ। अगर Microsoft अनावश्यक software, ads, Copilot और जरूरत से ज़्यादा telemetry को कम करके कोई Dev edition निकाले, और MacBook जैसे hardware दे, तो वह Apple छोड़ने वाले developers को वापस आकर्षित कर सकता है। मैं खुद Mac और Linux के बीच आता-जाता रहता हूँ, और usability के लिहाज़ से कई बार Windows + WSL का संयोजन ज़्यादा पसंद आता है। PowerToys, WSL, PowerShell, और PowerShell + Winget DSC के जरिए PC setup automation वाकई शानदार हैं, लेकिन Windows की user-unfriendly प्रकृति और बेहिसाब लंबे updates बिल्कुल बर्दाश्त नहीं होते। macOS की तरह immutable base और image-based updates लाए जाएँ तो और बेहतर होगा। M4 Pro laptop जैसी performance न होना भी Windows पक्ष की एक कमी लगती है

    • "WSL Linux से ज़्यादा ताकतवर है" — यह ऐसा दावा है जिस पर karma कटना स्वाभाविक है। WSL अच्छा है, मैं इसे हर दिन इस्तेमाल करता हूँ, लेकिन supported hardware पर Linux चलाने का अनुभव बेहतर होता है — यह सच है। जैसे VM native जितना अच्छा नहीं हो सकता, वैसे ही Windows software भी Windows पर बेहतर चलता है। तुलना करने पर WSL में I/O धीमा है, graphics में lag और glitches हैं, कभी-कभी crashes आते हैं, memory management inefficient है, और network issues भी होते हैं। बहुत ताकतवर कंप्यूटर पर अगर CLI-केंद्रित काम हो, तो WSL सुविधाजनक हो सकता है, लेकिन असल में यह हर व्यक्ति की ज़रूरत के environment पर निर्भर करता है

    • WSL असल में Linux ही है। खासकर WSL2 से तो यह पूरी तरह VM architecture पर चला गया, जबकि WSL1 Windows kernel पर चलने के कारण काफ़ी शानदार था। लेकिन NTFS filesystem धीमा है, और Windows को खुद संभालना पड़ना सबसे बड़ी परेशानी है। karma number तो बस एक number है, इसलिए उसकी परवाह नहीं करता

    • मेरे लिए WSL काफ़ी unstable रहा है, और हर बार कंप्यूटर sleep से उठने पर VM और host के बीच network problem के कारण restart ज़रूरी हो जाता है। अगर Windows user directory में काम करूँ, तो filesystem driver की धीमी performance की वजह से git commands में कई सेकंड लग जाते हैं, और अंत में दो home directories संभालनी पड़ती हैं। Setup के दौरान भी जटिल DNS, VPN, network priority bugs, time sync mismatch जैसी कई रहस्यमय समस्याएँ सुलझानी पड़ीं। नतीजा यह हुआ कि बार-बार Windows reboot करना रोज़मर्रा की बात बन गई। मुझे कई operating systems इस्तेमाल करने की ज़रूरत नहीं है, और कंपनी में भी ज़्यादातर tools Linux VM में चलते हैं — वही एकमात्र समझदारी भरा तरीका है। ऊपर का OS उल्टा समस्याएँ ही पैदा करता है, और दो operating systems की आपसी interaction की वजह से काम जरूरत से ज़्यादा जटिल हो जाता है — यही मेरा मानना है

  • जब WSL पहली बार आया था, मैं बहुत खुश था। ऐसा लगा जैसे gaming और development को एक ही Windows PC पर जोड़कर इस्तेमाल करने का सपना सच हो गया हो। लेकिन समय के साथ package installation issues, OS boundaries की दिक्कतें और तरह-तरह की छोटी समस्याएँ बढ़ती गईं, और पूरा अनुभव खुरदुरा होता गया। Valve का Proton और नए Linux gaming support बेहतर होने के बाद मैं पूरी तरह Ubuntu और NixOS पर चला गया। अब gaming की तरफ थोड़ी असुविधा है, लेकिन development environment कहीं ज़्यादा आरामदायक हो गया है। कुछ AAA games को छोड़ दें, तो Windows + WSL से यह अनुभव बेहतर लगता है

    • मेरा अनुभव भी ऐसा ही रहा, और अब तो Linux install करना उल्टा ज़्यादा आसान लगता है। Windows के spyware जैसे features की वजह से उसे इस्तेमाल करने की वजहें और कम होती जा रही हैं

    • हाँ, Nvidia graphics card इस्तेमाल करने वालों के लिए मामला अलग हो सकता है

    • किन games में दिक्कत आई, यह जानने की जिज्ञासा है

    • मुझे लगता है ज़्यादातर लोगों ने ऐसा अनुभव किया है। अगर आज Windows gaming (GPU) का प्लेटफ़ॉर्म न होता, तो शायद उसकी उपस्थिति इतनी मज़बूत न होती। पुराने projects में msvc, cygwin, msys2 जैसी build environments बदल-बदलकर काम करने का जो भ्रम और झंझट था, वह भी याद आता है। अब WSL से कुछ हद तक build करना आसान हुआ है, लेकिन environment variable बदलने जैसी छोटी चीज़ भी थका देती है, और मैं दोबारा उस तरह के workflow में नहीं लौटना चाहता

  • मैं तो उल्टा Linux पर Windows को virtual machine में चलाने की सलाह दूँगा। अगर आपको Windows पर Linux इस्तेमाल करने की इच्छा होती है, तो बेहतर है कि सीधे Linux पर चले जाएँ — फिर पीछे मुड़कर देखने की ज़रूरत नहीं रहती। मैं पिछले 15 साल में कभी Windows पर वापस नहीं गया। आज के Windows की हालत देखते हुए तो उसे VM में भी चलाने का मन नहीं करता

    • GPU से जुड़े कामों में, जैसे gaming या Adobe suite, VM में Windows चलाने के लिए अलग GPU passthrough चाहिए होता है; जिसके पास यह नहीं है, उसे बिना acceleration वाला environment स्वीकार करना पड़ता है, इसलिए VM तरीका आसान नहीं है। अगर Photoshop को QEMU QXL driver पर चलाएँ, तो performance बहुत खराब होती है, और VirGL तो Windows guest को support ही नहीं करता। VMWare और VirtualBox थोड़े बेहतर हैं, लेकिन फिर भी native के बराबर नहीं पहुँचते

    • मुझे लगता है कि Windows से जुड़े ज़्यादातर threads में साफ़ दिखता है कि कुछ लोग productivity apps की वजह से Windows पर निर्भर हैं, और कुछ नहीं। मेरे जैसे लोग अगर GPU-संबंधित productivity apps इस्तेमाल करते हैं, तो VM में काम नहीं चलता और आख़िरकार Windows native ही चलाना पड़ता है। हल्के apps चलाने वालों के लिए virtual machine पर्याप्त हो सकती है, लेकिन CAD या gaming जैसे गंभीर कामों के लिए यह उपयुक्त नहीं है

    • मैं कई साल सिर्फ Linux पर रहा, फिर Windows और उसके बाद वापस Mac पर आ गया। wine compatibility issues, अधूरे software alternatives — जैसे GIMP का Photoshop की जगह न ले पाना — और Qt व GTK apps के मिश्रण से desktop का रूप बिगड़ जाना; इन सब से लगता है कि Linux कोई सर्वसमर्थ समाधान नहीं है

    • इसके जवाब में, मेरे अनुभव में Valve Index जैसे VR devices ऐसे environment में — यानी Linux पर Windows VM चलाने पर — बिल्कुल ठीक से काम नहीं करते। मैं बचपन से Linux hardcore user रहा हूँ, लेकिन ऐसे खास अपवाद भी मौजूद हैं, इसलिए हर चीज़ पर एक जैसा निष्कर्ष नहीं निकाला जा सकता

    • संबंधित जानकारी के तौर पर, Windows के evaluation VM images बाँटने वाले आधिकारिक link का ज़िक्र किया गया, साथ ही यह भी बताया गया कि evaluation खत्म होने पर desktop काला हो जाता है और PC हर घंटे बंद हो जाता है जैसी सीमाएँ होती हैं। नवीनतम evaluation image को 6 महीने से ज़्यादा समय से update नहीं किया गया, लेकिन registration करने पर ISO मिल जाता है

  • इसका नाम Windows subsystem for Linux है, इसलिए यह हमेशा उलझन पैदा करता है। पहली नज़र में यह Wine के किसी आधिकारिक version जैसा लगता है, जबकि असल में यह Linux के लिए Windows का subsystem है। नाम ऐसा सुनाई देता है जैसे Microsoft Linux को कोई सुविधा दे रहा हो, और यह बात चुभती है

    • Microsoft project का नाम 'Linux' से शुरू नहीं कर सकता था, इसलिए आख़िरकार WSL नाम रखा गया — ऐसा कहा गया

    • यह नाम पहले के Windows Subsystem for Unix project से आया है। कहा गया कि यह नाम हमेशा उम्मीद के उलट काम करता रहा है

    • मज़ाकिया अंदाज़ में "Windows का Linux के लिए subsystem" जैसा एक बेहतर नाम सुझाया गया

    • यह Linux को Windows पर चलाने के लिए subsystem है, लेकिन नाम सचमुच भ्रमित करने वाला है — इस बात से सहमति जताई गई

  • पिछले कुछ सालों में मैं बीच-बीच में WSL पर development करता रहा हूँ। जब यह ठीक चलता है, तो शानदार लगता है, लेकिन एक बार कुछ उलझ गया तो पूरा अनुभव दुःस्वप्न बन जाता है। Network, VPN, XServer, Windows scaling, hardware-accelerated graphics — हर तरफ लगातार समस्याएँ रहीं। ऐसा लगा कि असली development से ज़्यादा समय troubleshooting में गया, और सुधार भी खास नहीं हुआ। WSL तेज़ और शक्तिशाली है, लेकिन रोज़मर्रा के इस्तेमाल के लिए मेरे लिए यह बहुत थकाने वाला environment है। इसकी जगह मैं MSYS2 को मुख्य रूप से इस्तेमाल करता हूँ; यह धीमा है, लेकिन कम-से-कम stable तो है — यही इसकी सबसे बड़ी ताकत है

    • मैं अब भी WSL beta version इस्तेमाल कर रहा हूँ, क्योंकि update करने पर डर है कि अभी जो environment ठीक चल रहा है वह टूट जाएगा, इसलिए upgrade भी नहीं कर पा रहा हूँ
  • पिछले हफ्ते record results आने के बावजूद Microsoft में बड़े पैमाने पर layoffs हुए थे; सोच रहा हूँ कहीं यह उसी का side effect तो नहीं

    • इतनी बड़ी कंपनियों में 3% स्तर की layoffs, जब तक पूरा division या कोई project ही बंद न किया जा रहा हो, व्यावहारिक रूप से लगभग बिना असर की होती हैं। बल्कि बड़ी कंपनियों में overstaffing आम बात है, इसलिए इतना बदलाव कुछ खास नहीं — ऐसा पक्का मत है

    • ऐसी बड़ी कंपनी का open source करने का फैसला, उसकी तैयारी और उसका execution कभी भी 1-2 हफ्तों में होने वाला छोटा काम नहीं होता

    • इस बार के Build event और उससे जुड़ी खबरों को लेकर, मौजूदा व्यापक माहौल में सब कुछ सकारात्मक नज़र से देखना मुश्किल है — ऐसी चिंता जताई गई

    • घोषणा के अनुसार यह लंबे समय से तैयारी का नतीजा है, इसलिए हाल की layoffs से इसका संबंध नहीं है — इस बात से सहमति जताई गई

  • बताया गया कि WSL 1 को चलाने वाला kernel-side driver lxcore.sys इस बार के open source दायरे में शामिल नहीं है। और यह भी आश्चर्य जताया गया कि WSL 1 अभी भी support में है; अनुमान है कि शायद यह maintenance mode में होगा

    • मुझे सच में lxcore.sys में ही दिलचस्पी है। मैं अब भी सिर्फ WSL1 इस्तेमाल करता हूँ, और ABI के पार जाने या Windows को Linux userspace में tunnel करने जैसी अनोखी hacks भी कर चुका हूँ। उम्मीद है open source होने पर इसे और आसानी से छेड़ा-समझा जा सकेगा

    • वास्तव में सुना है कि WSL1 और WSL2 दोनों को पूरा support मिलता है। सिर्फ नंबर देखकर जो फर्क लगता है, बात उतनी भर नहीं है

  • License और बारीकियों की जाँच ज़रूरी है। यह सकारात्मक कदम हो सकता है, लेकिन शक यह भी है कि developers को हटाने के बाद MS मुफ्त मदद माँगने का बहाना बना रहा हो

    • बताया गया कि license MIT है
  • मैं Windows user नहीं हूँ, फिर भी WSL को शानदार मानता हूँ। लेकिन कई Windows users Linux की सबसे बड़ी आलोचना यही करते हैं कि वह "Windows जैसा नहीं दिखता"; जबकि Linux users के नज़रिए से Linux का Windows जैसा न दिखना ही उसकी खूबी है। उम्मीद है कि मुफ्त, ad-free Windows पाने की चाह में Windows users Linux को Windows जैसा बनाने की कोशिश नहीं करेंगे। अगर WSL Windows users को Windows पर ही बनाए रखता है, तो मैं उसका स्वागत ही करूँगा

    • मैं Windows user नहीं हूँ, लेकिन WSL खुद मुझे पसंद नहीं। लगता है Microsoft को डर था कि developers की एक पीढ़ी Linux की ओर चली जाएगी, इसलिए उसने सीधे OS के भीतर Linux को शामिल कर लिया। इस वजह से developers के लिए खुद kernel recompile करके सीखने-समझने वाला आनंद कम हो गया — यह अफ़सोस है
  • उम्मीद है कि WSL के भीतर Windows filesystem पर काम करते समय जो bugs आते हैं, वे अब जल्दी ठीक होंगे

    • लगता है Microsoft भी यही चाहेगा