Body Background

Archive for the ‘myHack Utilities’ Category

myHack Installer 1.0 FINAL Released

Thursday, March 4th, 2010

This release focused on further fine tuning the installer for smoother operation and enhanced functionality. You may notice that I have not added many “new features” but the existing features have greatly improved and the few new features that have been added are very useful refinements. I am considering this to be the first “Stable” release of the myHack installer and thus the beginning of the official 1.0 branch.

Note: It will take longer to run than previous versions due to a modified version of pfix 3.0 being run during post installation. This has been done to ensure absolute error-free installation. Just wait patiently and an installation succeeded message will be displayed when these scripts have completed, do not exit the installer prematurely!

Read full documentation here.

Download myHack_installer_1.0.mpkg.zip here.

Changelog:

v1.0 FINAL:

  • -Updated Chameleon 2.0 RC4 to Chameleon-2.0-RC4_PCEFI-10.5_AsereBLN_myHack-1.0 r111
  • -Updated pfix v2.6 to pfix v3.0
  • -pfix now installed to /usr/sbin/ instead of /
  • -Refined and improved pre-installation, bootloader installation, and post-installation scripts.
  • -Added function to backup any existing /Extra directory prior to installation.
  • -fdisk will now be used internally instead of overwriting the stock OS X one in /usr/sbin/
  • -Replaced IOATAFamily.kext with a different one known to have fewer problems.
  • -Added function to install tar, gzip, bzip2, rsync and nano to /usr/bin/ if target is installation device.
  • -Modified default com.apple.Boot.plist for Graphics Enabler to include a default VESA resolution.
  • -New and improved boot theme.

v1.0 RC5.2:

  • -Updated pfix v2.4 to pfix v2.6
  • -Added function to to hide /boot file.
  • -Added function to GraphicsEnabler option which will now determine the PciRoot value automatically.*
  • -Bugfix: Corrected minor bug in post-install script. (Force system cache rebuild with kextcache)
  • -Bugfix: Corrected minor bug in pre-install script. (Added IONetworkingFamily.kext to cleanup script)

* Automatic PciRoot discovery function will only be run when installer is targeting the root partition of a running Snow Leopard installation. If PciRoot can not be determined a default PciRoot value of 1 will be used instead.

v1.0 RC5.1:

  • -Updated pfix v2.3 to pfix v2.4
  • -Removed VoodooHDA.kext (Caused kernel panics for too many users).
  • -Removed PlatformUUID.kext (no longer required).
  • -Improved post-installation scripts to significantly reduce execution time.

v1.0 RC5:

  • -Updated PC EFI 10.5 to Chameleon 2.0 RC4
  • -Updated pfix v2.1.1 to pfix v2.3
  • -Created new “GraphicsDisabler” feature.*
  • -Added voodooHDA.kext to provide limited audio support for a variety of audio hardware.
  • -Added custom IONetworkingFamily.kext to provide support for additional networking hardware.
  • -Bugfix: New IOATAFamily.kext which now works correctly on a wider variety of hardware.**
  • -Bugfix: New SleepEnabler.kext which is compatible with OS X 10.6.0-10.6.3.***
  • -Replaced OpenHaltRestart.kext with EvOreboot.kext.
  • -Revised bundled kernel extensions. ****
  • -Revised “Read Me” section of installer in hopes that people will no longer make a very critical mistake.
  • -Improved boot theme to give a fresh and more visually appealing appearance.
  • -Made a significant number of alterations to internal installer coding and installation scripts.

* This function will provide true VESA functionality to virtually ALL graphics hardware, including the hardware which failed to function in VESA mode with the old Framebufferdisabler.kext.

** This new IOATAFamily.kext includes new builds of AppleIntelPIIXATA.kext, IOATABlockStorage.kext & IOATAPIProtocolTransport.kext embedded as plug-ins inside of it, they are no longer required separately. It has been compiled from 10.6.2 source and also prevents a kernel panic that was encountered previously on some hardware. IMPORTANT NOTE: We have tested this with 10.6.3 beta and determined that it DOES NOT WORK and will in fact likely cause a kernel panic. If you require this extension due to a lack of SATA+AHCI do not upgrade to 10.6.3 until a solution is discovered.

