On the conversion of a Macbook Pro

38 replies [Last post]
WootMoon
Offline
Joined: 03/06/2013

Hey guys!

A bit of background here: I've been discovering the issue of free software on the last few months, after trying Ubuntu so I could learn to use a GNU/Linux OS. Since then I installed Trisquel on VirtualBox and started playing around, thinking about the possibility of a dualboot, which brings it to my question:

Is it possible to convert a Macbook Pro to run Trisquel? Reading elsewhere I gather that there are still a fill issues with wireless and video card drivers that could make that hard or unlikely. Is this still the case? Are there any successful cases? I have this already bought hardware and don't want to waste it so I can make a change about my software choices.

Thank you in advance for any advices!

lembas
Offline
Joined: 05/13/2010

Hello there!

Probably it is possible and it's easy for you to find out. Make a live CD or a live USB and try! Then you'll see whether your hardware works for real.

Here's some documentation http://trisquel.info/en/wiki/installation-guide

Always glad to see people who don't want to waste hardware!

icarolongo
Offline
Joined: 03/26/2011

I use Trisquel on Macbook 5,1 from 2008 (aluminium). Only the big problem was Broadcom card for wireless. You can buy one Atheros USB in ThinkPenguin.com and solve this.

For NVIDIA graphics nouveau works fine =) The only way to install was with DVD or CD. The USB install doesn't works here, probably one restriction from Apple.

Zancudo
Offline
Joined: 09/19/2012

am running Trisquel 5.5 on two MacBook2,1 (late 2007) machines. One is set up as dual boot besides Snow Leopard (my mums machine) and mine as single boot. most things work out of the box even the wifi, but not so the camera. i dont care about that though. there are lots of informations for other macbook (pro) versions on the ubuntu forums, they call it mactel i believe... most things i found there also work for Trisquel.

well i just remember that i had to add something to the grub.cfg file to make the graphic card work. (Intel 945GM Chipset, GMA 950) adding
fakebios and fix_video before the kernel is loaded and kernel options video=efifb noefi did it for me.

besides that i'd think lembas' idea using a live-cd and try sounds good

MagicFab
Offline
Joined: 12/13/2010

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2013-03-16 13:38, name at domain wrote:
[...]
>
> Is it possible to convert a Macbook Pro to run Trisquel? Reading
> elsewhere I gather that there are still a fill issues with wireless
> and video card drivers that could make that hard or unlikely. Is
> this still the case? Are there any successful cases? I have this
> already bought hardware and don't want to waste it so I can make a
> change about my software choices.

In my opinion it is a bad idea. You risk loosing important
functionality (wireless, webcam, suspend/resume) and any improvements
to support your system will die with that system. You will also be
advertising Apple's brand whenever you use it.

If it's a recent model, you may want to sell it and choose a system
bette rsuited to run free open source software.

Fabian

- --
Fabián Rodríguez
http://fsf.magicfab.ca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: PGP/Mime available upon request
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlFHgZAACgkQfUcTXFrypNUi5ACgpiRcISmxpME9+Nf166jZoUxM
AjkAn1O2S07h/hOKQWvGLdL6EGKCGI5v
=06cZ
-----END PGP SIGNATURE-----

icarolongo
Offline
Joined: 03/26/2011

How I said before worked with me. Macbook 5,1 from 2008 with 2GB of RAM with Trisquel 5.5 64-bit works with webcam (Cheese works =), keyboard, bluetooth, Mini DisplayPort, USB, DVD drive, NVIDIA graphics (nouveau - I use GNOME Shell perfectly). Only big problem was suspend like magicfab said and wireless card (Broadcom).

WootMoon
Offline
Joined: 03/06/2013

Thank you very much for the insights and suggestions! I'll try the Live CD and see where it goes from there... if any progress is made I'll post it here.

WootMoon
Offline
Joined: 03/06/2013

