How to test 10.4.8 Kernel?

Follow this quick steps to setup your testing env:

  • What do I need?

You need 2 primary partitions, 10 gigs each is far enough.
JaS 10.4.6/10.4.7 DVD
JaS 10.4.8 update (get from previous post)

  • Before I start

You need to have a running JaS 10.4.8 on the primary partition.
Install from DVD and upgrade to 10.4.8.

  • OK let’s do it!

Now boot to your primary JaS OS X 10.4.8.

Just put any JaS 10.4.4 – 10.4.7 DVD in your drive and run the following package: /System/Installation/Packages/OSInstall.pkg

Choose to install on your second partition.
Follow the wizard and choose customize button, and uncheck all patches.
Then click next, next…

You should have now an unpatched 10.4.4 system installed on second partition.
Don’t try to boot right now, it won’t work.
Next step is to get the apple combo update: MacOSXUpdCombo10.4.8Intel.dmg

Extract the MacOSXUpd10.4.8Intel.pkg to your Desktop
and right-click on it and choose Show Package Content.
Browse to Content/Resources and drag ‘n’ drop the InstallationCheck file to the trash.
Now double-click the pkg and install to the second partition.


If you can’t select the second partition while installing 10.4.8 update,
just do the following:

Open a terminal and type sudo -s
Enter your root password and type the following command:

ditto -x Desktop/MacOSXUpd10.4.8Intel.pkg/Contents/Archive.pax.gz /Volumes/partition2/

where partition 2 is the name of your second partition.

  • And that’s it?

Well, this can boot to single user mode for sure.
But if you want to test further, you need the 10.4.8 decrypts…

10.4.8 kernel boots in Single User mode!

After some quite long period of compiling/testing/debugging, semthex 10.4.8 kernel
finally boots to single user mode!

Congrats Semthex!

  • This kernel was compiled for SSE2, so it will work for any SSE2 comp 🙂
  • The NX bit is not required, disabled by JaS.
  • HPET has also been disabled.
  • Legacy support for socket 7 has been added as a boot option

Here is the semthex 10.4.8 source code: coming soon…

You can get original apple 10.4.8 sources here:
To compile, you need to install XCode 2.4:
Download and install the kernel tools:

Execute the following commands in Terminal to install:

$ curl -O
$ sudo tar xzf kernel-tools-8J2135.root.tar.gz -C /

Then extract the source to a folder in /tmp/sources, and fire a Terminal window:

sudo -s
cd /tmp
chmod -R 777 sources
cd sources

mach_kernel is in BUILD/dst

copy mach_kernel to the root of your test system.

chmod -R 755 mach_kernel
chown -R root:wheel mach_kernel

MacGeek hits 1000+ visitors!

I have to say W0W! MacGeek just hit the 1000+ visitors in 8 days.
Every thousand visitors, we’ll put a pin-up on this blog.
How do you like our first one? Sexy, isn’t it?

10.4.8 Kernel under dev/testing

Apple released the source code of the new 10.4.8 kernel!
Dated 14-feb-1970! LOL

For those who wants to play with the sources, you can download here:

Semthex has begun hard dev to bring this kernel on our hacks.
So we could get a complete 10.4.8 clone.

HPET and EFI have been successfully disabled, so a lot more boxes will be supported!
The main efforts right now are focused on some legacy support.

The next step semthex is workin’ on is get the kernel boot in single user mode
on a box with SSE3, and no NX/XD.

Give semthex some support:
Me and JaS are testing and will report soon.


Easy dual/triple boot

How to dual boot (or even triple) boot JaS OS X 10.4.7 with windows or linux?

  • If your primary partition is Linux, or you have linux installed:

You should install grub (linux bootloader) at the MBR.

Then add the following lines into menu.lst assuming that you installed OS X on your first harddisk on the second partition (hd0,1):

title JaS 10.4.7
rootnoverify (hd0,1)
chainloader --force +1

If you installed on third partition, you should replace (hd0,1) by (hd0,2)

  • If you primary partition is windows, its still possible to use this method!!!

Download and install:
Follow this examples:
Use the same menu.lst config as above.

I’m actually using this method as chain0 never worked for me.