Jump to content
13 posts in this topic

Recommended Posts

Marsbooter Install Script for Snow Leopard

by IanT

 

UPDATED ON OCTOBER 8, 2009 @ 5:17AM PST

 

I am happy to release the second version of marsbooter.sh.

 

Marsbooter Guide - 85.42K

Marsbooter Guide

 

Updated Marsbooter Package:

marsbooter.zip

 

Changes:

  1. Selectable Automated or Manual Install
  2. Still retains the need to be executed/run as root
  3. Directory structure allows for straight forward adaptation for your custom hardware
  4. Updated Marsbooter Guide reflects marsbooter-p5q.sh, but is also meant for the generic marsbooter.sh.

To those who check the differences between marsbooter-p5q.sh and marsbooter.sh; the changes are negligible and are in fact identical scripts. I created a new BOOT-132-MARS-IanT ISO image file recently and made the decision to identify the marsbooter script that I use on my own system for the ASUS P5Q.

 

Remember to replace the following files with your own:

  • dsdt.aml in /marsbooter/
  • com.apple.Boot.plist in /marsbooter/
  • smbios.plist in /marsbooter/
  • /marsbooter/Extensions/PlatformUUID.kext/Contents/Info.plist

Add and/or replace KEXTS into the following directories:

  • /marsbooter/Extensions
  • /marsbooter/System/Library/Extensions

Note:

If you add kexts to /marsbooter/Extensions and for some reason it does not load, copy it instead to /marsbooter/System/Library/Extensions, and try to reinstall. The best method here, however, is to copy those kexts manually rather than re-running the script.

 

PS2:

You must add either AppleACPIPS2Nub.kext/ApplePS2Controller.kext/VoodooPS2.kext to /marsbooter/Extensions to enable the use of PS2 devices (keyboard/mouse).

 

AMD/ATI Users:

I do not have an ATI Radeon to test with, so please refer to Netkas' blog for relevant information on how to enable your graphics card in SL.

 

NVIDIA Users:

I make use of Graphics Enabler, via Netkas' PC EFI v10.3 boot file. You must find out where your graphics adapter is located by running the following command in Terminal:

ioreg -l | grep -15 "AppleACPIPCI\ " | grep UID

 

If you have determined that your graphics adapter is located at 1, you do not need to edit com.apple.Boot.plist, since this is the default location where the boot file believes the graphics adapter is located.

 

If you have determined that your graphics adapter is located at 0, then modify /Extra/com.apple.Boot.plist and add Netkas' override of -pci0 to kernel flags, as shown below:

<key>Kernel Flags</key>
<string>-pci0</string>

 

USB Flash Drive Install:

I have not tested, nor do I support, the use of marsbooter on a USB flash drive.

 

Booting into x32 or x64:

Edit /Extra/com.apple.Boot.plist and add the following under "kernel flags."

 

- 32-bit -

<key>Kernel Flags</key>
<string>-pci0 -arch=i386 -x32</string>

 

- 64-bit -

<key>Kernel Flags</key>
<string>-pci0 -arch=x86_64 -x64</string>

 

END UPDATED SECTION

 

UPDATED ON OCTOBER 3, 2009 @ 4:37PM PST

 

The intended use for this script is for installation onto your Snow Leopard hard disk drive. It is not meant for use with a USB flash drive, since I never intended it for that use.

 

I will be posting an updated marsbooter.sh...

 

Updates included are:

  1. Manual Install - allows user to input their disk information (e.g., disk0s9)
  2. copyvoodoohda - disabled by default
  3. reboot - disabled by default

I will have the update posted later tonight --

 

END UPDATED SECTION

 

UPDATED ON OCTOBER 2, 2009 @ 2:26AM PST

 

Someone pointed out to me that when they've got two (or more) partitions on their drive, marsbooter.sh inadvertently selects the wrong partition; in their case it had selected their Windows Vista install.

 

I should have written that this script is intended for a single partition, and that it contains the Snow Leopard installation.

 

END UPDATED SECTION

 

UPDATED ON SEPTEMBER 30, 2009 @ 12:02AM PST

 

Please reply to this topic if you are successful in using this installation script for your Snow Leopard installation!

 

PDF Version of the Marsbooter Install Guide - 52.85K

 

Marsbooter Package:

 

What is it?

Marsbooter is an installation script, with both an automated and manual installation method, that will install the Chameleon bootloader, Netkas' boot file v10.3, and custom files such as: com.apple.Boot.plist, dsdt.aml, kexts, smbios.plist, etc., into /Extra. It uses key components from Chameleon 2.0 RC3-r658 and Netkas' PC EFI v10.3 (10.1 booter).

 

Marsbooter was designed to be installed onto a hard disk drive, and not a USB flash drive.

 

