All Projects → marcosfad → Mbp Ubuntu

marcosfad / Mbp Ubuntu

UBUNTU 20.04 for MacBook Pro 16,1 (16,1 wifi not working atm)

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Mbp Ubuntu

Aquatouch
Dynamic Custom Macros for your MacBook TouchBar! (Supports 40+ Apps and Websites)
Stars: ✭ 125 (-14.38%)
Mutual labels:  keyboard, touchbar
Keyboardstateevents
LiveData notification when keyboard opens or closes, plus some handy extension functions
Stars: ✭ 140 (-4.11%)
Mutual labels:  keyboard
Ng Keyboard Shortcuts
Dead Simple Keyboard Shortcuts Management for Angular
Stars: ✭ 121 (-17.12%)
Mutual labels:  keyboard
Keyboard
Virtual Keyboard using jQuery ~
Stars: ✭ 1,670 (+1043.84%)
Mutual labels:  keyboard
Browser Media Keys
Lets you control many web players using the media keys on your keyboard.
Stars: ✭ 125 (-14.38%)
Mutual labels:  keyboard
Kmk firmware
Clackety Keyboards Powered by Python
Stars: ✭ 132 (-9.59%)
Mutual labels:  keyboard
Ergotravel
A Portable Ergonomic Split Keyboard inspired from the ErgoDox, Let's Split and Minidox
Stars: ✭ 120 (-17.81%)
Mutual labels:  keyboard
Windowwalker
Keyboard Alternative to Alt-Tab on Windows
Stars: ✭ 145 (-0.68%)
Mutual labels:  keyboard
Keyleds
Logitech Keyboard animation for Linux — G410, G513, G610, G810, G910, GPro
Stars: ✭ 137 (-6.16%)
Mutual labels:  keyboard
Selectnextoccurrence
A Visual Studio Extension that selects the next occurrences of the current selection and adds multiple cursors for editing
Stars: ✭ 129 (-11.64%)
Mutual labels:  keyboard
Mbp Fedora
Stars: ✭ 129 (-11.64%)
Mutual labels:  touchbar
React Native Keyboard Accessory View
Keyboard accessory (sticky) view for your React Native app. Supports interactive dismiss on iOS.
Stars: ✭ 128 (-12.33%)
Mutual labels:  keyboard
Mousetrap
Simple library for handling keyboard shortcuts in Javascript
Stars: ✭ 10,937 (+7391.1%)
Mutual labels:  keyboard
Preventkeyboardblockutil
一句代码解决软键盘挡住相关控件,适用于任何布局,一般作用于登录界面,注册界面等,当软键盘弹出时避免挡住登录(注册)按钮。
Stars: ✭ 127 (-13.01%)
Mutual labels:  keyboard
Binarykeyboard
A keyboard with two buttons that types in binary.
Stars: ✭ 141 (-3.42%)
Mutual labels:  keyboard
Slimhud
Replacement for MacOS' volume, brightness and keyboard backlight HUDs.
Stars: ✭ 122 (-16.44%)
Mutual labels:  touchbar
Awesome Kinesis
Unofficial curated list of resources and references for Kinesis keyboard enthusiasts
Stars: ✭ 132 (-9.59%)
Mutual labels:  keyboard
Keyboardjs
A JavaScript library for binding keyboard combos without the pain of key codes and key combo conflicts.
Stars: ✭ 1,881 (+1188.36%)
Mutual labels:  keyboard
Touch Bar Istats
Show CPU/GPU/MEM temperature on Touch Bar with BetterTouchTool!
Stars: ✭ 141 (-3.42%)
Mutual labels:  touchbar
Ergodox Layout
algernon's ErgoDox EZ layout
Stars: ✭ 135 (-7.53%)
Mutual labels:  keyboard

mbp-ubuntu

The ISO in from this repo should allow you to install ubuntu without using an external keyboard or mouse on a MacBook Pro. It work in my MacBook with T2.

Build Status

If this repo helped you in any way, consider inviting a coffee to the people in the credits or me.

UBUNTU 20.04 ISO with Apple T2 patches built-in.

Apple T2 drivers are integrated with this iso.

This repo is a rework of the great work done by @mikeeq

I'm using the Kernel from - https://github.com/marcosfad/mbp-ubuntu-kernel

Using additional drivers:

Bootloader is configure correctly out of the box. No workaround needed.

Before I begin, what version should I use "mbp" or "mbp-alt"?

!! Warning: Starting from the kernel 5.8 the release naming were switch with respect to kernel 5.7: Before the "mbp" release did not include all the patches. Now the "mbp" includes all patches and the "mbp-alt" don't.

The difference between the two is that the mbp-alt includes the kernel with the 2001 Patch from the great Aunali1. This patch made my screen blank, but it helped others to get rid of the blank screen. So, here is a list, with what I know through discord members:

MBP mbp mbp-alt
16,1
15,4

If you don't know what version, start with the mbp and if it doesn't work (Blank screen issue) try the mbp-alt. If your mbp is not listed, please tell me which one is working for you on the issue Blank screen

Installation

