overdue-scratch

Author Topic: [Utility] Lizard: a little app for Chameleon (update 0.62)  (Read 131086 times)

0 Members and 1 Guest are viewing this topic.

sonotone

  • Observer
  • Posts: 29
[Utility] Lizard: a little app for Chameleon (update 0.62)
« on: October 06, 2009, 09:55:12 PM »
hi,

I've just released a Beta of a little cocoa application, designed to manage Chameleon.

You can edit com.apple.Boot.plist, smbios.plist and build a bootable ISO.

This is a beta, and this is my first cocoa project, so don't be surprise if it contain some bugs or need more options... i'm still learning and need some time (i'm not a dev).

It can't (and probably never) grab files from the "efi" partition.

However, you can specify a custom path for smbios.plist, or use the Apple's default location for com.apple.Boot.plist (seem's necessary for RAID).

The avanced Theme part is able to read some new informations
- You can add two keys in the theme.plist
Code: [Select]
key>Author</key>
<string>Me</string>
<key>Version</key>
<string>1.0</string>
- And add a thumb named "thumb.png" with other files.

If you're not familiar with Chameleon, the application is shipped with detailled help files.

Hope Lizard will makes your chameleon's experience better...

Credits:
Prasys for Smbios Help content
Distemperus for Boot Help content
Trauma, Kabyl, JrCs, BlackOsx for their advices and expertise.

Download (0.62 beta):
http://darwinx86.net/software/

Ugly sources: http://code.google.com/p/lizard-app/
« Last Edit: June 23, 2010, 12:23:14 PM by sonotone »

Blackosx

  • Forum Moderator
  • Posts: 1150
Re: Lizard: a little app for Chameleon
« Reply #1 on: October 06, 2009, 10:08:47 PM »
What a fantastic, slick application. Marvellous work :)
I will supply revised theme.plists to support this in my future themes.

Well done Sonotone :)
10.10.5 / 10.11 GM1 | Asus Maximum IV Gene-Z | i7-2600 3.40GHz | 4GB | Radeon 5770 1GB

rzooff

  • Member
  • Posts: 59
Re: Lizard: a little app for Chameleon
« Reply #2 on: October 08, 2009, 11:40:24 AM »
Great idea, looks also great, but it is not working like it should.
All issues are confirmed on other hacks...

Critical:
1. Unable to update or create smbios.plist (yes, I wrote down password ;) )
2. Application doesn't read (all?) data from existing com.apple.Boot.plist - device properies. So after edit & save, for ex. EFI String, disapears.

Cosmetic:
3. In smbios menu, I'd like to choose "DDR2" memory type rather then "19" etc.
4. Maybe it is possible to "move" password request funcion? I think it should appear just after pressing "save" button.

But, as I wrote above, the idea is great. And I'm really gratefull that you're doing this app. So I hope it will be fully funcional soon :)

MacOS X 10.6.1 (Retail)  + Chameleon 2 | ASUS P5B-V | C2D E4600 | GF 8400GS | Asus WL-138g v2
MacOS X 10 10.5.8 (Retail) + Chameleon 2 | Toshiba L40-R17 |

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #3 on: October 08, 2009, 04:26:51 PM »
Great idea, looks also great, but it is not working like it should.
All issues are confirmed on other hacks...

Critical:
1. Unable to update or create smbios.plist (yes, I wrote down password ;) )
2. Application doesn't read (all?) data from existing com.apple.Boot.plist - device properies. So after edit & save, for ex. EFI String, disapears.

Cosmetic:
3. In smbios menu, I'd like to choose "DDR2" memory type rather then "19" etc.
4. Maybe it is possible to "move" password request funcion? I think it should appear just after pressing "save" button.

But, as I wrote above, the idea is great. And I'm really gratefull that you're doing this app. So I hope it will be fully funcional soon :)


Thanks for report.

1. smbios.plist permissions can only be overwritten in /Extra/smbios.plist (from pref window). If the Extra as no write permissions for your account, then you can't create a new smbios.plist inside.
the explanation is i've not implemented permissions elevations into the app. This is not a simple task for cocoa/objective-c, and the Apple's documentation is quite complex about that, and i need to manage security risk. (if someone can help with that...).
So, the best way at this moment is to allow read/write to /Extra and children's for you account with finder or terminal if you want to rebuild files. Chameleon doesn't care about that.

2. I can't reproduce you issue with dev-props. Make sure you don't have Chameleon graphics ou ethernet injections activated in same time, cause chameleon will ignore dev-props. So i've followed this rule, if dev-props are found, you can't add GraphicsEnabler or EthernetBuiltIn...etc
I've just made an update to warm about that at startup.
Non vaild entries are removed during saving, if i miss a valid one, let me know.

3. Yes, it's totally possible

4. This is connected to the first problem. Actually, i prefer users change file's permissions themself instead of Lizard, because i want they know what's happening. As soon i found the way to save with root privileges, i mean without modifying permissions, it will be like that.

rzooff

  • Member
  • Posts: 59
