HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
jakeday
linux-surface
Systems & Infrastructure2018–2020
jakeday / linux-surface

linux-surface

Linux Kernel for Surface Devices

11Distinct people
12Mentions
0Explicit recommenders
2.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Linux Kernel for Surface Devices

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month12 dated mentions

Observed mentions: 2018-02-25 05:00:57 UTC to 2020-05-16 21:59:55 UTC.

0122018-02-01 00:00:00 UTC to 2018-03-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsFeb 20182018-03-01 00:00:00 UTC to 2018-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-04-01 00:00:00 UTC to 2018-05-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-05-01 00:00:00 UTC to 2018-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-06-01 00:00:00 UTC to 2018-07-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2018-07-01 00:00:00 UTC to 2018-08-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2018-08-01 00:00:00 UTC to 2018-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-01 00:00:00 UTC to 2018-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-10-01 00:00:00 UTC to 2018-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-11-01 00:00:00 UTC to 2018-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-12-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-01-01 00:00:00 UTC to 2019-02-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-02-01 00:00:00 UTC to 2019-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-01 00:00:00 UTC to 2019-04-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsMar 20192019-04-01 00:00:00 UTC to 2019-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-05-01 00:00:00 UTC to 2019-06-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2019-06-01 00:00:00 UTC to 2019-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-01 00:00:00 UTC to 2019-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-08-01 00:00:00 UTC to 2019-09-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-09-01 00:00:00 UTC to 2019-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-10-01 00:00:00 UTC to 2019-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-11-01 00:00:00 UTC to 2019-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-12-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-01-01 00:00:00 UTC to 2020-02-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2020-02-01 00:00:00 UTC to 2020-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-03-01 00:00:00 UTC to 2020-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-04-01 00:00:00 UTC to 2020-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-05-01 00:00:00 UTC to 2020-06-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsMay 2020

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Feb 20182018-02-01 00:00:00 UTC2018-03-01 00:00:00 UTC101
Mar 20182018-03-01 00:00:00 UTC2018-04-01 00:00:00 UTC000
Apr 20182018-04-01 00:00:00 UTC2018-05-01 00:00:00 UTC101
May 20182018-05-01 00:00:00 UTC2018-06-01 00:00:00 UTC000
Jun 20182018-06-01 00:00:00 UTC2018-07-01 00:00:00 UTC202
Jul 20182018-07-01 00:00:00 UTC2018-08-01 00:00:00 UTC202
Aug 20182018-08-01 00:00:00 UTC2018-09-01 00:00:00 UTC000
Sep 20182018-09-01 00:00:00 UTC2018-10-01 00:00:00 UTC000
Oct 20182018-10-01 00:00:00 UTC2018-11-01 00:00:00 UTC000
Nov 20182018-11-01 00:00:00 UTC2018-12-01 00:00:00 UTC000
Dec 20182018-12-01 00:00:00 UTC2019-01-01 00:00:00 UTC000
Jan 20192019-01-01 00:00:00 UTC2019-02-01 00:00:00 UTC101
Feb 20192019-02-01 00:00:00 UTC2019-03-01 00:00:00 UTC000
Mar 20192019-03-01 00:00:00 UTC2019-04-01 00:00:00 UTC101
Apr 20192019-04-01 00:00:00 UTC2019-05-01 00:00:00 UTC000
May 20192019-05-01 00:00:00 UTC2019-06-01 00:00:00 UTC110
Jun 20192019-06-01 00:00:00 UTC2019-07-01 00:00:00 UTC000
Jul 20192019-07-01 00:00:00 UTC2019-08-01 00:00:00 UTC000
Aug 20192019-08-01 00:00:00 UTC2019-09-01 00:00:00 UTC101
Sep 20192019-09-01 00:00:00 UTC2019-10-01 00:00:00 UTC000
Oct 20192019-10-01 00:00:00 UTC2019-11-01 00:00:00 UTC000
Nov 20192019-11-01 00:00:00 UTC2019-12-01 00:00:00 UTC000
Dec 20192019-12-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
Jan 20202020-01-01 00:00:00 UTC2020-02-01 00:00:00 UTC110
Feb 20202020-02-01 00:00:00 UTC2020-03-01 00:00:00 UTC000
Mar 20202020-03-01 00:00:00 UTC2020-04-01 00:00:00 UTC000
Apr 20202020-04-01 00:00:00 UTC2020-05-01 00:00:00 UTC000
May 20202020-05-01 00:00:00 UTC2020-06-01 00:00:00 UTC101

What Hacker News says

