diff --git a/handbook/computing/wsllaptop.html b/handbook/computing/wsllaptop.html index d16c0a30d..6fc5f0bb0 100644 --- a/handbook/computing/wsllaptop.html +++ b/handbook/computing/wsllaptop.html @@ -21,7 +21,7 @@ <a href="winlaptop.html">Setting up a Windows machine for expo bulk data rearrangements</a> </p> On 23 November 2022 a new way of installing and using WSL was announced, see <a href="https://www.theregister.com/2022/11/23/wsl_microsoft_store_default_version/"> -Windows Subsystem for Linux now packaged as a Microsoft Store app</a> so some of the documentation on this expo site needs to be revised. WSL2 is now noticeably even slower for NTFS files. +Windows Subsystem for Linux now packaged as a Microsoft Store app</a> so some of the documentation on this expo site needs to be revised. <a href="https://learn.microsoft.com/en-us/windows/wsl/compare-versions?source=recommendations">WSL2 is now noticeably even slower</a> for NTFS files. <h3>WSL1 and WSL2</h3> <p>WSL now installs as WSL2 by default, but older machines (mostly laptops) may not have the Hyper-V Virtualization hardware and may have to run WSL1. This is fine: the behaviour is nearly identical so far as an expo laptop is concerned, where you just want to use rsync and scp. An old 2011-era PC has @@ -31,7 +31,9 @@ been doing troggle development happily using WSL1. the Linux bash terminal window. However, if all you want to use it for is rsync, this may still be fine. <h3>WSL2 - things to watch for</h3> -<p>On some Windows 10 laptops WSL1 fails to install properly and you have to use WSL2. +<p>On some Windows 10 laptops WSL1 fails to install properly and +<a href="https://learn.microsoft.com/en-us/windows/wsl/compare-versions?source=recommendations">you have to use WSL2</a>. +<p>You should <a href="https://learn.microsoft.com/en-us/windows/wsl/wsl-config#wslconf">check that the configuration files</a> do what you want. <p>When running a full troggle development laptop (see separate <a href="../troggle/troglaptop.html">troggle documentation</a>) you will want to use <var>python venv</var>. This barfs untidily if you have the code on NTFS, e.g. if mounted on <var>/mnt/c/</var>. You almost certainly have to move all your code to the internal network share e.g. <var>\\wsl$\Ubuntu\home\expo\troggle\</var> which @@ -48,7 +50,8 @@ running remotely in the ※Windows data maintenance laptop page. <h3>WSL1 gotchas and tips</h3> -<p>WSL using files on NTFS unfortunately introduces a wonderful new problem of file permissions. Every file on the Windows filesystem NTFS has a set of +<p><a href="https://linuxnightly.com/mount-and-access-hard-drives-in-windows-subsystem-for-linux-wsl/">WSL using files on NTFS</a> + unfortunately introduces a wonderful new problem of file permissions. Every file on the Windows filesystem NTFS has a set of permissions managed by the filesystem. Every NTFS file that WSL knows about (if mounted with -o metadata) acquires a completely parallel set of file permissions that are fundamentally different things and are never in sync in any sense. <a href="https://devblogs.microsoft.com/commandline/chmod-chown-wsl-improvements/">All sorts of fun</a> results. The alternative is to store all your data