Comment 21 for bug 737320

Revision history for this message
Dan Crews (crewsd) wrote :

Here's a fix to this problem:

sudo nano /usr/bin/

At line ~83, you'll find:

    if current_profile_gconfvalue.get_string() == 'unity':
        print "WARNING: Unity currently default profile, so switching to metacity while resetting the values"
        subprocess.Popen(["metacity", "--replace"]) #TODO: check if compiz is indeed running
        # wait for compiz to stop
        time.sleep(2)
        current_profile_gconfvalue.set_string('fooo')
        current_profile_schema.set_default_value(current_profile_gconfvalue)
        client.set_schema("/apps/compizconfig-1/current_profile", current_profile_schema)
        # the python binding doesn't recursive-unset right
        subprocess.Popen(["gconftool-2", "--recursive-unset", "/apps/compiz-1"]).communicate()

Change this to (we're just wrapping another if around it to make sure the object it's trying to use isn't the empty string we started with):

    if current_profile_gconfvalue != "":
        if current_profile_gconfvalue.get_string() == 'unity':
     print "WARNING: Unity currently default profile, so switching to metacity while resetting the values"
            subprocess.Popen(["metacity", "--replace"]) #TODO: check if compiz is indeed running
            # wait for compiz to stop
            time.sleep(2)
            current_profile_gconfvalue.set_string('fooo')
            current_profile_schema.set_default_value(current_profile_gconfvalue)
            client.set_schema("/apps/compizconfig-1/current_profile", current_profile_schema)
            # the python binding doesn't recursive-unset right
            subprocess.Popen(["gconftool-2", "--recursive-unset", "/apps/compiz-1"]).communicate()

Then run

unity --reset

It'll all be back to normal.
Enjoy