From 81b256db299569bf6e6c9bd4e140bc3364b84da5 Mon Sep 17 00:00:00 2001 From: xiao-h Date: Wed, 8 Oct 2025 14:01:42 +0800 Subject: [PATCH 1/9] Add WSL related content --- .../images/ms-store-search-linux.png | Bin .../images/vscode-store-remote-wsl.png | Bin 0 -> 52455 bytes docs/{Ch10/index.md => Appendix/wsl.md} | 67 ++---------------- docs/Ch01/index.md | 4 ++ mkdocs.yml | 1 + 5 files changed, 12 insertions(+), 60 deletions(-) rename docs/{Ch10 => Appendix}/images/ms-store-search-linux.png (100%) create mode 100644 docs/Appendix/images/vscode-store-remote-wsl.png rename docs/{Ch10/index.md => Appendix/wsl.md} (55%) diff --git a/docs/Ch10/images/ms-store-search-linux.png b/docs/Appendix/images/ms-store-search-linux.png similarity index 100% rename from docs/Ch10/images/ms-store-search-linux.png rename to docs/Appendix/images/ms-store-search-linux.png diff --git a/docs/Appendix/images/vscode-store-remote-wsl.png b/docs/Appendix/images/vscode-store-remote-wsl.png new file mode 100644 index 0000000000000000000000000000000000000000..abf8e48ab8c0e69a94055857cdca8d0c923658b8 GIT binary patch literal 52455 zcmd?QWm_G~^933R1Pc({HMqM=aQBV71$T#yI|R4j9^8Vvdmun?hv328xs(4n$@zVN z`|93TJoL=$>8`4&UbR+rxT3rSB0Mhqt5>fOr6fg_U%i3^y?O=V1N#OT5tRtq0{%ca zDN6{ysvO7PfAxy^m6WIu$X)L+6B?|d{xIl!l}w{tz=iG>+RcF-h`3-7faK;jV(;eW zhR0(338HtUqG@R&ndfTDI~&cmNh*QEBA&x0`{L!~B6(}?Cd=!h^}ENoleOc{rD^~g zngOJ&9~=_|MHkfP4`1Qtt8=6|co~MEKEL{NMaT~tLjmgd^?!#xOZq`4g}-X%`f~?x zO+)bv|9^hTFB}+2g^i75{l6dn=Rs(U@Bi~3-2ZQWMp;#nn~SSwYz0kTo}s#?W}~e8 zuPvGU(MfVZG$;fF;iuK_`UVC*FMlkBqd`^Ctlc&tF+C^Wg8yT7CjTu|VnYn<(-9M; zB+CFACrmpoUNhH|1F3(a&;RlRFyz@3!T09B7pTGkQL6g5{9gdZ;zN!{GYnHFAF?Ph$Au@G3MEBRo`etO6Y7`xES3XuplqN*^lmxVD+#X?vc+n_(8k4s@-W|p1T9upJ8TEZ`-7&l*I zLOMARFcKd$rs%d5y|Q6&687sk#s2u46zlYm>YqtV5<*zj-jcDymvpMkA$IxN$?-}k z=xb-$YBF^!vCPl=(SxLPW2YZ|#=fkHUbvks_tb^ISE;34=J>~HCiajPa*BxN>~I|( z(j%(OaA8}No>6#}S``z7}P5U#8=BghXOTxmVr0Z-kK_7*( z+oUxV$z$+RjQ(}|2dKj%{E7XgZmM6}h)T>SHJ5Wz?x&B*QugOtR6zn`16^bNXq<$4 zU8RC%#2gG3g7lam3Pa8cCIp%vw+Sekf?&+IVSljgiTJY(Wdo!H9d z`OE~*AYa)8zCoXTVuv}4a1T5%5;A>9@snly+xF{hzB~Jqak-%2kOTT}0V7%xZ>q^x`rLo)D!lcNH(NkI>?wWcz2+{iu z5?c1t-4e$c5xKfL=UW^BB#(1Uzs$^v7FjTuk0FCMDoJKnI9Jhfx<6oK-D3pjp8)OZ zftpHFX<@*Zvuf;3QSA_EBSrf4k`*e`h`1!AKhOxz81`v|FAt3W8&cdI1AhK-2F4c9N7h@Rb!@U}1ZS(m-zWY&tf)c3sP);dUE zu+8%fU!eKI=vz>#y|d%=C@&WkY~a1?N1>$YPg^Jd%!XJM_SDztt51H~8L(mGK!zkU>R2C;d%T96Bz2)aX! zs20;bclh3L%$Dl}t>?HEE4O2&)my`Ga&n%ngw&5ZY^@8p=vwDW&t_~3|4ALF@_d$yc6T0|S^|3U-6XXxa&K93t>E@Wq-%$Lf%a)&Bfv z*GE=ooSJDAa@kc7PDiEWTs~WVx8G)G-_XvTpwCulb5$o_f{Ns z%Pku*sVajJCo(A&enLL^{cDc7^(HfzT)ey@xrzqMVM6ZDk0nBLf%Kp^hMTf~3=%Jv zqkN{dH{niVD_ zH4}SRfr5c%;pod!o`cK$5gr_gDIx3p*3;P*4o_RVT&q)rZkJx04UaKPus6u!0%{#a zDavM_%B`j8brroF#h2S!?d&XgWot0X$8?N3P zKm+%!8GN4ZOwv)l23xUI;<|#kzlPW$7LhBF-EFi`X%)JoNP}*DWUa5w}}u3ayh?~Q7r558kRn6;xS*CG416`qVDf%q#l$IbsBMpH4>8LpY>pPc>=(GW<6R!sd)#>-dV3C*COvm-3x^ELMv2~^tAAU`0F6SAHmv#)rQ|8 zsouW*oO+1lO*IrS(i1SU&<`!6W{X+z*x=0yj!gQn;D~W{zU_<6T~~Dr-a9>`QYw9` z*Y4?$XqDV+*XMqASHRqRdb+{i&QG>`6<;{A@k?Azsm;WKq=$;X$rmeOup}9a8t~~A z$Hw`;K8=Ff%8P)sPNo4V1(9<(xKz!%NE|a$Cut~ZYA7mQIbl}#r=+C7x_sb$WNB_O z`mWz;yxS0!ca@esE3|v;9XxZeb@u-D@`CXl9$x4%K{_5E@>dVD!B5SjqCOtQ(3qe% z@3%hv^RC!8aIwV)cYp=vdBayv1RrQ!36>H!-x~@gK?amseSa=ix^U|2@9$k*m9N|5 ztcHPH?LhHeT39gdZ?Q4DlOK8SW>mx{7LnZLmzyu@^HP=)^pfPN)$9XvczF1ZkTBYZ zf3c+VBZ6wgn))*FKVB$!=RXxpn{TBeIKNPuj1r@}8b|=6hC|@LJbnB%M;by%wOo|? zEgrYh%G5&`?B)KdTE3~pZuaFy!`QEylkAupx*<2qyEGe1A=l?aYW(?DJY>RUA%Dn@ zy{R%m034(AE8z2fVyDIY3Rv}c{f|{=ptg(-mZN&9^bgTCR9v2Sl&l}k3?uFoP{=Sr z)WpTbaKoOWzWVK8hzm1?N%Q7y1p=kcZq9@6_pWxKVPW=Bd~2LmQ3G;5vUP(S8;01N zV5U`Q=<1xW2ZOKNqJM9CvCMFvJ(KlcxW|H2T6AQOxa$$US*7cgJeK|A-TnT)R6IY*C99`CT|bgsD1)rnJQna(l$qcMd`xZca!yUy`Zi|D>|=%vX1a>G1`` zSsc|u7HcD?oxTD>F2NUxA3mH~1qF4o7EMkPuJbs+xU)&(U10M34u|InrZBn5y< zO-Vm6{0BFgATU9EFn_T$1cd=9FhT*jwfSe#zpn}PJN+q!ek0KT*M3H_Hh{*g5)6QU zW`|pyjK8?l0P+ipB2AL})p?0j()`x9{W7+a5EIPtjDEcF@zi+Dv`FUvN~SJ8sJy(@ z_j@ba2{bb7Lfh->VdV>sUz0`(MhAocB4!8`*jN`DrgaP>V`JHpHzgFs#dBn(%gg*5 zTU$Lnz`aBNbFVRMY-~hyw5YpA*sxK=qMWLb>9;O!#{aQxdD1Hc8mo4eWyU`kPnLM> zH^BeMfZ>+-cOlhk0Gcnq8nN&EYhr&k5dgZUHG`Iw{yy5J1wi+&v$VZWe}HEf)YMzR z5f(ej4if*Z!HT>qU_`6x?M>w0H%PJqC1qi%Oh19?-%{oOyOZnsBHZ6H!uCV^nCgF= zq3q{Zk(sGfQJupAk7f2>$;JW+m=I@!<^uaa6Gs021eDrzxc@#MivnAnGXkrgI{06C zuaOA2H*#}(K(A=ZVic%z_k*_$|M`?Z43I0fiCRos zog$7TSHSXmwL%eR@%aQH?8S2O z{V(NnYzB|1Kuxd%F}S252T9xrEjPGfM&!~YbaZbytMvPyS{u(!yLBg!eP+uSV%fD_ zK`&b>TVv|4giclsM+at_+@GC2B}~uGYI44EZGM{ci;6-Vkjp~E!_&U<^IdDkNMX#9 zdzB-RO>#P%DFK%6G3(hQ0kRbCosJHR;q7N?-0TYdT6E;&mC0MW6a`y0s|7-j^KFTb zRdffOHN``cZ5|i6oR#|B(G_^kdO=9Ko{=zdiP40MF@Z0~!`N7#B!&U5sfBo=Y)uiJ zUJv!Pr;BKu5&1+}Hqr75zx~#_-eZd~E9qM29Pc=bDeZdtm$41)I_&3rV@jX3W^!F7 zsR|*00H8nLuU;uE^Yu?i$oDi+uhQvz)J$L(x3sc~O#0=v`EoClx%2IF*snPTtF5x< zVY9tiE589Vkq0*kgLUmIGu5&=(YdVGhGsWPefvH4*JD<)_&-BWPnn{s%)V(yTQ9WD zWM}d^!H;5&Nr$S3g!Tb*_9Q2UE0r=1H9Ra>P^3ct%xg?aDA-~*5i14d{EPdYYMF1q zkv6Bn$(k=VXnbDwa!PJAcDmEc%`W_foy_!NJo*tD9zjOiq`=3)Tv9iAyfHUB#h8>SGJQ7k*jzA_mET|Z$NnwzF+#X&I=W8@OcMO>6dLey?O3N-0jEsm7u41T| zd9gkBMwsvo`Lef%{dR8!Vp2)zfRwKIZQ(T?e-08NIvk@;=zLtYx@9Ns^`#sxe zc}NIuWP4~o@OLG{l3!7AAeV+oX1mrB?ZHY(%E6&#rcKa#EqZRe*X}5Y7d|b zjGN?>B*TGUt~JOz%YQ-DYmB z4-UzJVy5W6_D>17COxY( zJ?Io0IsnCj3xNtsDw}=RD^Tr=jC8m{|Lj9_N4Q~_yLn>CE+BTZ`kL9a&8No1?!?cc zHf8uYi^-+){PC)ei4K!`EKs>o>!h>KbEYN}{}PrJRA%EfTzy zHrc5j3YBLWyM~>}pskll$-<(18!|Z(BAnY7z^!6`G$K~kIt}cD$MFR#NX^Y&2HjIG zX+7qfl2MJ}+z9Huv`!zR_{iE?T+F|0NOm}`AVp{#2wu z7{O9Fs@CO4k{{H6Fdd$+QGfUoUaaFWn926*$d%DU^3{CnuELqy&Nodaj~!Byfh<9< z2^v<3p#2odifOo?N4COE{)B&pY8G3DdCP2pVD`Chu$I<#wm{{&*qNes!oq-&b79 zQgW*8l%}8ad?1Cyp0pZ1mQjfd=ss)teAVZ)4%n$!irnr5Y6%ijQk^ZEAGvrPx93)w zkWtC>zSfg(7Qa7!-KOoH9l!*#$*b^I1WR$V~(X$bi~`@QtO+Whs}4B7UI@h=3B+Y^n?klUCf=# zH{0YZeOJ5A{TCzT7dNv}rnH{$Kh@7P8pZcVhO*vx4lYL@itxAjXv zuyKW-qC~+U*v)`!l7np*Dk(5E28}|Sb5>n{^m1z3cR#}ePHHU}WJJV}loZQ51%|Yc zw?r{OphxkDFBjDCtqHb`E}T6tAob5lQg=Ew!$EL1#Bd{32~u=0OBAv_>^Ng z`;}k_ex}0MDbojpgoK2fOyC_L?dks|yPe_4NAewRs4(xhmvvGj^P!OEK#3fk;1S$T zEH(itMJ4T%_dRD@XCfOpjCYe$@j#{|$l~`7n*XeUeojx5j91UeJM&P=tW|$R_L(1S zufVm4bxr>T>7v%Q{&fo+FtW5?%mzJFwxx7T_jEd^Yh#v>faP9 zu#w+HlhqUku?S$+bSt1-+;eR9=)ut@$J43rgLEdx8myyszUrOW+5|PFwz|{v@$*AZ z%vI^Zua#L9knmuRlFi+|I9a-k{46^pgH59Gh?a3<-_a&V@c5O$u?c zaFs6J1YPnDp>%89h5@k52Q5;?4q=Q-JU;w~o8tk-^jWgSD;}3laex+Q%5kF%3W1{J zmh}#ZNS;?KUn23*+ZL!+4z5^q7H+S?i}bbZWcy`V2TDE1=98^ww)mH_<4GqgHcxdb z(AOtfHQyzD+G%QSjRe;gDRd#e&~DnDZ{%f$Cf;9}S0RgBQPjDN82G#%o8%qc~f$Uw?A<_rmE$I7_%Q?>+ zb=69woj=(qnBz6L^CpukS3yxpSLGvv@VJh^rrGh_QM&zYm)^uez#5wkMe=ol^TRCS zx6kFMTrH^3_E}7(S@Xr0hx^8#2y$_+0{Pw5A*oSd7A&or zr}QFo0hPg*mzl`D<@PGi&-o!&SmOb-vo=_q*oAn{>iyA3`}9EqKUPyIcSZ9`SLfEk zt{(8Yoyfx#y$~~?RpW=aUIVatKj@X_Cr@1B(tBi_aPS?xk$oq_nX&$qM0|GZVtGyu29HkVc%1D&O&_@q` zeE$_NPLD4r{lhm!@6r z26duFywc@$lt$#2dOK-! zlUlRgww2wIkB>HEZ{Z!oE=hy)0mos30I3xrxfm~8_=wEYZ&Gf@wxk1CIebDMI7Go1X=j5H++8&$#$mNZ|V1z@JaB!$` zzuOet7-6=a7Tu6&_3S6j;B%!Ca@uMVFg|A4KoEPD_j&ELw`@~{3HrLS4oa;Fh!|0{ zt{9L@FIiD3kZ<>SlEzO+o>vmsmr-1p58LJ|(lOnL?<}3KFLH|MAgLuQJf})BGBemp za0>JBkUPYcMIQBw=T2gZkIgl3n9{n=)aGP*3iP-En8L|6RbF|pCc)}4qISHOQR??=b zC`w)Zu!H5kn7ePQkUgz`@ffF3f0W0|t>+8aKjlKfy&>hc*I0h(;qgAI7Rrt#O zgYJRV{#b5>mL&?*ZjgvDjWoZu{q-UI3*}xK%B=g=EM~gP1f{8Qja1zzRQ+f0!lYkzu!c zhRhL(A9h&!EDHHWBt@@hEo>aJ&EcuEyC1DqQHr;fI)X=xBV}B<@I%HEObj}LWQ*%< z6gDqLhZtzLNBX%T++_$qK-!l1{agZ|dX=OX%#F8C^*v%4;TP%6B6*@fX-Yp^AP#E?3)*E?fYCgbs{N0nclmM9MIWH3ZQ>e4>~MrIdY+xB+`Ta^g|2#H6@tXCY*^ zJ0{7%pUnrs=zOUc{q^%ap{L|!ahGG#%ydMps|%S~Xv-L1pa5B~(=*Os9{pYPD!3qF z6meTv0AdS|nA}Dv3B-R-XDF5Q^B)zDTF5UzbBclA%}wF4{g?XV)!?3hGXR(+ zCXL8HVaK26l3JmQaTXD{oQpE&?{z)oFp(##F=WO7 z-&+J-e9pmS35JnT-b{aisThyt$4zX(sDlDsAJ(Ez{T1oY2PZz3bE=24#GV;Q07$P=#;xtzs2T}{z>KE_whd1si?-JTQ-Ug*gZW>&Tat8 zrhpw%v(_`;stQ7wY%;>{Wk#mS=ZGbX&l5I9HnlIh8J`>6Cp3hPp9)F*(%@Yy)S>>R znpm*v>oyHM5&b=4PBr&z#va`~KDXn>a6;&TYE;2}It4UFu&6!b13!M-x#kN)M?vKW zVT10HxCiF*GQFWv$ZvhV zkl~v_EV$C<%ykhL_<#y7I*Lp}*V3(#ji>4Tz4LcLDF?m^uF5rI(##zal;oW}$7?r# zu6=NeB5$1Dv+}fH9fPCM+PNs5!fY5%{n7b3{v%GXS{S_W>0OkC>)rP$&bRGPiFCS{ zfYSV7>j8GT%?G2=PIt~Lt*P*#_v-)NQ11V#-5rw#BpQ?-9u+BKEn8==RivSq@lA$U z4vxn0gB#-#dh}|)GB{Nsqeyla!e?DU3AEpqgU-t(Uh?5GeF^sFg>{UlG~MmM(dG|B zRv!8x4FyE@h2?G*6M|QTW&k~$%8OUKsdc`0X%sFPyc|2zD+RR*M!^pE`reCziV}HR z%r$|;5=m*wmzSk4)R*~0S4xMJj`yeE$AHVfj-=SydgD+9$(9`VRRaHgHDrHK*lL2LJTlZ=l)#+29x^a&XL z2oYT^uo|5?c?90_$3u@&ob&U%MUolRs4C61rakiMpUcs=6Kp zPkyc!s)sc;6-vXI>YxXFuM~NF=yG&vNe-Y@dkTs1-t&z#`n4CuoaM`W zghN(`kv-AD40de6aYiQ&FKx`7#O~O^&1(0^{-zd1i-~m(nXBGV*qrG*5EbwAhqsi( zgDTesw&oskUzaA#lFU3G6*-HFK$p6o@fvW{<-7C&pgwEh=GW z1aYTJB&C=$Hn6S@MR-igF~q+uC>ee;@HBY5Fik0O!erRC)GSv4UM)NZKHuR_hbIb@Ll3GrdZWj8X+*#azoCm?3-f z?(SaP`SuLzX9VQI%He37kWAi7Hhly80whaYv|n`nmHmsc=HB^S*j*R0@ak0l>Ffc- z`*H=q1zoH3yltg!^2`#>+%!^({N5LYtZu9Rk@@sKwn~uPth@-_b+=UyT=x6*?_>#6 z@tNv896(fuY{4*lVO`Ef~2NHxmh!xg8V zd}Z2so|ZzoaO8?Oa!ZR&>CYE~x^JI4un9Y(yT*zP&6Rs$x>0KO8gEf4>KN&Rre`Eb zH16lTza45JX)Y54=XhT7K)z1adn2Z#FkBD@FEZ3W78c{49zW)&{U;lIezix8^%GoW z12oH6aobtp;mx41lH(QLZVXOY5AAFOk$ck`4TkTU>+)uw<}Z3Ya*tqM285RJC%-(s zOW;iuLSm%kLvW8lv3lyS{6IqqHIokeRwMpA0A3op$M#VCa@0z#_0Y`jgc!1LVBjkT zeLJ5wK0&5pp{HCTohqj0SCf9<7yjNaF0`_QtLlj9#BRrJu(0ldx}A2MEgfG3>rkIO zt}mINR~nc0&XcJO0CsnL<)MetO~88TD`umeUZW_h_+083FHDEcqHN+)=LsX9?|t7M z&y*1auG?T`doGBo+OuC6svSYL#t@xK16v=w@S*PJp-Nk&?g$;Pz#nna+tAD`g~11_ zTp9?a#qM?;RxVF0=2PX*f_U6HjQiSf&oLsW6kNDw$55NIKNUBKwhhc^p&&9()EkA7 zbiA-X3CcfFLSf#i6qe>dzPq?46s|h1PJ0K?xk$Iy514?2-eT|K5(=~vH5r_p!Hagp zbfx|nJbQ?y5BnsWx_7>lO^?$mj+G+&nZ*f(uf1)WI4|FLqSi?!q5GR|o%l2!22Qx1 zt}jbV$3JxU`&H;SMv^a;;wg=y{vlDFy)pDl5v9GoJrh-CUNUUP&Y8c-?HGYTvF0P~ zS>ux|!KljK3}{Jf=Yv^wkOxri9zHu2jUVXht}t0olbx*qV9anKZ^5&b+44vgzG$5AJg-Red~MD#3iR@v|Oa6jHHG0slNf`@NheVkF^F$&FZ_`B3=ozzs^ml2 zgwQi{QE7P|Wv)i$)YQdVjYprBJucppalz6if0OH4T!cz$ZH3uk)TO+~!AB1g^5*@O zp>Tx<4ontwL0_A!ZPX6^7#5?jXSuPlAM6o17Y6>VrvQcT=E+7rWxiw$>ZTpgxWMH0 zMLMHUbfg$4PzT;Ty+M>{hEGE4e|%g}ka2a!ydfZjbqOU zgzD+VqE*uco2 z0D3^aOw99v(>u5gfU1vpL5GJ1JMIGXEj0VM)N+eM)C}EN0ci`{%w-$7)yBpK^*vvc z9TpUHJFE7~kNljxLd36aTj#^{bV6>nYfN}meKhfvDmps&070EaTviVhHS0awcpC=? zG(pO9*MbqdA+EU0t~B7ti5+rPtqymF@hpKX;%puFOfFY!D>XWFj{@?}+a|7Z-R7b4 z3(gXRbS3DSppuJNN;?7ethp-vjsA-wqh>~h)yJXj1c|5CcbJ$V&uT{fatEH$YuYiu z_7i9p{1IRT(`i~C$cXD{O$K96A~u#++%ztC`JsXb_xQvIX5ZL5IlLS7T~oX94}1#U zrVB=0!P0pbN>1K4YXDhvRd+$zI*qh^3p)c~C6_R^B+$#>NZK{+K{PQ_M55h_hMjQ)=?s{b;ER@6w8+q?iPtIuRd2O6A^|-znZb@%fb<;+ z7H8q&ozLsgXkmbsp5Yuj&GmkFdR;$mC6;G78<2Dmy7}bg#$@_)XiM61wtOUNM!2a_=64Q3;+=kB_sJwXu0e+YwrIwtRI+ zJ%`x#R$ok3woXVTxY8-B4LX)pouSR+N!l8IqW*0P$kefHVLxH8+Hs#RiqvF-kW=%A z*@3qx)V;I%UGeabyluR=;ThG(Ft?)|#|{N~N2i+)HJgQ}m%}1$-uVxyUvwFDMGmZX z=rqqxp9!uI@^b@5<{v1yf3g(3rJun#r;m_jNVVU+mJ8esY&+&4XxWHl?8GG6Z~3CU z`VZyqvzgs!x6<`#I3IC8Pj#yXSIG1v4vi2)%RflflI-4a=y?0n_7m;Pav{s&dseQc8Y*}9l}1hNl-u1zLO-$FbX+lP={vzmNE+UH%o#~PsQ$Y$4qKK&fZeQE-X(Bgao!+8@EYWl+^ zw=kiZm0}M=Eva<+)ylW5tkP|2>NqKni+c>7r^W)JEpx-&pQwFR&F9pfH7Pgl|cJLge+eo8)|;D&d?T<@2k<%wcm1dnoto&3wv zl>REYQ8li!T#|b9I(tk7RQ9@C?T6-z`xzOwyUON!EfvB=jf?NcYo|-m^gJGt9m1xg z>a+GXIbO~e12aQu?Am$q`va?-E1rm=fSQWojk7<;**&^I+{sL(+t7CFGmyv(=lXeM z^a1g(#0QQd66KE1!_#yY8^%W9&gDTIfBwcT&q?pu^ky|su|k~wY_fs=R}Ev_7&0Jz zL3+W!oW+y6&8O&X+OD1smX{d2G_(T(&gMnpb!0wAg}5U3$BSUEyN@|tStW5pM5U&g zVDk$xpTqWB_`6y&;o&wycS7uNo58FNIYo3DjNt%rRi|*L=e@nupPZ1VH+Ly}4^fO@ z?`5{=9B$_;#GNMqLQ%Uwjlq~pi{bZF9)6JRdO{zRjNS`;1lggP@Z(O%Y%`^S(gfUa z+S+R)t;t~Jv$;s0DSnM^;n4Vo4#p4?`}+6ba@M!40y3rXZy7p`M(-D> z{y>|{5B>bZ^ZKQYbpvEn-SKgTO*`FisJXCQ?|9t2doRzf1l93jsh5Gs`FSp2@74LF zDJ{rm7bw2w!}xp$^fqoWDk|EgvlfBzk?G5JM)f~zWiojdi)SiBx8L98I?fzyW?#O~ zo`2&nty-Gz=KC~Db)@UED1f$@Nl^wt50?-upM{DBYQEU&y`^?SgJmlLOG?7Bn2wOq zWw*HA0eOv-l=K5H{&up32vkyfIxi-jHe-vó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 T6A;z&1o#0 Date: Wed, 8 Oct 2025 14:15:12 +0800 Subject: [PATCH 2/9] Update credits.md --- docs/credits.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/credits.md b/docs/credits.md index 61f6750b..ba436866 100644 --- a/docs/credits.md +++ b/docs/credits.md @@ -2,11 +2,11 @@ ## 主要贡献者 {#team} -项目主策划:[RiessarSadyx](https://github.com/RiessarSadyx) +项目主策划:[Riessarius](https://github.com/Riessarius) 各章主要作者: -- 第一章:[RiessarSadyx](https://github.com/RiessarSadyx) +- 第一章:[Riessarius](https://github.com/Riessarius) - 第二章:[LamWS](https://github.com/LamWS) - 第三章:[zeyugao](https://github.com/zeyugao) - 第四章:[psi-cmd](https://github.com/psi-cmd) From ae580a6048ab40bd91145c5045b643c807bc3a53 Mon Sep 17 00:00:00 2001 From: xiao-h Date: Wed, 8 Oct 2025 14:21:48 +0800 Subject: [PATCH 3/9] Fix prettier lint error --- docs/Appendix/wsl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index 67c18642..760bc1ad 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -104,4 +104,3 @@ WSL 2 由于相当于是通过网络的方式访问 `/mnt/` 下的文件,导 可以通过将文件放在 `/` 下(不包括 `/mnt/`),来提高性能。 相关的 Issue 和评论:[microsoft/WSL#4197](https://github.com/microsoft/WSL/issues/4197#issuecomment-604592340) - From ddf14f7e1620ef259b47e81d82ea8c4e8164bfc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8FH?= Date: Wed, 8 Oct 2025 14:32:13 +0800 Subject: [PATCH 4/9] Update docs/Ch01/index.md Co-authored-by: taoky --- docs/Ch01/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Ch01/index.md b/docs/Ch01/index.md index ce17c0f6..9affcfdb 100644 --- a/docs/Ch01/index.md +++ b/docs/Ch01/index.md @@ -215,7 +215,7 @@ Android TV 图标 !!! info "WSL" - 如今,对于 Windows 用户来说,使用 WSL 安装 Linux 或许会是更加便捷的方法,详情可以参考[附录](../Appendix/wsl.md) + 如今,对于 Windows 用户来说,使用 WSL 安装 Linux 或许会是更加便捷的方法,详情可以参考[附录](../Appendix/wsl.md)。 ### 获取虚拟机管理软件 {#get-vm-softwares} From 0361c4691552a53e19d5209fb732f475c2a6a611 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8FH?= Date: Wed, 8 Oct 2025 14:33:04 +0800 Subject: [PATCH 5/9] Update docs/Appendix/wsl.md Co-authored-by: taoky --- docs/Appendix/wsl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index 760bc1ad..402d2bb9 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -60,7 +60,7 @@ wsl --set-default-version 2 ### 从微软商店下载 {#install-distro-msstore} -在微软商店中直接搜索对应的发行版进行安装即可。这种方法仅支持一部分发型版,如 Ubuntu 和 Debian 等。 +在微软商店中直接搜索对应的发行版进行安装即可。这种方法仅支持一部分发行版,如 Ubuntu 和 Debian 等。 ![Microsoft Store Search Result](./images/ms-store-search-linux.png) From cc0d0ecab2740b561f47d54b74a697ab3ec73da1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8FH?= Date: Wed, 8 Oct 2025 14:33:21 +0800 Subject: [PATCH 6/9] Update docs/Appendix/wsl.md Co-authored-by: taoky --- docs/Appendix/wsl.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index 402d2bb9..c5b8a570 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -75,9 +75,7 @@ wsl --set-default-version 2 ### VS Code {#vscode-remote-wsl} -在 VS Code 中安装插件 "WSL" 后,可以像 "Remote - SSH" 一样使用 WSL - -(或者也可以直接安装 "Remote Development" 插件,里面包含了 "WSL" 插件) +在 VS Code 中安装插件 "WSL" 后,可以像 "Remote - SSH" 一样使用 WSL,或者也可以直接安装 "Remote Development" 插件,里面包含了 "WSL" 插件。 ![VS Code Store "WSL"](./images/vscode-store-remote-wsl.png) From c56e3f4e8fa12adf86c57ec8a88dcca30f702fdc Mon Sep 17 00:00:00 2001 From: taoky Date: Wed, 8 Oct 2025 14:48:33 +0800 Subject: [PATCH 7/9] wsl: Style update --- docs/Appendix/wsl.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index c5b8a570..8cd223f6 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -1,6 +1,6 @@ # Windows Subsystem for Linux -!!! Warning "本文仍在编辑中,尚未校对、审阅和和修订" +!!! Warning "本文仍在编辑中,尚未校对、审阅和修订" !!! abstract "导言" @@ -29,11 +29,11 @@ wsl --install ### 手动安装 {#install-manual} -如果系统版本在 Windows 10 Build 19041 以下,如 Windows 10 LTSC 2019 ,需要手动配置系统。 +如果系统版本在 Windows 10 Build 19041 以下,如 Windows 10 LTSC 2019,需要手动配置系统。 #### 启用 WSL 和虚拟化平台 {#enable-windows-features} -使用管理员身份在 Powershell 中运行 +使用管理员身份在 Powershell 中运行: ```batch Dism.exe /Online /Enable-feature /Featurename:Microsoft-Windows-Subsystem-Linux /All /NoRestart @@ -42,11 +42,10 @@ Dism.exe /Online /Enable-feature /Featurename:VirtualMachinePlatform /All /NoRes #### 安装 Linux 内核 {#install-linux-kernel} -从微软下载 Linux 内核用于 Windows 的更新,并安装 +从微软下载 Linux 内核用于 Windows 的更新,并根据机器架构选择安装: -[x64 内核](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi) - -[ARM64 内核](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_arm64.msi) +- [x64 内核](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)(绝大部分电脑) +- [ARM64 内核](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_arm64.msi)(使用高通等品牌 CPU 的电脑) #### 设置 WSL 2 为默认的 WSL 版本 {#set-default-wsl-version} @@ -66,7 +65,7 @@ wsl --set-default-version 2 ### 使用 Appx 文件进行安装 {#install-distro-appx} -有的打包为 Appx 的分发方式,也有提供了可执行应用程序来进行安装,在仓库里面提供了安装方式 +有的打包为 Appx 的分发方式,也有提供了可执行应用程序来进行安装,在仓库里面提供了安装方式: - Manjaro: [ManjaroWSL2](https://github.com/sileshn/ManjaroWSL2) - Gentoo: [GentooWSL2](https://github.com/imaandrew/GentooWSL2) From fa8f23e2ded056c023fd6d476ae6418a11c4fe5d Mon Sep 17 00:00:00 2001 From: xiao-h Date: Wed, 8 Oct 2025 14:57:19 +0800 Subject: [PATCH 8/9] Update docs/Appendix/wsl.md --- docs/Appendix/wsl.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index 8cd223f6..b2c7d716 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -63,12 +63,17 @@ wsl --set-default-version 2 ![Microsoft Store Search Result](./images/ms-store-search-linux.png) -### 使用 Appx 文件进行安装 {#install-distro-appx} +图 1. Microsoft Store 搜素结果 +{: .caption } -有的打包为 Appx 的分发方式,也有提供了可执行应用程序来进行安装,在仓库里面提供了安装方式: +### 手动安装 {#install-distro-manual} + +有些发行版并未上架微软商店,但也有办法安装,比如可以参考下面这两个项目: - Manjaro: [ManjaroWSL2](https://github.com/sileshn/ManjaroWSL2) -- Gentoo: [GentooWSL2](https://github.com/imaandrew/GentooWSL2) +- Gentoo: [GentooWSL2](https://github.com/VPraharsha03/GentooWSL2) + +但需要注意,这种安装方式并非发行版官方支持。 ## 使用 {#usage} @@ -78,6 +83,9 @@ wsl --set-default-version 2 ![VS Code Store "WSL"](./images/vscode-store-remote-wsl.png) +图 2. Visual Studio Code 搜索 "WSL" +{: .caption } + ### JetBrains {#jetbrains-remote-wsl} 包括 IntelliJ IDEA、PyCharm、WebStorm 等,都有对 WSL 的支持。在打开了 WSL 下的目录后, From f0955c2b4639e5dd3309ae4d06be4657cf48a9c0 Mon Sep 17 00:00:00 2001 From: taoky Date: Wed, 8 Oct 2025 19:05:46 +0800 Subject: [PATCH 9/9] wsl: Fix typo --- docs/Appendix/wsl.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/Appendix/wsl.md b/docs/Appendix/wsl.md index b2c7d716..a25b39d3 100644 --- a/docs/Appendix/wsl.md +++ b/docs/Appendix/wsl.md @@ -99,8 +99,7 @@ wsl --set-default-version 2 ### 运行 32 位应用程序 {#32-bit-exe} -由于实现原理,WSL 1 并不支持运行 32 位应用程序。WSL 2 由于是完整的 Linux 内核,可以在安装了对应的 -运行时后可以运行 32 位应用程序。 +由于实现原理,WSL 1 并不支持运行 32 位应用程序。WSL 2 由于是完整的 Linux 内核,在安装了对应的运行时后可以运行 32 位应用程序。 ### WSL 下 `/mnt/` 性能问题 {#mnt-performance}