free5lot / hid-apple-patched

Allows to swap the Fn key and left Control key and other tweaks on Macbook Pro and Apple keyboards in GNU/Linux
GNU General Public License v2.0
349 stars 61 forks source link

Merge upstream #63

Closed almson closed 4 years ago

almson commented 4 years ago

Somewhat surprisingly, there's been a number of commits in upstream Linux to hid-apple. In particular, Bluetooth support and support for numeric keypad have been added. Additionally, a fix to an issue with stuck Fn key. Finally, ISO layout should be detected automatically.

free5lot commented 4 years ago

Good jobs @almson! I also synced patched version to upstream but in different way - cloned kernel 5.6 (some Release Candidate), applied changes manually and check that everything works on Nacbook. I was waiting for kernel to finally make a release (not RC) and it came out just yesterday.

But your approach with applying upstream commits is probably even better! Have you tested result of your sync, is it working nicely on real Macbook or Apple keyboard? If you did and everything is fine for you - I will apply this PR and later test on Macbook myself.

Thanks for this PR a lot.

almson commented 4 years ago

Yes, it's working on MacBook Pro 2015 and an Apple Magic Keyboard 2 with both USB and Bluetooth. The most drastic change was the logic around Fn key detection (bless the heart of the person who refactored that mess), but it seems to be compatible.

P.S. The way I did this was by creating patches using git format-patch -k -1 <commit sha>, in some cases editing them (not the changes, but things like deleting changes to other files and updating the context, since git-am is more picky than patch), and applying them with cat <patch> | git am -3 -k -p2.

free5lot commented 4 years ago

Thanks @almson, I am accepting this PR and will modify README.md accordingly.

free5lot commented 4 years ago

@almson can you please check issue #6 in bluetooth connection mode on your Apple Magic Keyboard 2?