!! Warning: Versions newer than 5.7.19 are considered in-development builds and should not be used due to issues from within the kernel and the init system.

  1. Reduce the size of the mac partition in MacOS
  2. Download ISO file from releases. (Use the command line to unzip (unzip /path/to/file.zip) or "The Unarchiver" app)
  3. Copy it to a USB using dd (or gdd if installed over brew):
diskutil list # found which number has the USB
diskutil umountDisk /dev/diskX
sudo gdd bs=4M if=ubuntu-20.04-5.6.10-mbp.iso of=/dev/diskX conv=fdatasync status=progress
  1. Boot in Recovery mode and allow booting unknown OS
  2. Restart and immediately press the option key until the Logo come up
  3. Select "EFI Boot" (the third option was the one that worked for me)
  4. Launch Ubuntu Live
  5. Use Ubiquity to install (just click on it)
  6. Select the options that work for you and use for the partition the following setup:
    • Leave the efi boot as preselected by the installer. Your Mac will keep on working with out problems.
    • Add a ext4 partition and mounted as /boot (1024MB)
    • Add a ext4 partition and monted as / (rest)
  7. Run the installer (In my case it had some problem removing some packages at the end, but this is no real problem)
  8. Shutdown and remove the USB Drive
  9. Start again using the option key. Select the new efi boot.
  10. Enjoy.

Configuration

# /etc/modprobe.d/hid_apple.conf
options hid_apple swap_fn_leftctrl=1
options hid_apple swap_opt_cmd=1
  • I switch the touchbar to show f* by default. If you like another configuration, change /etc/modprobe.d/apple-tb.conf or remove it.
  • To update grub, run: grub-mkconfig -o /boot/grub/grub.cfg

MISC

Activate Grub Menu

For the people who want to have a menu, they can modify /etc/default/grub with the following changes:

GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=10

and then: sudo update-grub

Update to newer kernels

IF YOU UPDATE THE KERNEL, REMEMBER TO ADD THE REQUIRED DRIVERS AGAIN.

The easy way:

The live cd includes dkms and will automatically run when a new kernel is installed. You can use dkms status to see it.

The step to install it from scratch would be:

sudo apt install dkms
sudo apt install linux-headers-<mbp-kernel-release>-mbp linux-image-<mbp-kernel-release>-mbp
sudo git clone --branch mbp15 https://github.com/roadrunner2/macbook12-spi-driver.git /usr/src/apple-ibridge-0.1
sudo dkms install -m apple-ibridge -v 0.1 -k <mbp-kernel-release>-mbp
modprobe apple-ib-tb
modprobe apple-ib-als
sudo git clone --branch aur https://github.com/marcosfad/mbp2018-bridge-drv.git /usr/src/apple-bce-0.1
sudo dkms install -m apple-bce -v 0.1 -k <mbp-kernel-release>-mbp
modprobe apple-bce

Another way:

Check https://github.com/marcosfad/mbp-ubuntu/blob/master/files/chroot_build.sh to see how it is done.

Know issues

  • Sound is not working after the install. Follow the instructions detailed by @kevineinarsson: https://gist.github.com/kevineinarsson/8e5e92664f97508277fefef1b8015fba
    On MBP 16,1, you might also need to disable realtime scheduling if the above gist doesn't work, because the pulseaudio server might get killed if the realtime budget is exceeded (https://bugs.freedesktop.org/show_bug.cgi?id=94629). Just add realtime-scheduling = no to /etc/pulse/daemon.conf.
  • Wifi is not working for bali (MBP 16,1). I'm using a 10$ usb wifi.
  • Checksum is failing for 2 files: md5sum.txt and /boot/grub/bios.img
  • I'm having troubles shutting down ubuntu. Screen is black but fan keeps on working. I have to force shutdown.

Not working (Following the mikeeq/mbp-fedora)

  • Dynamic audio input/output change (on connecting/disconnecting headphones jack)
  • TouchID - (@MCMrARM is working on it - https://github.com/Dunedan/mbp-2016-linux/issues/71#issuecomment-528545490)
  • Thunderbolt (is disabled, because driver was causing kernel panics (not tested with 5.5 kernel))
  • Microphone (it's recognised with new apple t2 sound driver, but there is a low mic volume amp)

TODO

  • ISO is using gzip initramfs. It would be great to change it lz4
  • Optimize the software installed.

Known issues (Following the mikeeq/mbp-fedora)

  • Kernel/Mac related issues are mentioned in kernel repo
  • ctrl+x is not working in GRUB, so if you are trying to change kernel parameters - start your OS by clicking ctrl+shift+f10 on external keyboard

Docs

Ubuntu

Github

Credits

  • @mikeeq - thanks for the amazing work in mbp-fedora
  • @MCMrARM - thanks for all RE work
  • @ozbenh - thanks for submitting NVME patch
  • @roadrunner2 - thanks for SPI (touchbar) driver
  • @aunali1 - thanks for ArchLinux Kernel CI, the continuous support on discord and your continuous efforts.
  • @ppaulweber - thanks for keyboard and Macbook Air patches
  • @kevineinarsson - thanks for the audio settings
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].