Quick update: I've tried to boot a Trisquel LiveCD through a USB drive, but Apple made it effectively impossible to boot anything other than OSX this way. Most methods available online don't actually work, and a few are way too technical for me. This kind of lockdown is a good reminder of why I'm looking for alternatives. MacBook Air users (no CD/DVD drive) are screwd.

Burning a DVD-RW now... we'll see.

icarolongo
Offline
Joined: 03/26/2011

I said ;-)
I use CD or DVD, the only way. If have Macbook Air you need to buy one CD/DVD drive for USB.

https://help.ubuntu.com/community/How%20to%20install%20Ubuntu%20on%20MacBook%20using%20USB%20Stick

Last year I tried the tutorial above, but doesn't works.

Zancudo
Offline
Joined: 09/19/2012

you can boot the mac from usb device/pen.
you whould need to format it with gpt and have an EFI System patition on it. Booting the mac with holding down the key then allows to select a bootloader from the EFI partition. grub would do and then could boot a liveCD.iso which is on a second partition on the usb device

petrus
Offline
Joined: 03/19/2013

Hi,

my experience is that you can boot Trisquel from a USB easily if you have already a dual boot with grub e.g. with native macos and ubuntu.

First, connect your trisquel usb while the computer is still off;

When you start boot and grub lets you choose between your systems, after you choose linux at rEfit start screen,

