Welcome to the Mac OS X 10.6 Snow Leopard on PowerPC - Development Thread
The purpose of this thread is for the ongoing technical discussion, communication and collaborative efforts to develop and rebuild OS X 10.6.8 Snow Leopard and accompanying Xcode Development Tools for the PowerPC Mac Platform.We have now reached a stage where a work in progress community created image (alpha testing version 4) of 10.6.8 is available, currently using 'donor parts' from Developer Build 10A190 and 10.5.8 Leopard, and system components built from the Apple Open Source Projects and Releases, which has been made available as an easy to restore disk image courtesy of @educovas.
…
MOST RECENT UPDATES TO 10.6.8 on PowerPC…
There were some binaries I missed that didn't have ppc slices and exist in 10.5.8/10A190 or were outdated so I've updated the image once again to include the changes.
/usr/share/sandbox/krb5kdc.sb removed the allow system-socket line
Restored 10.6.8 SystemProfiler’s panes with ppc slice
Restored System Configuration bundles from 10.6.8
/Library/Application Support/iLifeMediaBrowser from 10.5.8
System/Library/PrivateFrameworks/BrowserKit.framework from 10.5.8
System/Library/PrivateFrameworks/ProKit.framework from 10A190
System/Library/PrivateFrameworks/Safari.framework from 10.5.8
System/Library/PrivateFrameworks/SystemMigration.framework/Frameworks/SlingShot+10_6.framework from 10.5.8
System/Library/PrivateFrameworks/XgridInterface.framework from 10A190
System/Library/PrivateFrameworks/MobileDevice.framework from iTunes 10.6.3
System/Library/PrivateFrameworks/AirTrafficHost.framework from iTunes 10.6.3
System/Library/PrivateFrameworks/DeviceLink.framework from iTunes 10.6.3
/System/Library/Extensions/AppleMobileDevice.kext from iTunes 10.6.3
/System/Library/Extensions/AppleUSBEthernetHost.kext from iTunes 10.6.3
Changes in the new image:
- utdns already included and using google's DNS 8.8.8.8
- tiff2icns replaced with the one from 10.5.8
- fixed Core Text's cursor
- graphics acceleration wrappers have been rebuilt with the correct version
In order to get internet connection, the IP address, subnet mask and router have to be manually inserter since DHCP is still broken. The DNS server has to be set to 127.0.0.1.
Just to remind again: this image should work with all GPUs that were supported in 10.5.8, including Nvidia. To avoid confusion again, I won't be updating the image I built for @barracuda156.
10.6.8 image: https://mega.nz/file/AApSABha#W83ywkVUXAeemZGjz4Prdzy0_yBsLuVG8rWjvqAc98M
! WARNING !
The software discussed in this thread is experimental and may be unstable. Please be aware that you will not be able to revert back to your previous system if you erase your primary OS drive or partition - proceed with caution. Please install this software on a system you are prepared to erase if necessary.
DOWNLOADS
File | Hyperlink | Description | Status |
Mac OS X 10.6.8 Restore Image | MegaUpload (Macintosh Garden Uploads are outdated) | Full restore image of Mac OS X Snow Leopard 10.6.8 for PowerPC | Alpha Testing: Version 4 |
XCode 3.2.6 (Intel) | Apple Developer Downloads Internet Archive | Release 10M25XX 06/03/2011 Mac OS X 10.6.4+ | Release |
XCode 3.2.6 (ppc) | WIP | ||
DarwinBuild | DarwinBuild GitHub macos-powerpc.org | Darwinbuild is a collection of tools that assist compilation of the many projects contained in Darwin, the open source base of Apple's macOS operating system. | Prebuilt port via @barracuda156 With various patches and broken sourceforge links redirected to allow Apple Open Source Projects to be built easily |
UTdns | macos-powerpc.org UTdns GitHub | UTdns is a nifty tool which proxies all UDP-based DNS requests through TCP DNS. This is usefull if you have to tunnel DNS through TCP-only tunnels | Prebuilt port available via @barracuda156 to workaround current networking issues IP address, subnet mask and router have to be manually inserted, since DHCP is still broken. The DNS server has to be set to 127.0.0.1 |
INSTALLATION
IMPORTANT: Always back-up your system before installing any operating system.
A. Install Snow Leopard using hard disk partitions:
REQUIREMENTS:
PowerPC G4 or G5 based system
Two hard disk partitions internal or external (or 2 separate drives)
Hard disk partitions setup:
Partition 1 - 10.5.8 System Containing the downloaded Snow Leopard disk image on the internal drive, or on a connected external USB/Firewire device. (Alternatively, 10a190 can also be used.)
Partition 2 - Restore the disk image onto this partition (IMPORTANT: All data on this partition will be erased!)
PROCEDURE:
1. Boot off partition 1 then, using Disk Utility, select ‘Scan image for restore’ and then restore the Snow Leopard Disk Image onto partition 2 using the ‘erase & restore’ and ‘block copy’ options.
2. Select partition 2 as the boot device and boot into Snow Leopard to complete the setup process.
Note: Use System Preferences > Startup Disk in 10.5.8 Leopard to pick startup volume or hold down the ‘Option (⌥) or Alt’ key when powering on the system to select a boot volume using the Boot picker.
A. Install Snow Leopard using hard disk partitions:
REQUIREMENTS:
PowerPC G4 or G5 based system
Two hard disk partitions internal or external (or 2 separate drives)
Hard disk partitions setup:
Partition 1 - 10.5.8 System Containing the downloaded Snow Leopard disk image on the internal drive, or on a connected external USB/Firewire device. (Alternatively, 10a190 can also be used.)
Partition 2 - Restore the disk image onto this partition (IMPORTANT: All data on this partition will be erased!)
PROCEDURE:
1. Boot off partition 1 then, using Disk Utility, select ‘Scan image for restore’ and then restore the Snow Leopard Disk Image onto partition 2 using the ‘erase & restore’ and ‘block copy’ options.
2. Select partition 2 as the boot device and boot into Snow Leopard to complete the setup process.
Note: Use System Preferences > Startup Disk in 10.5.8 Leopard to pick startup volume or hold down the ‘Option (⌥) or Alt’ key when powering on the system to select a boot volume using the Boot picker.
TEST & DEBUG TOOLS
Tool | Hyperlink | Description |
psx | … | An extended ps-like command which can display detailed information about processes and threads in OS X. The tool requires no special permissions if when viewing processes owned by the user, but will require root permissions otherwise. This tool is free and open source. |
Jtool | Download | While for most binary functions one can use the OS X built-in otool, it leaves out useful information when analysing the data section. Jtool improves on otool, by addressing the shortcomings of otool, and offers useful new features for static binary analysis. The tool has many useful features, like finding references in files and limited disassembly functionality. The tool is freeware but is closed source. |
lsock | Download | The functionality of netstat -o, which shows the processes owning the system sockets is missing in OS X. The tool uses an undocumented kernel control protocol called com.apple .network.statistics to obtain real-time notifi cations of sockets as they are created. This tool is easy to incorporate into scripts, which makes it useful as a connection event handler. |
BatchMod | … | BatchMod allows you full control over permissions within a simple and easy to use GUI. |
GDB | … | GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it crashed. |
KNOWN ISSUES
Issue Description | Reported by User | Fixed (Y/N) | Workaround |
AHCI kexts are broken for PowerPC | @barracuda156 | No | Remove AHCI kexts |
OS `dyld` handling libstdc++ symbols | @barracuda156 | No | |
Software created users/groups not recognised by OS without reboot | @barracuda156 | No | |
Networking - unable to access the internet (Ethernet and Wifi) & Self-assigned IP | @educovas Known issue with all builds from 10A432 to current 10.6.8 testing builds | No | @barracuda156 reported that after installing UTDNS they have internet working on 10.6.8 (UDP still broken as it was, and therefore no DHCP, but DNS is working over TCP, so browsing works, curl works etc.). P. S. Pre-compiled utility: http://macos-powerpc.org/packages/utdns(you do not need MacPorts for this, it has 0 dependencies). Or compile from source from: https://github.com/rahra/utdns |
Graphics Acceleration Support for Ati & Nvidia GPUs | @educovas (Carried over from 10A190) | Yes | @educovas has patched the image with 10.5.8 frameworks. All GPUs (ATi and Nvidia) that are compatible with Leopard should work on 10.6.8. Ensure you are using the correct .dmg and not the modified 10A190 compatible version created specifically for @barracuda156for testing purposes. |
Sleep issues | @educovas | No | Disable Sleep |
QuickLook partially broken | @educovas | No | |
Bluetooth won’t find devices | @educovas | No | |
Finder CoverFlow frozen/glitchy | @educovas | No | |
Spotlight indexing doesn’t work | @educovas | No | |
Microsoft NTFS Filesystem - no Read/Write access | @jktwice | Yes | ntfs.kext wasn't loading due to a missing copyright string. It should now work using the kext attached. NTFS.kext (fixed) |
Multiple third party apps are denied write access to files owned by root, even after being authorised with a root password | @barracuda156 | No |
REFERENCE & DOCUMENTATION
- Welcome to Snow Leopard Documentation
- Mac OS X & iOS Internals Free book by Johnathon Levin
- Apple Developer Documentation Archive
- Mac OS X Internals A Systems Approach A book by Amit Singh
- Apple Open Source Releases
- Apple OSS GitHub
- What’s New in 10.6 Snow Leopard
- Siracusa/ArsTechnica comprehensive review of Snow Leopard retail edition, Aug. 2009
- SSEN’S BLOG - Building XNU from Source
- Snow Leopard on Unsupported PowerPC Macs
THIRD PARTY SOFTWARE SUPPORT
For third party software support (software not integral to the OS or integrated apple tools) and MacPorts on 10.6 PowerPC please contact @barracuda156 on the appropriate threads:
Open Source Software Currently Supported macOS PowerPC
MacPorts for 10.6 PowerPC With Pre-Built Ports Unofficial Testing Welcomed
DISCLAIMER
THE BETA SOFTWARE HEREUNDER IS KNOWN TO CONTAIN DEFECTS AND THE PRIMARY PURPOSE OF THIS BETA TESTING IS TO OBTAIN FEEDBACK ON SOFTWARE PERFORMANCE AND THE IDENTIFICATION OF FURTHER DEFECTS. USERS ARE ADVISED TO SAFEGUARD IMPORTANT DATA, TO USE CAUTION AND NOT TO RELY IN ANY WAY ON THE CORRECT FUNCTIONING OR PERFORMANCE OF THE SOFTWARE AND/OR ACCOMPANYING INFORMATION AND MATERIALS CONTAINED IN THIS THREAD .ALL SOFTWARE MADE AVAILABLE FOR DOWNLOAD IS STILL IN THE TESTING PHASE AND IS PROVIDED ON AN "AS IS" AND "AS AVAILABLE" BASIS. ANY DAMAGES OR LOSSES INCURRED BY THE USER ARE THE SOLE RESPONSIBILITY OF THE USER. THE USER ACCEPTS NO WARRANTY OR GUARANTEE OF ANY KIND IS PROVIDED WITH THIS SOFTWARE.
Attachments
Last edited: