Second Life: Installing Ubuntu on MBP 2019 16-inch
It’s Christmas Eve. I should probably be wrapping gifts or drinking hot cocoa. Instead, I found myself staring at my 2019 MacBook Pro, which was currently hot enough to roast chestnuts on an open fire.
You know the feeling. You own what was once a “flagship” machine, but now it’s plagued by thermal throttling, fans that sound like a jet engine, and the looming threat of losing official macOS support next year. So, I decided to perform a holiday miracle. 🪄
I know, I know—resurrections are usually scheduled for Easter, not Christmas. But why wait for Spring to give a dead Apple a second life?
I went down the rabbit hole of the T2 Security Chip, firmware patching, and partition shrinking to see if I could save this hardware from the landfill (and save my wallet from current RAM prices). The result? I successfully dual-booted Ubuntu 24.04. The machine is now cool, silent, and surprisingly fast. It’s a complete resurrection. Long life to Linux!
This guide documents the process of dual-booting Ubuntu alongside macOS, ensuring that essential hardware like the keyboard, trackpad, and WiFi work correctly.
1. Introduction
The installation process involves patching the Ubuntu ISO to support the T2 chip, backing up firmware drivers from macOS, disabling secure boot, partitioning the drive, and finally installing the OS.
For the most up-to-date information and troubleshooting, always refer to the official T2 Linux Wiki.
2. T2-Ubuntu installation steps
2.1 Download ISO
We will use the scripts provided by the t2linux community to download a patched ISO that includes necessary drivers.
- Download the
iso.shscript from the T2-Ubuntu releases. - Make it executable and run it:
chmod +x iso.sh
./iso.sh
Follow the interactive prompts to select the flavor and version:
- Flavour: Choose
1for Ubuntu. - Version: Choose
1for 24.04 LTS - Noble Numbat.
The script will download the parts, verify checksums, and save the ISO to your Downloads folder.
2.2 Create Bootable USB
Once the ISO is downloaded, flash it to a USB drive. A 4GB stick is sufficient.
- Plug in your USB drive.
- Open Terminal. If you don’t have
coreutilsinstalled (which provides the fastergddcommand), install it via Homebrew:
brew install coreutils
- Identify the disk number (e.g.,
/dev/disk4) usingdiskutil list. - Unmount the disk and write the ISO:
diskutil umountDisk /dev/diskX
sudo gdd bs=4M if=ubuntu-24.04-6.17.8-t2-noble.iso of=/dev/diskX conv=fdatasync status=progress
Replace /dev/diskX with your actual disk identifier (e.g., /dev/disk4). Be extremely careful not to overwrite your internal hard drive.
2.3 Backup Firmware
The T2 chip requires specific firmware for WiFi and Bluetooth. We must copy this from macOS to the USB stick’s EFI partition so we can install it on Ubuntu later.
- Download
firmware.shfrom the releases page. - Run it:
./firmware.sh
The script will present three options. Select Option 1: Copy the firmware to the EFI partition.
Why choose Option 1? I strongly recommend Option 1 because I have FileVault active. When FileVault is enabled, your macOS data volume is encrypted, making it very difficult to mount and access from the Linux Live USB. By using Option 1 while still logged into macOS, we bypass the encryption hurdle entirely and stage the drivers safely in the unencrypted EFI partition.
3. macOS Preparation
3.1 Disable Secure Boot
To boot a third-party OS like Linux, we must lower the security settings on the T2 chip.
- Restart your Mac.
- Hold Command (⌘) + R immediately to enter macOS Recovery.
- In the menu bar, select Utilities > Startup Security Utility.
- Set Secure Boot to “No Security”.
- Set Allowed Boot Media to “Allow booting from external or removable media”.

3.2 Partitioning the Disk
We need to shrink the macOS partition to make space for Ubuntu.
- Reboot into macOS and open Disk Utility.
- If you use FileVault, the data volume might be locked. Select Macintosh HD - Data (or similar) and click Mount.

- Enter your password to unlock the drive.

- Select the top-level container/disk and click Partition.
- Click the (+) button to add a partition.

- Configure the new partition:
- Name:
Untitled(orLinux) - Format:
ExFAT(Easy to identify later; we will format this to ext4 during installation). - Size: Choose your desired size (e.g., 500 GB).

