Bacanje jabuke u ponor – Void Linux na MacBooku

Linux na MacBooku – zvuči kao uvod u neki triler ili čak horor film.
No, ova avantura će biti jedno malo istraživanje je li moguće i na koji način jednoj “truloj” jabuci dati novi sjaj.
Naš pokusni kunić za ovaj eksperiment bit će stari MacBook 2011, 17 inča.
Za one koji ne znaju – ovo je posljednji 17 inčni MacBook koji je Apple ikad napravio; godinu poslije toga dolazi i kraj “debelim” MacBookovima koji se daju nadograđivati. Dolaze fit “Retina” modeli na kojima, istina, možete im povećati prostor pohrane ali ne i količinu radne memorije te većina komponenti se više ne može tako lako izmjeniti kao na ovim prethodnim Unibody ili vam “debelim” modelima.
Ali ovo nije jedini razlog zbog čega smo odabrali baš ovog starca i odlučili mu udahnuti novi život (zvuči kao entuzijastični eksperiment jednog ludog znanstvenika). Kakav će epilog imati ova naša avantura, pročitajte u nastavku.
O našem pokusnom MacBooku
Naš pokusni kunić je, kako već smo spomenuli, stari MacBook iz 2011. godine te također zadnji 17 inčni model koji je ikada napravljen.
Njegove specifikacije su sljedeće:
Procesor: i7-2760QM 2.4 GHz
Radna memorija: 8 GB DDR3-1600 MHz
Pohrana: 750 GB HDD
Grafičko sučelje: Intel HD3000 i ATI HD 6770M
Ostale specifikacije su ovdje: https://everymac.com/systems/apple/macbook_pro/specs/macbook-pro-core-i7-2.4-17-late-2011-unibody-thunderbolt-specs.html

Sada malo o prijenosniku i zašto baš taj.
Prijenosnik se ciljano tražio po lokalnim oglasima i pronađen je savršen primjerak koji odgovara opisu, bez oštećenja, dobrom baterijom i svime što s njim dolazi.
Mala napomena; ovi prijenosnici su prilično rijetki iz dva razloga. Prvi je što su dosta manje zastupljeni od 13 i 15-inčnih inačica, a drugi što ih je teško naći u potpuno ispravnom stanju.
Mnogi su završili u dijelovima, budući da je Apple muku mučio s tadašnjim diskretnim AMD i Nvidia grafičkim karticama. Dok je Nvidia nalazila načine kako riješiti te probleme kroz opozive i servise, to nikada nije bio slučaj s AMD grafikama iz te godine. Kod 15″ modela ste još mogli zaobići ovaj nedostatak zamjenom ploče s onom iz 2012. modela, kod 17″ to jednostavno nije moguće jer taj model nema nasljednika niti alternative.
Stoga, moja euforija nalaženja savršenog 17″ MacBooka nije trajala duže od tjedan dana.
Odlučih se instalirati zadnji macOS Ventura putem Open Core Legacy Patchera – softver koji omogućava instalaciju novije verzija macOS-a na ove stare MacBookove koji odavno nemaju podršku, inače bi ostao na zadnjoj verziji “High Sierra”.
Nesretni slijed događaja
Vrlo brzo uslijedio je hladan tuš! Preko vikenda ostavio sam prijenosnik kući, a nakon povratka me je dočekalo ne-baš-ugodno iznenađenje – crni ekran!
Prijenosnik nije davao znakove života, međutim, iako tužan, nisam bio previše iznenađen.
Prije kupovine sam bio informiran da su AMD grafike bile problematične i krepavale su kao lude u to vrijeme. Popravci su najčešće bili kratkog vijeka – bilo da ste svoj MacBook “ispekli” u pećnici, odnijeli u Apple servis ili svom lokalnom serviseru elektronike da odradi popravak ploče, ne bi živio znatno duže.
Tako da se odlučih na sljedeći korak – odnijeti ga osobi stručnoj za popravke ploča (inače frendovom MacBooku je nekoć pećnica presudila jer se ploča prepekla, stoga ovo ne bi bio mudar izbor).
Odluka je bila teška – ugraditi mu bypass. Rješenje je gašenje problematične grafike i preusmjeravanje diskretne na integriranu grafiku. Ovo “rješenje” nije idealno – time gubite mogućnost priključivanja na vanjski ekran i dobijete znatno lošije grafičke performanse.
Naziv ovog (ne)famoznog postupka je DeMux i zahtjeva rad na “pacijentu” dok je pod “anestezijom”, odnosno, “pacijent” je uspavan i izvor napajanja je isključen.
Ako se “pacijent” probudi i vidite sliku na ekranu – “operacija” je bila uspješna.
Tako je naš prijenosnik dobio novu priliku i izbjegao završetak svoje karijere u dijelovima.