Re: Lizard: a little app for Chameleon
« Reply #4 on: October 08, 2009, 05:07:03 PM »
I confirm - smbios.plist edition works after:
Code: [Select]
sudo chmod -R 777 /Extra
But issue 2 really exists. This is my orginal plist:
Code: [Select]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Graphics Mode</key>
<string>1920x1200x32</string>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string></string>
<key>Timeout</key>
<string>3</string>
<key>Instant Menu</key>
<string>Yes</string>
<key>USBBusFix</key>
<string>Yes</string>
<key>device-properties</key>
<string>6a02000001000000010000005e0200000d00000002010c00d041030a000000000101060000010101060000007fff04000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000220000005600520041004d002c0074006f00740061006c00730069007a006500000008000000000000201c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e740e0000006e0061006d00650000000b000000646973706c617922000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c000000190000004e5649444941204765466f7263652038343030475320000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d6163100000004e00560043004100500000001800000004000000000003000400000000000007000000001e00000072006f006d002d007200650076006900730069006f006e0000002d0000004e5649444941204765466f72636520383430304753204f70656e474c20456e67696e65205b4546495d</string>
</dict>
</plist>

When I open Lizarg all looks like this - in "current injection" there is my encoded string:




But after pressing "save" button, my plist become like this:
Code: [Select]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Graphics Mode</key>
<string>1920x1200x32</string>
<key>Instant Menu</key>
<string>Yes</string>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string></string>
<key>Timeout</key>
<string>3</string>
<key>USBBusFix</key>
<string>Yes</string>
</dict>
</plist>
MacOS X 10.6.1 (Retail)  + Chameleon 2 | ASUS P5B-V | C2D E4600 | GF 8400GS | Asus WL-138g v2
MacOS X 10 10.5.8 (Retail) + Chameleon 2 | Toshiba L40-R17 |

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #5 on: October 08, 2009, 05:47:36 PM »
Ok, found my mistake  :D

I wrote devices-properties instead of device-properties, and as i don't use dev-props, i've skipped this error.

You can re-check the link, it should be fixed.
« Last Edit: October 08, 2009, 05:50:04 PM by sonotone »

rzooff

  • Member
  • Posts: 59
Re: Lizard: a little app for Chameleon
« Reply #6 on: October 08, 2009, 08:25:06 PM »
Yes - now com.apple.Boot.plist looks like it should be. Also "Device Properties" window shows string hex (it was empty before).
Thanks for so fast response!

Maybe someone more experienced could help You with setting smbios.plist permissions?


« Last Edit: October 08, 2009, 10:38:10 PM by rzooff »
MacOS X 10.6.1 (Retail)  + Chameleon 2 | ASUS P5B-V | C2D E4600 | GF 8400GS | Asus WL-138g v2
MacOS X 10 10.5.8 (Retail) + Chameleon 2 | Toshiba L40-R17 |

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #7 on: October 08, 2009, 11:09:08 PM »
this evening, i found a way to save plist without modifying permissions by using authopen, so i'll update the app soon.

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #8 on: October 10, 2009, 04:27:59 PM »
Just Added the possibility to define Extra folder Path (in preferences) for folks who have their Extra folder on different partition. If you see bugs, let me know
See first post.
« Last Edit: October 10, 2009, 04:33:42 PM by sonotone »

Blackosx

  • Forum Moderator
  • Posts: 1150
Re: Lizard: a little app for Chameleon
« Reply #9 on: October 10, 2009, 06:51:03 PM »
That's a good tweak Sonotone. I can now use it properly. Thanks :)
10.10.5 / 10.11 GM1 | Asus Maximum IV Gene-Z | i7-2600 3.40GHz | 4GB | Radeon 5770 1GB

rzooff

  • Member
  • Posts: 59
Re: Lizard: a little app for Chameleon
« Reply #10 on: October 12, 2009, 08:49:19 PM »
Well done, sonotone - permissions problems gone with the wind! I've also noticed change in smbios RAM type menu.
Thank You again!!!

I'd like to ask why some options are disabled, and cannot be changed? (Instant Menu, Quiet Boot, Time out)

Ant if I can have a feature request -> it would be a little bit safer, if You could make backup of old smbios.plist and com.apple.Boot.plist... just in case ;)

MacOS X 10.6.1 (Retail)  + Chameleon 2 | ASUS P5B-V | C2D E4600 | GF 8400GS | Asus WL-138g v2
MacOS X 10 10.5.8 (Retail) + Chameleon 2 | Toshiba L40-R17 |

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #11 on: October 13, 2009, 07:06:47 PM »
I'd like to ask why some options are disabled, and cannot be changed? (Instant Menu, Quiet Boot, Time out)

Ant if I can have a feature request -> it would be a little bit safer, if You could make backup of old smbios.plist and com.apple.Boot.plist... just in case ;)

Hi,
Fields are disabled cause you set both "instant menu" and "time out" in your plist. Those fields are contradictory.
I have to improve alerts when appends...

I'll take a look for backups.

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #12 on: October 15, 2009, 02:47:02 PM »
Quick update: I've made some modifications in ram informations managing. No infos are displayed in a table, it's more faster to edit (at least i hope).

macgeek

  • Entrant
  • Posts: 3
Re: Lizard: a little app for Chameleon
« Reply #13 on: October 20, 2009, 01:34:32 AM »
Bravo!  I find myself using this awesome little app every day for a quick way to change settings.  Instead of typing in all of the strings, its just click, click, reboot, done!   ;D

One suggestion. . . it would me amazing if you could turn this into a preference pane for even more usability and even faster access!    :)

Thanks so much for doing this!  Haven't found any bugs so far.

sonotone

  • Observer
  • Posts: 29
Re: Lizard: a little app for Chameleon
« Reply #14 on: October 21, 2009, 08:05:38 PM »
I'm not thinking about a prefpane at the moment, cause i have to finish all the things i want to see in Lizard.
Maybe later...