(don't type the quotes at your prompt line)

press "c" to enter grub command line;

type "ls" to see which are your drives, and localize your usb disk as grub sees it. E.g, your hard drives could be like (fd0,'number'), and (fd1) would be your usb, typically listed in last position;

type "set root='(fd1)'" assuming (fd1) was your usb drive;

type "chainloader +1";

type "boot";

And voila, that should start your mac from the usb, letting you test trisquel

WootMoon
Offline
Joined: 03/06/2013

Thank you for the suggestions about how to boot from a USB stick! I ended up burning a CD and booting from it, easy and quick (as it should be).

A quick run down of my experience:
MacBook Pro (7,1 - mid 2010)
Trisquel 6.0 32 bits

Worked "out of the box":
- Ethernet
- Bluetooth
- Touchpad (basic features)
- Sound
- Keyboard Functions (Brightness, Key Backlighting, Volume Control)
- HFS+ Reading (could access internal HD)

Worked, but was a bit buggy:
- Microphone (muffled, below average quality)
- Suspend/Hibernate (it went to sleep when I closed the lid, but froze once I opened it)

Didn't work:
- Wireless (firmware missing)
- FireWire (didn't recognize an external HD)

Things I don't use, so couldn't test:
- Extra monitor
- Card reader

Couldn't figure how to test:
- Sensors (Temperature, Fans, Room Lighting, etc.)
- CD/DVD Writing (using a LiveCD? :P)
- 3D Video Acceleration (games maybe?)

The wireless issue is unsolvable for now, I guess (unless I buy a usb card). Any suggestions about why the firewire device didn't show up? Or about the last 3 things I could't figure how to test?

Thank you all again!

icarolongo
Offline
Joined: 03/26/2011

I don't know about sensors. Trisquel uses nouveau driver for NVIDIA since the version 5.5.

Some info here:
http://www.lm-sensors.org/ - sudo apt-get install lm-sensors
https://wiki.archlinux.org/index.php/Lm_sensors
http://nouveau.freedesktop.org/wiki/PowerManagement
https://help.ubuntu.com/community/MacBookPro7-1/Quantal#Sensors
https://help.ubuntu.com/community/MacBookPro7-1/Oneiric

But CD/DVD writing is easy to know. Try to burn one with Brasero ;-)
For webcam you can install Cheese.

If you have some effects on default Trisquel (with Compiz) nouveau worked.
Try: Super (Command) + S and Super + W

Or you can test GNOME Shell:

sudo apt-get install gnome-shell

After log out and choose the user to login and change GNOME Classic for GNOME in the login screen (GDM).

If it works share for others:
http://h-node.org/notebooks/view/en/236/Macbook-Pro-7-1 (out of date - only tested with 4.5 without nouveau, only worked without 3D acceleration)

One question: Why not 64-bit?

WootMoon
Offline
Joined: 03/06/2013

Thank you for the tips! I forgot to test the iSight, will try Cheese.

I had some visual effects on the default gnome fallback, so nouveau did work. If I go for the dualboot I'll install gnome shell and see if it works.

Hmmm... this page seems very interesting:
https://help.ubuntu.com/community/MacBookPro7-1/Maverick

But they make a lot of references to proprietary drivers, is it possible to know what is what in this stuff? Can I go the usual way and think that, if it's in the trisquel repositories, it's safe?

I'm not sure why not 64 bits, but I guess it's because I don't really know the diference, the pros and cons of each one. Will startpage it :)

lembas
Offline
Joined: 05/13/2010

>Can I go the usual way and think that, if it's in the trisquel repositories, it's safe?

That's how it's supposed to work. And should you find something that's not free, file a bug and it will be nixed.

Magic Banana

I am a member!

I am a translator!

Offline
Joined: 07/24/2010

You can assume that what is in Trisquel's repositories is safe. This is one of the main objective of Trisquel: make its users not worrying of accidentally installing proprietary software. Mistakes may happen but if spotted, proprietary software in a Trisquel repository is considered a critical bug (the highest level).

The recommendation of a 32 bit system may be linked with the use of proprietary software. Some of those evil applications (I will not mention them) raise technical troubles on a 64 bit GNU/Linux system.

WootMoon
Offline
Joined: 03/06/2013

Took a look around and I think I understand the difference better now, and there's really no reason not to go for 64bits.

While researching for a solution to the wireless firmware I stumbled upon the broadcom "open source" drivers, that then proceed to install proprietary firmware. It's amazing the lenghts they'll go to make things around this issue as murky as possible.

WootMoon
Offline
Joined: 03/06/2013

iSight worked fine with Cheese.

I used xsensors with lm-sensors and got the temperatures and fan rpm, even got the temperature from the videocard through nouveau. Would be nice to have an applet for gnome panel.

WootMoon
Offline
Joined: 03/06/2013

I found this applet for GNOME panel:
http://sensors-applet.sourceforge.net/

But it's not in the Trisquel repos. I don't have enough knowledge to discern if it's free or not, is there some way to submit this to the community?

akirashinigami

I am a member!

I am a translator!

Offline
Joined: 02/25/2010

If you go to download > source, it says "GNOME Sensors Applet is released under the GNU GPL," so yes, it is free. I'm pretty sure all the software on sourceforge is free.

WootMoon
Offline
Joined: 03/06/2013

Thank you! :)
So I'll update the question: If it's free, it's in the Ubuntu repos (but not in the Trisquel ones), is there a way to submit it so it's included?

onpon4
Offline
Joined: 05/30/2012

> I'm pretty sure all the software on sourceforge is free.

SourceForge has no policy regarding that. They allow any software; it's just that their focus is "open source" software.

lembas
Offline
Joined: 05/13/2010

It is in the repos but only for older versions. Don't know why. http://packages.trisquel.info/search?keywords=sensors-applet&searchon=names&exact=1&suite=all&section=all

Does it work if you compile it?

WootMoon
Offline
Joined: 03/06/2013

Thanks for pointing it out! Never compiled an app before, I don't have much programming knowledge... could give it a try, though.

WootMoon
Offline
Joined: 03/06/2013

After going through an Ubuntu walkthrough, after a lot of "apt-get install" commands, I managed to compile it.

When it was added to the panel I got a "No sensors found!" message, but that's probably because I'm testing it on the Trisquel 6.0 64bits I have installed on VirtualBox. I'll have to test it on a LiveCD to confirm it works, though now that I got the deb package it should be quicker.

lembas
Offline
Joined: 05/13/2010

Well done. There could also be some documentation, you might have to configure it somehow.

