Linux > Debian > Proxmox VE installation on Mac mini (Intel/T2)

AFAIK, here is the status:

1. on "T2-Linux":

- Linux support for T2-equipped MacBook Pro 2016 started here. This (very long) thread gives a lot of useful background.

- patches for the T2-based NVMe controller have been merged in the 5.4 kernel back in October, 2019. Work is ongoing for apple-bce-drv (BCE, USB VHCI, keyboard, mouse, audio) and apple-ib-drv (iBridge, TouchBar, Ambient Light Sensor) patches.

- Fedora and Arch Linux are already running on T2 MacBook Pro with those patches.

2. on "T2-Debian":

- Debian 10.6 (buster/stable) is shipping with kernel 4.19. The installer runs on Mac mini 2018 but, of course, doesn't see the NVMe SSD.

- Debian 10.7 (bullseye/testing) seems to use kernel 5.9+ and is scheduled for Hard Freeze in March, 2021. I have not tested it yet.

- Work is ongoing on Ubuntu/Mint/Debian kernel 5.6+ with Apple T2 patches built-in and Ubuntu 20.04 ISO with Apple T2 patches built-in. I am currently testing it on Mac mini: Install mbp-ubuntu on Macmini8,1.

3. on "T2-PVE":

- Proxmox 6.3 runs on a 5.4 kernel but the installer doesn't boot on the Mac mini. I don't even get to grub: the screen stays black and reboots to macOS.
 
Last edited:
If you're interested and want to help running Linux, Debian then Proxmox VE on Mac mini 2018, I'll quote @Dunedan:
The best to help and to get started is just to run Linux on these machines. Whenever you encounter something which doesn't work, document that in a Github issue (or if appropriate a Linux kernel bug report) and try to figure out why it isn't working.

Here are some starting points:

- how to disable secure boot and enable external boot, change the startup disk, partition a physical disk in Disk Utility and... reinstall macOS on a T2 Mac.

- the mbp-2016-linux, mbp-fedora, linux-mbp-arch projects, as well as the new umbrella "t2linux" project at t2linux.org and github.com/t2linux.

- the Ubuntu/Mint/Debian kernel 5.6+ with Apple T2 patches built-in and Ubuntu 20.04 ISO with Apple T2 patches built-in projects. There is no "{mbp,t2}-debian" project... yet.

- discussions are happening in GitHub issues, as well as on Gitter and Discord.

Aaaand... I'm currently working to Install mbp-ubuntu on Macmini8,1, if you want to join me :)



(ps: pleeeease... no rants on Apple, Macs, macOS or "why on earth would you want to run {Linux,Debian,Proxmox} on Macs" ;-)
 
Last edited:
I was about to try to get Debian 11.1 running on a MacMini8,1 in the next few days, with the intent of running Proxmox. It looks like the installation might be painful, but it will probably work fine with the right kernel. Anyone get this running yet?
 
Hello, the install of Proxmox V7.3-1 succeeded on a macmini8.1 but the startup is very slow and I have some errors on the log. I'm on kernel 5.19. Does anyone have an idea to improve this very slow start and correct some of these errors?

Code:
Header
Proxmox
Virtual Environment 7.3-3
Search
Node 'pve'
Hour (average)
 CPU usage 1.54% of 6 CPU(s)
 IO delay 0.26%
 Load average 0.05,0.07,0.08
 RAM usage 33.58% (10.48 GiB of 31.21 GiB)
KSM sharing 0 B
 / HD space 14.04% (31.04 GiB of 221.16 GiB)
 SWAP usage 0.00% (0 B of 8.00 GiB)
