Warung.☕

Linux on Surface Pro limitation and gotchas

2021/08/04

Camera support

camera support is currently under active development from the community under linux-surface team with no public release yet. As of now ( July 2021 ), partial front camera support is only available on most of surface devices and only available on libcamera module. The module itself hasn't been supported on any browsers and chromium browser need to recompile with inegrated patch.

Further updates about this feature can be tracked on their github wiki

Secure Boot

If you are not using ubuntu or Fedora as a default distro, you might find a problem to enable secure boot on Linux since they often reside to use rEFInd or similar instead. Duck and Google is your friend. I also discuss it in my previous note to enable it on Pop!OS.

Clipboard

Some IDEs like KDE will probably ship it with clipboard history by default, while some like GNOMME requires an extension that can be downloaded from their site.

No H.265/HEVC support for Parsec

Parsec is one of many appliation that offers low-latency decent-quality remote desktop that can be used to offload some heavy lifting into a server or used as a remote gaming instead.

As for now, It only supports H.264 decoder on linux. It might not seem such a big deal for nVidia users, but AMD gpus are notoriously known for its broken H264 encoder and will probably never gonna be fixed, with their H265 encoder offers significant QOL changes.

This feature has been requested for years and still no updates about this.

If you aren't using it for remote gaming then it'll be fine, I guess. I've tried using it for half a day and the driver didn't seem to crash or something. Otherwise, either run Parsec on Windows or use Sunshine on the host server and moonlight on your device.

Remote Desktop

Use Remmina.

MS Office

I haven't tried running it under Wine compactibility, but any other Office alternatives break my page format so far.

Firefox: Hardware Video Decoding

Check if the driver is installed properly

$ vainfo

Set flags in about:config

media.ffmpeg.vaapi.enabled = true
media.ffvpx.enabled        = false
gfx.x11-egl.force-enabled  = true
gfx.x11-egl.force-disabled = false