sensors-detect might come handy but don't force it because it could be dangerous for your hardware!

WootMoon
Offline
Joined: 03/06/2013

I tried to install the compiled .deb package of the sensors-applet with a LiveCD for testing and it worked, but only once I installed these packages:

- Dependencies (already installed, though):
gconf-service libatasmart4 libc6 libcairo2 libdbus-glib-1-2 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnotify4 libpanel-applet-4-0 libsensors4 libx11-6 libxext6

- Necessary:
lm-sensors i2c-tools libi2c-dev libglui2c2

And an extra to have HD data: hddtemp

linuxbookpro
Offline
Joined: 03/18/2012

If brightness keys don't work by default try adding

# sudo apt-get install xbacklight

then you can manually set your hot keys to raise and lower the brightness.
http://linux.die.net/man/1/xbacklight

WootMoon
Offline
Joined: 03/06/2013

Will keep this one in mind, thanks!

lammi87

I am a member!

Offline
Joined: 07/27/2012

Hi,

Have you heard about www.h-node.org ? Its a hardware database which aims to collect information about how well various devices like laptops, graphic cards and wifi cards work with free software. You can use it to find compatible hardware in the future. You can also contribute to it by reporting your hardware to it.

WootMoon
Offline
Joined: 03/06/2013

Thank you for pointing this, once I've made the jump and dual boot it I'll definitely contribute there.

lammi87

I am a member!

Offline
Joined: 07/27/2012

:)

bobbyhayse
Offline
Joined: 04/29/2013

Hi, Wootman I totally agree with lembas.

WootMoon
Offline
Joined: 03/06/2013

Continuing the convertion, I found this multitouch gesture recognizer (under GNU GPL 2 license) called Touchegg: https://code.google.com/p/touchegg/ . Looks promising!

It seems to have a second option for GUI:
https://github.com/Raffarti/Touchegg-gce
But it's under a CC Attribution 3.0 license. Not sure how (or if) the CC licenses address freedom issues.

Let's test it!

P.S. This guy also has some configurations to change key bindings and adapt them to the apple keyboard:
http://task3.cc/881/configure-the-keyboard-for-your-macbook-and-ubuntu-12-04/

megurineturilli
Offline
Joined: 01/10/2012

I had a Macbook Pro with two graphics cards, one AMD Radeon and an integrated Intel. When I use the BIOS emulation then the system selects the AMD chipset, and I can't switch to intel graphics. I had to install a patch to supports the apple_gmux which handles the switching beetween graphics cards, and setting the screen brigtness. To use the Intel graphics you will have to boot in EFI mode.
Apples EFI is nonstandard, I heard that installing Ubuntu can brick a Mac.

WiFi did not work with Ubuntu, I guess that it won't work with Trisquel.
The newest Macs (and iPhone) support AirDrop which requires a WiFi card that allows you to be connected with two different SSIDs at a time. Maybe a binary blob is required to use WiFi.

When you buy an Apple product, you pay for a license for a nonfree OS.
Some companies offer a Windows refund, and Apple is as bad as the other companies which do not offer a Windows refund. Or even worse as the use the term "Open Source" to target free software users. I used Debian on my old PC before I switched to Mac. Apple avoids the GPLv3 and contributes a little bit to non copylefted free software.

I sold my MacBook Pro and baught an Emperor Penguin GNU / Linux Notebook from ThinkPenguin. I still use some of the non copylefted free software packages that was written by Apple employees (mostly libdispatch and LLVM/clang). But I prefer copylefted free software. Currently I'm working on a free replacement for Mac OS X, based on Trisquel, GNUstep and some components of the GNU hurd.

The only Apple hardware that I own are a Magic Trackpad, a wired Apple Keyboard an Apple IR remote. No nonfree software is required to use these devices. I use the Magic Trackpad for testing multitouch support in free operating systems. Right click did not work on Ubuntu when I enabled two finger scroll on my Mac. Think Penguin hardware also offers two finger scroll.