*** This SleepEnabler.kext should be compatible with future versions of OS X as well. The previous Sleepenabler.kext included with earlier versions of myHack Installer causes a kernel panic if not removed prior to booting after a 10.6.2 update.

**** Removed the following kernel extensions: AHCIPortInjector.kext, AppleUpstreamUserClientDisabler.kext, AttansicL1eEthernet.kext, FramebufferDisabler.kext, IOAHCIBlockStorageInjector.kext, JMicronATA.kext, LegacyJMB36xSATA.kext, & SKGE.kext.

Replaced the following kernel extensions with newer versions: AppleIntelPIIXATA.kext, IOATAFamily.kext, OpenHaltRestart.kext, Sleepenabler.kext.

Renamed: LegacyAppleRTC_32bit_Only.kext to LegacyAppleRTC.kext (32bit limitation is well documented I don’t think it needs to be in the name anymore).

v1.0 RC4.1:

  • -Updated PC EFI 10.4.1 to PC EFI 10.5
  • -Updated pfix v1.2 to pfix v2.1.1
  • -Made minor changes to “Read Me” section of installer for additional clarity.

v1.0 RC4:

  • -Added “Chocolate Kernel”* which allows OS X 10.6 to be run on legacy Intel, AMD** & i5 processors.
  • -myHack Installer package now copies itself to the / of an installation device automatically.
  • -Added Snow Leopard port of lspci.
  • -Added native 64bit Snow Leopard build of IOATAFamily.kext for functional PATA (IDE) support.
  • -Updated pfix v1.1 to pfix v1.2.
  • -Updated PC EFI 10.3 to PC EFI 10.4.1.
  • -Updated default com.apple.Boot.plist to use EthernetBuiltIn=y.
  • -Refined and improved install scripts & the descriptions of each individual option.
  • -Important information regarding known issues embedded into installer “Read Me” section.

* For full release notes regarding the “Chocolate Kernel” please see the Downloads page.

** This kernel will run most AMD systems but it does not include on the fly CPUID patching so if you intend to use this on an AMD system you will need to obtain a third party tool to patch your binaries.

v1.0 RC3:

  • - Bugfix: PC EFI 10.3 was not properly installing over the Chameleon boot file in previous versions.
  • - Bugfix: OSInstall MBR MOD would sometimes not properly install when using RC2.
  • - OSInstall MBR MOD now checks for OSInstall.mpkg on target drive and is installed automatically.
  • - Graphics Enabler option added.
  • - Consolidated and simplified core options.

v1.0 RC2:

  • - Bugfix: Added permissions enabling script to post-install. Details posted on the v1.0 RC2 release page.
  • - Integrated OSInstall.mpkg & OSInstall framework into a single option.
  • - Changed openhaltrestart.kext option to selected by default.
  • - Added pfix v1.1 to installer.
  • - Improved kext descriptions.

v1.0 RC1:

Includes:

  • - Chameleon 2.0 RC3.
  • - PC EFI 10.3.
  • - Sample com.apple.Boot.plist for basic operation.
  • - Snow Leopard inspired myHack Chameleon boot theme.
  • - All of the kexts listed on the Downloads page.
  • - A number of bugfixes and snow leopard specific enhancements to the Chameleon installation scripts.
  • - Detailed descriptions of each custom option.

pfix v3.0 Released

Tuesday, March 2nd, 2010

This is a complete rewrite of the pfix utility. In my last few revisions of the 2.x branch a number of potential problems were revealed to me. Of the reproducible errors – errors due to problems with kextd were the main culprit, even when forced rebuilding of kextcache was done. Though failures such as these were limited to a small number of end users any failure of pfix is unacceptable to me. After extensive testing of many different new methods to resolve all of these issues pfix 3.0 is ready for public release.

This version will take longer to execute than previous versions when correcting permissions and rebuilding caches for a root system volume but it will do so with virtually no possibility of errors. If all you are doing is swapping around a few kexts in /Extra however I have introduced a flag to skip the repair of the system permissions and caches for a very quick operation. Additionally pfix is now designed to operate from /usr/sbin/ like a standard *nix utility and includes a usage output viewable by running “pfix –help” (without the quotes) from a terminal.

