Compatibility of the new Touch Bar with Ubuntu

It is not right now.

It is doubtful whether there will be meaningful compatibility in the next few years.


Please, follow firstly this guide and then this one carefully or follow the following steps:

Install the MacBook12 SPI drivers:

apt install dkms
git clone https://github.com/cb22/macbook12-spi-driver.git /usr/src/applespi-0.1
dkms install -m applespi -v 0.1

printf "%s\n" "# applespi" "applespi" "intel_lpss_pci" "spi_pxa2xx_platform" >> /etc/initramfs-tools/modules
update-initramfs -u

and reboot, then follow this second part (you can interchange apt with dnf):

sudo apt install git kernel-devel
git clone https://github.com/roadrunner2/macbook12-spi-driver.git
pushd macbook12-spi-driver
git checkout touchbar-driver-hid-driver
make
sudo mkdir /lib/modules/`uname -r`/custom/
sudo cp applespi.ko appletb.ko /lib/modules/`uname -r`/custom/
sudo depmod
popd

now look for ** the attached 61-evdev-local.hwdb** (located in the directory of the cloned repo):

sudo cp ...the-attached-61-evdev-local.hwdb... /etc/udev/hwdb.d/61-evdev-local.hwdb
sudo modprobe intel_lpss_pci spi_pxa2xx_platform applespi appletb

now, if you using dracut follow this:

sudo mv /boot/initramfs-`uname -r`.img{,.orig}
sudo mv ...the-attached-keyboard.conf... /etc/dracut.conf.d/keyboard.conf
sudo dracut

else this:

  1. open following file /etc/initramfs-tools/modules
  2. append to the file only the missing words picked from: {applespi, intel_lpss_pci, spi_pxa2xx_platform, appletb} (for example if the file the words pplespi and appletb are already listed, append only intel_lpss_pci and spi_pxa2xx_platform)
  3. save and close

finally reboot.


Those guides helped me to install drivers for the TouchBar (not only, TouchPad and some others) on my MacBook Pro Touch (late 2016).

The TouchBar works greatly without no problems.

The distro I used is Ubuntu 17.04 (I am using that to write this answer) dual booted alongside macOS Sierra.