Posljedice “operacije”
Kao rezultat ovakve operacije, dobili smo prilično oslabljen laptop koji više ne može “trčati” kao nekada, te u njegovom novom “životu” potrebno je naučiti neke nove stvari. Dakle, MacOS više nije na njemu ono što je nekad bio.
S AMD grafikom, bez Metal podrške (Apple je napravio svoju verziju OpenGL-a koja se zove Metal koja zahtjeva nove inačice macOS sustava) performanse nisu baš najsretnije. No, s Intel HD3000 grafikom performanse su prilično razočaravajuće. Također, nova “Sonoma” zahtjeva bar SSD za ugodniji rad, dok je s HDD-om gotovo neupotrebljiva. K tome još dodajmo i ovo: s obzirom da je HDD u ovom MacBooku već prestar da bi ispunio zahtjeve novog macOS-a, očito da ovo nije rješenje koje bi bilo najbolje za naš MacBook u stanju u kakvom se nalazi sada.
Sustav koji često zastane je frustrirajući za korisnika i nije baš ugodan za rad, stoga je vrijeme da se nađe nešto što će dati našem starom MacBooku novu priliku.
Opcije koje imamo na raspolaganju:
- Povratak na “High Sierru” ili neki raniji sustav – ovo baš i nije najsretnija opcija, posebno zbog nekih aplikacija koje neće raditi jer više nisu podržane. Za sve sustave poslije “Mojave” koji zahtjevaju Metal podršku za grafičku karticu jasno je da će animacije štekati i iskustvo neće biti najbolje
- Instaliranje Windowsa – slično kao i za “Sonomu”, s ovakvim hardverom korisničko iskustvo ne bi bilo najbolje, plus što vjerojatno neki driveri neće raditi najbolje. Također, Windowsi 11 zahtjevaju TPM 2.0 za što nisam siguran da naš MacBook ima
- Instaliranje Linuxa – definitivno dobro rješenje, obzirom na to da ćemo dobiti prilično funkcionalan laptop (čak sve funkcijske tipke rade!)
Novi život starog MacBooka
Kako smo već ranije ustanovili – potencijalna zamjena za macOS sustav bi bila neka Linux distribucija jer želimo izvući maksimum iz našeg MacBooka, a također želimo imati brz i fluidan rad – dat ćemo priliku Void Linuxu.
Ok, idemo baciti našu jabuku u ponor, odnosno, “Enter the Void” kako kaže službeno uputstvo, te promotrimo što ćemo dobiti kao rezultat.
Prva stavka je određivanje bootloadera koji će učitati naš novi sustav.
Opcija baš i nema previše:
- OCLP bootloader – već se koristi za bootanje macOS, a može prepoznati Windowse i Linux distribucije
- rEFInd – odlična sekundarna opcija, pogotovo ako želimo bolju podršku za druge sustave ili čak riješiti se macOS-a u potpunosti
- Clover, Chimera, Multibeast i ostali – više su namjenjeni “Hackintosherima” te nisu baš tako popularne opcije kao prva dva
Obzirom na to da već imamo dosta prostora na Appleovom HDD-u, a i bootloader koji radi svoj posao, ono što ćemo probati je iskoristiti OCLP bootloader te napraviti particiju za naš Void Linux, pri čemu možemo zadržati macOS ako nam bude potreban da obavimo neki posao.
Particiju možemo napraviti na dva načina – iskoristiti Bootcamp za instalaciju Windowsa ili Disk Utility alat te ručno napraviti particiju. Vjerujem da oba načina vode istom rezultatu.



Nakon što smo to napravili, imamo spreman USB s odabranom Linux distribucijom.
Ovdje ćemo koristiti Ubuntu da imamo lijepo grafičko sučelje, a instalaciju možemo obaviti kroz Terminal.
Ponovno pokrećemo sustav i biramo USB s Ubuntuom. U našem slučaju to je VTOYEFI (Ventoy koji pokreće Ubuntu izravno preko njegove ISO slike).




Nakon što smo sve učitali, instalirat ćemo par alata:
sudo apt update
sudo apt install wget arch-install-scripts
wget – za skidanje Void Linux baznog sustava
arch-install-scripts – kolekcija Arch Linux skripti koje su korisne za operacije poput generiranja fstab datoteke (raspored i organizacija particija te montiranje istih tijekom procesa bootanja sustava) te chroot (privilegirane operacije na root particiji).
Postavljamo particije na sljedeći način:
- Boot particija (/boot)- tu ćemo instalirati GRUB bootloader
- EFI particija (/boot/EFI) – koristimo postojeću, te ćemo dodati GRUB Bootloader i Void Linux kao opciju tokom boota
- Root particija (/) – ovdje ćemo instalirati sustav
- Možemo stvoriti odvojenu /home particiju te swap particiju, ali jednostavnosti radi ovaj korak ćemo preskočiti, a za swap možemo instalirati zramen