Basic Usage: pfix [option]
Example Usage: pfix -s -v 1 -t /

Option       GNU long option      Meaning
-h           –help                Show this message
-s           –skipsystem          Don’t repair /system/library/extensions
-v <level>   –verbose <level>     Set kextcache output’s verbosity level
-t <path>    –target <path>       Path to target partition to run pfix on

A complete list of the changes in v3.0 are as follows:

  • -Completely re-written and restructured code with much cleaner syntax and improved functionality
  • -Improved terminal log output information and format
  • -Added run time flags
  • -Added help flag and usage output
  • -Added skip system repair flag (if you only need to quickly repair /Extra)
  • -Added kextcache/diskutil verbosity flag (no verbosity by default [quiet])
  • -Added target flag (a list of available targets will be displayed by default)
  • -Debugged several functions for improved operation and log output when run from OS X installation devices.
  • -Now removes all system caches prior to rebuilding instead of only removing kext caches.
  • -Repair permissions using diskutil prior to rebuilding caches when targeting root partition. [no longer optional]
  • -Updates prelinked kernel cache & kext info caches prior to rebuilding system kext caches when targeting root.
  • -Created installation package to properly install pfix to /usr/sbin/ so that it is available from any terminal path.

You may download pfix3.0.mpkg.zip [Installation Package] here.
You may download pfix3.0.zip [Application Only] here.

pfix v2.7 Released

Tuesday, February 16th, 2010

This version is now depreciated, consult the downloads page for a link to the latest version.

The changes I introduced in pfix v2.4 to reduce execution time (touching /S/L/E when pfix was targeting the root partition and kextd was running instead of forced regeneration of system caches with kextcache utility) apparently causes a problem for a small number of users. From what I have been able to find out this problem only seems to effect people running with a patched (non-vanilla) kernel. There is also the potential that this may effect people who are having issues with their running kextd process for one reason or another. Despite the fact that this problem would effect only a small number of pfix users the reduced execution time (30-90 seconds) is not worth it if pfix does not work for 100% of all users. So pfix will be reverted to manually regenerating system kext caches like it did in pfix v2.3 but the other improvements and enhancements found in pfix v2.6 will not be altered.

Changelog:

v2.7:

  • - Bugfix: System kext caches regeneration has been reverted to forced kextcache method.

v2.6:

  • - Added feature which displays numbered menu instead of requiring user to type in volume manually.
  • - User is now prompted for password (if not already authorized with sudo) prior to script execution.

v2.5:

  • - Bugfix: Corrected kextd test, if pfix is targeting a mounted volume and not the root [/] partition system caches will be rebuilt with kextcache.

v2.4:

  • - When running under OS X 10.6.x pfix now tests to see if kextd is running, if so it touches /S/L/E instead of rebuilding system caches with kextcache. This significantly reduces execution time.
  • - Repairing permissions with diskutil is now optional.
  • - Minor improvements to terminal output.

v2.3:

  • -If target is a mounted volume execute command to enable permissions on the volume prior to running pfix.

v2.2:

  • -A number of alterations/additions were made to enable proper functionality of pfix when it is launched from a USB Installer or Installation DVD.
  • -Log file is no longer written to disk, the log is displayed directly in the terminal window instead. This better informs the end user of what is happening and also prevents any errors from occurring if it is launched from a read-only location such as a USB Installer or Installation DVD.
  • -Improvements made to visual appearance of log.
  • -pfix version info now displayed in terminal before running any operations.

v2.1.1:

  • -Revised function to move CustomExtensions to Extensions to ensure smooth bug-free operation.
  • -pfix version now echoed to log file and terminal.

v2.1:

  • -Bugfix: Corrected syntax error on kextcache command under Leopard.
  • -Bugfix: Corrected minor error that could sometimes cause pfix.log to not be created.
  • -pfix.log now written to root [/] partition of the system it has been run on.
  • -Changed verbosity level of kextcache to 2 for additional useful information to be written to log.
  • -All kext caches are now removed prior to rebuilding.
  • -Minor alterations to output for additional clarity.

