Announcement

I am traveling internationally to see family back home. I will try to check the site and respond if I have the ability to but if I do not respond please understand I have not seen my family in 2 years and there has been two deaths in the family recently so I have an obligation to them first.

I will return in approximately 3 weeks at which time I will resume work on the project.

Thank you for your patience and understanding.

NOTE: Due to problems with spamming all comments are held in moderation. As I will not be available to approve or reply to these comments as quickly as I normally do you may think your comment has not been posted but it most likely means I just have not seen it yet. I suggest you go to the IRC channel listed on the home page for help until further notice, my friends there will help you. :)

myHack Installer 1.0 RC4.1 Released

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

This is just a maintenance release and minor revision of RC4.

Read full documentation here.

Changelog:

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.1.1 Released

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

This is a very minor revision from v2.1.

Changelog:

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.

pfix v2.1 Released

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

This is just a minor revision and bugfix to 2.0. A couple of bugs were introduced in 2.0 due to my hastily rushing the release out before properly beta testing it. My apologies to anyone who was effected by them.

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

Changes from v2.0:

  • -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.

Special thanks to arya & Azimutz for their valuable feedback in debugging this version.

pfix v2.0 Released

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

This is a complete rewrite of the pfix utility. I have taken the feedback I have received over the last month since the initial release and attempted to make a more solid and universal solution that eliminates as many potential problems as possible and provides intelligent feedback to the user to help ensure proper usage.

Basic usage instructions:

Run this script by double clicking it in finder or using the command “sudo /path/to/pfix” from a terminal if it says “command not found” or “Permission denied” you must fix the permissions to make the script executable using the command “sudo chmod 755 /path/to/pfix” before running.

IMPORTANT NOTE: This script is intended to be used for correcting permissions and building kext caches on Snow Leopard ONLY! It can be run from Tiger, Leopard or Snow Leopard but you MUST target a Snow Leopard Volume!

Changes since v1.2:

  • -Reverted to chmod -R 755 *[1]
  • -Added an OS X Version Check *[2]
  • -pfix now functions correctly on OS X 10.4 “Tiger”
  • -Kexts are now installed to /Extra/Extensions *[3]
  • -Added diskutil repairPermissions / command *[4]
  • -Added function to delete kext caches if pfix was run from OS X 10.4 *[5]
  • -Verbose output is now written to pfix.log for debugging purposes and simplification of terminal output.

*[1] A problem arose which is discussed in more detail in the comments HERE that caused a failure in SMB due to a binary inside of a particular kext that required executable permissions. This is a potential issue for other kexts and although rare it poses enough of a problem that it needed to be corrected.

*[2] The kextcache utility on older versions of OS X (10.4 “Tiger” and earlier) can not create snow leopard compatable mkext’s. Which of course will cause a boot failure of snow leopard. The solution was to test for OS version and remove caches when pfix is running on older versions of OS X to force snow leopard to boot from the kext files directly. This is also why I have reverted to using /Extra/Extensions instead of /Extra/CustomExtensions which would not boot without a proper mkext inside of /Extra.

*[3] As mentioned in *[2] the primary reason for doing this was to re-enable the functionality of -f (ignore kext caches) command in chameleon and allow the system to boot without kext caches. In older revisions of pfix and the myHack installer I used /Extra/CustomExtensions directory to correct an error that was happening to many people using PC EFI 10.1 when booting Snow Leopard. Since Chameleon RC3 & PC EFI 10.3 I have not heard a single report of that error so it no longer appears to be a problem and this should no longer be required.

*[4] This will only be ran if the script is being run on the root partition [/] of a running Snow Leopard installation. Due to the fact that I have now granted executable permissions to many files that do not require it so that others which do will not fail (as mentioned in *[1]) it is nessisary to revoke those permissions and set them as correctly as possible using the diskutility’s internal permissions database. This command however will not work on disks mounted under /Volumes so if you have run pfix from another partition it will be nessisary to either run pfix again on the snow leopard system after booting to it or to go into disk utility manually and run the command yourself.

*[5] As metioned in *[2] & *[3] this has been done to ensure that snow leopard partitions that have been repaired or modified from an older OS X operating system which can not correctly build kext caches for snow leopard will not fail to boot. It will be nessisary to run pfix again or manually build these caches from inside of a working snow leopard install for proper operation. (Kext caches help to speed up the boot process).

NOTE: I have been asked on IRC “it possible to use name of /extra/extensions as a parameter? (for example mine is /extra/extensions_)”. If you haven’t read my release notes on the v2.0 page as I stated there the reasons for using other Extensions directories that used to exist are no longer a problem as far as I know since pc efi 10.3. However, if for some reason you really want to use a different directory name just open up the script in a text editor, search for the EXTRA_KEXT=”$VOLUME/Extra/Extensions” line and change it. ;)

For further information about permissions and kext caches please review this post.