Index: branches/blackosx/version =================================================================== --- branches/blackosx/version (revision 1591) +++ branches/blackosx/version (revision 1592) @@ -1 +1 @@ -2.1svn +2.1svn \ No newline at end of file Index: branches/blackosx/package/TO DO.txt =================================================================== --- branches/blackosx/package/TO DO.txt (revision 1591) +++ branches/blackosx/package/TO DO.txt (revision 1592) @@ -1,4 +1,5 @@ TO DO * Add theme to org.chameleon.boot.plist? (Do what when more than one installed?) -* Implement adding more than one kernel flag. \ No newline at end of file +* How to control which option is default when using the exclusive setting? I would prefer the 'None' option set as default. +* Finalise English Localizable.strings, then somehow update all the other languages?? \ No newline at end of file Index: branches/blackosx/package/OptionalSettings/Resolution.txt =================================================================== --- branches/blackosx/package/OptionalSettings/Resolution.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/Resolution.txt (revision 1592) @@ -1,9 +1,12 @@ # --------------------------------------------- # Chameleon Optional Settings List. -# Add boot options or kernel flags in to these files. -#ÊUse one file or many files - it's flexible. -# The filename is used as the sub menu heading. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +#ÊUse one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- # To add boot option: Structure is name:key=value # example1: InstantMenu:Instant Menu=Yes # example2: DropSSDT:DropSSDT=Yes @@ -12,10 +15,16 @@ # example1: Npci:KFflag=npci=0x2000 # example2: Verbose:KFflag=-v # --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# +Exclusive=True +# --------------------------------------------- # Note: There must be a carriage return at end of last line # --------------------------------------------- -Exclusive=True -# --------------------------------------------- 1024x600x32:Graphics Mode=1024x600x32 1024x768x32:Graphics Mode=1024x768x32 1280x768x32:Graphics Mode=1280x768x32 Index: branches/blackosx/package/OptionalSettings/Video.txt =================================================================== --- branches/blackosx/package/OptionalSettings/Video.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/Video.txt (revision 1592) @@ -1,10 +1,30 @@ # --------------------------------------------- -# Chameleon boot options list. -# Structure is name:key=value -# Note: There must be a carriage return at end of last line +# Chameleon Optional Settings List. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +# Use one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- +# To add boot option: Structure is name:key=value +# example1: InstantMenu:Instant Menu=Yes +# example2: DropSSDT:DropSSDT=Yes +# --------------------------------------------- +# To add kernel flag: Structure is name:KFflag=kernelflag +# example1: Npci:KFflag=npci=0x2000 +# example2: Verbose:KFflag=-v +# --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# Exclusive=False # --------------------------------------------- +# Note: There must be a carriage return at end of last line +# --------------------------------------------- GraphicsEnabler:GraphicsEnabler=Yes UseAtiROM:UseAtiROM=Yes UseNvidiaROM:UseNvidiaROM=Yes Index: branches/blackosx/package/OptionalSettings/PowerManagement.txt =================================================================== --- branches/blackosx/package/OptionalSettings/PowerManagement.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/PowerManagement.txt (revision 1592) @@ -1,9 +1,12 @@ # --------------------------------------------- # Chameleon Optional Settings List. -# Add boot options or kernel flags in to these files. -#ÊUse one file or many files - it's flexible. -# The filename is used as the sub menu heading. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +#ÊUse one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- # To add boot option: Structure is name:key=value # example1: InstantMenu:Instant Menu=Yes # example2: DropSSDT:DropSSDT=Yes @@ -12,10 +15,16 @@ # example1: Npci:KFflag=npci=0x2000 # example2: Verbose:KFflag=-v # --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# +Exclusive=False +# --------------------------------------------- # Note: There must be a carriage return at end of last line # --------------------------------------------- -Exclusive=False -# --------------------------------------------- CSTUsingSystemIO:CSTUsingSystemIO=Yes DropSSDT:DropSSDT=Yes EnableC2State:EnableC2State=Yes Index: branches/blackosx/package/OptionalSettings/General.txt =================================================================== --- branches/blackosx/package/OptionalSettings/General.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/General.txt (revision 1592) @@ -1,9 +1,12 @@ # --------------------------------------------- # Chameleon Optional Settings List. -# Add boot options or kernel flags in to these files. -#ÊUse one file or many files - it's flexible. -# The filename is used as the sub menu heading. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +#ÊUse one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- # To add boot option: Structure is name:key=value # example1: InstantMenu:Instant Menu=Yes # example2: DropSSDT:DropSSDT=Yes @@ -12,10 +15,16 @@ # example1: Npci:KFflag=npci=0x2000 # example2: Verbose:KFflag=-v # --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# +Exclusive=False +# --------------------------------------------- # Note: There must be a carriage return at end of last line # --------------------------------------------- -Exclusive=False -# --------------------------------------------- arch:arch=i386 EHCIacquire:EHCIacquire=Yes EthernetBuiltIn:EthernetBuiltIn=Yes Index: branches/blackosx/package/OptionalSettings/KernelFlags.txt =================================================================== --- branches/blackosx/package/OptionalSettings/KernelFlags.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/KernelFlags.txt (revision 1592) @@ -1,9 +1,12 @@ # --------------------------------------------- # Chameleon Optional Settings List. -# Add boot options or kernel flags in to these files. -#ÊUse one file or many files - it's flexible. -# The filename is used as the sub menu heading. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +#ÊUse one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- # To add boot option: Structure is name:key=value # example1: InstantMenu:Instant Menu=Yes # example2: DropSSDT:DropSSDT=Yes @@ -12,10 +15,16 @@ # example1: Npci:KFflag=npci=0x2000 # example2: Verbose:KFflag=-v # --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# +Exclusive=False +# --------------------------------------------- # Note: There must be a carriage return at end of last line # --------------------------------------------- -Exclusive=False -# --------------------------------------------- Verbose:KFflag=-v Singleusermode:KFflag=-s Ignorecaches:KFflag=-f Index: branches/blackosx/package/OptionalSettings/Control.txt =================================================================== --- branches/blackosx/package/OptionalSettings/Control.txt (revision 1591) +++ branches/blackosx/package/OptionalSettings/Control.txt (revision 1592) @@ -1,9 +1,12 @@ # --------------------------------------------- # Chameleon Optional Settings List. -# Add boot options or kernel flags in to these files. -#ÊUse one file or many files - it's flexible. -# The filename is used as the sub menu heading. # --------------------------------------------- +# Add boot options or kernel flags to the bottom of this file. +# They will appear under the package installer's Settings menu +# in a sub menu named with the filename of this file. +#ÊUse one file or many files - it's flexible to make it easy +# to group different options under separate sub menus. +# --------------------------------------------- # To add boot option: Structure is name:key=value # example1: InstantMenu:Instant Menu=Yes # example2: DropSSDT:DropSSDT=Yes @@ -12,10 +15,16 @@ # example1: Npci:KFflag=npci=0x2000 # example2: Verbose:KFflag=-v # --------------------------------------------- +# The package installer has a setting which controls what +# the user is allowed to choose. +# A) User can select every option from the list. +# B) User can select only one of the options from the list. +# Set Exclusive=False for A, or Exclusive=True for B. +# +Exclusive=False +# --------------------------------------------- # Note: There must be a carriage return at end of last line # --------------------------------------------- -Exclusive=False -# --------------------------------------------- BootBanner:Boot Banner=No GUI:GUI=No LegacyLogo:Legacy Logo=Yes Index: branches/blackosx/package/Resources/en.lproj/Localizable.strings =================================================================== --- branches/blackosx/package/Resources/en.lproj/Localizable.strings (revision 1591) +++ branches/blackosx/package/Resources/en.lproj/Localizable.strings (revision 1592) @@ -1,5 +1,5 @@ ÿ₫// General -"Chameleon_title" = "Bootloader & Modules"; +"Chameleon_title" = "Bootloader"; "Chameleon_description" = "Chameleon requires three essential files. (in simple terms) boot0 (On the drive's MBR) responsible for loading boot1. boot1 (On the partition's boot-sector) to finding boot2. @@ -16,7 +16,7 @@ // Modules -"Module_title" = "Chameleon Modules"; +"Module_title" = "Modules"; "Module_description" = "The modules system incorporated in chameleon allows for a user or developer to extend the core functionality of chameleon without replacing the main boot file. "; "AMDGraphicsEnabler_title" = "AMDGraphicsEnabler"; @@ -71,31 +71,31 @@ "Documentation_description" = "Documentation for Chameleon manual install and use"; // Boot Options -"Options_title" = "Available Settings"; +"Options_title" = "Settings"; "Options_description" = "Create an /Extra/org.chameleon.Boot.plist by selecting any of these boot options and kernel flags."; // Control "Control_title" = "Control Options"; -"Control_description" = "Settings to control the way Chameleon works."; +"Control_description" = "Settings to control how Chameleon works."; "BootBanner_title" = "BootBanner=No"; -"BootBanner_description" = "Hides Chameleon's boot banner in GUI."; +"BootBanner_description" = "Hides Chameleon's boot banner in GUI. This is the text that is drawn at the top left corner of the screen displaying the release version etc."; "GUI_title" = "GUI=No"; "GUI_description" = "Disables the default enabled graphic user interface."; "LegacyLogo_title" = "LegacyLogo=Yes"; -"LegacyLogo_description" = "Use the legacy (grey on white) apple logo on the boot screen rather than the boot.png in the theme."; +"LegacyLogo_description" = "Use the legacy 'dark grey' apple logo on the light grey screen for the boot process rather than the boot.png in the theme."; "InstantMenu_title" = "InstantMenu=Yes"; -"InstantMenu_description" = "Display the partition selection screen without showing the timeout screen."; +"InstantMenu_description" = "By default, when Chameleon loads you'll see the icon for the current default partition, along with a timeout progress bar which left alone will count down before Chameleon automatically boots that partition. This options skips that and takes you directly to the device selection screen."; "QuietBoot_title" = "QuietBoot=Yes"; "QuietBoot_description" = "Enable quiet boot mode (no messages or prompt)."; "ShowInfo_title" = "ShowInfo=No"; -"ShowInfo_description" = "Disables display of partition and resolution details."; +"ShowInfo_description" = "Disables display of partition and resolution details shown on the left side of the GUI under the boot banner. This is useful information for troubleshooting, though can clash with certain themes."; "Wait_title" = "Wait=Yes"; "Wait_description" = "Pauses the boot process after Chameleon has finished it's setup then waits for a key press before it starts the mach kernel. Useful when combined with verbose boot for troubleshooting."; @@ -142,9 +142,18 @@ "KernelFlags_description" = "Choose from a selection of kernel flags."; "Npci_title" = "npci=0x2000"; -"Npci_description" = "Set the flag npci=0x2000 for the Kernel Flags"; +"Npci_description" = "For overcoming a hang at 'PCI configuration begin' on some systems. 0x2000 is the kIOPCIConfiguratorPFM64 flag, as seen in the IOPCIFamily source code."; +"Verbose_title" = "Verbose Mode"; +"Verbose_description" = "Turns on verbose logging and allows you to see messages from both Chameleon and the OS X kernel at boot time. Essential for troubleshooting."; +"Singleusermode_title" = "Single User Mode"; +"Singleusermode_description" = "A troubleshooting option used for booting into OS X's BSD/Unix command line."; + +"Ignorecaches_title" = "Ignore Caches"; +"Ignorecaches_description" = "Not an option that's needed for everyday booting, but it can be useful if you want OS X to load all files from it's system folders, rather than relying on it's pre-built caches."; + + // PowerManagement "PowerManagement_title" = "Power Management"; "PowerManagement_description" = "A selection of options that deal with power management and speedstep."; Index: branches/blackosx/package/buildpkg.sh =================================================================== --- branches/blackosx/package/buildpkg.sh (revision 1591) +++ branches/blackosx/package/buildpkg.sh (revision 1592) @@ -24,7 +24,7 @@ #version=$( grep I386BOOT_CHAMELEONVERSION vers.h | awk '{ print $3 }' | tr -d '\"' ) version=$( cat version ) -stage=${version##*-} +stage=${version##*-}" (blackosx branch)" revision=$( grep I386BOOT_CHAMELEONREVISION vers.h | awk '{ print $3 }' | tr -d '\"' ) builddate=$( grep I386BOOT_BUILDDATE vers.h | awk '{ print $3,$4 }' | tr -d '\"' ) timestamp=$( date -j -f "%Y-%m-%d %H:%M:%S" "${builddate}" "+%s" ) @@ -114,7 +114,11 @@ buildpackage "${1}/noboot" "/$chamTemp" "" "start_visible=\"true\" start_selected=\"false\" selected=\"exclusive(choices['Standard']) && exclusive(choices['EFI'])\"" >/dev/null 2>&1 # End build reset choice package - # build Modules package + ((xmlindent--)) + outline[$((outlinecount++))]="${indent[$xmlindent]}\t" +# End build Chameleon package + +# build Modules package echo "================= Modules =================" ############################### # Supported Modules # @@ -136,7 +140,7 @@ mkdir -p ${1}/klibc/Root ditto --noextattr --noqtn ${1%/*}/i386/modules/klibc.dylib ${1}/klibc/Root echo " [BUILD] klibc " - buildpackage "${1}/klibc" "/$chamTemp/Extra/modules" "" "start_selected=\"true\"" >/dev/null 2>&1 + buildpackage "${1}/klibc" "/$chamTemp/Extra/modules" "" "start_selected=\"false\"" >/dev/null 2>&1 } fi # - @@ -155,7 +159,7 @@ ditto --noextattr --noqtn ${1%/*}/i386/modules/uClibcxx.dylib ${1}/uClibc/Root ditto --noextattr --noqtn ${1%/*}/i386/modules/klibc.dylib ${1}/uClibc/Root echo " [BUILD] uClibc++ " - buildpackage "${1}/uClibc" "/$chamTemp/Extra/modules" "" "start_selected=\"true\"" >/dev/null 2>&1 + buildpackage "${1}/uClibc" "/$chamTemp/Extra/modules" "" "start_selected=\"false\"" >/dev/null 2>&1 } fi # - @@ -164,7 +168,7 @@ mkdir -p ${1}/Keylayout/Root ditto --noextattr --noqtn ${1%/*}/i386/modules/Keylayout.dylib ${1}/Keylayout/Root echo " [BUILD] Keylayout " - buildpackage "${1}/Keylayout" "/$chamTemp/Extra/modules" "" "start_selected=\"true\"" >/dev/null 2>&1 + buildpackage "${1}/Keylayout" "/$chamTemp/Extra/modules" "" "start_selected=\"false\"" >/dev/null 2>&1 } fi @@ -177,10 +181,8 @@ } fi # End build Modules packages - ((xmlindent--)) - outline[$((outlinecount++))]="${indent[$xmlindent]}\t" -# End build Chameleon package + # build Extras package # build options packages @@ -192,7 +194,7 @@ # parse OptionalSettings folder to find files of boot options. # ------------------------------------------------------ OptionalSettingsFolder="${pkgroot}/OptionalSettings" - OptionalSettingsFiles=($( find "${OptionalSettingsFolder}" -depth 1 -not -name '.svn' )) + OptionalSettingsFiles=($( find "${OptionalSettingsFolder}" -depth 1 ! -name '.svn' ! -name '.DS_Store' )) for (( i = 0 ; i < ${#OptionalSettingsFiles[@]} ; i++ )) do