v2.0

You may review the full v2.x release notes here.

myHack Installer 1.0 RC5.2 Released

Thursday, February 11th, 2010

This version is now depreciated, consult the installer guide for a link to the latest version.

This release is to clean up a couple minor errors that were introduced in v1.0 RC5/5.1 and to further fine tune the functionality of the installer.

Read full documentation here.

Changelog:

v1.0 RC5.2:

  • -Updated pfix v2.4 to pfix 2.6
  • -Added function to to hide /boot file.
  • -Added function to GraphicsEnabler option which will now determine the PciRoot value automatically.*
  • -Bugfix: Corrected minor bug in post-install script. (Force system cache rebuild with kextcache)
  • -Bugfix: Corrected minor bug in pre-install script. (Added IONetworkingFamily.kext to cleanup script)

* Automatic PciRoot discovery function will only be run when installer is targeting the root partition of a running Snow Leopard installation. If PciRoot can not be determined a default PciRoot value of 1 will be used instead.

v1.0 RC5.1:

  • -Updated pfix v2.3 to pfix v2.4
  • -Removed VoodooHDA.kext (Caused kernel panics for too many users).
  • -Removed PlatformUUID.kext (no longer required).
  • -Improved post-installation scripts to significantly reduce execution time.

v1.0 RC5:

  • -Updated PC EFI 10.5 to Chameleon RC4
  • -Updated pfix v2.1.1 to pfix v2.3
  • -Created new “GraphicsDisabler” feature.*
  • -Added voodooHDA.kext to provide limited audio support for a variety of audio hardware.
  • -Added custom IONetworkingFamily.kext to provide support for additional networking hardware.
  • -Bugfix: New IOATAFamily.kext which now works correctly on a wider variety of hardware.**
  • -Bugfix: New SleepEnabler.kext which is compatible with OS X 10.6.0-10.6.3.***
  • -Replaced OpenHaltRestart.kext with EvOreboot.kext.
  • -Revised bundled kernel extensions. ****
  • -Revised “Read Me” section of installer in hopes that people will no longer make a very critical mistake.
  • -Improved boot theme to give a fresh and more visually appealing appearance.
  • -Made a significant number of alterations to internal installer coding and installation scripts.

* This function will provide true VESA functionality to virtually ALL graphics hardware, including the hardware which failed to function in VESA mode with the old Framebufferdisabler.kext.

** This new IOATAFamily.kext includes new builds of AppleIntelPIIXATA.kext, IOATABlockStorage.kext & IOATAPIProtocolTransport.kext embedded as plug-ins inside of it, they are no longer required separately. It has been compiled from 10.6.2 source and also prevents a kernel panic that was encountered previously on some hardware. IMPORTANT NOTE: We have tested this with 10.6.3 beta and determined that it DOES NOT WORK and will in fact likely cause a kernel panic. If you require this extension due to a lack of SATA+AHCI do not upgrade to 10.6.3 until a solution is discovered.

*** This SleepEnabler.kext should be compatible with future versions of OS X as well. The previous Sleepenabler.kext included with earlier versions of myHack Installer causes a kernel panic if not removed prior to booting after a 10.6.2 update.

**** Removed the following kernel extensions: AHCIPortInjector.kext, AppleUpstreamUserClientDisabler.kext, AttansicL1eEthernet.kext, FramebufferDisabler.kext, IOAHCIBlockStorageInjector.kext, JMicronATA.kext, LegacyJMB36xSATA.kext, & SKGE.kext.

Replaced the following kernel extensions with newer versions: AppleIntelPIIXATA.kext, IOATAFamily.kext, OpenHaltRestart.kext, Sleepenabler.kext.

Renamed: LegacyAppleRTC_32bit_Only.kext to LegacyAppleRTC.kext (32bit limitation is well documented I don’t think it needs to be in the name anymore).

v1.0 RC4.1:

  • -Updated PC EFI 10.4.1 to PC EFI 10.5
  • -Updated pfix v1.2 to pfix v2.1.1
  • -Made minor changes to “Read Me” section of installer for additional clarity.

