Microsoft is a new company, compared to the Evil Empire we all knew in the late 90’s that was fighting to eliminate competition. But have they changed or is their approach different, but with the same playbook?
We have VScode, an excellent code editor with some really handy integrations, I switched to it from Eclipse when I started to write JavaScript. We have WSL, a Linux like layer on Windows 10 and later. We have WSL 2, a legitimate Linux kernel running under a hypervisor, perhaps next to Windows on the stack. Now we have WSLg, the ability to run X11 applications inside WSL 2, and in preview we have WSA, Windows Subsystem for Android. WSA builds on the work done for WSL 2, and presumably WSLg.
All of these technologies seek to extend and embrace Linux, Microsoft’s once most hated competing technology. Microsoft’s Azure can’t exist without Linux, otherwise they turn away a great deal of market share. It is often said that the Internet runs on Linux, and I agree that is largely true.
So when is Linux not Linux? I’ve been struggling with this idea, this notion, since I started a new employer that has a binary choice of employee operating systems. I am neither a fan of Mac, nor a fan of Windows. In fact I turned my back on Windows and never ran Windows 95, I switched to Linux on the desktop before that was available.
Today I have the choice of installing and running any Linux application on WSL 2, even X11 based applications. If I’m running Windows as the host operating system, why would I want to install Firefox for Linux? What about VScode for Linux? The question becomes: what is the purpose of WSLg when much of what I used is available as a native application for Windows?
Let me finally detail my difficulty. I purchased a Surface Pro tablet for a specific use, I wanted a tablet for teaching purposes on Sunday and I wanted more control over my hardware/environment than Android offered. Specifically, all of the Android tablet vendors lock down your Android device and do not give you root (Administrator) access to your own hardware. With a Windows tablet I have Administrator access and, theoretically, control over the hardware.
I purchased a Surface Book 3 (15″) to use as a smaller laptop for streaming purposes because it has a discrete GPU. I looked at this device not as a tablet, but as a laptop, and as a laptop I intended to dual boot it. Now I’m questioning that very notion in light of WSL 2 and WSLg. Why am I questioning that notion?
The introduction of Windows 11 was greeted with much controversy due to the hardware compatibility requirements. My Surface Book 3 shipped with Windows 10, but upgrades to Windows 11 shortly after the recovery install. Windows 11 requires Secure Boot (not a problem for Linux, since there are signed EFI shims), TPM, and it automatically enables Device Encryption. I installed Windows on the SB3 and shrunk the partition to make space for Linux, rebooted and made certain that “Device Encryption” still appeared in Settings and that Bitlocker didn’t throw any errors. I then installed Linux on the empty space, it added an EFI bootloader and set that bootloader to default. Next I booted into Windows and it freaked out and wanted me to enter the Bitlocker recovery key. I did not change the Secure Boot mode or make ANY changes to Windows, but Windows was triggered by the mere presence of Linux.
Heap on top of this that the SB3 is a backwards device and the KEYBOARD doesn’t work during Linux encryption passphrase prompt, and you have a laptop that is outright HOSTILE to the end user and will not allow the Linux OS to encrypt your data. While it’s possible to upgrade to kernel 5.15 and get most of the hardware features working, there is a point where you ask yourself “is this really worth it, is this device worth the trouble I am going through?”. I am coming to the conclusion that the SB3 is not a Linux friendly device and if I want Linux friendly, I’ll have to resort to WSL 2 and WSLg. But then what would I run that needs those capabilities? On native Linux I run XFCE, but Windows fulfills that role with WSLg, so I am excluded from running XFCE as my chosen desktop environment.
I have a renewed appreciation for my 8 year old MSI gaming laptop. All of the hardware is supported, it has screws to access the inside, I can upgrade components, and I can replace the battery. With the power brick it weighs twice what the SB3 does, and it has a slower CPU, GPU, and storage. However, it has a full sized keyboard, an optical drive, and it runs Linux VERY well. In fact, Windows is my secondary operating system on that machine, because Linux works so well. Even GPU switching works on Linux.
While the SB3 is faster, lighter, slimmer, and runs for longer on the battery, I think that Microsoft devices have reached a point where a died-in-the-wool Linux user doesn’t feel welcomed. When the need I purchased the SB3 for is fulfilled, unless I have some great change of heart, I think I will be finding a new owner to appreciate a 15″ Windows-only tablet with an upgraded high-performance 1TB SSD.
Update: I have owned the SB3 for around 9 months now and use it somewhat regularly for tasks like video conferencing and other mundane Windows uses. I have come to appreciate the larger screen and thinner footprint than my MSI laptop, I even went to the trouble of installing Linux properly, based on the instructions Microsoft published in their Linux Surface Github repo. I can say the Fedora 36 KDE spin works absolutely fabulously on this device. After getting the necessary kernel modules installed I was able to bootstrap the install and get disk encryption working at boot — It wasn’t easy, but possible.
I still find the keyboard to be lacking when compared to my MSI, a desktop, or even my 15yo Fujitsu. There are couple of annoying things that pop up because this is a Secure Microsoft Device:
- Bitlocker encryption prevents access to the Windows partition from Linux
- When you update the Linux packages and it updates anything related to GRUB, you get the bitlocker recovery prompt when Windows starts. The computer is so paranoid that when you re-register the bootloader it wants you to re-authenticate.
While KDE works very well out of the box, it’s not as polished on this device, lacking GPU integration and high precision touchpad drivers.
I still have this device because it was like a boomerang: I sold it on eBay and due to SB3 related glitchiness/stability I was forced to refund the purchaser. I guess that’s fine, it was like I was writing a $300 check and burning it just to sell it at going market rate.