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:
-
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 !!!
-
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.
-
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.
-
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) -
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!!