v1.0 RC4:

  • -Added “Chocolate Kernel”* which allows OS X 10.6 to be run on legacy Intel, AMD** & i5 processors.
  • -myHack Installer package now copies itself to the / of an installation device automatically.
  • -Added Snow Leopard port of lspci.
  • -Added native 64bit Snow Leopard build of IOATAFamily.kext for functional PATA (IDE) support.
  • -Updated pfix v1.1 to pfix v1.2.
  • -Updated PC EFI 10.3 to PC EFI 10.4.1.
  • -Updated default com.apple.Boot.plist to use EthernetBuiltIn=y.
  • -Refined and improved install scripts & the descriptions of each individual option.
  • -Important information regarding known issues embedded into installer “Read Me” section.

* For full release notes regarding the “Chocolate Kernel” please see the Downloads page.

** This kernel will run most AMD systems but it does not include on the fly CPUID patching so if you intend to use this on an AMD system you will need to obtain a third party tool to patch your binaries.

v1.0 RC3:

  • - Bugfix: PC EFI 10.3 was not properly installing over the Chameleon boot file in previous versions.
  • - Bugfix: OSInstall MBR MOD would sometimes not properly install when using RC2.
  • - OSInstall MBR MOD now checks for OSInstall.mpkg on target drive and is installed automatically.
  • - Graphics Enabler option added.
  • - Consolidated and simplified core options.

v1.0 RC2:

  • - Bugfix: Added permissions enabling script to post-install. Details posted on the v1.0 RC2 release page.
  • - Integrated OSInstall.mpkg & OSInstall framework into a single option.
  • - Changed openhaltrestart.kext option to selected by default.
  • - Added pfix v1.1 to installer.
  • - Improved kext descriptions.

v1.0 RC1:

Includes:

  • - Chameleon 2.0 RC3.
  • - PC EFI 10.3.
  • - Sample com.apple.Boot.plist for basic operation.
  • - Snow Leopard inspired myHack Chameleon boot theme.
  • - All of the kexts listed on the Downloads page.
  • - A number of bugfixes and snow leopard specific enhancements to the Chameleon installation scripts.
  • - Detailed descriptions of each custom option.

pfix v2.6 Released

Wednesday, February 10th, 2010

This version is now depreciated, consult the downloads page for a link to the latest version.

This release adds two very nice new features to pfix.

Changelog:

v2.6:

  • - Added feature which displays numbered menu instead of requiring user to type in volume manually.
  • - User is now prompted for password (if not already authorized with sudo) prior to script execution.

v2.5:

  • - Bugfix: Corrected kextd test, if pfix is targeting a mounted volume and not the root [/] partition system caches will be rebuilt with kextcache.

v2.4:

  • - When running under OS X 10.6.x pfix now tests to see if kextd is running, if so it touches /S/L/E instead of rebuilding system caches with kextcache. This significantly reduces execution time.
  • - Repairing permissions with diskutil is now optional.
  • - Minor improvements to terminal output.

v2.3:

  • -If target is a mounted volume execute command to enable permissions on the volume prior to running pfix.

v2.2:

  • -A number of alterations/additions were made to enable proper functionality of pfix when it is launched from a USB Installer or Installation DVD.
  • -Log file is no longer written to disk, the log is displayed directly in the terminal window instead. This better informs the end user of what is happening and also prevents any errors from occurring if it is launched from a read-only location such as a USB Installer or Installation DVD.
  • -Improvements made to visual appearance of log.
  • -pfix version info now displayed in terminal before running any operations.

v2.1.1:

  • -Revised function to move CustomExtensions to Extensions to ensure smooth bug-free operation.
  • -pfix version now echoed to log file and terminal.

v2.1:

  • -Bugfix: Corrected syntax error on kextcache command under Leopard.
  • -Bugfix: Corrected minor error that could sometimes cause pfix.log to not be created.
  • -pfix.log now written to root [/] partition of the system it has been run on.
  • -Changed verbosity level of kextcache to 2 for additional useful information to be written to log.
  • -All kext caches are now removed prior to rebuilding.
  • -Minor alterations to output for additional clarity.

v2.0

You may review the full v2.x release notes here.