Hackint0shing Dell Mini 9 on the cheap

When I read about getting a Dell Mini 9 for $200 and hackint0shing it to run Mac OS X, I was all over it. I ran out and got one. I was a bit frustrated that it required some stuff that would put my total cost over $200. (I got a video camera on the Mini 9, which already put my actual cost at $244, delivered). Specifically, I didn’t have a USB DVD and I didn’t have an 8GB flash drive. Those were the two alternatives mentioned in the Gizmodo article. They also said it would be pretty straightforward if you had the 16GB hard drive on the Dell, but I elected to keep the cost low and get the 8GB disk. I decided to see if I could do it with just my 4GB USB stick and the 8GB SSD. Here’s what I did and how it turned out.

When I joined the MyDellMini forums to download the linked files from the Gizmodo article, I was told that the various links didn’t work. That’s OK. You can find one of them at

Google.

Gizmodo recommended a 200Mb Syslinux partition on the USB stick. I couldn’t see the point in such a large partition for such a tiny thing, so I made mine 50Mb. This seems like a good guess. Although I got a few errors when copying files over, none seemed severe. I got no “out of disk space” errors. At the end, my partition seemed 100% full.

Gizmodo recommended using a Mac OS X Extended (Journaled) filesystem on the OSXDVD partition. Knowing that the journaling info takes up space, I elected to just do Mac OS X Extended.

Slimming OSX

They recommended ripping the OSX DVD to a full DMG and just running with that. I put the live.dmg file on my Mac first, and then opened it up on my mac to remove stuff I wouldn’t need. This didn’t work as I expected. No matter what I did (hdiutil, mount, etc), I could not open the image read/write. It’s a good thing I have lots of disk space on my MBP. I mounted the live.dmg image and went into Disk Utility. Instead of choosing ‘compressed,’ I chose ‘read/write’ and made another copy.

I removed:

  • /Volumes/Mac OS X Install DVD/Optional Installs/Xcode Tools (saved 1.1GB uncompressed)
  • /Volumes/Mac OS X Install DVD/System/Installation/Packages/*Printer* (saved 1.5GB uncompressed)
  • /Volumes/Mac OS X Install DVD/System/Installation/Packages/*Chin* (Chinese packages. Saved negligible amount)
  • Danish.pkg Dutch.pkg Polish.pkg Portuguese.pkg Russian.pkg Spanish.pkg Swedish.pkg German.pkg French.pkg Italian.pkg Japanese.pkg Norwegian.pkg Korean.pkg BrazilianPortuguese.pkg Finnish.pkg (saved 300Mb)
  • AdditionalSpeechVoices.pkg (saved 674 Mb)

At that point, my mounted volume showed only 3.5G in use, and I figured I had at least that much available on my USB stick. I figured the compression I was going to do when making the live.dmg image would make it fit. One thing I knew would create issues was the fact that I have at least one or two HP printers I print to, but I wouldn’t have the drivers for them since I had deleted all the drivers. I figured I could add back in just the 1 or 2 that I needed, and it wouldn’t cost me 1GB of my precious 8GB SSD.

Back to the Grind

I mounted my modified image, and selected it in Disk Utility. Then I clicked “New Image” and chose “compressed” just like Gizmodo suggested. When it was all done, I had a live.dmg that was only 2.8 GB in size! This gave me that sinking feeling I had gone too far. I would probably spend an hour figuring out if that was true. It’s like when you go to build some byzantine furniture from Ikea and after 45 minutes you have 29 screws left over. You think “this can’t possibly work.” This turned out to be the longest part of the install so far. It took like 20 minutes to write 2.4GB to the dumb USB stick.

So now I pick up with the Gizmodo instructions. I had no external DVD drive, and they did, so I started off booting from the USB stick.

Wrong Kernel

I read their instructions, which suggested copying /mach_kernel to the OSXDVD partition. That didn’t seem like a good idea, since I have OSX 10.5.6 on my laptop, and the DVD I copied from was 10.5.0. So, I copied mach_kernel from the 10.5.0 DVD. This wouldn’t boot at all. It got a kernel panic. I went back and tried the 10.5.6 mach_kernel instead. That did it. I was up and running. Little did I know the hours of futzing with the filesystem that lay before me.

So Near, and Yet So Far”

When I tried to do the install, I unchecked everything I possibly could. That came up with 5.8GB used out of 5.8GB available. I literally had a deficit of 10.5 megabytes. That’s it. So off I go on a wild goose chase (that I will spare you) trying various things to reformat or repartition the hard disk to squeak out 10 more megabytes. All for naught. Then I thought “can I mangle the installer to install less stuff?” Oh, I can mangle alright. But can I do it in a useful way?

Rewiring the OSX DVD Installer

Looking at my ripped version of the Mac OS X Install DVD, I see the OSInstall.mpkg, which is the main overall meta-package that guides the installation of the whole OS. It’s a flat file, though, not a directory the way I expect. I had to find a post online with a pointer to a utility that would undo “xar” files.

I un-xar the OSInstall.mpkg and find a file called “Distribution.” This is a combination JavaScript/XML file that is used by the standard package utilities. I basically found the definition of “EssentialSoftware” and took some stuff out of it. I had already removed the pkg files from the USB stick, so I had to tell it not to look for them, either. Once I did that, it didn’t need to use so much disk space, and it was happy to install.

My strategy

One of my strategies was to take out all mention, for example, of the “AdditionalVoices” and “BootCamp” and “MigrationAssistant” from the Distribution. I was hoping that, if those things were excised, it would total up to less than 5.8GB, it would find everything it was looking for, and it would go. Instead, it always ends with the big triangle graphic saying “Installation Error,” and the message that the “Essentials” package could not be verified.

Struggles with Type11

At this point I appeared to have OSX installed on the system, but it wouldn’t boot it. I sometimes got the screen with “you need to be reboot” written in 14 languages. The Gizmodo instructions (step 14) say that I should type 80 and then -f and boot to the SSD. It turns out that, when booting from USB, my disk is 81. I’m not sure if that’s causing the boot loader grief or not. Then I found the original post at MyDellMini about how to hackint0sh the mini. They say if you have less than a 10.5.6 retail disk, you need to use version 8.01 of the bootloader. I’m using a 10.5.1 retail disk, but I have 8.0.1b1 of the bootloader.

I redid my Type11 partition to use the 8.01 stuff and I noticed the -x flag instead of the -f flag recommended. I booted it that way, and off it went”and went”and went. I got the spinning boot thingie for a long time. Given that it took less time to install MacOS X, I decided to interrupt it and try again. Sure enough, the OS isn’t correctly installed. It boots up, gets to a certain point and just hangs. I can boot with -s, and it will work fine. But when I exit and boot for real, it hangs.

He who fights and runs away”

I’ve now decided that I don’t have any way to do this. I just don’t know enough to make a legit distribution DVD of OSX that will install less than the full 5.8G. I’ve ordered a 32GB Super Talent Mini PCIe SSD.

I’ll continue my quest when it arrives.