The automated section of the script takes the output from diskutil and removes 'Disk Identifier' and s2 (last two digits) when installing boot0 to the primary hard disk's MBR. Boot1h is installed to the partition's bootsector, in my example rdisk0s2. See the features list below...

 

The manual section of the script takes user input, e.g., disk0s9, and uses that information to install boot0 and boot1h.

 

This script was created in order to facilitate easy installation of the Chameleon bootloader from within Snow Leopard. As far as I know, there is no known working packaged installer for Chameleon 2.0 RC3 r658. This is my attempt to fill in that void with a working installation method.

 

Many have attempted to use Chameleon RC2-r640.pkg to install from within Snow Leopard, and many have encountered "Install Failed." However, it does seem to create /Extra/Extensions in root. Some users are forced to use a boot-cd, a usb flash drive, or have even resorted to using Chameleon 1.0.1.2. This script, and its contents have been thoroughly tested on an ASUS P5Q Motherboard.

 

Please see my topic on Retail Snow Leopard Install onto ASUS P5Q Motherboard

http://www.insanelymac.com/forum/index.php?showtopic=189324

 

Please see my topic on the creation of a boot-132-mars disc

http://www.insanelymac.com/forum/index.php?showtopic=189299

 

Features:

  • Determine Disk Identifier
  • Installs boot0 to MBR of hard disk
  • Installs boot1h to partition's bootsector of hard disk
  • Copies Netkas' PC EFI v10.3 (10.1 booter) boot file to root
  • Renders /boot file invisible using setfile
  • Creates the required folders in root (e.g., /Extra, and /Extra/Extensions)
  • Copies Extensions to /Extra/Extensions

  • Copies VoodooHDA.kext to /System/Library/Extensions - disabled by default

  • Loads VoodooHDA.kext using kextload - disabled by default
  • Copies com.apple.Boot.plist to /Extra
  • Copies Themes folder to /Extra
  • Copies custom dsdt.aml to /Extra
  • Copies custom smbios.plist to /Extra
  • Sets owner of /Extra, its subdirectories and files to root:wheel

  • Reboot - disabled by default

 

Installation

 

Copy and/or move the folder labeled "MARSBOOTER" from "/Volumes/BOOT-132-MARS-IanT/Support" to your desktop (e.g., /Users/iant/Desktop/MARSBOOTER)

 

This script must be executed with root privileges!!

 

Open Terminal and perform the following commands:

Change working directory to MARSBOOTER

cd /Users/iant/Desktop/MARSBOOTER

Make marsbooter.sh executable

sudo chmod +x marsbooter.sh

Execute marsbooter.sh script to proceed with installation

sudo ./marsbooter.sh

Follow the on-screen prompts to proceed with installation.

 

Customization

Prior to running the marsbooter script, you can add/replace existing files with your own custom files:

 

/marsbooter/Extensions - Add your custom kexts here

 

/marsbooter - copy dsdt.aml, com.apple.Boot.plist and smbios.plist here

 

Edit /marsbooter/Extensions/PlatformUUID.kext/Contents/Info.plist to reflect a UUID of your choosing.

 

Note:

This script has a rogue kext that is located in /marsbooter, it's called VoodooHDA.kext. If you want to remove it, open marsbooter.sh in TextEdit or in nano from Terminal, scroll down to the bottom of the script under the heading main() and add a hash sign (#) in front of "copyvoodoohda." I added this specific to my setup, and because I know it works.

Last login: Fri Oct 2 02:55:37 on ttys000

Mike-Smiths-Mac-Pro:~ mikesmith$ cd /Users/mikesmith/Desktop/MARSBOOTER

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$ sudo chmod +x marsbooter.sh -or- sudo chmod 755 marsbooter.sh

chmod: -or-: No such file or directory

chmod: sudo: No such file or directory

chmod: chmod: No such file or directory

chmod: 755: No such file or directory

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$

 

i get the following error.

Do the following in Terminal:

 

cd /Users/mikesmith/Desktop/MARSBOOTER

sudo chmod +x marsbooter.sh

{Enter password when prompted} << do not type this in Terminal!

 

sudo ./marsbooter.sh

The alternate command for making marsbooter.sh executable is:

sudo chmod 755 marsbooter.sh

 

Peace,

 

IanT

 

Last login: Fri Oct 2 02:55:37 on ttys000

Mike-Smiths-Mac-Pro:~ mikesmith$ cd /Users/mikesmith/Desktop/MARSBOOTER

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$ sudo chmod +x marsbooter.sh -or- sudo chmod 755 marsbooter.sh

chmod: -or-: No such file or directory

chmod: sudo: No such file or directory

chmod: chmod: No such file or directory

chmod: 755: No such file or directory

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$