icarolongo
Offline
Joined: 03/26/2011

Well, permissive license is free software. If you want to don't use free software from Apple you need to avoid the CUPS [0] (used in the most of free systems) for your printer.

Second. If you really want to avoid non-copyleft software you need to remove also the X Window System (display server)[1]. Today the best option is the Canonical Mir [3] - it's GPLv3. Wayland [3] is permissive license also (MIT).

Ubuntu can be the first 100% GPL free system with GNU + Linux + Mir.

[0] http://en.wikipedia.org/wiki/CUPS
[1] http://en.wikipedia.org/wiki/X_Window_System
[2] http://en.wikipedia.org/wiki/Mir_(display_server)
[3] http://en.wikipedia.org/wiki/Wayland_(display_server_protocol)

megurineturilli
Offline
Joined: 01/10/2012

No, I don't want to avoid non-copylefted free software.
Even RMS uses non-copylefted free software. (the bootloader in the lemote machine is BSD-licenced.)

WootMoon
Offline
Joined: 03/06/2013

I've read a lot about the wifi freedom issues on laptops here on the forum, and decided to find out if it was possible to swap the wifi card on the Macbook Pro. My regret keeps piling up.

It's absurdly complicated:
http://www.ifixit.com/Guide/Installing+MacBook+Pro+13-Inch+Unibody+Mid+2010+AirPort+Card/6024/1

No wonder the ifixit people have some scathing reviews about Apple recently.

I don't have enough technical knowledge about this, but looking at it I'm guessing that even the physical format of the wifi card could be an issue if I tried to swap it?

Are there any know options?

Does Apple have restrictions on this kind of swap?

matt
Offline
Joined: 06/24/2013

Hi, I have been running the various Debian based distros and Fedora on a Macbook Pro 15 2011.

1) Battery Life

A major problem that it usually comes down to is dual graphics. The EFI bootloader hides the integrated GPU on Macs with dual graphics. Eventually this will cost significant battery life - no matter how you tweak it. Also, you will most likely need proprietary drivers if your Mac is not old enough.

I'd recommend to install the TLP power optimizations to improve your battery life a bit:

sudo add-apt-repository ppa:linrunner/tlp
sudo apt-get update && sudo apt-get install tlp tlp-rdw ethtool

2) Slow boot

Macs will boot Windows or Linux distros in most cases using BIOS emulation if you install the Linux distro the default way. That makes booting the Linux distro about 20-30s slower overall. But it's still recommended because more hardware is supported than when you EFI boot.

3) Partitioning, shared partition

If you dual boot like me, I'd like to give you some recommendation on how and when to partition using what tool. Because you can easily mess this up and make Trisquel unbootable. Here's an extract of a guide that I wrote for myself in case I have to re-install Trisquel:

Formatting
Format the disk using Disk Utility in OSX before installing Trisquel as such that there is OSX (HFS+), Shared parition (optional)(FAT32), free space to format with your linux distribution.

Once Linux is installed, do not format with OSX Disk Utility anymore. Even re-formatting the shared partition only using Disk Utility can mess up the partition table such as that Linux becomes unbootable – even with refind – and you end up in grub rescue. You should format the disk on a working dual boot installation only with GParted from within Trisquel.

Shared Partition
Due to a lack of drivers, the only options to format the shared partition are: FAT32, exFat, HFS (not journaled). OSX will not mount other formats or cannot read them (e.g. NTFS). However all of the available working formats for a shared partition have their troubles:

FAT32...
...works best at the beginning – without any special configuration. But at some point Linux may just mount it as read-only.

exFat...
... gets recognized as a boot volume

HFS (journaled HFS)...
...is nice because Time Machine will automatically backup this parition, but you have two problems:
1. Permissions between two operating systems
2. User ownership (OSX default UID is 501, Linux default UID is 1000 or 1001)

It's possibble to get such a setup working by changing UID's. But it can get very messy.