- Click Apply to resize the disk.
4. Ubuntu Installation
4.1 Booting the Installer
- Shut down the Mac and plug in the Ubuntu USB.
- Power on and hold the Option (Alt) key.
- You will see the boot menu. Select EFI Boot.
- Tip: If you see multiple “EFI Boot” icons, it is often the last one on the right. If the first one fails, try the others.

4.2 Partitioning in Ubuntu
Proceed through the installation steps until you reach Installation type.
- Select Something else (Manual partitioning).

- Locate the partition you created in macOS. It will likely show as
unknownorfat32matching the size you set (e.g., 500GB). - Select it and click the (-) button to delete it. It will become free space.
4.2.1 Creating Swap Area (Optional but Recommended)
Before creating the main partition, we should create a Swap area. This acts as “overflow” RAM and is required if you want to use Hibernation.
- Select the
free spaceand click (+). - Set the size roughly equivalent to your RAM (e.g., 16384 MB for 16GB RAM).
- Set Use as to swap area.
- Location: Select End of this space.

4.2.2 Creating the Root Partition
Now we will use the rest of the space for the operating system and files.
- Select the remaining
free spaceand click (+). - Create the root partition:
- Size: Maximum available.
- Type: Primary.
- Location: Beginning of this space.
- Use as: Ext4 journaling file system.
- Mount point:
/

4.3 Finalize Configuration
Ensure the bootloader is pointing to the correct EFI partition.
- Check the Device for boot loader installation dropdown.
- It should point to your existing EFI partition (usually
/dev/nvme0n1p1, Typeefi). Do not format this partition.

- Click Install Now and review the changes.

Complete the installation (Timezone, User setup) and reboot.
5. Post-Installation Setup
After rebooting into Ubuntu, your WiFi will not work yet. We need to install the firmware we extracted earlier.
- Open a terminal.
- Mount the EFI partition where the script is stored:
sudo mkdir -p /tmp/apple-wifi-efi
sudo mount /dev/nvme0n1p1 /tmp/apple-wifi-efi
- Run the firmware script:
bash /tmp/apple-wifi-efi/firmware.sh
- Unmount and cleanup:
sudo umount /tmp/apple-wifi-efi
Reboot your system. WiFi and Bluetooth should now be functional.
6. Recommended Tweaks
6.1 Fan Control
The MBP 2019 16-inch can get hot. While the standard drivers are ok, you may want more control. The t2fanrd daemon is the recommended solution for T2 Macs.
- Install the repo: If you don’t already have the T2 Ubuntu repo (you likely do from the installation), add it.
- Install the daemon:
sudo apt install t2fanrd
- Enable and Start:
sudo systemctl enable --now t2fanrd
- Configuration (Optional):
The config file is located at
/etc/t2fand.conf. You can edit this file to change the activating temperature or the fan curve. If you edit it, remember to restart the service:
sudo systemctl restart t2fanrd
For more details, check the official Fan Guide.
6.2 Audio Setup
For the audio setup follow the official guide.
6.3 Configuring the Touch Bar
If your Mac has a Touch Bar, you can install the tiny-dfr app to make it useful in Linux. This daemon provides dynamic function rows and media controls.
- Install tiny-dfr: Run the following command to update your repositories and install the package:
sudo apt update && sudo apt install tiny-dfr
- Restart: Make sure you restart your Mac after installing the app for the changes to take effect.
- Customizing the Configuration:
If you want to make changes to the config for
tiny-dfr:
- Copy the default config file:
sudo cp /usr/share/tiny-dfr/config.toml /etc/tiny-dfr/config.toml
- Edit the file using your preferred text editor (like nano):
sudo nano /etc/tiny-dfr/config.toml
Follow the instructions given inside that file to customize your function keys and media controls.
Acknowledgments & Resources
A massive thank you to the t2linux.org community. Without their tireless reverse-engineering efforts, this beautiful hardware would be destined for the landfill. Thanks also to Apple for building hardware that lasts, and to Linux for giving us the freedom to use it how we see fit.
Official Links:
- t2linux.org - The main hub for Linux on T2 Macs.
- Audio Configuration - Specific guides for setting up audio on different models.
- Fan Control Guide - Official documentation for
t2fanrd.