Archives for: August 2010

Mac OS X 10.4 Intel Install disk

08/08/10 | by admin [mail] | Categories: Software, Mac, OSX

I lost the install disks to my 2nd Gen MacBook Pro. I have Mac Mini 10.4.10 install disks, though. So, I decided to use those.

There are several ways to do this. You can install it onto the Mac Mini (or external drive attached to Mac Mini) and then clone it to the MacBook Pro. You can put the MacBook Pro into target disk mode and plug it into the Mac Mini and run the install on the Mac Mini. Or you can modify the grey install disks to work with the MacBook Pro (or any other supported Intel).

After a bit of searching, I found this.

The file you need to edit on the grey install disks is this:

/System/Installers/OSInstall.mpkg/OSInstall.dist

This is an XML formatted piece of Javascript which contains a function which checks an array to see if the Mac you are using is a supported machine.

The array is defined towards the end of the file and uses the Model Identifier. In the case of my install disks, the array held one value: 'MacMini2,1'

You need to add to this array (or you can replace the single existing value), the Model Identifier of the Mac you wish to use the grey install disks with.

The way I edited the file, since it is on a DVD-ROM, was to use Disk Utility to restore 'Mac OS X Install Disk 1' to a partition on an external USB drive. This has the advantage of allowing me to use the USB drive to install the OS to the MacBook Pro (and quickly). But you could also make a read/write disk image file from the DVD and edit the file on that, then burn the image to a dual layer DVD (or even use Netboot).

I opened the file using Text Editor, but you could use any text editor you like, or an XML editor, or vi or pico or something.

The text we are looking for is something like:

var hwbeSupportedMachines = ['MacMini1,2'];

What we need to do is edit that line so that it reads like:

var hwbeSupportedMachines = ['MacBookPro2,1','Macmini2,1'];

The easy way to get the Model Identifier (the MacBookPro2,1) bit is to open up terminal and issue:

$ sysctl hw.model

The elements of the array need to be comma separated, and you can add as many as you like. The complete list of Intel Macs supporting 10.4 is:

var hwbeSupportedMachines = ['iMac4,1','iMac4,2','iMac5,1','iMac5,2','iMac6,1','iMac7,1','iMac8,1','MacBook2,1','MacBook1,1','MacBook3,1','MacBookPro1,1','MacBookPro1,2','MacBookPro2,2','MacBookPro2,1','MacBookPro3,1','Macmini1,1','Macmini2,1','MacPro1,1','MacPro2,1'];

If you change the array so it reads as above, you can install on any Intel Mac supporting 10.4. Since I used a 10.4.10 disk as my base, there shouldn't be any issues with installing on a Mac that shipped with 10.4.10 or earlier. If you used an earlier version of 10.4, like 10.4.6 you may run into issues trying it with a Mac which shipped with a later version of 10.4 (eg 10.4.8 or 10.4.10). As far as I know, no Macs require 10.4.11 as a minimum.

I got this list of Model Identifiers, and the minimum OS X version support from everymac.com.

I don't speak javascript, but I suspect that the function which reads and evaluates the array could be modified. It looks like it just gets the Model Identifier of the Mac (as modelProp) and compares it against the elements in the array. If it finds it in the array, it returns true. So probably you could just get rid of the bit that does the comparison and just make it always return true.

Of course, it is handy to keep something in the script which will explicitly stop you from installing on unsupported models.

That's it.

Permalink

Current Hardware Projects

This is all about my on going fumblings with hardware. Regular entries should provide an indication of the depths of my obsession.

August 2010
Mon Tue Wed Thu Fri Sat Sun
 << < Current> >>
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Categories

Linkblog

Amiga Links

XML Feeds

What is RSS?

powered by b2evolution free blog software