12 sources
The Surface line is actually, out of the box, a very good Linux development machine, if one is ok with not having camera and sleep. The surface line was not Linux-friendly at the beginning, then around Ubuntu 17.04, the mainline kernel and the firmware started to give the required support for working daily. The linux-surface kernel (https://github.com/jakeday/linux-surface) gives extra functionality - mainly the touchpad.
In iPad Pro as Development Machine
I own the following devices: Surface 3 (non-Pro,) Surface Pro 3, and a Surface Pro 2017: - Surface 3: Atom x7, 4 GB RAM, 128 GB HDD - Surface Pro 3: i7, 8 GB RAM, 256 GB HDD - Surface Pro 2017: i7, 16 GB RAM, 1 TB HDD I use these devices daily as my main machines. I use them interchangably. All of the devices run Arch Linux with identical configurations. None are currently configured for dual-boot. All of them run the same long-running programmes (e.g., Slack, Hangouts,) though I use each device for a different purpose: - Surface 3: reading PDFs & documentation, email - Surface Pro 3: backup device - Surface Pro 2017: software development, general use All of devices are usable for actual day-to-day work. The devices run different kernels: - Surface 3: stock LTS kernel or Zen kernel with patches - Surface
Read the rest
Pro 3: stock LTS or stock Zen kernel - Surface Pro 2017: git kernel with patches from (http://github.com/jakeday/linux-surface) None of the devices support S3 suspend. They support only "Connected Standby." (https://lwn.net/Articles/580451/) Works on all devices: - hibernate - SecureBoot, TPM - touchscreen, pen input - Typecover (detach/reattach), touchpad multitouch - sensors (rotation, ambient light) - WiFi, Bluetooth - audio - SD card Surface 3: - DisplayPort doesn't always work - webcams don't work Surface 3 Pro: - everything works 100% with stock kernels Surface Pro 2017: - battery readings don't work - webcams don't work I am overall very happy with these computers. They are the first machines in a long time that I have been "excited about." Linux support so far is good (ranges from a B- to an A+) and within the range of being usable for daily work.
In Microsoft announces Surface Go
I've been using Linux on my Surfacebook 2 13" since about January. Most of the hardware features work decently (including touchscreen), but overall it's still not great despite the excellent work put into a modified kernel for it, here [1]. IMO, the most notable items missing full support are: - the battery[2][3], charge or capacity status - "performance base" dedicated GPUs 1: https://github.com/jakeday/linux-surface 2: https://github.com/jakeday/linux-surface/issues/28 3: https://bugzilla.kernel.org/show_bug.cgi?id=198145
In The Surface Book 2 is everything the MacBook Pro should be
I briefly had a Razer Blade for development and returned it for several reasons, the top two being: 1. Enormous screen bezel, which made it silly to lug around a laptop with the screen real estate of one much smaller. 2. Without careful, tedious manual power management in linux the cooling fans routinely spin up to dust buster sound levels under normal use, which is unacceptable if you exist around other human beings. The Surface Book 2 is an interesting option, but the linux support, while improving through community effort, is still spotty [1]. At the moment it has many power draw, heat, and noise issues. Also, everyone I know who has had a surface device has had to have it serviced or RMA'd at least once, which is not acceptable for something so expensive from such a large vendor. [1] https://github.com/jakeday/linux-surface
In Ask HN: Are there any reasonable alternatives to MacBook Pro for developer?
I'm a long-time osx user. Recently I bought a used Surface Book for testing out some of the touch and stylus functionality. Also I liked the idea of having a high-quality stylus functionality for Adobe applications. This set me on my own WSL journey which, long story short, ended with me realizing it's just not ready. - you're still forced to use windows apps for any gui (ie when you open atom from bash it'll launch windows atom) - there were numerous times when I npm i'd and it failed because some dependency was trying to do fancy things that WSL just didn't like - performance running builds with webpack seemed significantly worse. - i thought maybe windows 10 UI is up-to-par, even as a long-time mac user I thought maybe I could get down in Redmond town but... no... just no. It's the little things, the obvious things. You forget just how
Read the rest
well thought, how precise, stable and intuitive osx's ui/ux is until you're thrown into Windows. Now, I still think windows touch and stylus integration is wonderful and I hope Apple finds a way to bring something like this to mac os. Also I understand that a mac user is naturally not going to feel at home with windows but I was on windows for probably a whole decade before I was on mac and so it's that it feels totally alien it's just... meh. So then began my journey to finding a way to dual boot Ubuntu on the Surface Book with as close as full-support for touch/stylus/trackpad as possible. Some angel made drivers/software to enable support for the various Surface hardware on Ubuntu (https://github.com/jakeday/linux-surface) and so I went through the process of getting all that together. Also I tried a few different Ubuntu desktop environments including Deepin and Pantheon (Elementary OS UI) and: - wow, desktop linux has come a long way and chrome on ubuntu is almost 100% how you'd expect it to perform. - wow jakeday got the hardware support near perfect - wow, desktop linux has horrible support for touch/stylus as in... near zero. Sure the inputs work but there's no intuitive UX to support the inputs and in general it feels like a hack because of this. As a last resort I ran a osx image in vmware and unfortunately the graphics performance was not workable. The Surface Book's screen is so high resolution that you have to trick osx into scaling the UI for it which does solve the "everything's tiny" problem while keeping everything super crispy but then it seems vmware and hardware just can't keep up. OSX would likely feel super performant running native on this hardware, but via vmware- nope. So now I still casually use the Surface Book with Windows 10 but my late 2012 macbook pro is still my workhorse and it still feels as fast and capable as the day I got it. I have been predicting a sort of convergence of macbook and iPad (macOS and iOS) for a long time. I've always thought Apple would attempt to take it's arm chips to the macbook. I hope that however macOS evolves, alongside or in a convergence with iOS, it supports a sort of multi-modal type flexibility where you feel like you can stand up from your desk, walk away with a tablet/detachable-display/phone and seamlessly continue your session. I understand the wisdom of letting a desktop environment be a great desktop environment while letting a tablet UX be a great tablet UX but I still think the future has room for a seamless interplay and some more flexibility.
In Linux'izing your Windows PC into a dev machine – Part 2

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.