Thursday, June 11, 2009

Linux and Apple: Getting Them to Play Nice

0 comments

The Quick Stuff

For all you "I hate reading" readers, here are the highlights:

  • Ubuntu and Apple: Just click on one of the links to get to your particular Mac, and you'll be fine.
  • Fedora and Apple: If it's new, it's broken.

The Actual Post

To borrow the style of Top Gear announcing one of their letters, I have been inundated with literally three hits concerning Linux and some piece of Apple hardware (thank you Google Analytics). Well, seeing as it was pretty darn frustrating trying to get my penguins to eat fruit for the longest time, I figured I'd help out the Internet to do just that. Let's just hope Google picks up on this post, eh?
To begin, let's start with the latest OS I've played with:

Things to Do Before Installing Linux

Download and install REFIT, it just makes things easier

Fedora 11 - "Leonidas"

I'll spare the 300 jokes and move right on into getting this working on your Apple.

Hardware Compatibility Issues

Not every Apple is equal, and as is especially the case with Linux, some Apples are much more equal than others. To keep things simple, let's assume that we're only dealing with Intel-based Macs, and that I'll be lumping Macs together based upon their chipset (more or less).

Good-to-Go

If you're using a Mac with an Intel Core Duo or Core Solo, you're A-OK.

If you're using a Mac with an Intel Core 2 Duo with an Intel-based chipset, you're A-OK.

Not So Good-to-Go

If you're using a fairly new Mac with an Intel Core 2 Duo and an NVIDIA chipset, you're going to have lots of problems.

If you've got a fairly new Mac with a MultiTouch trackpad (with no discrete button), it won't work under Fedora without modified drivers (and even then, it's a bit weird).

Things to Do After Installation

Synchronize the MBR with the EFI partition tables, by selecting the "Partition Tool" underneath the OS icons. Doing this will get rid of the "OS not found" message.

Get some new repositories:

su -c 'rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm http://rpm.livna.org/livna-release.rpm'

And some better software:

su -c 'yum -y update && yum -y install vlc gstreamer-plugins-ugly gstreamer-plugins-bad gstreamer-plugins-bad-extras gstreamer-ffmpeg libdvdcss nautilus-open-terminal ccsm'

Don't forget about the flash plugin:

# For 32-bit users:
su -c 'rpm -Uvh http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm && yum -y install flash-plugin'

# For 64-bit users:
wget http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-10.0.22.87.linux-x86_64.so.tar.gz && tar xfa libflashplayer* && cp *.so /usr/local/lib64/mozilla/plugins/'

Ubuntu 9.04 - "Jaunty Jackelope"

Jaunty just sounds terrible, despite being rather appropriate.

Hardware Compatability Issues

Even with Ubuntu's legendary driver support, some things just end up acting a bit weird. Here's what I've noticed:

Not so Good-to-Go

The newer NVIDIA chipset-based Macs have issues dealing with ACPI functionality, in the form of being unable to cleanly reboot. This means you'll be shutting down before booting up. Not a big deal, but kind of annoying along the way.

You'll need patched audio drivers (available on the top-most Ubuntu link, as per your hardware), as there aren't good ones out there just yet.

Things to Do After Installation

Get some better software:

Now, pay attention to these updates, as it asks you to accept the Sun Java license agreement, and waits there until you do (this isn't a walk-away installation).

sudo apt-get update && sudo apt-get install ubuntu-restricted-extras openssh-server vim-full nautilus-open-terminal bum

Any thoughts or comments?

Tuesday, June 9, 2009

Fedora 11 "Leonidas" Ongoing Review

0 comments

And It's Broken

Finally, after 2 weeks of delays (the original release date was for the 26th of May), Fedora 11 has dropped. Just after watching the latest WWDC keynote, waking up and downloading the latest release of my other favorite operating system should have been a great thing. But, unfortunately, it wasn't.

It's Half My Fault

Sort of... The thing is, the goals and principles of the Fedora Project are aligned with a genuinely free philosophy, preferring to keep all the little bits of the operating system as free and open as possible. Couple this with the excellence in engineering which comes from a substantial amount of contributions from Red Hat, and Fedora seems like the perfect distribution to use.

But, it's not. The principles of keeping proprietary software out of the operating system run diametrically opposite to the users' wishes. The end-user just wants their computer to function properly. While I must admit I prefer the notions nobility and principle, their evil-painted cousin practicality sometimes needs to take precedence.

My two computers on which I attempted to deploy Fedora 11 are my iMac and my MacBook Pro. Now, any seasoned Linux veteran and OS X user will probably now instantaneously guess what this post is about, and they would be right. Fedora 11 just doesn't have the flexible enough principles to incorporate the 'ugly' bits of code needed to run smoothly on such a 'different' architecture (mind you, Jaunty does).

So, it's kind of my fault in the sense that: A) I want to use a 'non-standard' platform; and B) The platform requires substantial non-free bits (which Fedora doesn't have).

The Problems So Far

Well, let's break them down into their respective categories (each is using the live CD for their architecture):

The iMac

Well, to begin, it boots fine (a little bit too much fragmentation on the CD, but otherwise OK). The GUI loads successfully, though why can't we just automatically login? The installer works well, selects the appropriate choices, and after some custom-partitioning from me (200 MB ext3 /boot ; 2048 MB swap ; 'the rest' GB ext4 /), we're off. It partitions the system, loads the live CD image onto the hard drive, and installs the bootloader. Then, we restart. However, someone decided that populating the screen with text which indicates where exactly the system is in its init cycle was too much of a bother, so now we just get a black screen for 5 or 6 seconds (not exactly helpful if you think there's been a problem). The CD gets ejected, and we're rebooting!

Refit does its job perfectly, and finds the newly-installed Linux partitions. And then...it can't boot from them. It just can't find what it's supposed to boot from. Keep in mind, this system has successfully booted all sorts of Linux distros in the past, all with roughly the same configuration, and this is the first time I've ever seen the "Insert system media and press any key" message pop-up. *sigh*.

The MacBook Pro

If you thought the iMac was bad, this is even worse: To put it as briefly as I can: It just doesn't boot. One time it showed the Fedora 11 non-Plymouth boot screen, the others it just couldn't boot. Oh well there.

This is Why I Have VMWare Fusion

So, it's fired up inside VMWare, and seems to be going OK. Boot times are noticeably faster (though it's a VM, and I have an SSD, so not by much versus Fedora 10). Yum still sucks at downloading packages, as it always seems to get either the slowest mirror (which uploads at a pitiful 13 KBps) or ones that just don't work at all. Everything else seems to be roughly the same, but I'll be updating this entry with more commentary the more I use it. I know there are a lot of extra features in Fedora 11, and I look forward to using all of them.


Updates

Successfully installed Fedora 11 x86_64 on MacBook Pro, with NVIDIA drivers working. Restarting doesn't work (must use init 0); neither does wireless or sound (yet). Performance seems a tad bit slower than on the VM.

Ditto for the iMac. It turns out all you have to do is synchronize the MBR with the EFI partition tables, from right within REFIT. I'm not quite sure why, but oh well. The iMac, being the first iMac on Intel, has been out for a while now, and is really well supported by Fedora. The open-source AMD/ATI driver works nice, and provides AIGLX out-of-the-box, in addition to Plymouth (which could be prettier, but it's nice). NetworkManager is retarded, and doesn't turn on devices by default (why the hell not?). Everything else seems good...

Stay tuned...