CPU(s) 6 x Intel(R) Core(TM) i5-8500B CPU @ 3.00GHz (1 Socket)
Kernel Version Linux 5.19.17-1-pve #1 SMP PREEMPT_DYNAMIC PVE 5.19.17-1 (Mon, 14 Nov 2022 20:25:12
PVE Manager Version pve-manager/7.3-3/c3928077
Repository Status Proxmox VE updates Non production-ready repository enabled!
Server View
Logs
()
proxmox-ve: 7.3-1 (running kernel: 5.19.17-1-pve)
pve-manager: 7.3-3 (running version: 7.3-3/c3928077)
pve-kernel-5.15: 7.2-14
pve-kernel-5.19: 7.2-14
pve-kernel-helper: 7.2-14
pve-kernel-5.19.17-1-pve: 5.19.17-1
pve-kernel-5.15.74-1-pve: 5.15.74-1
ceph-fuse: 15.2.17-pve1
corosync: 3.1.7-pve1
criu: 3.15-1+pve-1
glusterfs-client: 9.2-1
ifupdown2: 3.1.0-1+pmx3
ksm-control-daemon: 1.4-1
libjs-extjs: 7.0.0-1
libknet1: 1.24-pve2
libproxmox-acme-perl: 1.4.2
libproxmox-backup-qemu0: 1.3.1-1
libpve-access-control: 7.2-5
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.3-1
libpve-guest-common-perl: 4.2-3
libpve-http-server-perl: 4.1-5
libpve-storage-perl: 7.3-1
libspice-server1: 0.14.3-2.1
lvm2: 2.03.11-2.1
lxc-pve: 5.0.0-3
lxcfs: 4.0.12-pve1
novnc-pve: 1.3.0-3
proxmox-backup-client: 2.2.7-1
proxmox-backup-file-restore: 2.2.7-1
proxmox-mini-journalreader: 1.3-1
proxmox-widget-toolkit: 3.5.3
pve-cluster: 7.3-1
pve-container: 4.4-2
pve-docs: 7.3-1
pve-edk2-firmware: 3.20220526-1
pve-firewall: 4.2-7
pve-firmware: 3.5-6
pve-ha-manager: 3.5.1
pve-i18n: 2.8-1
pve-qemu-kvm: 7.1.0-4
pve-xtermjs: 4.16.0-1
qemu-server: 7.3-1
smartmontools: 7.2-pve3
spiceterm: 3.2-2
swtpm: 0.8.0~bpo11+2
vncterm: 1.7-1
zfsutils-linux: 2.1.6-pve1

journalctl -r -p err :

Code:
Nov 28 01:03:30 pve kernel: Bluetooth: hci0: BCM: 'brcm/BCM.hcd'
Nov 28 01:03:30 pve kernel: Bluetooth: hci0: BCM: firmware Patch file not found, tried:
Nov 28 01:03:29 pve kernel: Bluetooth: hci0: Failed to set baudrate
Nov 28 01:03:29 pve kernel: Bluetooth: hci0: BCM: failed to write update baudrate (-16)
Nov 28 01:03:29 pve kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4364-pcie for chip BCM4364/3
Nov 28 01:03:29 pve kernel: spi-nor spi0.0: unrecognized JEDEC id bytes: 00 00 00 00 00 00
Nov 28 01:03:29 pve kernel: intel-lpss INT34BA:00: error -EINVAL: IRQ index 0 not found
Nov 28 01:03:29 pve kernel: integrity: Reading UEFI Secure Boot Certs is not supported on T2 Macs.
Nov 28 01:03:29 pve kernel: ERROR: Unable to locate IOAPIC for GSI 34
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU2._PDC due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU2.GCAP due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU1.APCT due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: AE_ALREADY_EXISTS, SSDT 0xFFFF9C1D01367C00 Table is already loaded (20220331/tbdata-548)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU1._PDC due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU1.GCAP due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU1.APPT due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: AE_ALREADY_EXISTS, SSDT 0xFFFF9C1D01475000 Table is already loaded (20220331/tbdata-548)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU0._PDC due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_PR.CPU0.GCAP due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI Error: AE_ALREADY_EXISTS, SSDT 0xFFFF9C1D01367C00 Table is already loaded (20220331/tbdata-548)
Nov 28 01:03:29 pve kernel: ACPI Error: Aborting method \_SB._OSC due to previous error (AE_AML_BUFFER_LIMIT) (20220331/psparse-529)
Nov 28 01:03:29 pve kernel: ACPI BIOS Error (bug): AE_AML_BUFFER_LIMIT, Field [CDW3] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20220331/dsopco>
Nov 28 01:03:29 pve kernel: x86/cpu: SGX disabled by BIOS.
 
Great! That was easy... Now running Proxmox 7.4 with the patched kernel.
Thank you for pointing me!