Mountanje particija
- Montiramo root particiju: sudo mount /dev/sda1 /mnt
- Montiramo boot particiju: sudo mkdir /mnt/boot && sudo mount /dev/sda2
- Montiramo EFI particiju: sudo mkdir /mnt/boot/EFI && sudo mount /dev/sda3
Generiramo fstab:
sudo genfstab /mnt -U >> /mnt/etc/fstab
Napomena: -U opcija služi za dohvaćanje UUID zapisa svake particije umjesto da ih nalazi po nazivu
Kopiramo podatke o mrežnoj konekciji:
sudo cp -L /etc/resolv.conf /mnt/etc/

Dohvatimo Void Linux:
cd /mnt && sudo wget https://repo-default.voidlinux.org/live/current/void-x86_64-musl-ROOTFS-20240314.tar.xz

Raspakiramo arhivu:
tar xvf void-x86_64-musl-ROOTFS-20240314.tar.xz -C /mnt

Sada možemo pristupiti root particiji i preuzeti “vlasništvo” nad njom:
sudo arch-chroot /mnt

Pratimo upute iz dokumentacije i instaliramo osnovne stvari:
https://docs.voidlinux.org/installation/guides/chroot.html


Instalacija bootloadera i “čišćenje” nakon instalacije:
xbps-install grub-x86_64-efi
grub-install –target=x86_64-efi –efi-directory=/boot/efi –bootloader-id=”Void”

xbps-reconfigure -fa
Napustimo chroot okruženje i odmontiramo particije:
exit
umount -R /mnt
reboot

Ponovno pokrenite sustav, držeći fige da će sve raditi.
Sustav je spreman za korištenje, da vidimo što smo dobili ovim zahvatom.
Prvi boot i testiranje
Prvi boot je prošao bez problema. Sve prilično brzo radi te se čitav sustav podigne u svega par sekundi, s tim da ipak ima malo čekanja dok se ne prikaže radna površina (Gnome).

Jedna čudna stvar koja se da primjetiti je što sada Command tipka nema funkciju kao na macOS-u već ima funkciju Super tipke, tako da kopiranje datoteka vršimo sada sa Ctrl+C umjesto sa Command+C, što uopće nije neočekivano, a može se i podesiti.

No, dogodio se i jedan manji problemčić.
Dočekao me Broadcom hell – u nekim slučajevima su Sizifove muke omogućiti mrežu na ovom čipu, oni koji su se s time sreli znaju kolika je to gnjavaža obzirom na to da ovaj MacBook koristi BCM4322 čip, a driver zadano ne dolazi uz linux-firmware-broadcom paket koji se isporučuje standardno na Void Linuxu. No, postoje upute kako ga “natjerati” da proradi:
https://www.reddit.com/r/voidlinux/comments/kuxzm7/how_to_make_wifi_work_for_b43_drivers/
Konačno, imamo i Wi-Fi!

Sad bi mogli testirati neku igru da vidimo kako bi će to raditi sa “slabijom” grafikom.
Instalirajmo Lutris i Wine putem Flathuba:

Tiberian Sun – radi bez greške:


Submarine Titans GOG – dođe do menija, prilikom pokretanja ostane samo crni ekran. Testirano je i na macOS putem Wineskin Winery i tu radi kako treba. U međuvremenu je to riješeno ponovnim kreiranjem Wine konfiguracije brisanjem .wine foldera i pozivanjem naredbe winecfg.

Potrošnja resursa izgleda ovako (primjetite i zramen u “akciji”):

Završne misli
Sve u svemu – solidno. Not great, not terrible, 3.6 / 5. Neke stvari tu i tamo neće raditi, primjerice Wineskin Winery na macOS-u je pokrenuo jednu igru bez problema koju Lutris i Wine pod Linuxom, iz nekog razloga, nisu mogli – riječ je o igri Submarine Titans ali je to naknadno riješeno. S druge strane, Tiberian Sun se odmah pokrenuo bez greške. Što se tiče drugih stvari, malu glavobolju zadavao nam je Broadcom i njegovi driveri za bežičnu mrežu. Srećom, žičana veza funkcionira bez problema pa smo bili u mogućnosti skinuti odgovarajuće prateće programe te omogućiti i bežičnu vezu, da se ne mučimo s dodatnim bežičnim adapterima.
Ostale stvari rade nativno, bez ikakvih dodatnih postavljanja, što je fantastično. Pojavit će se tu i tamo neki problemi, primjerice, nakon ponovnog logiranja, ako smo prethodno bili odlogirani, ne želi doći do radne površine – isto vrijedi za Xorg kao i za Wayland sesiju. Vjerojatno je potrebno dodatno istražiti potencijalno rješenje.
U konačnici, vrlo solidna zamjena za macOS “Sonomu”, Void Linux se boota daleko brže čak i s HDD-a, te sve otvara prilično brzo. Pošto se na macOS-u vrte ne-Metal driveri, moguća su povremena treperenja ekrana u vidu glitcheva kod animacija, dok Gnome animacije rade sasvim fluidno. Definitivno je naš MacBook ovim zahvatom dobio novu namjenu i pred njim je još puno izazova. Jeste li vi spasili neki stari stroj?
Autor: Dino O.