Pop! OS on a Surface Pro 6

Initial Installation, custom kernel, & Cameras

Jeremy Cheng


If you are looking for a review on this setup instead of the setup details, check out my previous post instead:

Here are roughly the steps to get Pop! OS, the custom Surface kernel, and camera setup to the point where the rest can be setup pretty easily without special instructions (ie. themes, extensions, programs listed above in my setup):

  1. Press and hold the volume-up button on your Surface and at the same time, press and release the power button.
  2. When you see the Surface logo, release the volume-up button.
    The UEFI menu will display within a few seconds.
  3. Find the “Secure Boot” setting and disable it
  4. The kernel on the Pop! OS installer doesn’t support touch. At the same time, the Surface Pro 6 only has 1x USB-A port and I got mine without a keyboard. I also don’t know if the factory keyboard would work with any of the Linux installers so I used a USB hub to allow for plugging in the installer USB memory stick and a pair of 2.4Ghz wireless keyboard/mouse at the same time.
  5. Boot Surface via USB memory stick with Pop! OS installer
  6. Run the installer as you would normally on any computer
  7. Install the custom kernel — Below steps are from here:
$ wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
| gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg

$ echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \
| sudo tee /etc/apt/sources.list.d/linux-surface.list

$ sudo apt update

$ sudo apt install linux-image-surface linux-headers-surface libwacom-surface iptsd

8. Install secureboot key:

$ sudo apt install linux-surface-secureboot-mok

$ sudo update-grub

Note: If you are using LUKS encryption like me, this will be a little trickier to get working and