Mike-Smiths-Mac-Pro:MARSBOOTER mikesmith$

 

i get the following error.

Thanks for creating this script! I am booting on a thinkpad x61s with a retail install of snow leopard initially installed from my macbook and then transfering the HD over to the thinkpad. Everything seemed to work, including the chameleon install(further than I've yet gotten with any other method) and then I get a kernal panic before osx actually boots. Thanks again for creating the script and any other advice would be appriciated:).

 

MAC Framework successfully initialized

using 10485 butter headers and 4096 cluster IO buffer headers

panic (CPU 0 caller 0x293dc7): "Should have 2 Cores, but only found 1 for Die 0 "/SourceCache/xnu/xnu-1456.1.25/osfmk/i386/cpu_th

reads.c:1108

debugger called: <panic>

Frame : Return Address (4 potential args on stack)

andreN95,

 

No, this method is for installing the Chameleon bootloader onto your hard disk drive where your Snow Leopard installation is.

 

 

Peace,

 

IanT

 

Is this a metod to make bootable a usb pen to install snow leopard??

UPDATED ON OCTOBER 8, 2009 @ 5:17AM PST

 

I am happy to release the second version of marsbooter.sh.

 

Marsbooter Guide - 85.42K

Marsbooter Guide

 

Updated Marsbooter Package:

marsbooter.zip

 

Changes:

  1. Selectable Automated or Manual Install
  2. Still retains the need to be executed/run as root
  3. Directory structure allows for straight forward adaptation for your custom hardware
  4. Updated Marsbooter Guide reflects marsbooter-p5q.sh, but is also meant for the generic marsbooter.sh.

To those who check the differences between marsbooter-p5q.sh and marsbooter.sh; the changes are negligible and are in fact identical scripts. I created a new BOOT-132-MARS-IanT ISO image file recently and made the decision to identify the marsbooter script that I use on my own system for the ASUS P5Q.

 

Remember to replace the following files with your own:

  • dsdt.aml in /marsbooter/
  • com.apple.Boot.plist in /marsbooter/
  • smbios.plist in /marsbooter/
  • /marsbooter/Extensions/PlatformUUID.kext/Contents/Info.plist

Add and/or replace KEXTS into the following directories:

  • /marsbooter/Extensions
  • /marsbooter/System/Library/Extensions

Note:

If you add kexts to /marsbooter/Extensions and for some reason it does not load, copy it instead to /marsbooter/System/Library/Extensions, and try to reinstall. The best method here, however, is to copy those kexts manually rather than re-running the script.

 

PS2:

You must add either AppleACPIPS2Nub.kext/ApplePS2Controller.kext/VoodooPS2.kext to /marsbooter/Extensions to enable the use of PS2 devices (keyboard/mouse).

 

AMD/ATI Users:

I do not have an ATI Radeon to test with, so please refer to Netkas' blog for relevant information on how to enable your graphics card in SL.

 

NVIDIA Users:

I make use of Graphics Enabler, via Netkas' PC EFI v10.3 boot file. You must find out where your graphics adapter is located by running the following command in Terminal:

ioreg -l | grep -15 "AppleACPIPCI\ " | grep UID

 

If you have determined that your graphics adapter is located at 1, you do not need to edit com.apple.Boot.plist, since this is the default location where the boot file believes the graphics adapter is located.

 

If you have determined that your graphics adapter is located at 0, then modify /Extra/com.apple.Boot.plist and add Netkas' override of -pci0 to kernel flags, as shown below:

<key>Kernel Flags</key>
<string>-pci0</string>

 

USB Flash Drive Install:

I have not tested, nor do I support, the use of marsbooter on a USB flash drive.

  • 2 weeks later...

I've been working on an updated script that will provide the option of installing Chameleon 2.0 RC3-r658 and Netkas' PC EFI v10.5 to the hidden EFI partition.

 

I'm still ironing things out, just know that the EFI option is completely automated, meaning it uses diskutil list and greps anything labeled EFI and then I use grep again to match anything with disk#s#.

 

So stay tuned!

 

Lastly, please note that this script is thoroughly tested on an ASUS P5Q with a fresh install of SL.

 

 

Peace,

 

IanT

  • 2 months later...

i've been trying to install this and it is not working. i get stuck after entering sudo chmod +x marsbooter-p5q.sh it shows password right after? what password am i suppost to input i tried my password and it won't allow me to type anything?

i've been trying to install this and it is not working. i get stuck after entering sudo chmod +x marsbooter-p5q.sh it shows password right after? what password am i suppost to input i tried my password and it won't allow me to type anything?

 

This is a common UNIX security enhancement, just type in your password and press ENTER.

  • 2 weeks later...
×
×
  • Create New...