Notes taken while playing around with various Hackintosh distributions and Eee PC 1005PEB. Since these do not have DVD drives, it will need to be installed using USB flash drive or USB hard drive. Also, some files from install DVD needs to be tweaked and using a USB drive as a staging area helps out. Summary:What Works:
What doesn't work:
Untested:
Installing Snow Leopard:There are many guides on installing Snow Leopard on Eee PC's. Most any for 1005HA or 1005PE will work. Most guides require you to already have a working OSX box to get your USB drives set up correct. This page has some information on how to use Linux to prepare the USB drives.What you need:
Prepare USB drive.Make sure you have tools needed installed. hfsplus-tools contains tools to format a partition has hfs+.yum install gparted hfsplus-tools p7zip p7zip-plugins Now, need to create a 100M partition for NetbookInstaller's boot loader and another partition to contain DVD image. fdisk /dev/sdx o n p 1 [enter for default] 100M n p 2 [enter for default] [enter for default] t 1 af t 2 af Be sure and re-plug in the USB drive after this step to make sure the new MBR is loaded. Then unmount any auto-mounted partitions. Download latest version of NetbootBookMaker and unpack it. You'll use its contents to install a boot loader in MBR and related files in first partition. unzip NetbookBootMaker-xxx.zip cd NetbookBootMaker-xxx/Contents/Resources/BootMakerSupport dd bs=444 count=1 if=boot0 of=/dev/sdx 7z x NetbookBootLoader.img dd if=1.img of=/dev/sdx1 dd if=boot1h of=/dev/sdx1 Option 1: Install DVD image from ISOFind the HFS+ Volume Header in ISO installer image. hexdump -C osx86dvd.iso | grep "48 2b 00 04" 00038400 48 2b 00 04 80 00 00 00 31 30 2e 30 00 00 00 00 |H+......10.0....| HFS+ partitions start 0x400 (1024) bytes before the Volume Header. So subtract 0x400 from offset shown by hexdump (0x38400 - 0x400 = 0x3800 in this case). Overwrite 2nd partition on USB drive.Use dd to overwrite the empty HFS+ file sytem we created previously with HFS+ parition. Use bc to compute how many blocks to skip. block size of 8192=0x2000. Replace /dev/sdx1 with your unique drive number.echo "ibase=16; 38000 / 2000" | bc 28 dd ibs=8192 obs=8192 skip=28 if=osx86dvd.iso of=/dev/sdx2 Re-plug in the USB drive and verify you can see the second partition contains this copied of HFS+ partition. If you have qemu installed, you can test you successfully created a bootable image using: qemu -hda /dev/sdx -m 1024 Option 2: Install DVD image from DMG7z x osx86dvd.dmg dd bs=1M if=1.img of=/dev/sdb2 You'll have to experiment and find which file inside the DMG is the HFS+ file system. It should be the file with largest size. Another common names is 5.hfs. InstallingAt this point, you'll have a bootable USB drive that can be used to install SL to a GUID partitioned disk. If you have a stand alone USB disk that you want to install then you can skip next step. If you want to install to MBR partition (such as shared with Windows 7 and Linux) then you'll need to modify the installation disk with some custom patches that bypass some unneeded checks for MBR drives. You'll need to google to find these modified packages but here is one example with instructions. For Snow Leopard, you have to replace two files: OSInstall.mkg and OSInstall. Be sure and find instructions that tell how to replace both. Once replaced, reboot your machine with USB drive plugged in. You'll need to hold down the F2 key for long period during bootup. When you see a black screen with text, release F2 and press Esc key for long time. Once it goes into BIOS setup, release Esc key and exit BIOS setup. You'll then be prompted which disk to boot from. Choose your USB disk. From this point, you can follow most any other Hackintosh install guide. Important items:
Audio SupportNetbookInstaller will install custom audio kext's for netbooks it supports. Since it doesn't support 1005PE's, you'll have to install by hand. I had good luck with speakers using some modified versions of VoodooHDA but I have so far not be able to get the mic working and have not tested headphone or mic inputs.UPDATE 2011/01/16 - I updated VoodooHDA to version 2.7.2 using the install package. Afterwards, I had to manually rerun NetbookInstaller to get wireless working again. Upon reboot, both speakers and microphone work (skype works). There is one annoying issue with mic enabled during initial driver load and a loud buzz occurs until system fully boots up and something turns mic volume back down. To fix buzz, try editing /System/Library/Extensions/VoodooHDA.kext/Contents/Info.plist and change iGain to 0 and iMix to 70. Wireless Network SupportGetting Ethernet or wireless working with built in hardware is currently a hopeless cause. I chose to by a USB wireless adapter that was compatible with OSX. If you search around you can find them as cheap as $20 or even less. Same goes for mini PCIe cards if you want to go the internal route. For USB support, I had good luck with Meritline and an Airlink AWLL6075. Its extremely small and seems to work fine with OSX 10.6.UPDATE 2011/01/16: Wireless is now working! Well, for the most part. The driver fails to load about ever other reboot. I've read this may be related to Asus's Boot Booster and disabling that feature in BIOS does allow it to work every boot. I did following steps to get driver working:
EthernetEthernet does not work out of the box. In May of 2010, a new opensource driver for this chipset has been released and some people with other netbooks have had at least some luck with it. There is both a driver project page (L1C drivers for Snow Leopard) and a thread discussing its development. Look for the 101010 release version that fixes a kernel panic. This driver detects ethernet port correctly but I've not tested it further yetSleepingIts not working for me. Sleeping appears to be attempted by closing lid or selecting Sleep from menu but backlight doesn't turn off and system basically unsleeps immediately. I believe updates to 10.6.3 also causes issues but updating to latest NetbookInstaller should eventually fix that.UPDATE 2011/01/18 - After updating to NetbookInstaller as of todays date and upgrading to 10.6.6, things work a little differently. Selecting sleep option, the display backlight turns off and lots of disk activity occurs but no actual sleep (I believe its attempting to sleep but immediately resumes). The laptop is then useless. Installing the SleepEnabler.kext allows it to sleep by closing the lid (power button blinks blue). Upon resuming, the backlight is not turned back on as well. Some forums imply that reverting to AppleIntelIngegratedFramebuffer from 10.6.2 my fix the backlight issue. Also, DSDT patches may fix it as well. UPDATE 2011/01/21 - I was able to get backlight to turn on upon resuming. I had to edit the DSDT using DSDTSE. You can click on the "Extract DSDT" button and it will decompile your DSDT and load in text editor. Find the PWRB device under the _SB block and after it add this: Device (PNLF) { Name (_HID, EisaId ("APP0002")) Name (_CID, "backlight") Name (_UID, 0x0A) Name (_STA, 0x0B) } Its important to realize when you extra the DSDT under OSX, your actually extracting an already modify version from NetbookInstaller originally located at /Extra/DSDT.aml. This is important because it already has 2 DSDT fixes applied to it and you need those. Its also important to remember because if you rerun NetbookInstaller in the future it may overwrite your modified DSDT. Use DSDTSE to compile the modified DSDT. Find were it saves the dsdt.aml file and manually copy it to /Extra/DSDT.aml (notice case difference). After a reboot, the backlight will turn back on upon any resume from sleep (including the non-working option of selecting sleep from menu). The main issue with this DSDT fix I've found is that the Fn-F5/F6 no longer controls brightness which means the BIOS is no longer controlling it. The only way to control the backlight is using a now-enabled slider under System Preferences->Display setting although I found I can decrease brightness by using Fn-Delete key. Need to figure out how to make Fn-F5/F6 do what ever Fn-Delete is doing; either by DSDT patch or kext. See Fn-key discussion below. Power SavingsIts not working for me. Under linux, 1005PE are using acpi_cpufreq to throttle the CPU when not busy to saving power. I'd guess that means VoodooPowerACPI kext would work under OSX. It can be installed but didn't change CPU frequency for me. VoodooPower didn't do anything for me either and VoodooPowerMini would cause immediate kernel panics upon loading.Since thats not working, I didn't even attempt to look into SHE support to extend battery life even further. UPDATE 2011/01/18 - AppleIntelCPUPowerManagementClient is now loading and NetbookInstaller is patching the DSDT related to working with it. Using CPU-Z, I do not see CPU frequencies adjusting. There is supposed to be some options to pass to Chamelon in lastest version for P-state and C-state detection that is probably required for things to work. UPDATE 2011/01/27 - When Boot Booster was disabled, AppleACPIPS2Nub would fail to load and keyboard/mouse would not work. I found that installing NullCPUPowerManagement.kext allowed AppleACPIPS2Nub work again; of course with no power management. Since upgrading NetbookInstaller, its possible to have Chamelon patch DSDT/SSDT to have correct C and P states. Enabling this feature seems to allow removing NullCPUPowerManagement.kext and keep AppleACPIPS2Nub working at same time but doesn't seem to enable speedstep. Add this to /Extra/com.apple.Boot.plist: <key>GeneratePStates</key> <string>Yes</string> <key>GenerateCStates</key> <string>Yes</string> <key>DropSSDT</key> <string>Yes</string> I believe that AppleLPC.kext has to load before speedstep will work. One way to do this is to edit its Info.plist and add a PCI entry for pci8086,27bc (the PCI device ID for 1005PE's LPC) and reboot. This loads it but I get error messages about invalid C-states and I do not notice any differences in CPU temperature. Also, the USB bus and keyboard/touchpad seem to randomly stop working again. Fn-KeysMost Fn-keys do nothing under OSX since it most require userspace apps to process them (this is opposed to things like backlight dimming that ACPI can fully control if desired). I've seen mention on forums that someone created a kext to monitor Fn-Keys on ASUS computers (AsusHotKeys.kext?). I've not tested it and have lost the reference. It shouldn't be hard if you can hook into ACPI. Under Linux, the same driver is VERY small.
--- ApplePS2Keyboard.cpp (revision 159) +++ ApplePS2Keyboard.cpp (working copy) @@ -385,6 +385,7 @@ case 0x51: keyCode = 0x6B; break; // page down case 0x47: keyCode = 0x6C; break; // home case 0x4F: keyCode = 0x6D; break; // end + case 0x45: keyCode = 0x6F; break; // pause // Handeling printscreen, instead of passing the printscreen keycode // we are passing command + shift + 4 (and ctrl if we dont want to save the SS) One idea is to combine parts of ApplePS2Controller with above AsusHotKeys and have hotkeys send the ADB keys that are for backlight and volume controls. That way we should get nice graphics on screen for feedback. Misc NotesYou can use 7z to view inside this HFS+ file system and even related files like .dmg and .img files:7z l 2.hfs Or you can mount the extracted filesystem from DMG's under Linux using: mount -t hfsplus 2.hfs /mnt -o loop Sharing Data with LinuxSince the main point of this page is describing how to install OSX using Linux tools, you may also be duel or triple booting and wish to share data between OS's. Fedora can read HFS+ partitions just fine but by default will only mount them read/write if journalling is disabled. To do that, run the following command from OSX terminal.diskutil disableJournal /Volumes/TheVolumeName On Linux side, create a mount point: mkdir "/media/Mac OSX" and add following to your /etc/fstab. Replace /dev/sda2 of parition name you installed OSX to. /dev/sda2 /media/Mac\040OSX hfsplus defaults 1 2 Upon next reboot, it will be automounted and an icon displayed on your Gnome desktop. |
Linux >