The never ending story of old but still fine MacBookPro's

Hi guys,

The subject line already tells you enough, I think.

This is for everybody who has a MacBook(pro), from around 2015, collecting dust, of which the hardware is still in tip-top condition, but Apple thought it would be perfectly acceptable to write it off.. I have good news. Use Linux and make it a (un)forgettable NAS.

Yes, there are issues with the hardware, but with some tweaking, it's absolutely possible to make it a stable system for another ten years.

As long as you keep this in mind:

  1. IMPORTANT! The kernel you should use is 6.14.0-27-generic. This one is stable and won't tinker too much with your hardware. Any newer kernel and Linux will very quickly put your file system in read-only mode. Whatever you do, do NOT install version 6.17 !!!

  2. You need to manipulate GRUB, and do this as soon as possible, which means, the moment you have installed Zorin, reboot and start mashing the ESC button. You need to prevent the system from booting into Linux. UNFORTUNATELY(!) the Zorin boys (and girls?) have decided to make the grub menu HIDDEN - of course for your convenience(cough) - so you will have to resort to ESC for now.

  3. As soon as you are on the grub command line, use "ls" to check on your file system. Find the BOOT folder and use it to set the ROOT and grub prefix. Key in: set root = (x,y) and set prefix = (x,y)/boot/grub -- the X,Y are the names of your drive and partition. Use "ls" to check.

  4. Key in on the grub command line: linux = vmlinuz-"version" /root/dev/sdaX "PARAMETERS"
    (X is very often 1 or 2, depending on whether you created a separate root partition - "ls" will tell you)
    (PARAMETERS is extremely important!! See at the end of this essay for the exact parameters you need to add to the linux line)

  5. Define initrd : key in initrd = /boot/initrd.img-"version"

Make SURE you use the proper "version" and it should be 6.14.0-37-generic OR OLDER! Or face the consequences ..

Key in BOOT and enjoy the show.

Make SURE you do this inside Linux as well - modify your grub with the same parameters and do not forget to set the grub menu to MENU and do not leave it HIDDEN (again: thanks for nothing, Zorin folks).

BLOCK any updates to the kernel. I found out the hard way. With APT you can permanently stop the linux updates (sudo apt-mark hold linux-image-generic and linux-headers-generic).

My MacBookPro 2015 (dual GPU, which made it even harder to keep it stable under Linux) is now a rock stable NAS of roughly 800GB, which is enough for me and my family, for all our music and foto's.

Tip: If you want to make it a NAS, first install SAMBA, then install Cockpit. Cockpit addresses in your browser as 'http://"hostname":9090'.You will never have to touch your Mac again. It will make your mini-NAS totally forgettable.

However! .. The Zorin distro makes it impossible to use your own generated cert and key, because Zorin forced programs like Cockpit into "systemd socket activation", which means it cannot do TLS and Cockpit's own HTTPS engine is disabled in this mode. The certificates are simply being ignored in this mode. Which means: NO HTTPS for applications like Cockpit. Zorin people: With Fedora it IS possible, so please change that, or you will risk losing me.

The camera, if you want more than a NAS only - go on GITHUB, look for the brilliant work from PATJAK and install what this five-star dev has created. Your camera will work like a charm. But first build the dependencies: "sudo apt install git dkms linux-headers-$(uname -r) build-essential cmake libssl-dev". Then clone from github ("git clone GitHub - patjak/facetimehd: Reverse engineered Linux driver for the FacetimeHD (Broadcom 1570) PCIe webcam · GitHub") and follow the instructions. Do not forget to check with dmesg. Install CHEESE to test the lot. Smile, you're on candid camera!

Scanning documents: I'm a fan of XSane (sudo apt install xsane will do the trick). Old looking UI, but it does the job! For slightly more sophistication, install gscan2pdf

Alright, here are the promised parameters you need to add to the "vmlinuz-"version"" line:

(I'm assuming you have an Intel GPU and an AMD GPU on board, which is with almost all the Pro's around that year)

quiet
splash
radeon.modeset=0
amdgpu.modeset=0
modprobe.blacklist=radeon,amdgpu
i915.modeset=1
acpi_osi=Darwin
pcie_aspm=off
nvme_core.default_ps_max_latency_us=0
intel_idle.max_cstate=1
libata.force=noncq

And if you only have an intel GPU, leave out the radeon and amdgpu parameters. I do not think there are MacBooks with AMD only.

Have fun!!

2 Likes

I have a MacBook Pro from 2018 that cost me an arm and a leg, but I'm currently using a cheaper Lenovo with ZorinOS. The keyboard is 1000x better than the Mac.
I've thought about trading it in or installing Zorin. I used FCPX professionally for about a decade, so I've always leaned toward Apple (except iPhone). I'm no longer tied to this, so I'm weighing my options. I do minimal editing & graphics now, so I might try using Kden Live or even ShotCut. I already have experience with Blender as well (I've used Maya, Lightwave, & Modo too).
I also have a 2009 Mac Pro, but this is far too old I'm afraid. I've been researching how to convert it to an ATX tower.
I also have a 2013 trash can Mac Pro that was given to me. There are ways to get the lasted MacOS, but it was incredibly buggy. I haven't got around to trying a Linux distro on it yet. Unfortunately, this computer design is so weird that doing any upgrades or conversions probably don't work. I remember when my workplace switched me to the trash can mac pro...I always hated that thing. That's an entirely different discussion though.