Links and Associated Projects - linux-surface/linux-surface GitHub Wiki
Chat
We use the #linux-surface:matrix.org Matrix space for chatting and discussions. Specifically the following two rooms, if you want to join directly:
- Support channel (get help getting things working): #linux-surface-support:matrix.org.
- Development channel (general discussion): #linux-surface-development:matrix.org.
Support for other Distributions
This repository is mainly focused on Debian, Arch and Fedora. Additional support for other distributions is provided by the following projects:
- https://github.com/hpfr/system/blob/2e5b3b967b0436203d7add6adbd6b6f55e87cf3c/hosts/linux-surface.nix NixOS overlay configuration
- https://github.com/mexisme/nixos-hardware/tree/master/microsoft/surface Preliminary nixos-hardware support.
Tools and Utilities
Please refer to the utilities and packages page for more information.
- https://github.com/linux-surface/iptsd: IPTS user-space daemon. Responsible for processing raw touch input into a format that can be understood and handled by the kernel.
- https://github.com/linux-surface/surface-control:
The
surfacecommand-line tool for various purposes, such as controlling the performance mode. - https://github.com/linux-surface/surface-dtx-daemon: Detachment system (DTX) daemon for the Surface Book 2. This allows you to run scripts (e.g. for unmounting USB devices) before the clipboard can be detached from the base of the Surface Book 2 and 3. Also speeds up the detachment process as it, without this daemon, will wait for a time-out.
- https://github.com/qzed/linux-surface-pen-button-remap: Remap the actions (the key combinations) of the Bluetooth Back Button of the Surface Pen.
Firmware
- https://github.com/linux-surface/surface-uefi-firmware:
Allows you to update the firmware of your Surface device from Linux via the
fwupdutility. Please look at the README before attempting to update the firmware. Use at your own risk.
Repositories for Automatic Updates
Please refer to the package repositories page for more information and how to use them.
Kernel and Kernel-Patches
Patches included in this repository
- https://github.com/linux-surface/kernel: Main development repository. Patches will be developed there and moved over here if considered stable.
- https://github.com/linux-surface/surface-aggregator-module: Main development repository for the Surface Aggregator Module (SAM) driver (formerly surface-acpi). This repository contains patches containing Surface ACPI/Platform drivers and a module version of this driver, which contains additional debug functionality.
- https://github.com/linux-surface/intel-precise-touch: New IPTS driver without the requirement for GuC submission. (Used on kernel 5.5+)
- https://github.com/linux-surface/surface-gpe: Enables wake-up from suspend by opening the lid.
- https://github.com/linux-surface/surface-hotplug: Enables D3cold and hotplug support for the dGPU on the Surface Book 2 and 3.
Camera Patches (Work in Progress)
- https://github.com/djrscally/miix-510-cameras/
- https://github.com/kitakar5525/surface-ipu3-cameras
- https://github.com/djrscally/surface-ipu3-cameras
Additional patchsets
- https://github.com/kitakar5525/linux-surface-patches: Customized patches by @kitakar5525, including patches for Chrome OS.
Other
- https://github.com/linux-surface/secureboot-mok: Packages for automatic enrollment of the secure-boot key for binary releases of this kernel. Included in the respective binary package repositories.
- https://github.com/linux-surface/libwacom: Libwacom fork with patches to support Microsoft Surface devices. For pre-compiled packages refer to the package repositories and the Arch User Repository.
- https://github.com/linux-surface/surface-ipts-firmware: IPTS firmware packaging for the old IPTS driver (kernel 5.3 and older)