Does anyone know what the difference is between installing this custom kernel and merely replacing the WiFi's firmware as outlined here[0]? More generally, what features does the custom kernel add? (I've searched their wiki but the feature matrix they present there doesn't really say what features they added.)
[UPDATE]: Never mind, the repo's `patches` directory[1] answers my question.
This seems to be a compatibility list of Surface devices with a special kernel made by someone. I don't see how it is related to what is in the Ubuntu repos?
If anything, the exsitence of this kernel seems to be an indication that the major distributions do not cope well with the Surface and do not work out of the box.
They don't and I would not advise you to. I had Archlinux installed on Surface Book 2 and was dual booting for some time but the Linux experience was pretty bad. Camera is not working and never will. Touchscreen works as an alternative to mouse pointer, no multi-touch. You can't detach it. Battery life is worse and you can't use GPU and integrated card in parallel (it's an ever-present Linux issue for all laptops with two GPU cards). On top of that when you have Linux and 4k screen Surface integrated GPU card starts to suffocate and you notice a lag when programming in some IDE. It's just not worth the effort. Just use WLS with VS Code.
Wifi should work out of the box.