Over the past couple of years, I’ve written a few blog posts trying to document my experiences running Fedora Linux on Apple’s hardware. Last week, I upgraded my laptop from a Macbook Air (mid-2012) to a Macbook Pro 13″ Retina Display (Late 2013).
Since I have 256 Gb of SSD, this is the first time I feel comfortable enough dual-booting my laptop (in the past I just didn’t have enough SSD space). The overall installation of Fedora on a Mac has been covered on this blog and other blogs several times, so I am not going to spend too much time on it. I will just highlight some of the issues I faced, and what I did to fix it.
Installation
On Mac OS X, using the ‘Disk Utility’ app, I reduced the file system from 250GB to 210GB, leaving me with 40Gb of unused space to use for my Fedora installation.
Using rEFInd (instead of the no longer developed rEFIt), I booted my live Fedora USB media and installed it on the SSD.
After the Fedora installation is completed, I lost my OS X boot screen, and I was only able to boot into Fedora. I had to reboot the mac hold Command+R to go into the Internet Recovery, and picked “Macintosh HD” as the start up disk. I then had to re-install rEFInd once I booted back into OS X. After doing that, both Operating Systems became available during boot time for me.
Internet Connection
I’ve recommended in previous posts that to get your Wi-Fi working on a mac, you may need a thunderbolt or usb ethernet adpater so you can install the RPMFusion repos, and install the propriateries broadcom drivers as the open source one may not be very stable depending on the router speed you are using. In the case of my Macbook Pro 13″ (Late 2013), Fedora didn’t try to use any broadcom open source driver, so I didn’t have to blacklist them at all.
yum install kernel-devel akmod-wl
Retina Display
GNOME 3.10 seems to somewhat support the Retina Display out of the box. My biggest problem here was the rendering of web sites on Firefox. After a bit of research, I figured out the configuration option: layout.css.devPixelsPerPx, which by default is set to -1.0.
Changing the value to 1.5, and the fonts became much better. Increasing to 2.0 may be recommended to some.
I also installed gnome-tweak-tool and under the Fonts menu, I change the ‘Scaling Factor’ from 1.0 to 0.9.
[Update] Not all applications will be Retina Display compatible, for example Spotify for Fedora isn’t. Check out the screenshot below with how high the resolution of Spotify is on the Retina Display. 🙂

Battery Life / Power Saving
Also based on previous posts, I created the following /etc/rc.local that handle most of the tunnables available for my Macbook Pro.
#!/bin/bash # echo 350 > /sys/class/backlight/intel_backlight/brightness # the above line works, but gnome 3 overwrites it when putting # the display to sleep. The command below takes care of it. /usr/libexec/gsd-backlight-helper --set-brightness 4 rfkill block bluetooth echo 50 > /sys/class/leds/smc::kbd_backlight/brightness echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs' echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy' echo '1' > '/sys/module/snd_hda_intel/parameters/power_save' echo '0' > '/proc/sys/kernel/nmi_watchdog' echo 'auto' > '/sys/bus/usb/devices/1-5/power/control' echo 'auto' > '/sys/bus/usb/devices/1-3.3/power/control' echo 'auto' > '/sys/bus/usb/devices/2-3/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:03.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.1/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:04:00.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:02:00.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.4/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.5/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.2/power/control' echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control'
The battery measuring on Fedora is a bit flaky, but I do believe I am getting pretty decent battery life out of it with the settings above. As per screenshot below:


37,112 total views, 17 views today
Hi friend
thank for this doc share with us,
recently i had installed fedora 20 on my laptop (asus k55vm) my laptop is not running more the 1 hour , can you help me out form this problem of power management ..
thanks you
make sure you brightness is not very high… play with powertop and see if it helps.
Just received a gift of MacBook Pro Retina. Installed Fedora 20 and followed your doc here, i am able to get good Batt life and Wireless working. Except i uses kmod-wl instead of akmod-wl (not working for me)
================
~]$ sudo dmidecode|grep MacBook
Product Name: MacBookPro11,1
Version: MacBookPro11,1
================
Many thanks for your good information here.
I bet akmod-wl isn’t working for you because you need to install kernel-devel package. once you do, uninstall kmod-wd and akmod-wl (if you left it installed) and yum install akmod-wl
any chance of you getting the external display working? (in Fedora 20).
I actually didn’t try on mbp 13″ but it did work with thunderbolt VGA & hdmi adpaters on my Macbook Air. I currently have uninstalled fedora on my mbp… I found a bug on refind that break suspend/resume on OS X… I need to re-install probably using rEFIt instead.
Can you say more about the problem? I am considering to buy a MBP retina 13″ and it is important for me that the external display is working under Fedora. Have you experienced any problem with this? Thanks.
VGA adapter doesn’t work for me on the MBP (Late 2013) Retina, this did work on my Air though.
Still debugging. Will post here if|when I get it working
Have you tried to connect the external display before booting Linux? It might be the ‘hot plug’ that doesn’t work properly in MBP (?)
Hi, I’m very curious, how does sleep mode behave with new Fedora on MacBook Pro? Is it close enough to OS X’s – sleeps when you close the lid and instantly wakes up when you open it?
Not really…. I just installed fedora20 on macbook pro 10,2. Wifi didn’t work out of the box, but that was easier to get working than sound (which surprisingly worked). The only problem now is to get external monitor working.
I just installed fedora 20 on my Macbook pro retina mid 2014,
external monitor works just fine, if it is plugged in before booting.
I have one connected with hdmi -> dvi
and one with minidisplayport -> dvi
so triple screen setup.
The only issue is that gnome will go into Hidpi mode if the latptop screen is the primary desktop, and will make everything on your other screens look very big.
It does not do this when your external display is the primary desktop, however, here and there you still have some huge shell elements, but normall applications work fine.
Has anyone had any success installing the Nvidia drivers? When I tried it resulted in a black screen.
[…] http://anderson.the-silvas.com/2014/02/14/fedora-20-on-a-macbook-pro-13-late-2013-retina-display/ […]
Helped me…..Thanks. Battery life is 5 hoours now from 1.5 hours. I downloaded NVIDIA drives from their site and now I am able to show presentations. Browsing while presentation to show live demo gives problem because of NVIDIA drivers….